@serverless-devs/s 2.0.99 → 2.0.100-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/a.yaml +38 -0
  2. package/bin/s-verify +2 -0
  3. package/lib/clean/index.js +25 -41
  4. package/lib/cli/index.js +49 -62
  5. package/lib/component/index.js +44 -40
  6. package/lib/config/add/index.js +43 -39
  7. package/lib/config/delete/index.js +45 -53
  8. package/lib/config/get/index.js +51 -47
  9. package/lib/config/index.js +26 -42
  10. package/lib/constant.js +7 -0
  11. package/lib/error/index.js +60 -24
  12. package/lib/help/index.js +135 -0
  13. package/lib/index.js +97 -106
  14. package/lib/init/index.js +81 -90
  15. package/lib/init/init-config.js +4 -4
  16. package/lib/init/init-manager.js +26 -222
  17. package/lib/onboarding/index.js +16 -8
  18. package/lib/set/analysis/index.js +46 -42
  19. package/lib/set/index.js +27 -43
  20. package/lib/set/locale/index.js +47 -55
  21. package/lib/set/registry/index.js +46 -54
  22. package/lib/set/workspace/index.js +47 -43
  23. package/lib/special-commad/index.js +121 -0
  24. package/lib/update-notifier/index.js +19 -19
  25. package/lib/utils/common.js +102 -187
  26. package/lib/utils/core.js +27 -4
  27. package/lib/utils/handler-set-config.js +2 -8
  28. package/lib/utils/index.js +31 -24
  29. package/lib/utils/logger.js +4 -32
  30. package/lib/verify/index.js +78 -0
  31. package/package.json +7 -18
  32. package/readme.md +8 -2
  33. package/shell/postbuild.sh +2 -0
  34. package/lib/cli/cli-manager.js +0 -215
  35. package/lib/constants/index.js +0 -1
  36. package/lib/constants/static-variable.js +0 -8
  37. package/lib/core/command/command-manager.js +0 -184
  38. package/lib/core/component/hook.js +0 -182
  39. package/lib/core/component/index.js +0 -354
  40. package/lib/core/index.js +0 -7
  41. package/lib/core/plugin/index.js +0 -102
  42. package/lib/entiry/cli.js +0 -11
  43. package/lib/entiry/index.js +0 -7
  44. package/lib/specification/analysis.js +0 -45
  45. package/lib/specification/index.js +0 -14
  46. package/lib/specification/parse.js +0 -252
  47. package/lib/specification/version.js +0 -151
  48. package/lib/utils/command-util.js +0 -331
  49. package/lib/utils/storage.js +0 -31
  50. package/lib/utils/url-parser.js +0 -50
@@ -99,8 +99,8 @@ var ali_template = [
99
99
  ];
100
100
  var quick_start_template = [
101
101
  {
102
- name: '[HTTP] Node.js 12',
103
- value: 'devsapp/start-fc-http-nodejs12',
102
+ name: '[HTTP] Node.js 14',
103
+ value: 'devsapp/start-fc-http-nodejs14',
104
104
  isDeploy: true,
105
105
  },
106
106
  {
@@ -123,8 +123,8 @@ var quick_start_template = [
123
123
  isDeploy: true,
124
124
  },
125
125
  {
126
- name: '[Event] Node.js 12',
127
- value: 'devsapp/start-fc-event-nodejs12',
126
+ name: '[Event] Node.js 14',
127
+ value: 'devsapp/start-fc-event-nodejs14',
128
128
  isDeploy: true,
129
129
  },
130
130
  {
@@ -11,25 +11,6 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  return __assign.apply(this, arguments);
13
13
  };
14
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
17
- }) : (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- o[k2] = m[k];
20
- }));
21
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
22
- Object.defineProperty(o, "default", { enumerable: true, value: v });
23
- }) : function(o, v) {
24
- o["default"] = v;
25
- });
26
- var __importStar = (this && this.__importStar) || function (mod) {
27
- if (mod && mod.__esModule) return mod;
28
- var result = {};
29
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
30
- __setModuleDefault(result, mod);
31
- return result;
32
- };
33
14
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
34
15
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
35
16
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -66,162 +47,25 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
66
47
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
67
48
  }
68
49
  };
