UNPKG

react-native-integrate

Version:

Automate integration of additional code into React Native projects

68 lines (67 loc) 3.89 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.importFromOldProject = importFromOldProject; const picocolors_1 = __importDefault(require("picocolors")); const options_1 = require("../../options"); const prompter_1 = require("../../prompter"); const importAndroidAppId_1 = require("./android/importAndroidAppId"); const importAndroidDisplayName_1 = require("./android/importAndroidDisplayName"); const importAndroidLaunchIcon_1 = require("./android/importAndroidLaunchIcon"); const importAndroidVersionCode_1 = require("./android/importAndroidVersionCode"); const importAndroidVersionName_1 = require("./android/importAndroidVersionName"); const importIosAssets_1 = require("./ios/importIosAssets"); const importIosBundleId_1 = require("./ios/importIosBundleId"); const importIosBuildProperties_1 = require("./ios/importIosBuildProperties"); const importIosDisplayName_1 = require("./ios/importIosDisplayName"); const importIosMarketingVersion_1 = require("./ios/importIosMarketingVersion"); const importIosProjectVersion_1 = require("./ios/importIosProjectVersion"); const importGitFolder_1 = require("./other/importGitFolder"); const importIntegrateConfig_1 = require("./other/importIntegrateConfig"); const importIntegrateLockJson_1 = require("./other/importIntegrateLockJson"); const importPackageJson_1 = require("./other/importPackageJson"); const importUpgradeFolder_1 = require("./other/importUpgradeFolder"); async function importFromOldProject(oldProjectPath) { const importedData = [ (0, importPackageJson_1.importPackageJson)(oldProjectPath), (0, importIntegrateLockJson_1.importIntegrateLockJson)(oldProjectPath), (0, importIntegrateConfig_1.importIntegrateConfig)(oldProjectPath), (0, importUpgradeFolder_1.importUpgradeFolder)(oldProjectPath), (0, importAndroidDisplayName_1.importAndroidDisplayName)(oldProjectPath), (0, importAndroidAppId_1.importAndroidAppId)(oldProjectPath), (0, importAndroidLaunchIcon_1.importAndroidLaunchIcon)(oldProjectPath), (0, importAndroidVersionCode_1.importAndroidVersionCode)(oldProjectPath), (0, importAndroidVersionName_1.importAndroidVersionName)(oldProjectPath), (0, importIosBundleId_1.importIosBundleId)(oldProjectPath), (0, importIosDisplayName_1.importIosDisplayName)(oldProjectPath), (0, importIosProjectVersion_1.importIosProjectVersion)(oldProjectPath), (0, importIosMarketingVersion_1.importIosMarketingVersion)(oldProjectPath), (0, importIosBuildProperties_1.importIosBuildProperties)(oldProjectPath), (0, importIosAssets_1.importIosAssets)(oldProjectPath), (0, importGitFolder_1.importGitFolder)(oldProjectPath), ].filter(d => d != null); (0, prompter_1.logMessage)('importing following project data:\n\n' + importedData.map(d => `➤ ${d.title}: ${picocolors_1.default.green(d.value)}`).join('\n')); const isManual = options_1.options.get().manual; if (isManual) { const confirmed = await (0, prompter_1.confirm)('Would you like to proceed?', { initialValue: true, positive: 'yes', negative: 'no, just re-integrate', }); if (!confirmed) { (0, prompter_1.logMessageGray)('skipping import from old project'); return false; } } for (const d of importedData) { (0, prompter_1.logInfo)(picocolors_1.default.bold(picocolors_1.default.inverse(picocolors_1.default.cyan(' import '))) + picocolors_1.default.bold(picocolors_1.default.cyan(` ${d.title} `))); await d.apply().catch((e) => { (0, prompter_1.logWarning)(e.message); }); } return true; }