@serverless-devs/s 2.2.2 → 3.0.0-85afd68d

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 (56) hide show
  1. package/lib/daemon/lib.js +327 -0
  2. package/lib/daemon/report.js +50 -0
  3. package/lib/daemon/update-cli.js +20 -0
  4. package/lib/daemon/update-component.js +21 -0
  5. package/lib/daemon/update-templates.js +19 -0
  6. package/lib/index.js +1677 -246
  7. package/package.json +62 -48
  8. package/readme.md +2 -2
  9. package/lib/check-node-version/index.js +0 -15
  10. package/lib/clean/index.js +0 -166
  11. package/lib/cli/index.js +0 -223
  12. package/lib/component/index.js +0 -286
  13. package/lib/config/add/index.js +0 -190
  14. package/lib/config/common/common.js +0 -194
  15. package/lib/config/delete/index.js +0 -121
  16. package/lib/config/get/index.js +0 -130
  17. package/lib/config/index.js +0 -39
  18. package/lib/config/rename/index.js +0 -132
  19. package/lib/constant.js +0 -8
  20. package/lib/daemon/template.js +0 -20
  21. package/lib/daemon/update.js +0 -9
  22. package/lib/edit/index.js +0 -104
  23. package/lib/error/command-error.js +0 -29
  24. package/lib/error/config-delete-error.js +0 -29
  25. package/lib/error/config-error.js +0 -29
  26. package/lib/error/config-get-error.js +0 -29
  27. package/lib/error/human-error.js +0 -76
  28. package/lib/error/human-warning.js +0 -20
  29. package/lib/error/index.js +0 -147
  30. package/lib/error/init-error.js +0 -29
  31. package/lib/error/serverless-error.js +0 -19
  32. package/lib/execDaemon.js +0 -35
  33. package/lib/global-agent/index.js +0 -22
  34. package/lib/help/index.js +0 -158
  35. package/lib/init/index.js +0 -106
  36. package/lib/init/init-config.js +0 -606
  37. package/lib/init/init-manager.js +0 -223
  38. package/lib/onboarding/index.js +0 -111
  39. package/lib/set/analysis/index.js +0 -118
  40. package/lib/set/index.js +0 -40
  41. package/lib/set/locale/index.js +0 -118
  42. package/lib/set/log/index.js +0 -118
  43. package/lib/set/proxy/index.js +0 -123
  44. package/lib/set/registry/index.js +0 -146
  45. package/lib/set/workspace/index.js +0 -119
  46. package/lib/special-commad/index.js +0 -156
  47. package/lib/update-notifier/index.js +0 -137
  48. package/lib/utils/common.js +0 -347
  49. package/lib/utils/core.js +0 -49
  50. package/lib/utils/handler-set-config.js +0 -130
  51. package/lib/utils/i18n/en.js +0 -46
  52. package/lib/utils/i18n/index.js +0 -16
  53. package/lib/utils/i18n/zh.js +0 -46
  54. package/lib/utils/index.js +0 -39
  55. package/lib/utils/logger.js +0 -12
  56. package/lib/verify/index.js +0 -224