69
- var __rest = (this && this.__rest) || function (s, e) {
70
- var t = {};
71
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
72
- t[p] = s[p];
73
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
74
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
75
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
76
- t[p[i]] = s[p[i]];
77
- }
78
- return t;
79
- };
80
50
  var __importDefault = (this && this.__importDefault) || function (mod) {
81
51
  return (mod && mod.__esModule) ? mod : { "default": mod };
82
52
  };
83
53
  Object.defineProperty(exports, "__esModule", { value: true });
84
54
  exports.InitManager = void 0;
85
55
  var path_1 = __importDefault(require("path"));
86
- var lodash_1 = __importStar(require("lodash"));
56
+ var lodash_1 = require("lodash");
87
57
  var child_process_1 = require("child_process");
88
58
  var utils_1 = require("../utils");
89
- var static_variable_1 = require("../constants/static-variable");
59
+ var constant_1 = require("../constant");
90
60
  var init_config_1 = require("./init-config");
91
61
  var common_1 = require("../utils/common");
92
62
  var core_1 = __importDefault(require("../utils/core"));
93
- var loadApplication = core_1.default.loadApplication, setCredential = core_1.default.setCredential, colors = core_1.default.colors, report = core_1.default.report, fs = core_1.default.fse, inquirer = core_1.default.inquirer, getRootHome = core_1.default.getRootHome, getCredential = core_1.default.getCredential, getYamlContent = core_1.default.getYamlContent;
63
+ var loadApplication = core_1.default.loadApplication, colors = core_1.default.colors, report = core_1.default.report, inquirer = core_1.default.inquirer;
94
64
  inquirer.registerPrompt('autocomplete', require('inquirer-autocomplete-prompt'));
