UNPKG

@rnv/engine-core

Version:
58 lines 3.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var core_1 = require("@rnv/core"); exports.default = (0, core_1.createTask)({ description: 'Copy all platform files directly to project', fn: function (_a) { var ctx = _a.ctx; return tslib_1.__awaiter(void 0, void 0, void 0, function () { var configOriginal, selectedPlatforms, ejectedPlatforms; var _b, _c, _d; return tslib_1.__generator(this, function (_e) { switch (_e.label) { case 0: configOriginal = ctx.files.project.config_original; if (!configOriginal) { return [2 /*return*/]; } if (!ctx.platform) return [3 /*break*/, 1]; selectedPlatforms = [ctx.platform]; return [3 /*break*/, 3]; case 1: (0, core_1.logInfo)("Preparing to eject engine platforms to local ".concat((0, core_1.chalk)().bold.white('./platformTemplates'))); return [4 /*yield*/, (0, core_1.inquirerPrompt)({ name: 'ejectedPlatforms', message: 'Select platforms you would like to eject (use SPACE key)', type: 'checkbox', choices: (0, core_1.generatePlatformChoices)().map(function (choice) { return (tslib_1.__assign(tslib_1.__assign({}, choice), { disabled: !choice.isConnected })); }), })]; case 2: ejectedPlatforms = (_e.sent()).ejectedPlatforms; selectedPlatforms = ejectedPlatforms; _e.label = 3; case 3: if (selectedPlatforms.length) { selectedPlatforms.forEach(function (platform) { // const engine = getEngineRunnerByPlatform(c, platform); // const destDir = path.join(c.paths.project.dir, 'platformTemplates', platform); // engine.ejectPlatform(c, platform, destDir); (0, core_1.ejectPlatform)(platform); configOriginal.paths = configOriginal.paths || {}; configOriginal.paths.platformTemplatesDirs = configOriginal.paths.platformTemplatesDirs || {}; configOriginal.paths.platformTemplatesDirs[platform] = "./".concat('platformTemplates'); (0, core_1.writeFileSync)(ctx.paths.project.config, configOriginal); }); (0, core_1.logSuccess)("".concat((0, core_1.chalk)().bold.white(selectedPlatforms.join(',')), " platform templates are located in ").concat((0, core_1.chalk)().bold.white((_d = (_c = (_b = ctx.files.project.config) === null || _b === void 0 ? void 0 : _b.paths) === null || _c === void 0 ? void 0 : _c.platformTemplatesDirs) === null || _d === void 0 ? void 0 : _d[selectedPlatforms[0]]), " now. You can edit them directly!")); } else { (0, core_1.logError)("You haven't selected any platform to eject.\nTIP: You can select options with ".concat((0, core_1.chalk)().bold.white('SPACE'), " key before pressing ENTER!")); } return [2 /*return*/]; } }); }); }, task: core_1.RnvTaskName.platformEject, }); //# sourceMappingURL=taskPlatformEject.js.map