@@ -1,118 +0,0 @@
1
- "use strict";
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 (g && (g = 0, op[0] && (_ = 0)), _) 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
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- var error_1 = require("../../error");
42
- var logger_1 = __importDefault(require("../../utils/logger"));
43
- var core_1 = __importDefault(require("../../utils/core"));
44
- var common_1 = require("../../utils/common");
45
- var inquirer = core_1.default.inquirer, colors = core_1.default.colors;
46
- var handler_set_config_1 = require("../../utils/handler-set-config");
47
- var description = "Set log action.\n\n Example:\n $ s set log\n $ s set log disable\n \n".concat((0, common_1.emoji)('📖'), " Document: ").concat(colors.underline('https://github.com/Serverless-Devs/Serverless-Devs/tree/master/docs/zh/command/set.md'));
48
- var promptOption = [
49
- {
50
- type: 'list',
51
- name: 'log',
52
- message: 'Choose a action?',
53
- choices: [
54
- {
55
- name: 'enable',
56
- value: 'enable',
57
- },
58
- {
59
- name: 'disable',
60
- value: 'disable',
61
- },
62
- ],
63
- },
64
- ];
65
- function run(program) {
66
- var _this = this;
67
- var command = program
68
- .command('log')
69
- .helpOption('-h, --help', 'Display help for command')
70
- .addHelpCommand(false)
71
- .description(description)
72
- .action(function () { return __awaiter(_this, void 0, void 0, function () {
73
- var error_2;
74
- return __generator(this, function (_a) {
75
- switch (_a.label) {
76
- case 0:
77
- _a.trys.push([0, 2, , 3]);
78
- return [4 /*yield*/, doAction()];
79
- case 1:
80
- _a.sent();
81
- return [3 /*break*/, 3];
82
- case 2:
83
- error_2 = _a.sent();
84
- throw new error_1.CommandError(error_2.message);
85
- case 3: return [2 /*return*/];
86
- }
87
- });
88
- }); });
89
- var doAction = function () { return __awaiter(_this, void 0, void 0, function () {
90
- var argv, help, answers, val;
91
- return __generator(this, function (_a) {
92
- switch (_a.label) {
93
- case 0:
94
- argv = process.argv.splice(2);
95
- help = core_1.default.minimist(argv, { alias: { help: 'h' } }).help;
96
- help && command.help();
97
- if (!(argv.length === 2)) return [3 /*break*/, 2];
98
- logger_1.default.log("\n".concat((0, common_1.emoji)('📝'), " Current log action: ").concat((0, handler_set_config_1.getConfig)('log', 'enable'), "\n"));
99
- return [4 /*yield*/, inquirer.prompt(promptOption)];
100
- case 1:
101
- answers = _a.sent();
102
- (0, handler_set_config_1.setConfig)('log', answers.log);
103
- _a.label = 2;
104
- case 2:
105
- if (argv.length > 2) {
106
- val = argv[2];
107
- if (val) {
108
- (0, handler_set_config_1.setConfig)('log', val);
109
- logger_1.default.log('Setup succeeded', 'green');
110
- }
111
- }
112
- return [2 /*return*/];
113
- }
114
- });
115
- }); };
116
- }
117
- module.exports = run;
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2V0L2xvZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EscUNBQTJDO0FBQzNDLDhEQUF3QztBQUN4QywwREFBb0M7QUFDcEMsNkNBQTJDO0FBQ25DLElBQUEsUUFBUSxHQUFhLGNBQUksU0FBakIsRUFBRSxNQUFNLEdBQUssY0FBSSxPQUFULENBQVU7QUFDbEMscUVBQXNFO0FBRXRFLElBQU0sV0FBVyxHQUFHLHVHQU1sQixJQUFBLGNBQUssRUFBQyxJQUFJLENBQUMsd0JBQWMsTUFBTSxDQUFDLFNBQVMsQ0FDekMsdUZBQXVGLENBQ3hGLENBQUUsQ0FBQztBQUVKLElBQU0sWUFBWSxHQUFHO0lBQ25CO1FBQ0UsSUFBSSxFQUFFLE1BQU07UUFDWixJQUFJLEVBQUUsS0FBSztRQUNYLE9BQU8sRUFBRSxrQkFBa0I7UUFDM0IsT0FBTyxFQUFFO1lBQ1A7Z0JBQ0UsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsS0FBSyxFQUFFLFFBQVE7YUFDaEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixLQUFLLEVBQUUsU0FBUzthQUNqQjtTQUNGO0tBQ0Y7Q0FDRixDQUFDO0FBRUYsU0FBUyxHQUFHLENBQUMsT0FBZ0I7SUFBN0IsaUJBK0JDO0lBOUJDLElBQU0sT0FBTyxHQUFHLE9BQU87U0FDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQztTQUNkLFVBQVUsQ0FBQyxZQUFZLEVBQUUsMEJBQTBCLENBQUM7U0FDcEQsY0FBYyxDQUFDLEtBQUssQ0FBQztTQUNyQixXQUFXLENBQUMsV0FBVyxDQUFDO1NBQ3hCLE1BQU0sQ0FBQzs7Ozs7O29CQUVKLHFCQUFNLFFBQVEsRUFBRSxFQUFBOztvQkFBaEIsU0FBZ0IsQ0FBQzs7OztvQkFFakIsTUFBTSxJQUFJLG9CQUFZLENBQUMsT0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzs7O1NBRXpDLENBQUMsQ0FBQztJQUVMLElBQU0sUUFBUSxHQUFHOzs7OztvQkFDVCxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzVCLElBQUksR0FBSyxjQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLEtBQWxELENBQW1EO29CQUMvRCxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO3lCQUNuQixDQUFBLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFBLEVBQWpCLHdCQUFpQjtvQkFDbkIsZ0JBQU0sQ0FBQyxHQUFHLENBQUMsWUFBSyxJQUFBLGNBQUssRUFBQyxJQUFJLENBQUMsa0NBQXdCLElBQUEsOEJBQVMsRUFBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQUksQ0FBQyxDQUFDO29CQUNuRSxxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFBOztvQkFBN0MsT0FBTyxHQUFHLFNBQW1DO29CQUNuRCxJQUFBLDhCQUFTLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQzs7O29CQUVoQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUNiLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQ3BCLElBQUksR0FBRyxFQUFFOzRCQUNQLElBQUEsOEJBQVMsRUFBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7NEJBQ3RCLGdCQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO3lCQUN4QztxQkFDRjs7OztTQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsaUJBQVMsR0FBRyxDQUFDIn0=
@@ -1,123 +0,0 @@
1
- "use strict";
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 (g && (g = 0, op[0] && (_ = 0)), _) 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
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- var utils_1 = require("../../utils");
42
- var error_1 = require("../../error");
43
- var core_1 = __importDefault(require("../../utils/core"));
44
- var common_1 = require("../../utils/common");
45
- var inquirer = core_1.default.inquirer;
46
- var handler_set_config_1 = require("../../utils/handler-set-config");
47
- var colors = core_1.default.colors, lodash = core_1.default.lodash;
48
- var has = lodash.has;
49
- var description = "Set proxy information.\n\nExample:\n $ s set proxy\n $ s set proxy --http_proxy xxxx:xxx --https_proxy xxxx:xxx\n $ s set proxy --enable false\n \n".concat((0, common_1.emoji)('📖'), " Document: ").concat(colors.underline('https://github.com/Serverless-Devs/Serverless-Devs/tree/master/docs/zh/command/set.md'));
50
- function run(program) {
51
- var _this = this;
52
- var command = program
53
- .command('proxy')
54
- .usage('[options]')
55
- .option('--enable', 'whether to enable proxy')
56
- .option('--http_proxy <http_proxy_value>', 'Specify the http_proxy.')
57
- .option('--https_proxy <https_proxy_value>', 'Specify the https_proxy.')
58
- .helpOption('-h, --help', 'Display help for command')
59
- .addHelpCommand(false)
60
- .description(description)
61
- .action(function () { return __awaiter(_this, void 0, void 0, function () {
62
- var error_2;
63
- return __generator(this, function (_a) {
64
- switch (_a.label) {
65
- case 0:
66
- _a.trys.push([0, 2, , 3]);
67
- return [4 /*yield*/, doAction()];
68
- case 1:
69
- _a.sent();
70
- return [3 /*break*/, 3];
71
- case 2:
72
- error_2 = _a.sent();
73
- throw new error_1.CommandError(error_2.message);
74
- case 3: return [2 /*return*/];
75
- }
76
- });
77
- }); });
78
- var doAction = function () { return __awaiter(_this, void 0, void 0, function () {
79
- var argvData, rawData, http_proxy, https_proxy, help, answer;
80
- return __generator(this, function (_a) {
81
- switch (_a.label) {
82
- case 0:
83
- argvData = core_1.default.getGlobalArgs(process.argv.slice(2));
84
- rawData = argvData._, http_proxy = argvData.http_proxy, https_proxy = argvData.https_proxy, help = argvData.help;
85
- help && command.help();
86
- if (http_proxy || https_proxy || has(argvData, 'enable')) {
87
- http_proxy && (0, handler_set_config_1.setConfig)('http_proxy', http_proxy);
88
- https_proxy && (0, handler_set_config_1.setConfig)('https_proxy', https_proxy);
89
- has(argvData, 'enable') && (0, handler_set_config_1.setConfig)('proxy_enable', argvData.enable === 'false' ? false : true);
90
- return [2 /*return*/, utils_1.logger.success('Setup succeeded')];
91
- }
92
- if (!(rawData.length === 2)) return [3 /*break*/, 2];
93
- return [4 /*yield*/, inquirer.prompt([
94
- {
95
- type: 'input',
96
- message: 'Please enter http_proxy: ',
97
- name: 'http_proxy',
98
- },
99
- {
100
- type: 'input',
101
- message: 'Please enter https_proxy: ',
102
- name: 'https_proxy',
103
- },
104
- {
105
- type: 'confirm',
106
- message: 'Do you want to enable proxy',
107
- default: true,
108
- name: 'http_proxy_enable',
109
- },
110
- ])];
111
- case 1:
112
- answer = _a.sent();
113
- (0, handler_set_config_1.setConfig)('http_proxy', answer.http_proxy);
114
- (0, handler_set_config_1.setConfig)('https_proxy', answer.https_proxy);
115
- (0, handler_set_config_1.setConfig)('proxy_enable', answer.http_proxy_enable);
116
- return [2 /*return*/];
117
- case 2: return [2 /*return*/];
118
- }
119
- });
120
- }); };
121
- }
122
- module.exports = run;
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2V0L3Byb3h5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxxQ0FBcUM7QUFDckMscUNBQTJDO0FBQzNDLDBEQUFvQztBQUNwQyw2Q0FBMkM7QUFDbkMsSUFBQSxRQUFRLEdBQUssY0FBSSxTQUFULENBQVU7QUFDMUIscUVBQTJEO0FBQ25ELElBQUEsTUFBTSxHQUFhLGNBQUksT0FBakIsRUFBRSxNQUFNLEdBQUssY0FBSSxPQUFULENBQVU7QUFDeEIsSUFBQSxHQUFHLEdBQUssTUFBTSxJQUFYLENBQVk7QUFFdkIsSUFBTSxXQUFXLEdBQUcscUtBT2xCLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyx3QkFBYyxNQUFNLENBQUMsU0FBUyxDQUN6Qyx1RkFBdUYsQ0FDeEYsQ0FBRSxDQUFDO0FBRUosU0FBUyxHQUFHLENBQUMsT0FBZ0I7SUFBN0IsaUJBc0RDO0lBckRDLElBQU0sT0FBTyxHQUFHLE9BQU87U0FDcEIsT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUNoQixLQUFLLENBQUMsV0FBVyxDQUFDO1NBQ2xCLE1BQU0sQ0FBQyxVQUFVLEVBQUUseUJBQXlCLENBQUM7U0FDN0MsTUFBTSxDQUFDLGlDQUFpQyxFQUFFLHlCQUF5QixDQUFDO1NBQ3BFLE1BQU0sQ0FBQyxtQ0FBbUMsRUFBRSwwQkFBMEIsQ0FBQztTQUN2RSxVQUFVLENBQUMsWUFBWSxFQUFFLDBCQUEwQixDQUFDO1NBQ3BELGNBQWMsQ0FBQyxLQUFLLENBQUM7U0FDckIsV0FBVyxDQUFDLFdBQVcsQ0FBQztTQUN4QixNQUFNLENBQUM7Ozs7OztvQkFFSixxQkFBTSxRQUFRLEVBQUUsRUFBQTs7b0JBQWhCLFNBQWdCLENBQUM7Ozs7b0JBRWpCLE1BQU0sSUFBSSxvQkFBWSxDQUFDLE9BQUssQ0FBQyxPQUFPLENBQUMsQ0FBQzs7OztTQUV6QyxDQUFDLENBQUM7SUFFTCxJQUFNLFFBQVEsR0FBRzs7Ozs7b0JBQ1QsUUFBUSxHQUFHLGNBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDaEQsT0FBTyxHQUFvQyxRQUFRLEVBQTVDLEVBQUUsVUFBVSxHQUF3QixRQUFRLFdBQWhDLEVBQUUsV0FBVyxHQUFXLFFBQVEsWUFBbkIsRUFBRSxJQUFJLEdBQUssUUFBUSxLQUFiLENBQWM7b0JBQy9ELElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3ZCLElBQUksVUFBVSxJQUFJLFdBQVcsSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxFQUFFO3dCQUN4RCxVQUFVLElBQUksSUFBQSw4QkFBUyxFQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQzt3QkFDbEQsV0FBVyxJQUFJLElBQUEsOEJBQVMsRUFBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7d0JBQ3JELEdBQUcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksSUFBQSw4QkFBUyxFQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsTUFBTSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDakcsc0JBQU8sY0FBTSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxFQUFDO3FCQUMxQzt5QkFFRyxDQUFBLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFBLEVBQXBCLHdCQUFvQjtvQkFDUCxxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDOzRCQUNuQztnQ0FDRSxJQUFJLEVBQUUsT0FBTztnQ0FDYixPQUFPLEVBQUUsMkJBQTJCO2dDQUNwQyxJQUFJLEVBQUUsWUFBWTs2QkFDbkI7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLE9BQU87Z0NBQ2IsT0FBTyxFQUFFLDRCQUE0QjtnQ0FDckMsSUFBSSxFQUFFLGFBQWE7NkJBQ3BCOzRCQUNEO2dDQUNFLElBQUksRUFBRSxTQUFTO2dDQUNmLE9BQU8sRUFBRSw2QkFBNkI7Z0NBQ3RDLE9BQU8sRUFBRSxJQUFJO2dDQUNiLElBQUksRUFBRSxtQkFBbUI7NkJBQzFCO3lCQUNGLENBQUMsRUFBQTs7b0JBakJJLE1BQU0sR0FBRyxTQWlCYjtvQkFDRixJQUFBLDhCQUFTLEVBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDM0MsSUFBQSw4QkFBUyxFQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzdDLElBQUEsOEJBQVMsRUFBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7b0JBQ3BELHNCQUFPOzs7O1NBRVYsQ0FBQztBQUNKLENBQUM7QUFFRCxpQkFBUyxHQUFHLENBQUMifQ==
@@ -1,146 +0,0 @@
1
- "use strict";
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 (g && (g = 0, op[0] && (_ = 0)), _) 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
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- var utils_1 = require("../../utils");
42
- var error_1 = require("../../error");
43
- var core_1 = __importDefault(require("../../utils/core"));
44
- var common_1 = require("../../utils/common");
45
- var inquirer = core_1.default.inquirer;
46
- var handler_set_config_1 = require("../../utils/handler-set-config");
47
- var colors = core_1.default.colors;
48
- var CUSTOMER_KEY = 'custom';
49
- var registryList = [
50
- {
51
- key: 'http://registry.devsapp.cn/simple',
52
- name: 'serverless registry [http://registry.devsapp.cn/simple]',
53
- value: 'http://registry.devsapp.cn/simple',
54
- },
55
- {
56
- key: 'https://api.github.com/repos',
57
- name: 'github registry [https://api.github.com/repos]',
58
- value: 'https://api.github.com/repos',
59
- },
60
- {
61
- key: 'http://gitee.registry.devsapp.cn/simple',
62
- name: 'gitee registry [http://gitee.registry.devsapp.cn/simple] ',
63
- value: 'http://gitee.registry.devsapp.cn/simple',
64
- },
65
- {
66
- key: CUSTOMER_KEY,
67
- name: 'custom registry',
68
- value: CUSTOMER_KEY,
69
- },
70
- ];
71
- var registryInquire = [
72
- {
73
- type: 'list',
74
- name: 'registry',
75
- message: 'Choose a registry?',
76
- choices: registryList,
77
- },
78
- ];
79
- var description = "Set registry information.\n\nExample:\n $ s set registry\n $ s set registry http://registry.devsapp.cn/simple\n \n".concat((0, common_1.emoji)('📖'), " Document: ").concat(colors.underline('https://github.com/Serverless-Devs/Serverless-Devs/tree/master/docs/zh/command/set.md'));
80
- function run(program) {
81
- var _this = this;
82
- var command = program
83
- .command('registry')
84
- .usage('[options]')
85
- .helpOption('-h, --help', 'Display help for command')
86
- .addHelpCommand(false)
87
- .description(description)
88
- .action(function () { return __awaiter(_this, void 0, void 0, function () {
89
- var error_2;
90
- return __generator(this, function (_a) {
91
- switch (_a.label) {
92
- case 0:
93
- _a.trys.push([0, 2, , 3]);
94
- return [4 /*yield*/, doAction()];
95
- case 1:
96
- _a.sent();
97
- return [3 /*break*/, 3];
98
- case 2:
99
- error_2 = _a.sent();
100
- throw new error_1.CommandError(error_2.message);
101
- case 3: return [2 /*return*/];
102
- }
103
- });
104
- }); });
105
- var doAction = function () { return __awaiter(_this, void 0, void 0, function () {
106
- var _a, rawData, help, answers, registry, r;
107
- return __generator(this, function (_b) {
108
- switch (_b.label) {
109
- case 0:
110
- _a = core_1.default.getGlobalArgs(process.argv.slice(2)), rawData = _a._, help = _a.help;
111
- help && command.help();
112
- if (!(rawData.length === 2)) return [3 /*break*/, 4];
113
- utils_1.logger.log("\n".concat((0, common_1.emoji)('🔎'), " Current registry: ").concat((0, handler_set_config_1.getConfig)('registry', 'http://registry.devsapp.cn/simple'), "\n"));
114
- return [4 /*yield*/, inquirer.prompt(registryInquire)];
115
- case 1:
116
- answers = _b.sent();
117
- if (!(answers.registry === CUSTOMER_KEY)) return [3 /*break*/, 3];
118
- return [4 /*yield*/, inquirer.prompt([
119
- {
120
- type: 'input',
121
- name: 'registry',
122
- message: 'Please input your customer registry?',
123
- },
124
- ])];
125
- case 2:
126
- answers = _b.sent();
127
- _b.label = 3;
128
- case 3:
129
- registry = answers.registry;
130
- (0, handler_set_config_1.setConfig)('registry', registry);
131
- _b.label = 4;
132
- case 4:
133
- if (rawData.length > 2) {
134
- r = rawData[2];
135
- if (r) {
136
- (0, handler_set_config_1.setConfig)('registry', r);
137
- utils_1.logger.success('Setup succeeded');
138
- }
139
- }
140
- return [2 /*return*/];
141
- }
142
- });
143
- }); };
144
- }
145
- module.exports = run;
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2V0L3JlZ2lzdHJ5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxxQ0FBcUM7QUFDckMscUNBQTJDO0FBQzNDLDBEQUFvQztBQUNwQyw2Q0FBMkM7QUFDbkMsSUFBQSxRQUFRLEdBQUssY0FBSSxTQUFULENBQVU7QUFDMUIscUVBQXNFO0FBQzlELElBQUEsTUFBTSxHQUFLLGNBQUksT0FBVCxDQUFVO0FBRXhCLElBQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQztBQUM5QixJQUFNLFlBQVksR0FBRztJQUNuQjtRQUNFLEdBQUcsRUFBRSxtQ0FBbUM7UUFDeEMsSUFBSSxFQUFFLHlEQUF5RDtRQUMvRCxLQUFLLEVBQUUsbUNBQW1DO0tBQzNDO0lBQ0Q7UUFDRSxHQUFHLEVBQUUsOEJBQThCO1FBQ25DLElBQUksRUFBRSxnREFBZ0Q7UUFDdEQsS0FBSyxFQUFFLDhCQUE4QjtLQUN0QztJQUNEO1FBQ0UsR0FBRyxFQUFFLHlDQUF5QztRQUM5QyxJQUFJLEVBQUUsMkRBQTJEO1FBQ2pFLEtBQUssRUFBRSx5Q0FBeUM7S0FDakQ7SUFDRDtRQUNFLEdBQUcsRUFBRSxZQUFZO1FBQ2pCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsS0FBSyxFQUFFLFlBQVk7S0FDcEI7Q0FDRixDQUFDO0FBRUYsSUFBTSxlQUFlLEdBQUc7SUFDdEI7UUFDRSxJQUFJLEVBQUUsTUFBTTtRQUNaLElBQUksRUFBRSxVQUFVO1FBQ2hCLE9BQU8sRUFBRSxvQkFBb0I7UUFDN0IsT0FBTyxFQUFFLFlBQVk7S0FDdEI7Q0FDRixDQUFDO0FBRUYsSUFBTSxXQUFXLEdBQUcsa0lBTWxCLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyx3QkFBYyxNQUFNLENBQUMsU0FBUyxDQUN6Qyx1RkFBdUYsQ0FDeEYsQ0FBRSxDQUFDO0FBRUosU0FBUyxHQUFHLENBQUMsT0FBZ0I7SUFBN0IsaUJBeUNDO0lBeENDLElBQU0sT0FBTyxHQUFHLE9BQU87U0FDcEIsT0FBTyxDQUFDLFVBQVUsQ0FBQztTQUNuQixLQUFLLENBQUMsV0FBVyxDQUFDO1NBQ2xCLFVBQVUsQ0FBQyxZQUFZLEVBQUUsMEJBQTBCLENBQUM7U0FDcEQsY0FBYyxDQUFDLEtBQUssQ0FBQztTQUNyQixXQUFXLENBQUMsV0FBVyxDQUFDO1NBQ3hCLE1BQU0sQ0FBQzs7Ozs7O29CQUVKLHFCQUFNLFFBQVEsRUFBRSxFQUFBOztvQkFBaEIsU0FBZ0IsQ0FBQzs7OztvQkFFakIsTUFBTSxJQUFJLG9CQUFZLENBQUMsT0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzs7O1NBRXpDLENBQUMsQ0FBQztJQUVMLElBQU0sUUFBUSxHQUFHOzs7OztvQkFDVCxLQUF1QixjQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQTNELE9BQU8sT0FBQSxFQUFFLElBQUksVUFBQSxDQUErQztvQkFDdkUsSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQzt5QkFDbkIsQ0FBQSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQSxFQUFwQix3QkFBb0I7b0JBQ3RCLGNBQU0sQ0FBQyxHQUFHLENBQUMsWUFBSyxJQUFBLGNBQUssRUFBQyxJQUFJLENBQUMsZ0NBQXNCLElBQUEsOEJBQVMsRUFBQyxVQUFVLEVBQUUsbUNBQW1DLENBQUMsT0FBSSxDQUFDLENBQUM7b0JBQ25HLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUE7O29CQUFoRCxPQUFPLEdBQUcsU0FBc0M7eUJBQ2hELENBQUEsT0FBTyxDQUFDLFFBQVEsS0FBSyxZQUFZLENBQUEsRUFBakMsd0JBQWlDO29CQUN6QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDOzRCQUM5QjtnQ0FDRSxJQUFJLEVBQUUsT0FBTztnQ0FDYixJQUFJLEVBQUUsVUFBVTtnQ0FDaEIsT0FBTyxFQUFFLHNDQUFzQzs2QkFDaEQ7eUJBQ0YsQ0FBQyxFQUFBOztvQkFORixPQUFPLEdBQUcsU0FNUixDQUFDOzs7b0JBRUQsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7b0JBQ2hDLElBQUEsOEJBQVMsRUFBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7OztvQkFFbEMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDaEIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDckIsSUFBSSxDQUFDLEVBQUU7NEJBQ0wsSUFBQSw4QkFBUyxFQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQzs0QkFDekIsY0FBTSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO3lCQUNuQztxQkFDRjs7OztTQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsaUJBQVMsR0FBRyxDQUFDIn0=
@@ -1,119 +0,0 @@
1
- "use strict";
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 (g && (g = 0, op[0] && (_ = 0)), _) 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
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- var error_1 = require("../../error");
42
- var logger_1 = __importDefault(require("../../utils/logger"));
43
- var core_1 = __importDefault(require("../../utils/core"));
44
- var common_1 = require("../../utils/common");
45
- var inquirer = core_1.default.inquirer, getRootHome = core_1.default.getRootHome, colors = core_1.default.colors, setConfig = core_1.default.setConfig, formatWorkspacePath = core_1.default.formatWorkspacePath;
46
- var path_1 = __importDefault(require("path"));
47
- var description = "Set workspace path. Switching workspaces may make previously cached components and configured key information unavailable.\n\n Example:\n $ s set workspace\n $ s set workspace ~/.s";
48
- var promptOption = [
49
- {
50
- type: 'input',
51
- name: 'value',
52
- message: 'Please input an absolute path:',
53
- validate: function (input) {
54
- var fpath = formatWorkspacePath(input);
55
- return path_1.default.isAbsolute(fpath) ? true : 'You must provide an absolute path.';
56
- },
57
- },
58
- ];
59
- function run(program) {
60
- var _this = this;
61
- var command = program
62
- .command('workspace')
63
- .helpOption('-h, --help', 'Display help for command')
64
- .addHelpCommand(false)
65
- .description(description)
66
- .action(function () { return __awaiter(_this, void 0, void 0, function () {
67
- var error_2;
68
- return __generator(this, function (_a) {
69
- switch (_a.label) {
70
- case 0:
71
- _a.trys.push([0, 2, , 3]);
72
- return [4 /*yield*/, doAction()];
73
- case 1:
74
- _a.sent();
75
- return [3 /*break*/, 3];
76
- case 2:
77
- error_2 = _a.sent();
78
- throw new error_1.CommandError(error_2.message);
79
- case 3: return [2 /*return*/];
80
- }
81
- });
82
- }); });
83
- var doAction = function () { return __awaiter(_this, void 0, void 0, function () {
84
- var _a, rawData, help, msg, answers, val;
85
- return __generator(this, function (_b) {
86
- switch (_b.label) {
87
- case 0:
88
- _a = core_1.default.getGlobalArgs(process.argv.slice(2)), rawData = _a._, help = _a.help;
89
- console.log(rawData);
90
- help && command.help();
91
- if (!(rawData.length === 2)) return [3 /*break*/, 2];
92
- msg = "\n".concat((0, common_1.emoji)('📝'), " Current workspace path: ").concat(getRootHome(), "\n\n").concat((0, common_1.emoji)('🙊'), " Switching workspaces may make previously cached components and configured key information unavailable.\n");
93
- logger_1.default.log(msg);
94
- return [4 /*yield*/, inquirer.prompt(promptOption)];
95
- case 1:
96
- answers = _b.sent();
97
- setConfig('workspace', answers.value);
98
- _b.label = 2;
99
- case 2:
100
- if (rawData.length > 2) {
101
- val = rawData[2];
102
- if (path_1.default.isAbsolute(val)) {
103
- setConfig('workspace', val);
104
- logger_1.default.log('Setup succeeded', 'green');
105
- }
106
- else {
107
- new error_1.HumanError({
108
- errorMessage: 'You must provide an absolute path.',
109
- tips: "Please check if the path is absolute, documents: ".concat(colors.underline('https://github.com/Serverless-Devs/Serverless-Devs/blob/master/docs/zh/command/set.md')),
110
- });
111
- }
112
- }
113
- return [2 /*return*/];
114
- }
115
- });
116
- }); };
117
- }
118
- module.exports = run;
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2V0L3dvcmtzcGFjZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EscUNBQXVEO0FBQ3ZELDhEQUF3QztBQUN4QywwREFBb0M7QUFDcEMsNkNBQTJDO0FBQ25DLElBQUEsUUFBUSxHQUEwRCxjQUFJLFNBQTlELEVBQUUsV0FBVyxHQUE2QyxjQUFJLFlBQWpELEVBQUUsTUFBTSxHQUFxQyxjQUFJLE9BQXpDLEVBQUUsU0FBUyxHQUEwQixjQUFJLFVBQTlCLEVBQUUsbUJBQW1CLEdBQUssY0FBSSxvQkFBVCxDQUFVO0FBQy9FLDhDQUF3QjtBQUV4QixJQUFNLFdBQVcsR0FBRyx1TUFJVyxDQUFDO0FBRWhDLElBQU0sWUFBWSxHQUFHO0lBQ25CO1FBQ0UsSUFBSSxFQUFFLE9BQU87UUFDYixJQUFJLEVBQUUsT0FBTztRQUNiLE9BQU8sRUFBRSxnQ0FBZ0M7UUFDekMsUUFBUSxZQUFDLEtBQUs7WUFDWixJQUFNLEtBQUssR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QyxPQUFPLGNBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsb0NBQW9DLENBQUM7UUFDOUUsQ0FBQztLQUNGO0NBQ0YsQ0FBQztBQUVGLFNBQVMsR0FBRyxDQUFDLE9BQWdCO0lBQTdCLGlCQXlDQztJQXhDQyxJQUFNLE9BQU8sR0FBRyxPQUFPO1NBQ3BCLE9BQU8sQ0FBQyxXQUFXLENBQUM7U0FDcEIsVUFBVSxDQUFDLFlBQVksRUFBRSwwQkFBMEIsQ0FBQztTQUNwRCxjQUFjLENBQUMsS0FBSyxDQUFDO1NBQ3JCLFdBQVcsQ0FBQyxXQUFXLENBQUM7U0FDeEIsTUFBTSxDQUFDOzs7Ozs7b0JBRUoscUJBQU0sUUFBUSxFQUFFLEVBQUE7O29CQUFoQixTQUFnQixDQUFDOzs7O29CQUVqQixNQUFNLElBQUksb0JBQVksQ0FBQyxPQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7Ozs7U0FFekMsQ0FBQyxDQUFDO0lBQ0wsSUFBTSxRQUFRLEdBQUc7Ozs7O29CQUNULEtBQXVCLGNBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBM0QsT0FBTyxPQUFBLEVBQUUsSUFBSSxVQUFBLENBQStDO29CQUN2RSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUVyQixJQUFJLElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO3lCQUNuQixDQUFBLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFBLEVBQXBCLHdCQUFvQjtvQkFDaEIsR0FBRyxHQUFHLFlBQUssSUFBQSxjQUFLLEVBQUMsSUFBSSxDQUFDLHNDQUE0QixXQUFXLEVBQUUsaUJBQU8sSUFBQSxjQUFLLEVBQy9FLElBQUksQ0FDTCw4R0FBMkcsQ0FBQztvQkFDN0csZ0JBQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ0EscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBQTs7b0JBQTdDLE9BQU8sR0FBRyxTQUFtQztvQkFDbkQsU0FBUyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7OztvQkFFeEMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDaEIsR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDdkIsSUFBSSxjQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFOzRCQUN4QixTQUFTLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDOzRCQUM1QixnQkFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQzt5QkFDeEM7NkJBQU07NEJBQ0wsSUFBSSxrQkFBVSxDQUFDO2dDQUNiLFlBQVksRUFBRSxvQ0FBb0M7Z0NBQ2xELElBQUksRUFBRSwyREFBb0QsTUFBTSxDQUFDLFNBQVMsQ0FDeEUsdUZBQXVGLENBQ3hGLENBQUU7NkJBQ0osQ0FBQyxDQUFDO3lCQUNKO3FCQUNGOzs7O1NBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxpQkFBUyxHQUFHLENBQUMifQ==