1082815dcSEvan Bacon"use strict";
2082815dcSEvan Bacon
3082815dcSEvan BaconObject.defineProperty(exports, "__esModule", {
4082815dcSEvan Bacon  value: true
5082815dcSEvan Bacon});
6082815dcSEvan Baconexports.configureEasBuildAsync = configureEasBuildAsync;
7082815dcSEvan Baconexports.getEasBuildGradlePath = getEasBuildGradlePath;
8082815dcSEvan Baconexports.isEasBuildGradleConfiguredAsync = isEasBuildGradleConfiguredAsync;
9082815dcSEvan Baconfunction _fs() {
10082815dcSEvan Bacon  const data = _interopRequireDefault(require("fs"));
11082815dcSEvan Bacon  _fs = function () {
12082815dcSEvan Bacon    return data;
13082815dcSEvan Bacon  };
14082815dcSEvan Bacon  return data;
15082815dcSEvan Bacon}
16082815dcSEvan Baconfunction _path() {
17082815dcSEvan Bacon  const data = _interopRequireDefault(require("path"));
18082815dcSEvan Bacon  _path = function () {
19082815dcSEvan Bacon    return data;
20082815dcSEvan Bacon  };
21082815dcSEvan Bacon  return data;
22082815dcSEvan Bacon}
23082815dcSEvan Baconfunction _EasBuildGradleScript() {
24082815dcSEvan Bacon  const data = _interopRequireDefault(require("./EasBuildGradleScript"));
25082815dcSEvan Bacon  _EasBuildGradleScript = function () {
26082815dcSEvan Bacon    return data;
27082815dcSEvan Bacon  };
28082815dcSEvan Bacon  return data;
29082815dcSEvan Bacon}
30082815dcSEvan Baconfunction Paths() {
31082815dcSEvan Bacon  const data = _interopRequireWildcard(require("./Paths"));
32082815dcSEvan Bacon  Paths = function () {
33082815dcSEvan Bacon    return data;
34082815dcSEvan Bacon  };
35082815dcSEvan Bacon  return data;
36082815dcSEvan Bacon}
37082815dcSEvan Baconfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
38082815dcSEvan Baconfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39082815dcSEvan Baconfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40082815dcSEvan Baconconst APPLY_EAS_GRADLE = 'apply from: "./eas-build.gradle"';
41082815dcSEvan Baconfunction hasApplyLine(content, applyLine) {
42*ee216927STomasz Sapeta  return content.replace(/\r\n/g, '\n').split('\n')
43*ee216927STomasz Sapeta  // Check for both single and double quotes
44082815dcSEvan Bacon  .some(line => line === applyLine || line === applyLine.replace(/"/g, "'"));
45082815dcSEvan Bacon}
46082815dcSEvan Baconfunction getEasBuildGradlePath(projectRoot) {
47082815dcSEvan Bacon  return _path().default.join(projectRoot, 'android', 'app', 'eas-build.gradle');
48082815dcSEvan Bacon}
49082815dcSEvan Baconasync function configureEasBuildAsync(projectRoot) {
50082815dcSEvan Bacon  const buildGradlePath = Paths().getAppBuildGradleFilePath(projectRoot);
51082815dcSEvan Bacon  const easGradlePath = getEasBuildGradlePath(projectRoot);
52082815dcSEvan Bacon  await _fs().default.promises.writeFile(easGradlePath, _EasBuildGradleScript().default);
53082815dcSEvan Bacon  const buildGradleContent = await _fs().default.promises.readFile(_path().default.join(buildGradlePath), 'utf8');
54082815dcSEvan Bacon  const hasEasGradleApply = hasApplyLine(buildGradleContent, APPLY_EAS_GRADLE);
55082815dcSEvan Bacon  if (!hasEasGradleApply) {
56082815dcSEvan Bacon    await _fs().default.promises.writeFile(buildGradlePath, `${buildGradleContent.trim()}\n${APPLY_EAS_GRADLE}\n`);
57082815dcSEvan Bacon  }
58082815dcSEvan Bacon}
59082815dcSEvan Baconasync function isEasBuildGradleConfiguredAsync(projectRoot) {
60082815dcSEvan Bacon  const buildGradlePath = Paths().getAppBuildGradleFilePath(projectRoot);
61082815dcSEvan Bacon  const easGradlePath = getEasBuildGradlePath(projectRoot);
62082815dcSEvan Bacon  const hasEasGradleFile = await _fs().default.existsSync(easGradlePath);
63082815dcSEvan Bacon  const buildGradleContent = await _fs().default.promises.readFile(_path().default.join(buildGradlePath), 'utf8');
64082815dcSEvan Bacon  const hasEasGradleApply = hasApplyLine(buildGradleContent, APPLY_EAS_GRADLE);
65082815dcSEvan Bacon  return hasEasGradleApply && hasEasGradleFile;
66082815dcSEvan Bacon}
67082815dcSEvan Bacon//# sourceMappingURL=EasBuild.js.map