95
- var replaceTemplate = utils_1.common.replaceTemplate, getTemplatekey = utils_1.common.getTemplatekey, replaceFun = utils_1.common.replaceFun;
96
- var getCredentialAliasList = function () { return __awaiter(void 0, void 0, void 0, function () {
97
- var accessList, accessInfo, data;
98
- return __generator(this, function (_a) {
99
- switch (_a.label) {
100
- case 0:
101
- accessList = [];
102
- return [4 /*yield*/, getYamlContent(path_1.default.join(getRootHome(), 'access.yaml'))];
103
- case 1:
104
- accessInfo = _a.sent();
105
- if (accessInfo) {
106
- accessList = (0, lodash_1.keys)(accessInfo);
107
- }
108
- return [4 /*yield*/, getCredential()];
109
- case 2:
110
- data = _a.sent();
111
- if (data && !(0, lodash_1.includes)(accessList, data.Alias)) {
112
- accessList.push(data.Alias);
113
- }
114
- return [2 /*return*/, accessList];
115
- }
116
- });
117
- }); };
118
65
  var InitManager = /** @class */ (function () {
119
66
  function InitManager() {
120
67
  this.promps = {};
121
68
  }
122
- InitManager.prototype.initSconfig = function (appPath) {
123
- return __awaiter(this, void 0, void 0, function () {
124
- var sPath, sContent, templateKeys, _i, templateKeys_1, item, name_1, desc, credentialAliasList, _a, prompsAccess, prompsRest, prompsOption, result, credential;
125
- return __generator(this, function (_b) {
126
- switch (_b.label) {
127
- case 0:
128
- sPath = (0, utils_1.getYamlPath)(appPath, 's');
129
- if (!sPath) return [3 /*break*/, 10];
130
- sContent = fs.readFileSync(sPath, 'utf-8');
131
- templateKeys = getTemplatekey(sContent);
132
- _i = 0, templateKeys_1 = templateKeys;
133
- _b.label = 1;
134
- case 1:
135
- if (!(_i < templateKeys_1.length)) return [3 /*break*/, 5];
136
- item = templateKeys_1[_i];
137
- name_1 = item.name, desc = item.desc;
138
- if (!(name_1 === 'access')) return [3 /*break*/, 3];
139
- return [4 /*yield*/, getCredentialAliasList()];
140
- case 2:
141
- credentialAliasList = _b.sent();
142
- if (Array.isArray(credentialAliasList) && credentialAliasList.length > 0) {
143
- this.promps['access'] = {
144
- type: 'list',
145
- name: 'access',
146
- message: 'please select credential alias',
147
- choices: credentialAliasList,
148
- };
149
- }
150
- else {
151
- this.promps['access'] = {
152
- type: 'confirm',
153
- name: 'access',
154
- message: 'create credential?',
155
- default: true,
156
- };
157
- }
158
- return [3 /*break*/, 4];
159
- case 3:
160
- this.promps[name_1] = {
161
- type: 'input',
162
- message: "please input ".concat(desc || name_1, ":"),
163
- name: name_1,
164
- };
165
- _b.label = 4;
166
- case 4:
167
- _i++;
168
- return [3 /*break*/, 1];
169
- case 5:
170
- _a = this.promps, prompsAccess = _a.access, prompsRest = __rest(_a, ["access"]);
171
- prompsOption = lodash_1.default.concat(lodash_1.default.values(prompsRest), prompsAccess);
172
- return [4 /*yield*/, inquirer.prompt(lodash_1.default.filter(prompsOption, function (item) { return item; }))];
173
- case 6:
174
- result = _b.sent();
175
- if (!(result.access === true)) return [3 /*break*/, 8];
176
- return [4 /*yield*/, setCredential()];
177
- case 7:
178
- credential = _b.sent();
179
- result.access = credential.Alias;
180
- return [3 /*break*/, 9];
181
- case 8:
182
- result.access = typeof result.access === 'string' ? result.access : 'default';
183
- _b.label = 9;
184
- case 9:
185
- sContent = replaceFun(sContent, result);
186
- fs.writeFileSync(sPath, sContent, 'utf-8');
187
- _b.label = 10;
188
- case 10: return [2 /*return*/, sPath];
189
- }
190
- });
191
- });
192
- };
193
- InitManager.prototype.initEnvConfig = function (appPath) {
194
- return __awaiter(this, void 0, void 0, function () {
195
- var envExampleFilePath, envConfig, templateKeys, promptOption, result, newEnvConfig;
196
- return __generator(this, function (_a) {
197
- switch (_a.label) {
198
- case 0:
199
- envExampleFilePath = path_1.default.resolve(appPath, '.env.example');
200
- if (!fs.existsSync(envExampleFilePath))
201
- return [2 /*return*/];
202
- envConfig = fs.readFileSync(envExampleFilePath, 'utf-8');
203
- templateKeys = getTemplatekey(envConfig);
204
- if (templateKeys.length === 0)
205
- return [2 /*return*/];
206
- promptOption = templateKeys.map(function (item) {
207
- var name = item.name, desc = item.desc;
208
- return {
209
- type: 'input',
210
- message: "please input ".concat(desc || name, ":"),
211
- name: name,
212
- };
213
- });
214
- return [4 /*yield*/, inquirer.prompt(promptOption)];
215
- case 1:
216
- result = _a.sent();
217
- newEnvConfig = replaceFun(envConfig, result);
218
- fs.unlink(envExampleFilePath);
219
- fs.writeFileSync(path_1.default.resolve(appPath, '.env'), newEnvConfig, 'utf-8');
220
- return [2 /*return*/];
221
- }
222
- });
223
- });
224
- };
225
69
  InitManager.prototype.assemblySpecialApp = function (appName, _a) {
226
70
  var projectName = _a.projectName, appPath = _a.appPath;
227
71
  return __awaiter(this, void 0, void 0, function () {
@@ -230,7 +74,7 @@ var InitManager = /** @class */ (function () {
230
74
  if (appName === 'start-component' || appName === 'devsapp/start-component') {
231
75
  packageJsonPath = path_1.default.join(appPath, 'package.json');
232
76
  publishYamlPath = path_1.default.join(appPath, 'publish.yaml');
233
- replaceTemplate([packageJsonPath, publishYamlPath], { projectName: projectName });
77
+ (0, utils_1.replaceTemplate)([packageJsonPath, publishYamlPath], { projectName: projectName });
234
78
  }
235
79
  return [2 /*return*/];
236
80
  });
@@ -238,99 +82,59 @@ var InitManager = /** @class */ (function () {
238
82
  };
239
83
  InitManager.prototype.executeInit = function (name, dir, downloadurl) {
240
84
  return __awaiter(this, void 0, void 0, function () {
241
- var projectName, answers, registry, appPath, tempObj, baseChildComponent, e_1;
85
+ var projectName, answers, registry, appPath;
242
86
  return __generator(this, function (_a) {
243
87
  switch (_a.label) {
244
88
  case 0:
245
89
  projectName = dir;
246
90
  if (!!projectName) return [3 /*break*/, 2];
247
- return [4 /*yield*/, inquirer.prompt([__assign(__assign({}, init_config_1.PROJECT_NAME_INPUT), { default: lodash_1.default.last(lodash_1.default.split(name, '/')) })])];
91
+ return [4 /*yield*/, inquirer.prompt([__assign(__assign({}, init_config_1.PROJECT_NAME_INPUT), { default: (0, lodash_1.last)((0, lodash_1.split)(name, '/')) })])];
248
92
  case 1:
249
93
  answers = _a.sent();
250
94
  projectName = answers.projectName;
251
95
  _a.label = 2;
252
96
  case 2:
253
- registry = downloadurl ? downloadurl : utils_1.configSet.getConfig('registry') || static_variable_1.DEFAULT_REGIRSTRY;
97
+ registry = downloadurl ? downloadurl : (0, utils_1.getConfig)('registry') || constant_1.DEFAULT_REGIRSTRY;
254
98
  return [4 /*yield*/, loadApplication({ registry: registry, target: './', source: name, name: projectName })];
255
99
  case 3:
256
100
  appPath = _a.sent();
257
- if (!appPath) return [3 /*break*/, 13];
258
- return [4 /*yield*/, this.initSconfig(appPath)];
259
- case 4:
260
- _a.sent();
261
- return [4 /*yield*/, this.initEnvConfig(appPath)];
262
- case 5:
263
- _a.sent();
101
+ if (!appPath) return [3 /*break*/, 5];
264
102
  return [4 /*yield*/, this.assemblySpecialApp(name, { projectName: projectName, appPath: appPath })];
265
- case 6:
103
+ case 4:
266
104
  _a.sent(); // Set some app template content
267
- _a.label = 7;
268
- case 7:
269
- _a.trys.push([7, 11, , 12]);
270
- if (!process.env["".concat(appPath, "-post-init")]) return [3 /*break*/, 10];
271
- tempObj = JSON.parse(process.env["".concat(appPath, "-post-init")]);
272
- return [4 /*yield*/, require(path_1.default.join(tempObj['tempPath'], 'hook'))];
273
- case 8:
274
- baseChildComponent = _a.sent();
275
- return [4 /*yield*/, baseChildComponent.postInit(tempObj)];
276
- case 9:
277
- _a.sent();
278
- _a.label = 10;
279
- case 10: return [3 /*break*/, 12];
280
- case 11:
281
- e_1 = _a.sent();
282
- return [3 /*break*/, 12];
283
- case 12:
284
105
  utils_1.logger.success("\n".concat((0, common_1.emoji)('🏄‍'), " Thanks for using Serverless-Devs"));
285
106
  console.log("".concat((0, common_1.emoji)('👉'), " You could [cd ").concat(appPath, "] and enjoy your serverless journey!"));
286
107
  console.log("".concat((0, common_1.emoji)('🧭️'), " If you need help for this example, you can use [s -h] after you enter folder."));
287
108
  console.log("".concat((0, common_1.emoji)('💞'), " Document \u2764 Star:") +
288
109
  colors.cyan.underline('https://github.com/Serverless-Devs/Serverless-Devs' + '\n'));
289
- _a.label = 13;
290
- case 13: return [2 /*return*/, { appPath: appPath }];
110
+ _a.label = 5;
111
+ case 5: return [2 /*return*/, { appPath: appPath }];
291
112
  }
292
113
  });
293
114
  });
294
115
  };
295
116
  InitManager.prototype.executeInitWithForceCreation = function (name, dir) {
296
117
  return __awaiter(this, void 0, void 0, function () {
297
- var projectName, registry, appPath, tempObj, baseChildComponent, e_2;
118
+ var projectName, registry, appPath;
298
119
  return __generator(this, function (_a) {
299
120
  switch (_a.label) {
300
121
  case 0:
301
122
  projectName = dir;
302
123
  if (!projectName) {
303
- projectName = lodash_1.default.last(lodash_1.default.split(name, '/'));
124
+ projectName = (0, lodash_1.last)((0, lodash_1.split)(name, '/'));
304
125
  }
305
- registry = utils_1.configSet.getConfig('registry') || static_variable_1.DEFAULT_REGIRSTRY;
126
+ registry = (0, utils_1.getConfig)('registry') || constant_1.DEFAULT_REGIRSTRY;
306
127
  return [4 /*yield*/, loadApplication({ registry: registry, target: './', source: name, name: projectName })];
307
128
  case 1:
308
129
  appPath = _a.sent();
309
- if (!appPath) return [3 /*break*/, 8];
310
- _a.label = 2;
311
- case 2:
312
- _a.trys.push([2, 6, , 7]);
313
- if (!process.env["".concat(appPath, "-post-init")]) return [3 /*break*/, 5];
314
- tempObj = JSON.parse(process.env["".concat(appPath, "-post-init")]);
315
- return [4 /*yield*/, require(path_1.default.join(tempObj['tempPath'], 'hook'))];
316
- case 3:
317
- baseChildComponent = _a.sent();
318
- return [4 /*yield*/, baseChildComponent.postInit(tempObj)];
319
- case 4:
320
- _a.sent();
321
- _a.label = 5;
322
- case 5: return [3 /*break*/, 7];
323
- case 6:
324
- e_2 = _a.sent();
325
- return [3 /*break*/, 7];
326
- case 7:
327
- utils_1.logger.success("\n".concat((0, common_1.emoji)('🏄‍'), " Thanks for using Serverless-Devs"));
328
- console.log("".concat((0, common_1.emoji)('👉'), " You could [cd ").concat(appPath, "] and enjoy your serverless journey!"));
329
- console.log("".concat((0, common_1.emoji)('🧭️'), " If you need help for this example, you can use [s -h] after you enter folder."));
330
- console.log("".concat((0, common_1.emoji)('💞'), " Document \u2764 Star:") +
331
- colors.cyan.underline('https://github.com/Serverless-Devs/Serverless-Devs' + '\n'));
332
- _a.label = 8;
333
- case 8: return [2 /*return*/, { appPath: appPath }];
130
+ if (appPath) {
131
+ utils_1.logger.success("\n".concat((0, common_1.emoji)('🏄‍'), " Thanks for using Serverless-Devs"));
132
+ console.log("".concat((0, common_1.emoji)('👉'), " You could [cd ").concat(appPath, "] and enjoy your serverless journey!"));
133
+ console.log("".concat((0, common_1.emoji)('🧭️'), " If you need help for this example, you can use [s -h] after you enter folder."));
134
+ console.log("".concat((0, common_1.emoji)('💞'), " Document \u2764 Star:") +
135
+ colors.cyan.underline('https://github.com/Serverless-Devs/Serverless-Devs' + '\n'));
136
+ }
137
+ return [2 /*return*/, { appPath: appPath }];
334
138
  }
335
139
  });
336
140
  });
@@ -391,7 +195,7 @@ var InitManager = /** @class */ (function () {
391
195
  case 2:
392
196
  appPath = (_a.sent()).appPath;
393
197
  report({ type: 'initTemplate', content: answerValue_1 });
394
- findObj = lodash_1.default.find(init_config_1.ALL_TEMPLATE, function (item) { return item.value === answerValue_1; });
198
+ findObj = (0, lodash_1.find)(init_config_1.ALL_TEMPLATE, function (item) { return item.value === answerValue_1; });
395
199
  if (!(findObj && findObj.isDeploy)) return [3 /*break*/, 4];
396
200
  return [4 /*yield*/, this.deploy(appPath)];
397
201
  case 3:
@@ -405,13 +209,13 @@ var InitManager = /** @class */ (function () {
405
209
  _a.sent();
406
210
  return [3 /*break*/, 12];
407
211
  case 7:
408
- if (!lodash_1.default.find(process.argv, function (v) { return v === '--force-creation'; })) return [3 /*break*/, 9];
212
+ if (!(0, lodash_1.find)(process.argv, function (v) { return v === '--force-creation'; })) return [3 /*break*/, 9];
409
213
  return [4 /*yield*/, this.executeInitWithForceCreation(name, dir)];
410
214
  case 8: return [2 /*return*/, _a.sent()];
411
215
  case 9: return [4 /*yield*/, this.executeInit(name, dir)];
412
216
  case 10:
413
217
  appPath = (_a.sent()).appPath;
414
- findObj = lodash_1.default.find(init_config_1.ALL_TEMPLATE, function (item) { return lodash_1.default.includes(item.value, name); });
218
+ findObj = (0, lodash_1.find)(init_config_1.ALL_TEMPLATE, function (item) { return (0, lodash_1.includes)(item.value, name); });
415
219
  if (!(findObj && findObj.isDeploy)) return [3 /*break*/, 12];
416
220
  return [4 /*yield*/, this.deploy(appPath)];
417
221
  case 11:
@@ -425,4 +229,4 @@ var InitManager = /** @class */ (function () {
425
229
  return InitManager;
426
230
  }());
427
231
  exports.InitManager = InitManager;
428
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luaXQvaW5pdC1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxjQUFjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVkLDhDQUF3QjtBQUN4QiwrQ0FBMkM7QUFDM0MsK0NBQWlEO0FBQ2pELGtDQUF3RTtBQUN4RSxnRUFBaUU7QUFDakUsNkNBQXVGO0FBQ3ZGLDBDQUF3QztBQUN4Qyx1REFBaUM7QUFFL0IsSUFBQSxlQUFlLEdBU2IsY0FBSSxnQkFUUyxFQUNmLGFBQWEsR0FRWCxjQUFJLGNBUk8sRUFDYixNQUFNLEdBT0osY0FBSSxPQVBBLEVBQ04sTUFBTSxHQU1KLGNBQUksT0FOQSxFQUNELEVBQUUsR0FLTCxjQUFJLElBTEMsRUFDUCxRQUFRLEdBSU4sY0FBSSxTQUpFLEVBQ1IsV0FBVyxHQUdULGNBQUksWUFISyxFQUNYLGFBQWEsR0FFWCxjQUFJLGNBRk8sRUFDYixjQUFjLEdBQ1osY0FBSSxlQURRLENBQ1A7QUFFVCxRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsOEJBQThCLENBQUMsQ0FBQyxDQUFDO0FBQ3pFLElBQUEsZUFBZSxHQUFpQyxjQUFNLGdCQUF2QyxFQUFFLGNBQWMsR0FBaUIsY0FBTSxlQUF2QixFQUFFLFVBQVUsR0FBSyxjQUFNLFdBQVgsQ0FBWTtBQUMvRCxJQUFNLHNCQUFzQixHQUFHOzs7OztnQkFDekIsVUFBVSxHQUFHLEVBQUUsQ0FBQztnQkFDRCxxQkFBTSxjQUFjLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FBQyxFQUFBOztnQkFBMUUsVUFBVSxHQUFHLFNBQTZEO2dCQUNoRixJQUFJLFVBQVUsRUFBRTtvQkFDZCxVQUFV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
232
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luaXQvaW5pdC1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxjQUFjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVkLDhDQUF3QjtBQUN4QixpQ0FBcUQ7QUFDckQsK0NBQWlEO0FBQ2pELGtDQUFvRTtBQUNwRSx3Q0FBZ0Q7QUFDaEQsNkNBQXVGO0FBQ3ZGLDBDQUF3QztBQUN4Qyx1REFBaUM7QUFDekIsSUFBQSxlQUFlLEdBQStCLGNBQUksZ0JBQW5DLEVBQUUsTUFBTSxHQUF1QixjQUFJLE9BQTNCLEVBQUUsTUFBTSxHQUFlLGNBQUksT0FBbkIsRUFBRSxRQUFRLEdBQUssY0FBSSxTQUFULENBQVU7QUFFM0QsUUFBUSxDQUFDLGNBQWMsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLDhCQUE4QixDQUFDLENBQUMsQ0FBQztBQUNqRjtJQUVFO1FBRFUsV0FBTSxHQUFRLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDVix3Q0FBa0IsR0FBeEIsVUFBeUIsT0FBTyxFQUFFLEVBQXdCO1lBQXRCLFdBQVcsaUJBQUEsRUFBRSxPQUFPLGFBQUE7Ozs7Z0JBQ3RELElBQUksT0FBTyxLQUFLLGlCQUFpQixJQUFJLE9BQU8sS0FBSyx5QkFBeUIsRUFBRTtvQkFDcEUsZUFBZSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO29CQUNyRCxlQUFlLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7b0JBQzNELElBQUEsdUJBQWUsRUFBQyxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsRUFBRSxFQUFFLFdBQVcsYUFBQSxFQUFFLENBQUMsQ0FBQztpQkFDdEU7Ozs7S0FDRjtJQUNLLGlDQUFXLEdBQWpCLFVBQWtCLElBQVks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
@@ -43,19 +43,27 @@ var init_manager_1 = require("../init/init-manager");
43
43
  var utils_1 = require("../utils");
44
44
  var common_1 = require("../utils/common");
45
45
  var core_1 = __importDefault(require("../utils/core"));
46
- var colors = core_1.default.colors, inquirer = core_1.default.inquirer, fs = core_1.default.fse;
46
+ var colors = core_1.default.colors, inquirer = core_1.default.inquirer, fs = core_1.default.fse, getTemplatePath = core_1.default.getTemplatePath;
47
47
  function onboarding() {
48
48
  return __awaiter(this, void 0, void 0, function () {
49
- var templateFile;
49
+ var templateFile, error_1;
50
50
  return __generator(this, function (_a) {
51
51
  switch (_a.label) {
52
52
  case 0:
53
- templateFile = process.env.templateFile;
54
- if (!fs.existsSync(templateFile)) return [3 /*break*/, 2];
55
- return [4 /*yield*/, projectWithDevs()];
56
- case 1: return [2 /*return*/, _a.sent()];
57
- case 2: return [4 /*yield*/, projectWithNoDevs()];
53
+ _a.trys.push([0, 2, , 3]);
54
+ return [4 /*yield*/, getTemplatePath()];
55
+ case 1:
56
+ templateFile = _a.sent();
57
+ return [3 /*break*/, 3];
58
+ case 2:
59
+ error_1 = _a.sent();
60
+ return [3 /*break*/, 3];
58
61
  case 3:
62
+ if (!fs.existsSync(templateFile)) return [3 /*break*/, 5];
63
+ return [4 /*yield*/, projectWithDevs()];
64
+ case 4: return [2 /*return*/, _a.sent()];
65
+ case 5: return [4 /*yield*/, projectWithNoDevs()];
66
+ case 6:
59
67
  _a.sent();
60
68
  return [2 /*return*/];
61
69
  }
@@ -100,4 +108,4 @@ function projectWithNoDevs() {
100
108
  });
101
109
  }
102
110
  exports.default = onboarding;
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb25ib2FyZGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFEQUFtRDtBQUNuRCxrQ0FBZ0M7QUFDaEMsMENBQTZDO0FBQzdDLHVEQUFpQztBQUN6QixJQUFBLE1BQU0sR0FBd0IsY0FBSSxPQUE1QixFQUFFLFFBQVEsR0FBYyxjQUFJLFNBQWxCLEVBQU8sRUFBRSxHQUFLLGNBQUksSUFBVCxDQUFVO0FBRTNDLFNBQWUsVUFBVTs7Ozs7O29CQUNmLFlBQVksR0FBSyxPQUFPLENBQUMsR0FBRyxhQUFoQixDQUFpQjt5QkFDakMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBM0Isd0JBQTJCO29CQUN0QixxQkFBTSxlQUFlLEVBQUUsRUFBQTt3QkFBOUIsc0JBQU8sU0FBdUIsRUFBQzt3QkFFakMscUJBQU0saUJBQWlCLEVBQUUsRUFBQTs7b0JBQXpCLFNBQXlCLENBQUM7Ozs7O0NBQzNCO0FBRUQsU0FBZSxlQUFlOzs7WUFDNUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFBLFlBQUcsRUFBQyxVQUFHLElBQUEsWUFBSSxFQUFDLDhCQUE4QixDQUFDLE1BQUcsQ0FBQyxDQUFDLENBQUM7WUFFN0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFLLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxjQUFJLElBQUEsWUFBRyxFQUFDLGFBQWEsQ0FBQyxTQUFHLFlBQUcsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUMsQ0FBRSxDQUFDLENBQUM7WUFDekcsT0FBTyxDQUFDLEdBQUcsQ0FDVCxVQUFHLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxjQUFJLElBQUEsWUFBRyxFQUFDLGVBQWUsQ0FBQyxTQUFHLFlBQUcsQ0FBQyxTQUFTLENBQ3BELGdFQUFnRSxDQUNqRSxDQUFFLENBQ0osQ0FBQztZQUNGLE9BQU8sQ0FBQyxHQUFHLENBQ1QsVUFBRyxJQUFBLGNBQUssRUFBQyxHQUFHLENBQUMsY0FBSSxJQUFBLFlBQUcsRUFBQyxVQUFVLENBQUMsU0FBRyxZQUFHLENBQUMsU0FBUyxDQUFDLDJEQUEyRCxDQUFDLENBQUUsQ0FDaEgsQ0FBQzs7OztDQUNIO0FBRUQsU0FBZSxpQkFBaUI7Ozs7O3dCQUNmLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7d0JBQ25DOzRCQUNFLElBQUksRUFBRSxTQUFTOzRCQUNmLE9BQU8sRUFBRSxHQUFHOzRCQUNaLElBQUksRUFBRSxNQUFNOzRCQUNaLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUEsWUFBSSxFQUFDLHNCQUFzQixDQUFDLENBQUM7eUJBQ3JEO3FCQUNGLENBQUMsRUFBQTs7b0JBUEksTUFBTSxHQUFHLFNBT2I7eUJBQ0UsTUFBTSxDQUFDLElBQUksRUFBWCx3QkFBVztvQkFDUCxXQUFXLEdBQUcsSUFBSSwwQkFBVyxFQUFFLENBQUM7b0JBQ3RDLHFCQUFNLFdBQVcsQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQXhCLFNBQXdCLENBQUM7Ozs7OztDQUU1QjtBQUVELGtCQUFlLFVBQVUsQ0FBQyJ9
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb25ib2FyZGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFEQUFtRDtBQUNuRCxrQ0FBZ0M7QUFDaEMsMENBQTZDO0FBQzdDLHVEQUFpQztBQUN6QixJQUFBLE1BQU0sR0FBeUMsY0FBSSxPQUE3QyxFQUFFLFFBQVEsR0FBK0IsY0FBSSxTQUFuQyxFQUFPLEVBQUUsR0FBc0IsY0FBSSxJQUExQixFQUFFLGVBQWUsR0FBSyxjQUFJLGdCQUFULENBQVU7QUFFNUQsU0FBZSxVQUFVOzs7Ozs7O29CQUdOLHFCQUFNLGVBQWUsRUFBRSxFQUFBOztvQkFBdEMsWUFBWSxHQUFHLFNBQXVCLENBQUM7Ozs7Ozt5QkFFckMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBM0Isd0JBQTJCO29CQUN0QixxQkFBTSxlQUFlLEVBQUUsRUFBQTt3QkFBOUIsc0JBQU8sU0FBdUIsRUFBQzt3QkFFakMscUJBQU0saUJBQWlCLEVBQUUsRUFBQTs7b0JBQXpCLFNBQXlCLENBQUM7Ozs7O0NBQzNCO0FBRUQsU0FBZSxlQUFlOzs7WUFDNUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFBLFlBQUcsRUFBQyxVQUFHLElBQUEsWUFBSSxFQUFDLDhCQUE4QixDQUFDLE1BQUcsQ0FBQyxDQUFDLENBQUM7WUFFN0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFLLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxjQUFJLElBQUEsWUFBRyxFQUFDLGFBQWEsQ0FBQyxTQUFHLFlBQUcsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUMsQ0FBRSxDQUFDLENBQUM7WUFDekcsT0FBTyxDQUFDLEdBQUcsQ0FDVCxVQUFHLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxjQUFJLElBQUEsWUFBRyxFQUFDLGVBQWUsQ0FBQyxTQUFHLFlBQUcsQ0FBQyxTQUFTLENBQ3BELGdFQUFnRSxDQUNqRSxDQUFFLENBQ0osQ0FBQztZQUNGLE9BQU8sQ0FBQyxHQUFHLENBQ1QsVUFBRyxJQUFBLGNBQUssRUFBQyxHQUFHLENBQUMsY0FBSSxJQUFBLFlBQUcsRUFBQyxVQUFVLENBQUMsU0FBRyxZQUFHLENBQUMsU0FBUyxDQUFDLDJEQUEyRCxDQUFDLENBQUUsQ0FDaEgsQ0FBQzs7OztDQUNIO0FBRUQsU0FBZSxpQkFBaUI7Ozs7O3dCQUNmLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7d0JBQ25DOzRCQUNFLElBQUksRUFBRSxTQUFTOzRCQUNmLE9BQU8sRUFBRSxHQUFHOzRCQUNaLElBQUksRUFBRSxNQUFNOzRCQUNaLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUEsWUFBSSxFQUFDLHNCQUFzQixDQUFDLENBQUM7eUJBQ3JEO3FCQUNGLENBQUMsRUFBQTs7b0JBUEksTUFBTSxHQUFHLFNBT2I7eUJBQ0UsTUFBTSxDQUFDLElBQUksRUFBWCx3QkFBVztvQkFDUCxXQUFXLEdBQUcsSUFBSSwwQkFBVyxFQUFFLENBQUM7b0JBQ3RDLHFCQUFNLFdBQVcsQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQXhCLFNBQXdCLENBQUM7Ozs7OztDQUU1QjtBQUVELGtCQUFlLFVBQVUsQ0FBQyJ9