@serverless-devs/s 2.0.94 → 2.0.95-beta.4

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 (43) hide show
  1. package/lib/clean/index.js +12 -12
  2. package/lib/cli/cli-manager.js +9 -9
  3. package/lib/cli/index.js +49 -48
  4. package/lib/component/index.js +81 -81
  5. package/lib/config/add/index.js +24 -24
  6. package/lib/config/delete/index.js +39 -38
  7. package/lib/config/get/index.js +35 -35
  8. package/lib/config/index.js +12 -12
  9. package/lib/core/command/command-manager.d.ts +1 -0
  10. package/lib/core/command/command-manager.js +49 -22
  11. package/lib/core/component/hook.js +4 -4
  12. package/lib/core/component/index.js +9 -9
  13. package/lib/error/human-error.js +5 -5
  14. package/lib/error/human-warning.js +4 -4
  15. package/lib/error/index.js +9 -9
  16. package/lib/index.js +121 -101
  17. package/lib/init/index.js +96 -80
  18. package/lib/init/init-config.d.ts +37 -7
  19. package/lib/init/init-config.js +426 -90
  20. package/lib/init/init-manager.js +25 -26
  21. package/lib/onboarding/index.js +5 -5
  22. package/lib/set/analysis/index.js +15 -15
  23. package/lib/set/index.js +12 -12
  24. package/lib/set/locale/index.js +42 -41
  25. package/lib/set/registry/index.js +43 -42
  26. package/lib/set/workspace/index.js +15 -15
  27. package/lib/specification/parse.js +10 -10
  28. package/lib/update-notifier/index.js +19 -19
  29. package/lib/utils/command-util.d.ts +1 -0
  30. package/lib/utils/command-util.js +41 -11
  31. package/lib/utils/common.js +6 -6
  32. package/lib/utils/index.js +3 -3
  33. package/package.json +2 -2
  34. package/spec/zh/0.0.1/serverless_registry_model/2.overview_and_terminology.md +1 -1
  35. package/spec/zh/0.0.1/serverless_registry_model/3.registry_model.md +2 -2
  36. package/spec/zh/0.0.1/serverless_registry_model/5.design_principles.md +1 -1
  37. package/test/ci.sh +33 -0
  38. package/test/start-fc-http-nodejs12/code/index.js +47 -0
  39. package/test/start-fc-http-nodejs12/s.yaml +38 -0
  40. package/lib/init/template.d.ts +0 -20
  41. package/lib/init/template.js +0 -314
  42. package/lib/init/update-template.d.ts +0 -1
  43. package/lib/init/update-template.js +0 -33
@@ -1,10 +1,40 @@
1
- export declare function GET_APPLICATION_TEMPLATE(): {
2
- promptData: any[];
3
- allAliList: {
4
- name: any;
5
- value: any;
6
- }[];
7
- };
1
+ export declare const ALL_TEMPLATE: {
2
+ name: string;
3
+ value: string;
4
+ }[];
5
+ export declare const APPLICATION_TEMPLATE: ({
6
+ type: string;
7
+ name: string;
8
+ loop: boolean;
9
+ message: string;
10
+ default: string;
11
+ source: (answersSoFar: any, input: any) => Promise<{
12
+ name: string;
13
+ value: string;
14
+ }[]>;
15
+ } | {
16
+ type: string;
17
+ name: string;
18
+ message: any;
19
+ default: string;
20
+ loop: boolean;
21
+ when(answers: any): boolean;
22
+ source: (answersSoFar: any, input: any) => Promise<{
23
+ name: string;
24
+ value: string;
25
+ }[]>;
26
+ } | {
27
+ type: string;
28
+ name: string;
29
+ when(answers: any): boolean;
30
+ default: string;
31
+ message: any;
32
+ source: (answersSoFar: any, input: any) => Promise<{
33
+ name: string;
34
+ value: string;
35
+ }[]>;
36
+ loop?: undefined;
37
+ })[];
8
38
  export declare const PROJECT_NAME_INPUT: {
9
39
  type: string;
10
40
  name: string;
@@ -1,21 +1,44 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
4
37
  };
5
38
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PROJECT_NAME_INPUT = exports.GET_APPLICATION_TEMPLATE = void 0;
39
+ exports.PROJECT_NAME_INPUT = exports.APPLICATION_TEMPLATE = exports.ALL_TEMPLATE = void 0;
7
40
  var utils_1 = require("../utils");
