UNPKG

@rnv/engine-core

Version:
57 lines 3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var core_1 = require("@rnv/core"); var Question = function (data) { return tslib_1.__awaiter(void 0, void 0, void 0, function () { var c, inputs, configFile, projTemplates, allKeys, confirmAddTemplate, templateName; var _a; return tslib_1.__generator(this, function (_b) { switch (_b.label) { case 0: c = (0, core_1.getContext)(); inputs = data.inputs; if (!((_a = inputs.template) === null || _a === void 0 ? void 0 : _a.packageName)) { return [2 /*return*/, Promise.reject('Template not selected')]; } configFile = c.files.workspace.config || {}; projTemplates = c.buildConfig.projectTemplates || {}; allKeys = Object.keys(projTemplates); if (!((!allKeys.includes(inputs.template.packageName) || !!inputs.template.localPath) && inputs.template.type !== 'existing')) return [3 /*break*/, 3]; return [4 /*yield*/, (0, core_1.inquirerPrompt)({ name: 'confirmAddTemplate', type: 'confirm', message: "Would you like to add ".concat((0, core_1.chalk)().bold.white(inputs.template.packageName), " to your ").concat(inputs.workspaceID, " workspace template list?"), })]; case 1: confirmAddTemplate = (_b.sent()).confirmAddTemplate; return [4 /*yield*/, (0, core_1.inquirerPrompt)({ name: 'templateName', type: 'input', default: "".concat(inputs.template.packageName, " (local)"), validate: function (v) { return !allKeys.includes(v) || 'Name already exists'; }, message: 'Add short description', })]; case 2: templateName = (_b.sent()).templateName; if (configFile) { if (confirmAddTemplate) { if (!configFile.projectTemplates) { configFile.projectTemplates = {}; } configFile.projectTemplates[templateName] = { packageName: inputs.template.packageName, localPath: inputs.template.localPath, description: inputs.template.description, }; (0, core_1.writeFileSync)(c.paths.workspace.config, configFile); (0, core_1.logInfo)("Updating ".concat(c.paths.workspace.config, "...DONE")); } } _b.label = 3; case 3: return [2 /*return*/]; } }); }); }; exports.default = Question; //# sourceMappingURL=bookmarkTemplate.js.map