UNPKG

react-native-keys

Version:
36 lines (35 loc) 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.withAndroidBuildscriptDependency = void 0; const config_plugins_1 = require("@expo/config-plugins"); function applyImplementation(appBuildGradle, defaultKeyFile = 'keys.development.json', IS_EXAMPLE) { var _a, _b; const RnkeysImplementation = ` project.ext.IS_EXAMPLE = ${IS_EXAMPLE}; project.ext.DEFAULT_FILE_NAME = "${defaultKeyFile}" apply from: project(':react-native-keys').projectDir.getPath() + "/RNKeys.gradle" `; if (!appBuildGradle.includes('project.ext.DEFAULT_FILE_NAME')) { const enableProguardInReleaseBuildsLine = (_a = appBuildGradle.match(/def enableProguardInReleaseBuilds.+/)) === null || _a === void 0 ? void 0 : _a[0]; if (enableProguardInReleaseBuildsLine && appBuildGradle.includes(enableProguardInReleaseBuildsLine)) { return appBuildGradle.replace(enableProguardInReleaseBuildsLine, `${enableProguardInReleaseBuildsLine}\n${RnkeysImplementation}`); } } else { let regex = /(project\.ext\.DEFAULT_FILE_NAME\s*=\s*").*?"/; const projectExtKeyFilesLine = (_b = appBuildGradle.match(regex)) === null || _b === void 0 ? void 0 : _b[0]; if (projectExtKeyFilesLine) { return appBuildGradle.replace(regex, `$1${defaultKeyFile}"`); } } return appBuildGradle; } const withAndroidBuildscriptDependency = (config, props) => { return (0, config_plugins_1.withAppBuildGradle)(config, (config) => { var _a; config.modResults.contents = applyImplementation(config.modResults.contents, (_a = props === null || props === void 0 ? void 0 : props.android) === null || _a === void 0 ? void 0 : _a.defaultKeyFile, (props === null || props === void 0 ? void 0 : props.IS_EXAMPLE) ? 'true' : 'false'); return config; }); }; exports.withAndroidBuildscriptDependency = withAndroidBuildscriptDependency;