8
- var path_1 = __importDefault(require("path"));
9
- var common_1 = require("../utils/common");
10
41
  var lodash_1 = require("lodash");
11
- var template_1 = __importDefault(require("./template"));
12
- var core_1 = __importDefault(require("../utils/core"));
13
- var fs = core_1.default.fse, getRootHome = core_1.default.getRootHome;
14
- function getTemplateData() {
15
- var cachePath = path_1.default.join(getRootHome(), 'cache');
16
- var templatePath = path_1.default.join(cachePath, 'alibaba-template', 'template.json');
17
- return fs.existsSync(templatePath) ? require(templatePath) : template_1.default;
18
- }
19
42
  var first_level_template = [
20
43
  {
21
44
  name: 'Alibaba Cloud Serverless',
@@ -29,6 +52,10 @@ var first_level_template = [
29
52
  name: 'Tencent Cloud Serverless',
30
53
  value: 'devscomp/start-scf',
31
54
  },
55
+ {
56
+ name: 'Huawei Cloud Serverless',
57
+ value: 'xinwuyun/start-fg',
58
+ },
32
59
  {
33
60
  name: 'Baidu Cloud Serverless',
34
61
  value: 'xinwuyun/start-cfc',
@@ -48,92 +75,401 @@ var devs_template = [
48
75
  value: 'devsapp/start-component',
49
76
  },
50
77
  ];
51
- function formatLang() {
52
- var lang = (0, common_1.getLang)();
53
- var langMap = {
54
- en: 'name_en',
55
- zh: 'name_zh',
56
- };
57
- return langMap[lang] || 'name_en';
58
- }
59
- function GET_APPLICATION_TEMPLATE() {
60
- var Body = getTemplateData().Body;
61
- var lang = formatLang();
62
- var ali_template = (0, lodash_1.map)(Body, function (item) { return ({
63
- name: item[lang],
64
- value: item.value,
65
- }); });
66
- var list = [];
67
- var allList = (0, lodash_1.concat)(first_level_template, ali_template, devs_template);
68
- var allAliList = (0, lodash_1.concat)(ali_template);
69
- (0, lodash_1.each)(Body, function (item) {
70
- var templates = (0, lodash_1.sortBy)(item.templates, function (obj) { return obj.rank; });
71
- var source = (0, lodash_1.map)(templates, function (obj) { return ({
72
- name: obj[lang],
73
- value: obj.value,
74
- isDeploy: obj.is_deploy,
75
- }); });
76
- allList = (0, lodash_1.concat)(allList, source);
77
- allAliList = (0, lodash_1.concat)(allAliList, source);
78
- list.push({
79
- type: 'autocomplete',
80
- name: 'template',
81
- message: (0, utils_1.i18n)('template-tip'),
82
- loop: true,
83
- when: function (answers) {
84
- return answers.ali_template_answer === item.value;
85
- },
86
- source: function (answersSoFar, input) {
87
- return input ? (0, lodash_1.filter)(source, function (obj) { return (0, lodash_1.lowerCase)(obj.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; }) : source;
88
- },
89
- });
90
- });
91
- var promptData = (0, lodash_1.concat)([
92
- {
93
- type: 'autocomplete',
94
- name: 'firstLevel',
95
- loop: true,
96
- message: 'Hello Serverless for Cloud Vendors',
97
- source: function (answersSoFar, input) {
98
- return input
99
- ? allList.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
100
- : first_level_template;
101
- },
102
- },
103
- {
104
- type: 'autocomplete',
105
- name: 'ali_template_answer',
106
- loop: true,
107
- when: function (answers) {
108
- return answers.firstLevel === 'Alibaba_Cloud_Serverless';
109
- },
110
- message: (0, utils_1.i18n)('app-tip'),
111
- source: function (answersSoFar, input) {
112
- return input
113
- ? allAliList.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
114
- : ali_template;
115
- },
78
+ var ali_template = [
79
+ {
80
+ name: 'Quick start [Deploy a Hello World function to FaaS]',
81
+ value: 'quick_start',
82
+ },
83
+ {
84
+ name: 'Container example [Deploy function to FaaS with custom-container]',
85
+ value: 'container_example',
86
+ },
87
+ {
88
+ name: 'Web Framework [Deploy a web framework to FaaS]',
89
+ value: 'web_framework',
90
+ },
91
+ {
92
+ name: 'Static website [Deploy a static website]',
93
+ value: 'static_website',
94
+ },
95
+ {
96
+ name: 'Best practice [Experience serverless project]',
97
+ value: 'best_practice',
98
+ },
99
+ ];
100
+ var quick_start_template = [
101
+ {
102
+ name: '[HTTP] Node.js 12',
103
+ value: 'devsapp/start-fc-http-nodejs12',
104
+ isDeploy: true,
105
+ },
106
+ {
107
+ name: '[HTTP] Python3',
108
+ value: 'devsapp/start-fc-http-python3',
109
+ isDeploy: true,
110
+ },
111
+ {
112
+ name: '[HTTP] Java8',
113
+ value: 'devsapp/start-fc-http-java8',
114
+ },
115
+ {
116
+ name: '[HTTP] PHP7',
117
+ value: 'devsapp/start-fc-http-php7',
118
+ isDeploy: true,
119
+ },
120
+ {
121
+ name: '[HTTP] C++ (custom)',
122
+ value: 'devsapp/fc-custom-cpp-http',
123
+ isDeploy: true,
124
+ },
125
+ {
126
+ name: '[Event] Node.js 12',
127
+ value: 'devsapp/start-fc-event-nodejs12',
128
+ isDeploy: true,
129
+ },
130
+ {
131
+ name: '[Event] Python3',
132
+ value: 'devsapp/start-fc-event-python3',
133
+ isDeploy: true,
134
+ },
135
+ {
136
+ name: '[Event] Java8',
137
+ value: 'devsapp/start-fc-event-java8',
138
+ },
139
+ {
140
+ name: '[Event] PHP7',
141
+ value: 'devsapp/start-fc-event-php7',
142
+ isDeploy: true,
143
+ },
144
+ {
145
+ name: '[Event] Go (custom)',
146
+ value: 'devsapp/fc-custom-golang-event',
147
+ },
148
+ {
149
+ name: '[Event] Powershell (custom)',
150
+ value: 'devsapp/fc-custom-powershell-event',
151
+ },
152
+ {
153
+ name: '[Event] Typescript (custom)',
154
+ value: 'devsapp/fc-custom-typescript-event',
155
+ },
156
+ {
157
+ name: '[Event] Lua (custom)',
158
+ value: 'devsapp/fc-custom-lua-event',
159
+ },
160
+ {
161
+ name: '[Event] Ruby (custom)',
162
+ value: 'devsapp/fc-custom-ruby-event',
163
+ },
164
+ {
165
+ name: '[Event] Rust (custom)',
166
+ value: 'devsapp/fc-custom-rust-event',
167
+ },
168
+ {
169
+ name: '[Event] Dart (custom)',
170
+ value: 'devsapp/fc-custom-dart-event',
171
+ },
172
+ ];
173
+ var container_example_template = [
174
+ {
175
+ name: '[HTTP] C++',
176
+ value: 'devsapp/start-fc-custom-container-http-cpp',
177
+ },
178
+ {
179
+ name: '[HTTP] Java (Springboot)',
180
+ value: 'devsapp/start-fc-custom-container-http-springboot',
181
+ },
182
+ {
183
+ name: '[HTTP] ASP.NET Core',
184
+ value: 'devsapp/start-fc-custom-container-http-aspdotnetcore',
185
+ },
186
+ {
187
+ name: '[Event] Node.js 14',
188
+ value: 'devsapp/start-fc-custom-container-event-nodejs14',
189
+ isDeploy: true,
190
+ },
191
+ {
192
+ name: '[Event] Python3.9',
193
+ value: 'devsapp/start-fc-custom-container-event-python3.9',
194
+ },
195
+ {
196
+ name: '[Event] C++',
197
+ value: 'devsapp/start-fc-custom-container-event-cpp',
198
+ },
199
+ ];
200
+ var web_framework_template = [
201
+ {
202
+ name: 'Express.js',
203
+ value: 'devsapp/start-express',
204
+ isDeploy: true,
205
+ },
206
+ {
207
+ name: 'Egg.js',
208
+ value: 'devsapp/start-egg',
209
+ isDeploy: true,
210
+ },
211
+ {
212
+ name: 'Koa.js',
213
+ value: 'devsapp/start-koa',
214
+ },
215
+ {
216
+ name: 'Nuxt.js (SSR)',
217
+ value: 'devsapp/start-nuxt-ssr',
218
+ isDeploy: true,
219
+ },
220
+ {
221
+ name: 'Next.js (SSR)',
222
+ value: 'devsapp/start-next-ssr',
223
+ isDeploy: true,
224
+ },
225
+ {
226
+ name: 'Django',
227
+ value: 'devsapp/start-django',
228
+ isDeploy: true,
229
+ },
230
+ {
231
+ name: 'Flask',
232
+ value: 'devsapp/start-flask',
233
+ isDeploy: true,
234
+ },
235
+ {
236
+ name: 'Tornado',
237
+ value: 'devsapp/start-tornado',
238
+ isDeploy: true,
239
+ },
240
+ {
241
+ name: 'Springboot',
242
+ value: 'devsapp/start-springboot',
243
+ },
244
+ {
245
+ name: 'ThinkPHP',
246
+ value: 'devsapp/start-thinkphp',
247
+ },
248
+ {
249
+ name: 'Laravel',
250
+ value: 'devsapp/start-laravel',
251
+ },
252
+ ];
253
+ var static_website_template = [
254
+ {
255
+ name: 'Vue.js',
256
+ value: 'devsapp/website-vue',
257
+ isDeploy: true,
258
+ },
259
+ {
260
+ name: 'React.js',
261
+ value: 'devsapp/website-react',
262
+ isDeploy: true,
263
+ },
264
+ {
265
+ name: 'Docusaurus',
266
+ value: 'devsapp/website-docusaurus',
267
+ isDeploy: true,
268
+ },
269
+ {
270
+ name: 'Hexo',
271
+ value: 'devsapp/website-hexo',
272
+ isDeploy: true,
273
+ },
274
+ {
275
+ name: 'Vuepress',
276
+ value: 'devsapp/website-vuepress',
277
+ isDeploy: true,
278
+ },
279
+ ];
280
+ var best_practice_template = [
281
+ {
282
+ name: '[AI] PyTorch',
283
+ value: 'devsapp/start-pytorch',
284
+ isDeploy: true,
285
+ },
286
+ {
287
+ name: '[AI] Tensorflow',
288
+ value: 'devsapp/start-tensorflow',
289
+ isDeploy: true,
290
+ },
291
+ {
292
+ name: '[AI] Image Prediction',
293
+ value: 'devsapp/image-prediction-app',
294
+ isDeploy: true,
295
+ },
296
+ {
297
+ name: '[DB] MySQL Example',
298
+ value: 'devsapp/start-fc-mysql-python',
299
+ },
300
+ {
301
+ name: '[DB] MongoDB Example',
302
+ value: 'devsapp/start-fc-mongodb-python',
303
+ },
304
+ {
305
+ name: '[DB] Redis Example',
306
+ value: 'devsapp start-fc-redis-python',
307
+ },
308
+ {
309
+ name: 'Puppeteer Example',
310
+ value: 'devsapp/puppeteer-nodejs',
311
+ },
312
+ {
313
+ name: 'FFmpeg Example',
314
+ value: 'devsapp/ffmpeg-app',
315
+ },
316
+ {
317
+ name: 'Mall admin Example',
318
+ value: 'devsapp/start-fc-mall-admin',
319
+ },
320
+ ];
321
+ var all_ali_template = (0, lodash_1.concat)(ali_template, quick_start_template, container_example_template, web_framework_template, static_website_template, best_practice_template);
322
+ exports.ALL_TEMPLATE = (0, lodash_1.concat)(first_level_template, all_ali_template, devs_template);
323
+ exports.APPLICATION_TEMPLATE = [
324
+ {
325
+ type: 'autocomplete',
326
+ name: 'firstLevel',
327
+ loop: true,
328
+ message: 'Hello Serverless for Cloud Vendors',
329
+ default: (0, lodash_1.first)(first_level_template).value,
330
+ source: function (answersSoFar, input) {
331
+ return __awaiter(this, void 0, void 0, function () {
332
+ return __generator(this, function (_a) {
333
+ return [2 /*return*/, input
334
+ ? exports.ALL_TEMPLATE.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
335
+ : first_level_template];
336
+ });
337
+ });
116
338
  },
117
- ], list, {
339
+ },
340
+ {
118
341
  type: 'autocomplete',
119
342
  name: 'template',
120
343
  message: (0, utils_1.i18n)('template-tip'),
344
+ default: (0, lodash_1.first)(devs_template).value,
121
345
  loop: true,
122
346
  when: function (answers) {
123
347
  return answers.firstLevel === 'Dev_Template_for_Serverless_Devs';
124
348
  },
125
349
  source: function (answersSoFar, input) {
126
- return input
127
- ? devs_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
128
- : devs_template;
350
+ return __awaiter(this, void 0, void 0, function () {
351
+ return __generator(this, function (_a) {
352
+ return [2 /*return*/, input
353
+ ? devs_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
354
+ : devs_template];
355
+ });
356
+ });
129
357
  },
130
- });
131
- return {
132
- promptData: promptData,
133
- allAliList: allAliList,
134
- };
135
- }
136
- exports.GET_APPLICATION_TEMPLATE = GET_APPLICATION_TEMPLATE;
358
+ },
359
+ {
360
+ type: 'autocomplete',
361
+ name: 'ali_template',
362
+ when: function (answers) {
363
+ return answers.firstLevel === 'Alibaba_Cloud_Serverless';
364
+ },
365
+ default: (0, lodash_1.first)(ali_template).value,
366
+ message: (0, utils_1.i18n)('app-tip'),
367
+ source: function (answersSoFar, input) {
368
+ return __awaiter(this, void 0, void 0, function () {
369
+ return __generator(this, function (_a) {
370
+ return [2 /*return*/, input
371
+ ? all_ali_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
372
+ : ali_template];
373
+ });
374
+ });
375
+ },
376
+ },
377
+ {
378
+ type: 'autocomplete',
379
+ name: 'template',
380
+ loop: true,
381
+ when: function (answers) {
382
+ return answers.ali_template === 'quick_start';
383
+ },
384
+ message: (0, utils_1.i18n)('template-tip'),
385
+ default: (0, lodash_1.first)(quick_start_template).value,
386
+ source: function (answersSoFar, input) {
387
+ return __awaiter(this, void 0, void 0, function () {
388
+ return __generator(this, function (_a) {
389
+ return [2 /*return*/, input
390
+ ? quick_start_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
391
+ : quick_start_template];
392
+ });
393
+ });
394
+ },
395
+ },
396
+ {
397
+ type: 'autocomplete',
398
+ name: 'template',
399
+ loop: true,
400
+ when: function (answers) {
401
+ return answers.ali_template === 'container_example';
402
+ },
403
+ message: (0, utils_1.i18n)('template-tip'),
404
+ default: (0, lodash_1.first)(container_example_template).value,
405
+ source: function (answersSoFar, input) {
406
+ return __awaiter(this, void 0, void 0, function () {
407
+ return __generator(this, function (_a) {
408
+ return [2 /*return*/, input
409
+ ? container_example_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
410
+ : container_example_template];
411
+ });
412
+ });
413
+ },
414
+ },
415
+ {
416
+ type: 'autocomplete',
417
+ name: 'template',
418
+ loop: true,
419
+ when: function (answers) {
420
+ return answers.ali_template === 'web_framework';
421
+ },
422
+ message: (0, utils_1.i18n)('template-tip'),
423
+ default: (0, lodash_1.first)(web_framework_template).value,
424
+ source: function (answersSoFar, input) {
425
+ return __awaiter(this, void 0, void 0, function () {
426
+ return __generator(this, function (_a) {
427
+ return [2 /*return*/, input
428
+ ? web_framework_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
429
+ : web_framework_template];
430
+ });
431
+ });
432
+ },
433
+ },
434
+ {
435
+ type: 'autocomplete',
436
+ name: 'template',
437
+ loop: true,
438
+ when: function (answers) {
439
+ return answers.ali_template === 'static_website';
440
+ },
441
+ message: (0, utils_1.i18n)('template-tip'),
442
+ default: (0, lodash_1.first)(static_website_template).value,
443
+ source: function (answersSoFar, input) {
444
+ return __awaiter(this, void 0, void 0, function () {
445
+ return __generator(this, function (_a) {
446
+ return [2 /*return*/, input
447
+ ? static_website_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
448
+ : static_website_template];
449
+ });
450
+ });
451
+ },
452
+ },
453
+ {
454
+ type: 'autocomplete',
455
+ name: 'template',
456
+ loop: true,
457
+ when: function (answers) {
458
+ return answers.ali_template === 'best_practice';
459
+ },
460
+ message: (0, utils_1.i18n)('template-tip'),
461
+ default: (0, lodash_1.first)(best_practice_template).value,
462
+ source: function (answersSoFar, input) {
463
+ return __awaiter(this, void 0, void 0, function () {
464
+ return __generator(this, function (_a) {
465
+ return [2 /*return*/, input
466
+ ? best_practice_template.filter(function (item) { return (0, lodash_1.lowerCase)(item.name).indexOf((0, lodash_1.lowerCase)(input)) !== -1; })
467
+ : best_practice_template];
468
+ });
469
+ });
470
+ },
471
+ },
472
+ ];
137
473
  exports.PROJECT_NAME_INPUT = {
138
474
  type: 'input',
139
475
  name: 'projectName',
@@ -142,4 +478,4 @@ exports.PROJECT_NAME_INPUT = {
142
478
  return input.length > 0 ? true : 'You must provide a project name';
143
479
  },
144
480
  };
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5pdC9pbml0LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrQ0FBZ0M7QUFDaEMsOENBQXdCO0FBQ3hCLDBDQUEwQztBQUMxQyxpQ0FBc0U7QUFDdEUsd0RBQXNDO0FBQ3RDLHVEQUFpQztBQUN6QixJQUFLLEVBQUUsR0FBa0IsY0FBSSxJQUF0QixFQUFFLFdBQVcsR0FBSyxjQUFJLFlBQVQsQ0FBVTtBQUV0QyxTQUFTLGVBQWU7SUFDdEIsSUFBTSxTQUFTLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxJQUFNLFlBQVksR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMvRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQVksQ0FBQztBQUM1RSxDQUFDO0FBRUQsSUFBTSxvQkFBb0IsR0FBRztJQUMzQjtRQUNFLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsS0FBSyxFQUFFLDBCQUEwQjtLQUNsQztJQUNEO1FBQ0UsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixLQUFLLEVBQUUsdUJBQXVCO0tBQy9CO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLEtBQUssRUFBRSxvQkFBb0I7S0FDNUI7SUFDRDtRQUNFLElBQUksRUFBRSx3QkFBd0I7UUFDOUIsS0FBSyxFQUFFLG9CQUFvQjtLQUM1QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLGtDQUFrQztRQUN4QyxLQUFLLEVBQUUsa0NBQWtDO0tBQzFDO0NBQ0YsQ0FBQztBQUVGLElBQU0sYUFBYSxHQUFHO0lBQ3BCO1FBQ0UsSUFBSSxFQUFFLHlC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
481
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5pdC9pbml0LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrQ0FBZ0M7QUFDaEMsaUNBQWtEO0FBRWxELElBQU0sb0JBQW9CLEdBQUc7SUFDM0I7UUFDRSxJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLEtBQUssRUFBRSwwQkFBMEI7S0FDbEM7SUFDRDtRQUNFLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsS0FBSyxFQUFFLHVCQUF1QjtLQUMvQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLDBCQUEwQjtRQUNoQyxLQUFLLEVBQUUsb0JBQW9CO0tBQzVCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUseUJBQXlCO1FBQy9CLEtBQUssRUFBRSxtQkFBbUI7S0FDM0I7SUFDRDtRQUNFLElBQUksRUFBRSx3QkFBd0I7UUFDOUIsS0FBSyxFQUFFLG9CQUFvQjtLQUM1QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLGtDQUFrQztRQUN4QyxLQUFLLEVBQUUsa0NBQWtDO0tBQzFDO0NBQ0YsQ0FBQztBQUVGLElBQU0sYUFBYSxHQUFHO0lBQ3BCO1FBQ0UsSUFBSSxFQUFFLHlCQUF5QjtRQUMvQixLQUFLLEVBQUUsMkJBQTJCO0tBQ25DO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLEtBQUssRUFBRSx5QkFBeUI7S0FDakM7Q0FDRixDQUFDO0FBRUYsSUFBTSxZQUFZLEdBQUc7SUFDbkI7UUFDRSxJQUFJLEVBQUUscURBQXFEO1FBQzNELEtBQUssRUFBRSxhQUFhO0tBQ3JCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsbUVBQW1FO1FBQ3pFLEtBQUssRUFBRSxtQkFBbUI7S0FDM0I7SUFDRDtRQUNFLElBQUksRUFBRSxnREFBZ0Q7UUFDdEQsS0FBSyxFQUFFLGVBQWU7S0FDdkI7SUFDRDtRQUNFLElBQUksRUFB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