1"use strict"; 2 3Object.defineProperty(exports, "__esModule", { 4 value: true 5}); 6exports.configureEasBuildAsync = configureEasBuildAsync; 7exports.getEasBuildGradlePath = getEasBuildGradlePath; 8exports.isEasBuildGradleConfiguredAsync = isEasBuildGradleConfiguredAsync; 9 10function _fs() { 11 const data = _interopRequireDefault(require("fs")); 12 13 _fs = function () { 14 return data; 15 }; 16 17 return data; 18} 19 20function _path() { 21 const data = _interopRequireDefault(require("path")); 22 23 _path = function () { 24 return data; 25 }; 26 27 return data; 28} 29 30function _EasBuildGradleScript() { 31 const data = _interopRequireDefault(require("./EasBuildGradleScript")); 32 33 _EasBuildGradleScript = function () { 34 return data; 35 }; 36 37 return data; 38} 39 40function Paths() { 41 const data = _interopRequireWildcard(require("./Paths")); 42 43 Paths = function () { 44 return data; 45 }; 46 47 return data; 48} 49 50function _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); } 51 52function _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; } 53 54function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 55 56const APPLY_EAS_GRADLE = 'apply from: "./eas-build.gradle"'; 57 58function hasApplyLine(content, applyLine) { 59 return content.replace(/\r\n/g, '\n').split('\n') // Check for both single and double quotes 60 .some(line => line === applyLine || line === applyLine.replace(/"/g, "'")); 61} 62 63function getEasBuildGradlePath(projectRoot) { 64 return _path().default.join(projectRoot, 'android', 'app', 'eas-build.gradle'); 65} 66 67async function configureEasBuildAsync(projectRoot) { 68 const buildGradlePath = Paths().getAppBuildGradleFilePath(projectRoot); 69 const easGradlePath = getEasBuildGradlePath(projectRoot); 70 await _fs().default.promises.writeFile(easGradlePath, _EasBuildGradleScript().default); 71 const buildGradleContent = await _fs().default.promises.readFile(_path().default.join(buildGradlePath), 'utf8'); 72 const hasEasGradleApply = hasApplyLine(buildGradleContent, APPLY_EAS_GRADLE); 73 74 if (!hasEasGradleApply) { 75 await _fs().default.promises.writeFile(buildGradlePath, `${buildGradleContent.trim()}\n${APPLY_EAS_GRADLE}\n`); 76 } 77} 78 79async function isEasBuildGradleConfiguredAsync(projectRoot) { 80 const buildGradlePath = Paths().getAppBuildGradleFilePath(projectRoot); 81 const easGradlePath = getEasBuildGradlePath(projectRoot); 82 const hasEasGradleFile = await _fs().default.existsSync(easGradlePath); 83 const buildGradleContent = await _fs().default.promises.readFile(_path().default.join(buildGradlePath), 'utf8'); 84 const hasEasGradleApply = hasApplyLine(buildGradleContent, APPLY_EAS_GRADLE); 85 return hasEasGradleApply && hasEasGradleFile; 86} 87//# sourceMappingURL=EasBuild.js.map