@northflank/cli 0.6.0 → 0.7.2

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.
package/dist/cli.js CHANGED
@@ -1,500 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
6
- }) : (function(o, m, k, k2) {
7
- if (k2 === undefined) k2 = k;
8
- o[k2] = m[k];
9
- }));
10
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
11
- Object.defineProperty(o, "default", { enumerable: true, value: v });
12
- }) : function(o, v) {
13
- o["default"] = v;
14
- });
15
- var __importStar = (this && this.__importStar) || function (mod) {
16
- if (mod && mod.__esModule) return mod;
17
- var result = {};
18
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
19
- __setModuleDefault(result, mod);
20
- return result;
21
- };
22
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
23
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
24
- return new (P || (P = Promise))(function (resolve, reject) {
25
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
26
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
27
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
28
- step((generator = generator.apply(thisArg, _arguments || [])).next());
29
- });
30
- };
31
- var __generator = (this && this.__generator) || function (thisArg, body) {
32
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
33
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
34
- function verb(n) { return function (v) { return step([n, v]); }; }
35
- function step(op) {
36
- if (f) throw new TypeError("Generator is already executing.");
37
- while (_) try {
38
- 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;
39
- if (y = 0, t) op = [op[0] & 2, t.value];
40
- switch (op[0]) {
41
- case 0: case 1: t = op; break;
42
- case 4: _.label++; return { value: op[1], done: false };
43
- case 5: _.label++; y = op[1]; op = [0]; continue;
44
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
45
- default:
46
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
47
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
48
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
49
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
50
- if (t[2]) _.ops.pop();
51
- _.trys.pop(); continue;
52
- }
53
- op = body.call(thisArg, _);
54
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
55
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
56
- }
57
- };
58
- var __importDefault = (this && this.__importDefault) || function (mod) {
59
- return (mod && mod.__esModule) ? mod : { "default": mod };
60
- };
61
- Object.defineProperty(exports, "__esModule", { value: true });
62
- var js_client_1 = require("@northflank/js-client");
63
- var commander_1 = __importDefault(require("commander"));
64
- var fs_1 = __importDefault(require("fs"));
65
- var ajv_1 = __importDefault(require("ajv"));
66
- var chalk_1 = __importDefault(require("chalk"));
67
- var _ = __importStar(require("lodash"));
68
- var contextCommands_1 = require("./context/contextCommands");
69
- var utils_1 = require("./utils");
70
- var defaults = __importStar(require("./defaults"));
71
- var inquirer_helper_1 = require("./inquirer-helper");
72
- var console_format_helpers_1 = require("./console-format-helpers");
73
- var command_overview_1 = require("./command-overview");
74
- var port_forward_1 = require("./port-forward");
75
- var yaml = require('js-yaml');
76
- var pgk = require('../package.json');
77
- (function () { return __awaiter(void 0, void 0, void 0, function () {
78
- var program, contextProvider, apiClient, contextCmds, portForwardCmds, e_1;
79
- return __generator(this, function (_a) {
80
- switch (_a.label) {
81
- case 0:
82
- _a.trys.push([0, 3, , 4]);
83
- program = new commander_1.default.Command('northflank');
84
- program.enablePositionalOptions(true);
85
- program.version("Northflank cli version: " + chalk_1.default.underline(pgk.version), '-v, --version', 'Print the current version of the Northflank cli');
86
- contextProvider = new js_client_1.ApiClientFileContextProvider();
87
- return [4 /*yield*/, (0, utils_1.checkUpdate)(contextProvider)];
88
- case 1:
89
- _a.sent();
90
- apiClient = new js_client_1.ApiClient(contextProvider, {
91
- throwErrorOnHttpErrorCode: false,
92
- customUserAgent: utils_1.customUserAgent,
93
- });
94
- contextCmds = new contextCommands_1.CliContext(apiClient);
95
- portForwardCmds = new port_forward_1.CliPortForward(contextProvider);
96
- program.addCommand(portForwardCmds.portFwdCmd);
97
- program.addCommand(contextCmds.login);
98
- program.addCommand(contextCmds.contexts);
99
- generateCommands(apiClient, apiClient.endpoints, program);
100
- program.addCommand((0, command_overview_1.getCommandOverview)(program));
101
- return [4 /*yield*/, program.parseAsync(process.argv)];
102
- case 2:
103
- _a.sent();
104
- return [3 /*break*/, 4];
105
- case 3:
106
- e_1 = _a.sent();
107
- (0, utils_1.error)("Error occured while trying to run command, error: " + e_1.message);
108
- if (process.argv.find(function (arg) { return arg === '--verbose'; })) {
109
- console.log(e_1);
110
- }
111
- process.exitCode = 1;
112
- return [3 /*break*/, 4];
113
- case 4: return [2 /*return*/];
114
- }
115
- });
116
- }); })();
117
- /** Automatically adds commands recursively.
118
- * @param apiClient
119
- * @param endpoints
120
- * @param cmd Root command to add the generated commands to
121
- * @param currentDefaults
122
- * @param cliPath
123
- */
124
- function generateCommands(apiClient, endpoints, cmd, currentDefaults, cliPath) {
125
- if (currentDefaults === void 0) { currentDefaults = defaults.defaults; }
126
- if (cliPath === void 0) { cliPath = []; }
127
- var inquirerHelper = new inquirer_helper_1.InquirerHelper(new js_client_1.ApiClient(apiClient.contextProvider, {
128
- throwErrorOnHttpErrorCode: true,
129
- customUserAgent: utils_1.customUserAgent,
130
- }));
131
- function isRequired(opt, defaultVal) {
132
- return opt.required !== false && defaultVal === undefined;
133
- }
134
- function parseOptions(option, leafCommand) {
135
- var opt = option.opt, name = option.name;
136
- var defaultVal = opt.default;
137
- var required = isRequired(opt, defaultVal);
138
- var toOption = function (alias) { return (alias.length > 1 ? "--" + alias : "-" + alias); };
139
- var alias = opt === null || opt === void 0 ? void 0 : opt.alias;
140
- // eslint-disable-next-line no-nested-ternary
141
- var aliases = alias
142
- ? _.isArray(alias)
143
- ? "-" + (alias === null || alias === void 0 ? void 0 : alias.map(function (a) { return toOption(a); }).join(', -')) + ","
144
- : "" + toOption(alias)
145
- : '';
146
- var optionalText = required ? '' : 'OPTIONAL: ';
147
- var flags = typeof opt.type === 'boolean'
148
- ? aliases + " --" + name
149
- : aliases + " --" + name + " <" + name.toUpperCase() + ">";
150
- var description = optionalText + opt.description;
151
- leafCommand.option(flags, description, defaultVal);
152
- }
153
- return Object.getOwnPropertyNames(currentDefaults).forEach(function (name) {
154
- var endpoint = endpoints[name];
155
- var defaultOpt = currentDefaults[name];
156
- var nextCliPath = cliPath.concat([name]);
157
- function parseOpts(baseOpts, leafCommand) {
158
- var baseOptNames = Object.getOwnPropertyNames(baseOpts || {});
159
- baseOptNames
160
- .map(function (optString) {
161
- return { name: optString, opt: baseOpts[optString] };
162
- })
163
- // eslint-disable-next-line no-nested-ternary
164
- .sort(function (opt1, opt2) { return (!isRequired(opt1.opt) ? (!isRequired(opt2.opt) ? 0 : 1) : -1); })
165
- .forEach(function (option) {
166
- parseOptions(option, leafCommand);
167
- });
168
- }
169
- function setAliases(nextCmd, cmdName) {
170
- var aliases = [
171
- ['project', 'projects', 'prj'],
172
- ['service', 'services', 'svc'],
173
- ['credentials', 'credential', 'cred'],
174
- ['addon', 'addons', 'adn'],
175
- ['job', 'jobs'],
176
- ['plan', 'plans', 'pln'],
177
- ['region', 'regions', 'rgn'],
178
- ['domain', 'domains', 'dmn'],
179
- ['secret', 'secrets', 'scrt'],
180
- ];
181
- var alias = aliases.find(function (a) { return a.includes(cmdName); });
182
- if (alias !== undefined)
183
- nextCmd.aliases(alias.filter(function (a) { return a !== cmdName; }));
184
- }
185
- function setPathVariables(opt) {
186
- return __awaiter(this, void 0, void 0, function () {
187
- /**
188
- * @param resource Resource identifier
189
- * @param ctx Get result from client context
190
- * @param ask Get result by asking interactively
191
- */
192
- function setVar(resource, ask, ctx) {
193
- var _a, _b;
194
- return __awaiter(this, void 0, void 0, function () {
195
- var ctxRes, id, _c;
196
- return __generator(this, function (_d) {
197
- switch (_d.label) {
198
- case 0:
199
- if (!_.has((_b = (_a = defaultOpt.opt) === null || _a === void 0 ? void 0 : _a.path) !== null && _b !== void 0 ? _b : {}, resource)) return [3 /*break*/, 3];
200
- ctxRes = !askExplicitly && !isDeleteCmd && ctx ? ctx() : undefined;
201
- _c = opt[resource] || // Always check command arguments first
202
- ctxRes;
203
- if (_c) return [3 /*break*/, 2];
204
- return [4 /*yield*/, ask()];
205
- case 1:
206
- _c = (_d.sent());
207
- _d.label = 2;
208
- case 2:
209
- id = _c;
210
- _.set(parameters, resource, id);
211
- _d.label = 3;
212
- case 3: return [2 /*return*/];
213
- }
214
- });
215
- });
216
- }
217
- var parameters, contextProvider, isDeleteCmd, askExplicitly, projectId;
218
- return __generator(this, function (_a) {
219
- switch (_a.label) {
220
- case 0:
221
- parameters = {};
222
- contextProvider = apiClient.contextProvider;
223
- isDeleteCmd = nextCliPath.includes('delete');
224
- askExplicitly = opt.noDefaults === true;
225
- return [4 /*yield*/, setVar('projectId', inquirerHelper.askForProject.bind(inquirerHelper), contextProvider.getCurrentProjectName.bind(contextProvider))];
226
- case 1:
227
- _a.sent();
228
- projectId = parameters === null || parameters === void 0 ? void 0 : parameters.projectId;
229
- return [4 /*yield*/, setVar('serviceId', inquirerHelper.askForService(projectId).bind(inquirerHelper), contextProvider.getCurrentServiceName.bind(contextProvider))];
230
- case 2:
231
- _a.sent();
232
- return [4 /*yield*/, setVar('addonId', inquirerHelper.askForAddon(projectId).bind(inquirerHelper))];
233
- case 3:
234
- _a.sent();
235
- return [4 /*yield*/, setVar('jobId', inquirerHelper.askForJob(projectId).bind(inquirerHelper), contextProvider.getCurrentJobName.bind(contextProvider))];
236
- case 4:
237
- _a.sent();
238
- return [4 /*yield*/, setVar('runId', inquirerHelper.askForJobRun(parameters.jobId, projectId).bind(inquirerHelper))];
239
- case 5:
240
- _a.sent();
241
- return [4 /*yield*/, setVar('secretId', inquirerHelper.askForSecret(projectId).bind(inquirerHelper))];
242
- case 6:
243
- _a.sent();
244
- return [4 /*yield*/, setVar('domain', inquirerHelper.askForDomain.bind(inquirerHelper))];
245
- case 7:
246
- _a.sent();
247
- return [4 /*yield*/, setVar('domainId', inquirerHelper.askForDomain.bind(inquirerHelper))];
248
- case 8:
249
- _a.sent();
250
- return [4 /*yield*/, setVar('credentialId', inquirerHelper.askForCredentials.bind(inquirerHelper))];
251
- case 9:
252
- _a.sent();
253
- return [4 /*yield*/, setVar('subdomain', inquirerHelper.askForSubdomain(parameters.domain).bind(inquirerHelper))];
254
- case 10:
255
- _a.sent();
256
- return [4 /*yield*/, setVar('subdomainId', inquirerHelper.askForSubdomain(parameters.domainId).bind(inquirerHelper))];
257
- case 11:
258
- _a.sent();
259
- return [4 /*yield*/, setVar('backupId', inquirerHelper.askForAddonBackup(projectId, parameters.addonId).bind(inquirerHelper))];
260
- case 12:
261
- _a.sent();
262
- return [2 /*return*/, parameters];
263
- }
264
- });
265
- });
266
- }
267
- function setQueryVariables(opt) {
268
- var _a, _b;
269
- return __awaiter(this, void 0, void 0, function () {
270
- var options, queryArgs;
271
- var _this = this;
272
- return __generator(this, function (_c) {
273
- switch (_c.label) {
274
- case 0:
275
- options = {};
276
- queryArgs = Object.keys((_b = (_a = defaultOpt.opt) === null || _a === void 0 ? void 0 : _a.query) !== null && _b !== void 0 ? _b : {});
277
- return [4 /*yield*/, (0, utils_1.asyncSequential)(queryArgs, function (key) { return __awaiter(_this, void 0, void 0, function () {
278
- var result;
279
- return __generator(this, function (_a) {
280
- switch (_a.label) {
281
- case 0:
282
- result = {};
283
- return [4 /*yield*/, inquirerHelper.propToType(["" + key], defaultOpt.opt.query[key].schema, result)];
284
- case 1:
285
- _a.sent();
286
- _.set(options, key, result[key]);
287
- return [2 /*return*/, result];
288
- }
289
- });
290
- }); })];
291
- case 1:
292
- _c.sent();
293
- return [2 /*return*/, options];
294
- }
295
- });
296
- });
297
- }
298
- function getDescription() {
299
- switch (nextCliPath[0]) {
300
- case 'get':
301
- return "Get information about Northflank " + (nextCliPath[1] || 'resource') + "s";
302
- case 'update':
303
- return "Update Northflank " + (nextCliPath[1] || 'resource') + " properties";
304
- default:
305
- return _.upperFirst(name) + " Northflank resources";
306
- }
307
- }
308
- function constructCommand(currentEndpoint, isEndpointCommand) {
309
- var _this = this;
310
- var _a, _b, _c, _d;
311
- if (!isEndpointCommand) {
312
- var nextCmd = (0, utils_1.getCommand)().name(_.kebabCase(name)).description(getDescription());
313
- setAliases(nextCmd, name);
314
- return nextCmd;
315
- }
316
- var leafCommand = (0, utils_1.getCommand)(true)
317
- .name(_.kebabCase(name))
318
- .description(currentEndpoint.description || '');
319
- setAliases(leafCommand, name);
320
- if ((_a = defaultOpt.opt) === null || _a === void 0 ? void 0 : _a.body) {
321
- leafCommand.option('-f, --file <file-path>', 'File to load resource json from');
322
- leafCommand.option('-i, --input <resource-def>', 'JSON-formatted resource definition, takes precedence over "--file"');
323
- }
324
- parseOpts((_b = defaultOpt.opt) === null || _b === void 0 ? void 0 : _b.path, leafCommand);
325
- parseOpts((_c = defaultOpt.opt) === null || _c === void 0 ? void 0 : _c.query, leafCommand);
326
- parseOpts((_d = defaultOpt.opt) === null || _d === void 0 ? void 0 : _d.base, leafCommand);
327
- leafCommand.action(function () { return __awaiter(_this, void 0, void 0, function () {
328
- var opt, parameters, options, contextIndicator, contextInfoMessage, jsonResource, _a, _b, _c, data, request, errorResponse, errorDetails, nfId, id, output, columns, resourceId, resourceDescr, title, tableData;
329
- var _d, _e, _f;
330
- return __generator(this, function (_g) {
331
- switch (_g.label) {
332
- case 0:
333
- (0, utils_1.assertContextExisting)(apiClient);
334
- opt = leafCommand.opts();
335
- return [4 /*yield*/, setPathVariables(opt)];
336
- case 1:
337
- parameters = _g.sent();
338
- inquirerHelper.setPathVars(parameters);
339
- return [4 /*yield*/, setQueryVariables(opt)];
340
- case 2:
341
- options = _g.sent();
342
- contextIndicator = Object.keys((_e = (_d = defaultOpt.opt) === null || _d === void 0 ? void 0 : _d.path) !== null && _e !== void 0 ? _e : {})
343
- .map(function (p) { return p + "=" + chalk_1.default.green(parameters[p]); })
344
- .join(', ');
345
- if (contextIndicator.length > 0) {
346
- contextInfoMessage = "=> running command with: " + contextIndicator;
347
- console.log(contextInfoMessage);
348
- }
349
- if (!((_f = defaultOpt.opt) === null || _f === void 0 ? void 0 : _f.body)) return [3 /*break*/, 4];
350
- return [4 /*yield*/, parsePayload(opt, defaultOpt, nextCliPath)];
351
- case 3:
352
- _a = _g.sent();
353
- return [3 /*break*/, 5];
354
- case 4:
355
- _a = undefined;
356
- _g.label = 5;
357
- case 5:
358
- jsonResource = _a;
359
- _b = !opt.force &&
360
- nextCliPath.includes('delete');
361
- if (!_b) return [3 /*break*/, 7];
362
- return [4 /*yield*/, inquirerHelper.deleteWarningPrompt()];
363
- case 6:
364
- _b = !(_g.sent());
365
- _g.label = 7;
366
- case 7:
367
- if (_b) {
368
- (0, utils_1.warning)('Resource was not deleted.');
369
- return [2 /*return*/];
370
- }
371
- return [4 /*yield*/, endpoint.call({ parameters: parameters, options: options, data: jsonResource })];
372
- case 8:
373
- _c = _g.sent(), data = _c.data, request = _c.request, errorResponse = _c.error;
374
- if (opt === null || opt === void 0 ? void 0 : opt.verbose) {
375
- console.log("VERBOSE: Using endpoint -> " + request.method + ":" + request.url);
376
- console.log("VERBOSE: Request body -> " + request.body);
377
- }
378
- if (errorResponse) {
379
- errorDetails = errorResponse.details
380
- ? "\n\tdetails :" + JSON.stringify(errorResponse.details)
381
- : '';
382
- nfId = (errorResponse === null || errorResponse === void 0 ? void 0 : errorResponse.id) ? ", NF error id: " + errorResponse.id : '';
383
- id = "(HTTP status code: " + errorResponse.status + nfId + ")";
384
- throw new Error("API request failed\n\tMessage: " + errorResponse.message + " " + id + errorDetails);
385
- }
386
- if (!(opt === null || opt === void 0 ? void 0 : opt.quiet)) {
387
- output = opt === null || opt === void 0 ? void 0 : opt.output;
388
- if (output === 'json') {
389
- console.log((0, console_format_helpers_1.consoleFormat)(data));
390
- }
391
- else if (output === 'yaml' || output === 'yml') {
392
- console.log(yaml.safeDump(data));
393
- }
394
- else if (nextCliPath.find(function (p) { return p === 'list'; })) {
395
- columns = (output === null || output === void 0 ? void 0 : output.startsWith('custom-columns='))
396
- ? output
397
- .replace('custom-columns=', '')
398
- .split(',')
399
- .map(function (c) { return c.toLowerCase(); })
400
- : undefined;
401
- resourceId = nextCliPath[nextCliPath.length - 1];
402
- resourceDescr = "" + resourceId + (resourceId.endsWith('s') ? '' : 's');
403
- title = _.upperFirst(resourceDescr);
404
- tableData = _.has(data, resourceDescr) ? data[resourceDescr] : data;
405
- (0, console_format_helpers_1.printAsTable)(tableData, title, columns);
406
- }
407
- else {
408
- console.log((0, console_format_helpers_1.consoleFormat)(data));
409
- }
410
- }
411
- return [2 /*return*/];
412
- }
413
- });
414
- }); });
415
- return leafCommand;
416
- }
417
- var isEndpointCommand = _.has(defaultOpt, 'opt');
418
- var currentEndpoint = endpoint;
419
- var command = constructCommand(currentEndpoint, isEndpointCommand);
420
- cmd.addCommand(command);
421
- var optWithoutOpt = _.omit(defaultOpt, 'opt');
422
- if (Object.keys(optWithoutOpt).length > 0) {
423
- // If this command has more subcommands, add them recursively
424
- generateCommands(apiClient, endpoint, command, optWithoutOpt, nextCliPath);
425
- }
426
- });
427
- function getInput(opt, defaultOpt, cmdPath) {
428
- return __awaiter(this, void 0, void 0, function () {
429
- var input, file, fileContent, jsonResource;
430
- return __generator(this, function (_a) {
431
- switch (_a.label) {
432
- case 0:
433
- input = opt.input, file = opt.file;
434
- if (input !== undefined) {
435
- try {
436
- return [2 /*return*/, JSON.parse(input)];
437
- }
438
- catch (e) {
439
- try {
440
- return [2 /*return*/, yaml.safeLoad(input)];
441
- }
442
- catch (d) {
443
- throw new Error('Unknown input format. Not valid json and not valid yaml.');
444
- }
445
- }
446
- }
447
- if (file !== undefined) {
448
- if (!fs_1.default.existsSync(file)) {
449
- throw new Error("File does not exist: " + file);
450
- }
451
- fileContent = fs_1.default.readFileSync(file).toString();
452
- jsonResource = void 0;
453
- try {
454
- if (_.isString(fileContent)) {
455
- if (opt.file.endsWith('.json')) {
456
- jsonResource = JSON.parse(fileContent);
457
- }
458
- else if (opt.file.endsWith('.yaml') || opt.file.endsWith('yml')) {
459
- jsonResource = yaml.safeLoad(fileContent);
460
- }
461
- else {
462
- throw new Error("Unknown input file type: " + opt.file.split('.').pop());
463
- }
464
- }
465
- else {
466
- jsonResource = fileContent;
467
- }
468
- return [2 /*return*/, jsonResource];
469
- }
470
- catch (e) {
471
- throw new Error("Failed to validate input (incorrect format): " + e.message);
472
- }
473
- }
474
- return [4 /*yield*/, inquirerHelper.retrievePayloadViaInteractiveCli(defaultOpt, { cmdPath: cmdPath })];
475
- case 1: return [2 /*return*/, _a.sent()];
476
- }
477
- });
478
- });
479
- }
480
- function parsePayload(opt, defaultOpt, cmdPath) {
481
- var _a;
482
- return __awaiter(this, void 0, void 0, function () {
483
- var bodyObject, ajv, valid, filteredErrors;
484
- return __generator(this, function (_b) {
485
- switch (_b.label) {
486
- case 0: return [4 /*yield*/, getInput(opt, defaultOpt, cmdPath)];
487
- case 1:
488
- bodyObject = _b.sent();
489
- ajv = new ajv_1.default({ allErrors: true });
490
- valid = ajv.validate(defaultOpt.opt.body, bodyObject);
491
- filteredErrors = (_a = ajv === null || ajv === void 0 ? void 0 : ajv.errors) === null || _a === void 0 ? void 0 : _a.filter(function (err) { var _a; return !((_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes('should match exactly one schema in oneOf')); });
492
- if (!valid && filteredErrors !== undefined && (filteredErrors === null || filteredErrors === void 0 ? void 0 : filteredErrors.length) > 0) {
493
- throw new Error("Failed to validate input (schema mismatch):\n" + JSON.stringify(ajv.errors, null, ' '));
494
- }
495
- return [2 /*return*/, bodyObject];
496
- }
497
- });
498
- });
499
- }
500
- }
2
+ 'use strict';var a1K=['query','version','-f,\x20--file\x20<file-path>','forEach','2818KdVRIU','stringify',',\x20NF\x20error\x20id:\x20','Northflank\x20cli\x20version:\x20','option','branch','startsWith','default','CliContext','backupId','askForSubdomain','verbose','../package.json','split','API\x20request\x20failed\x0a\x09Message:\x20','schema','domain','delete','Get\x20information\x20about\x20Northflank\x20','subdomainId','addons','value','Generator\x20is\x20already\x20executing.','isEqual','addonId','__setModuleDefault','./inquirer-helper','volume','keys','printAsTable','Command','713201oCbCle','file','trys',',\x20-','runId','branches','opt','method','bind','safeDump','.json','contextProvider','push','sort','toLowerCase','details','path','endsWith','concat','project','checkUpdate','secret','351862aQwTVf','customUserAgent','warning','backups','getCurrentServiceName','-i,\x20--input\x20<resource-def>','throw','call','domainId','required','\x20properties','list','exitCode','pop','__generator','propToType','dmn','Failed\x20to\x20validate\x20input\x20(schema\x20mismatch):\x0a','join','alias','prototype','deleteWarningPrompt','quiet','done','safeLoad','./context/contextCommands','should\x20match\x20exactly\x20one\x20schema\x20in\x20oneOf','45dyjSxB','projects','adn','credentials','jobId','VERBOSE:\x20Request\x20body\x20->\x20','(HTTP\x20status\x20code:\x20','__importStar','askForProject','cred','askGeneric','./defaults','error','opts','askForJobRun','vol','data','315104ZvPlST','brn','description','ApiClient','\x20Northflank\x20resources','resource','hasOwnProperty','region','=>\x20running\x20command\x20with:\x20','includes','find','credential','status','defineProperty','repositories','assertContextExisting','jobs','11APXdoe','Update\x20Northflank\x20','some','parse','length','repo','replace','readFileSync','errors','6853jSApxk','__awaiter','force','isArray','svc','label','sent','upperFirst','domains','toString','green','existsSync','has','custom-columns=','Resource\x20was\x20not\x20deleted.','getCommand','aliases','serviceId','subdomain','consoleFormat','runs','OPTIONAL:\x20','\x0a\x09details\x20:','regions','__esModule','enablePositionalOptions','getCurrentProjectName','askForSecret','function','-v,\x20--version','json','return','asyncSequential','defaults','./utils','\x20--','validate','service','26227NbkrkP','ops','type','get','Error\x20occured\x20while\x20trying\x20to\x20run\x20command,\x20error:\x20','askForJob','url','addCommand','JSON-formatted\x20resource\x20definition,\x20takes\x20precedence\x20over\x20\x22--file\x22','getOwnPropertyNames','name','isString','filter','omit','rgn','credentialId','197oqSPbN','job','yml','askForDomain','kebabCase','create','568873HGGRTb','secretId','services','js-yaml','underline','contexts','File\x20does\x20not\x20exist:\x20','next','scrt','InquirerHelper','message','addon','plans','secrets','askForVolume','input','set','parseAsync','body','log','entries','map','yaml','getCommandOverview'];var a1K8=a1M;(function(K,M){var K7=a1M;while(!![]){try{var N=-parseInt(K7(0x11d))+-parseInt(K7(0x170))*parseInt(K7(0x19f))+-parseInt(K7(0x133))+parseInt(K7(0x1af))*parseInt(K7(0x1d1))+parseInt(K7(0x15f))+parseInt(K7(0x1b5))+parseInt(K7(0x179))*parseInt(K7(0x14e));if(N===M)break;else K['push'](K['shift']());}catch(F){K['push'](K['shift']());}}}(a1K,0x602dc));var __createBinding=this&&this['__createBinding']||(Object[a1K8(0x1b4)]?function(K,M,N,F){var K9=a1K8;if(F===undefined)F=N;Object[K9(0x16c)](K,F,{'enumerable':!![],'get':function(){return M[N];}});}:function(K,M,N,F){if(F===undefined)F=N;K[F]=M[N];}),__setModuleDefault=this&&this[a1K8(0x1ea)]||(Object[a1K8(0x1b4)]?function(K,M){var KK=a1K8;Object[KK(0x16c)](K,KK(0x1d8),{'enumerable':!![],'value':M});}:function(K,M){var KM=a1K8;K[KM(0x1d8)]=M;}),__importStar=this&&this[a1K8(0x155)]||function(K){var KN=a1K8;if(K&&K['__esModule'])return K;var M={};if(K!=null){for(var N in K)if(N!=='default'&&Object[KN(0x147)][KN(0x165)][KN(0x13a)](K,N))__createBinding(M,K,N);}return __setModuleDefault(M,K),M;},__awaiter=this&&this[a1K8(0x17a)]||function(K,M,N,F){function S(u){return u instanceof N?u:new N(function(D){D(u);});}return new(N||(N=Promise))(function(u,D){function J(h){var KF=a1M;try{d(F[KF(0x1bc)](h));}catch(c){D(c);}}function T(h){var KS=a1M;try{d(F[KS(0x139)](h));}catch(c){D(c);}}function d(h){var Ku=a1M;h[Ku(0x14a)]?u(h['value']):S(h[Ku(0x1e6)])['then'](J,T);}d((F=F['apply'](K,M||[]))['next']());});},__generator=this&&this[a1K8(0x141)]||function(K,M){var KD=a1K8,N={'label':0x0,'sent':function(){if(u[0x0]&0x1)throw u[0x1];return u[0x1];},'trys':[],'ops':[]},F,S,u,D;return D={'next':J(0x0),'throw':J(0x1),'return':J(0x2)},typeof Symbol===KD(0x195)&&(D[Symbol['iterator']]=function(){return this;}),D;function J(d){return function(h){return T([d,h]);};}function T(d){var KJ=KD;if(F)throw new TypeError(KJ(0x1e7));while(N)try{if(F=0x1,S&&(u=d[0x0]&0x2?S[KJ(0x198)]:d[0x0]?S[KJ(0x139)]||((u=S[KJ(0x198)])&&u[KJ(0x13a)](S),0x0):S['next'])&&!(u=u[KJ(0x13a)](S,d[0x1]))[KJ(0x14a)])return u;if(S=0x0,u)d=[d[0x0]&0x2,u[KJ(0x1e6)]];switch(d[0x0]){case 0x0:case 0x1:u=d;break;case 0x4:N[KJ(0x17e)]++;return{'value':d[0x1],'done':![]};case 0x5:N['label']++,S=d[0x1],d=[0x0];continue;case 0x7:d=N[KJ(0x1a0)]['pop'](),N[KJ(0x11f)][KJ(0x140)]();continue;default:if(!(u=N[KJ(0x11f)],u=u[KJ(0x174)]>0x0&&u[u[KJ(0x174)]-0x1])&&(d[0x0]===0x6||d[0x0]===0x2)){N=0x0;continue;}if(d[0x0]===0x3&&(!u||d[0x1]>u[0x0]&&d[0x1]<u[0x3])){N['label']=d[0x1];break;}if(d[0x0]===0x6&&N[KJ(0x17e)]<u[0x1]){N[KJ(0x17e)]=u[0x1],u=d;break;}if(u&&N['label']<u[0x2]){N[KJ(0x17e)]=u[0x2],N[KJ(0x1a0)][KJ(0x129)](d);break;}if(u[0x2])N[KJ(0x1a0)]['pop']();N['trys']['pop']();continue;}d=M[KJ(0x13a)](K,N);}catch(h){d=[0x6,h],S=0x0;}finally{F=u=0x0;}if(d[0x0]&0x5)throw d[0x1];return{'value':d[0x0]?d[0x1]:void 0x0,'done':!![]};}},__importDefault=this&&this['__importDefault']||function(K){var KT=a1K8;return K&&K[KT(0x191)]?K:{'default':K};};Object['defineProperty'](exports,a1K8(0x191),{'value':!![]});var js_client_1=require('@northflank/js-client'),commander_1=__importDefault(require('commander')),fs_1=__importDefault(require('fs')),ajv_1=__importDefault(require('ajv')),chalk_1=__importDefault(require('chalk')),_=__importStar(require('lodash')),contextCommands_1=require(a1K8(0x14c)),utils_1=require(a1K8(0x19b)),defaults=__importStar(require(a1K8(0x159))),inquirer_helper_1=require(a1K8(0x1eb)),console_format_helpers_1=require('./console-format-helpers'),command_overview_1=require('./command-overview'),port_forward_1=require('./port-forward'),yaml=require(a1K8(0x1b8)),pgk=require(a1K8(0x1dd));(function(){return __awaiter(void 0x0,void 0x0,void 0x0,function(){var K,M,N,F,S,u;return __generator(this,function(D){var Kd=a1M;switch(D[Kd(0x17e)]){case 0x0:D[Kd(0x11f)][Kd(0x129)]([0x0,0x3,,0x4]),K=new commander_1[(Kd(0x1d8))][(Kd(0x11c))]('northflank'),K[Kd(0x192)](!![]),K['version'](Kd(0x1d4)[Kd(0x12f)](chalk_1['default'][Kd(0x1b9)](pgk[Kd(0x1ce)])),Kd(0x196),'Print\x20the\x20current\x20version\x20of\x20the\x20Northflank\x20cli'),M=new js_client_1['ApiClientFileContextProvider']();return[0x4,(0x0,utils_1[Kd(0x131)])(M)];case 0x1:D[Kd(0x17f)](),N=new js_client_1[(Kd(0x162))](M,{'throwErrorOnHttpErrorCode':![],'customUserAgent':utils_1['customUserAgent']}),F=new contextCommands_1[(Kd(0x1d9))](N),S=new port_forward_1['CliPortForward'](M),K[Kd(0x1a6)](S['portFwdCmd']),K[Kd(0x1a6)](F['login']),K['addCommand'](F[Kd(0x1ba)]),generateCommands(N,N['endpoints'],K),K[Kd(0x1a6)]((0x0,command_overview_1[Kd(0x1cc)])(K));return[0x4,K[Kd(0x1c6)](process['argv'])];case 0x2:D[Kd(0x17f)]();return[0x3,0x4];case 0x3:u=D['sent'](),(0x0,utils_1[Kd(0x15a)])(Kd(0x1a3)['concat'](u[Kd(0x1bf)]));process['argv']['find'](function(J){return J==='--verbose';})&&console[Kd(0x1c8)](u);process[Kd(0x13f)]=0x1;return[0x3,0x4];case 0x4:return[0x2];}});});}());function a1M(K,M){K=K-0x119;var N=a1K[K];return N;}function isListCommand(K){var Kh=a1K8,M=[[Kh(0x1a2),'addon',Kh(0x136)],[Kh(0x1a2),Kh(0x1b0),Kh(0x18d)]];return K[Kh(0x169)](function(N){var Kc=Kh;return N===Kc(0x13e);})||M[Kh(0x172)](function(N){var Ka=Kh;return _[Ka(0x1e8)](K,N);});}function generateCommands(K,M,N,F,S){var Kt=a1K8;F===void 0x0&&(F=defaults[Kt(0x19a)]);S===void 0x0&&(S=[]);var u=new inquirer_helper_1[(Kt(0x1be))](new js_client_1['ApiClient'](K['contextProvider'],{'throwErrorOnHttpErrorCode':!![],'customUserAgent':utils_1[Kt(0x134)]}));function D(h,c){var Ky=Kt;return h[Ky(0x13c)]!==![]&&c===undefined;}function J(h,c){var KW=Kt,a=h['opt'],t=h[KW(0x1a9)],y=a[KW(0x1d8)],W=D(a,y),P=function(U){var KP=KW;return U[KP(0x174)]>0x1?'--'['concat'](U):'-'[KP(0x12f)](U);},i=a===null||a===void 0x0?void 0x0:a[KW(0x146)],o=i?_[KW(0x17c)](i)?'-'[KW(0x12f)](i===null||i===void 0x0?void 0x0:i['map'](function(U){return P(U);})[KW(0x145)](KW(0x120)),','):''[KW(0x12f)](P(i)):'',q=W?'':KW(0x18e),g=typeof a[KW(0x1a1)]==='boolean'?''[KW(0x12f)](o,KW(0x19c))[KW(0x12f)](t):''[KW(0x12f)](o,KW(0x19c))[KW(0x12f)](t,'\x20<')[KW(0x12f)](t['toUpperCase'](),'>'),l=q+a['description'];c[KW(0x1d5)](g,l,y);}return Object['getOwnPropertyNames'](F)['forEach'](function(h){var KC=Kt,c=M[h],a=F[h],t=S['concat']([h]);function y(A,k){var Ki=a1M,H=Object[Ki(0x1a8)](A||{});H[Ki(0x1ca)](function(w){return{'name':w,'opt':A[w]};})[Ki(0x12a)](function(w,r){var Ko=Ki;return!D(w[Ko(0x123)])?!D(r[Ko(0x123)])?0x0:0x1:-0x1;})[Ki(0x1d0)](function(w){J(w,k);});}function W(A,k){var Kq=a1M,H=[[Kq(0x130),Kq(0x14f),'prj'],[Kq(0x19e),Kq(0x1b7),Kq(0x17d)],[Kq(0x151),Kq(0x16a),Kq(0x157)],[Kq(0x1c0),Kq(0x1e5),Kq(0x150)],[Kq(0x1b0),Kq(0x16f)],['plan',Kq(0x1c1),'pln'],[Kq(0x166),Kq(0x190),Kq(0x1ad)],[Kq(0x1e1),Kq(0x181),Kq(0x143)],[Kq(0x132),Kq(0x1c2),Kq(0x1bd)],['volumes',Kq(0x119),Kq(0x15d)],[Kq(0x122),Kq(0x1d6),Kq(0x160)],['repos','repository',Kq(0x16d),Kq(0x175)]],w=H[Kq(0x169)](function(r){var Kg=Kq;return r[Kg(0x168)](k);});if(w!==undefined)A[Kq(0x189)](w[Kq(0x1ab)](function(r){return r!==k;}));}function P(A){var k,H;return __awaiter(this,void 0x0,void 0x0,function(){function w(e,Y,I){var O,G;return __awaiter(this,void 0x0,void 0x0,function(){var m,s,L;return __generator(this,function(Q){var Kl=a1M;switch(Q['label']){case 0x0:if(!_['has']((G=(O=a[Kl(0x123)])===null||O===void 0x0?void 0x0:O[Kl(0x12d)])!==null&&G!==void 0x0?G:{},e))return[0x3,0x3];m=!C&&!V&&I?I():undefined,L=A[e]||m;if(L)return[0x3,0x2];return[0x4,Y()];case 0x1:L=Q[Kl(0x17f)](),Q[Kl(0x17e)]=0x2;case 0x2:s=L,_[Kl(0x1c5)](r,e,s),Q[Kl(0x17e)]=0x3;case 0x3:return[0x2];}});});}var r,v,V,C,E=this;return __generator(this,function(e){var KU=a1M;switch(e[KU(0x17e)]){case 0x0:r={},v=K[KU(0x128)],V=t[KU(0x168)](KU(0x1e2)),C=A['noDefaults']===!![];return[0x4,(0x0,utils_1[KU(0x199)])(Object[KU(0x1c9)]((H=(k=a[KU(0x123)])===null||k===void 0x0?void 0x0:k[KU(0x12d)])!==null&&H!==void 0x0?H:{}),function(Y){var I=Y[0x0],O=Y[0x1];return __awaiter(E,void 0x0,void 0x0,function(){var G,m;return __generator(this,function(s){var KB=a1M;switch(s['label']){case 0x0:G=r===null||r===void 0x0?void 0x0:r['projectId'],m=I;switch(m){case'projectId':return[0x3,0x1];case KB(0x18a):return[0x3,0x3];case'addonId':return[0x3,0x5];case'jobId':return[0x3,0x7];case KB(0x121):return[0x3,0x9];case KB(0x1b6):return[0x3,0xb];case KB(0x1e1):return[0x3,0xd];case KB(0x13b):return[0x3,0xd];case KB(0x1ae):return[0x3,0xf];case'volumeId':return[0x3,0x11];case KB(0x18b):return[0x3,0x13];case KB(0x1e4):return[0x3,0x15];case KB(0x1da):return[0x3,0x17];}return[0x3,0x19];case 0x1:return[0x4,w('projectId',u[KB(0x156)][KB(0x125)](u),v[KB(0x193)][KB(0x125)](v))];case 0x2:return[0x2,s['sent']()];case 0x3:return[0x4,w(KB(0x18a),u['askForService'](G)[KB(0x125)](u),v[KB(0x137)][KB(0x125)](v))];case 0x4:return[0x2,s[KB(0x17f)]()];case 0x5:return[0x4,w(KB(0x1e9),u['askForAddon'](G)[KB(0x125)](u))];case 0x6:return[0x2,s[KB(0x17f)]()];case 0x7:return[0x4,w(KB(0x152),u[KB(0x1a4)](G)['bind'](u),v['getCurrentJobName'][KB(0x125)](v))];case 0x8:return[0x2,s[KB(0x17f)]()];case 0x9:return[0x4,w(KB(0x121),u[KB(0x15c)](r['jobId'],G)[KB(0x125)](u))];case 0xa:return[0x2,s['sent']()];case 0xb:return[0x4,w(KB(0x1b6),u[KB(0x194)](G)[KB(0x125)](u))];case 0xc:return[0x2,s[KB(0x17f)]()];case 0xd:return[0x4,w(KB(0x1e1),u[KB(0x1b2)]['bind'](u))];case 0xe:return[0x2,s[KB(0x17f)]()];case 0xf:return[0x4,w('credentialId',u['askForCredentials']['bind'](u))];case 0x10:return[0x2,s[KB(0x17f)]()];case 0x11:return[0x4,w('volumeId',u[KB(0x1c3)](G)[KB(0x125)](u))];case 0x12:return[0x2,s[KB(0x17f)]()];case 0x13:return[0x4,w(KB(0x18b),u[KB(0x1db)](r[KB(0x1e1)])[KB(0x125)](u))];case 0x14:return[0x2,s[KB(0x17f)]()];case 0x15:return[0x4,w(KB(0x1e4),u[KB(0x1db)](r[KB(0x13b)])[KB(0x125)](u))];case 0x16:return[0x2,s[KB(0x17f)]()];case 0x17:return[0x4,w(KB(0x1da),u['askForAddonBackup'](G,r[KB(0x1e9)])[KB(0x125)](u))];case 0x18:return[0x2,s['sent']()];case 0x19:return[0x4,w(I,u[KB(0x158)](I,O===null||O===void 0x0?void 0x0:O[KB(0x161)])[KB(0x125)](u))];case 0x1a:return[0x2,s['sent']()];}});});})];case 0x1:e['sent']();return[0x2,r];}});});}function i(A){var k,H;return __awaiter(this,void 0x0,void 0x0,function(){var w,r,v=this;return __generator(this,function(V){var KA=a1M;switch(V['label']){case 0x0:w={},r=Object[KA(0x11a)]((H=(k=a[KA(0x123)])===null||k===void 0x0?void 0x0:k[KA(0x1cd)])!==null&&H!==void 0x0?H:{});return[0x4,(0x0,utils_1[KA(0x199)])(r,function(C){return __awaiter(v,void 0x0,void 0x0,function(){var E,e,Y,I;return __generator(this,function(O){var Kk=a1M;switch(O[Kk(0x17e)]){case 0x0:E={},(e=a[Kk(0x123)]['query'][C],Y=e[Kk(0x13c)],I=e[Kk(0x1e0)]);return[0x4,u[Kk(0x142)]([''[Kk(0x12f)](C)],I,E,Y)];case 0x1:O[Kk(0x17f)]();E[C]!==undefined&&_[Kk(0x1c5)](w,C,E[C]);return[0x2,E];}});});})];case 0x1:V[KA(0x17f)]();return[0x2,w];}});});}function o(){var KH=a1M;switch(t[0x0]){case KH(0x1a2):return KH(0x1e3)[KH(0x12f)](t[0x1]||'resource','s');case'update':return KH(0x171)[KH(0x12f)](t[0x1]||KH(0x164),KH(0x13d));default:return''[KH(0x12f)](_[KH(0x180)](h),KH(0x163));}}function q(A,k){var Kw=a1M,H=this,w,r,v,V;if(!k){var C=(0x0,utils_1['getCommand'])()['name'](_[Kw(0x1b3)](h))[Kw(0x161)](o());return W(C,h),C;}var E=(0x0,utils_1[Kw(0x188)])(!![])[Kw(0x1a9)](_['kebabCase'](h))['description'](A[Kw(0x161)]||'');return W(E,h),((w=a['opt'])===null||w===void 0x0?void 0x0:w[Kw(0x1c7)])&&(E['option'](Kw(0x1cf),'File\x20to\x20load\x20resource\x20json\x20from'),E['option'](Kw(0x138),Kw(0x1a7))),y((r=a[Kw(0x123)])===null||r===void 0x0?void 0x0:r[Kw(0x12d)],E),y((v=a[Kw(0x123)])===null||v===void 0x0?void 0x0:v['query'],E),y((V=a[Kw(0x123)])===null||V===void 0x0?void 0x0:V['base'],E),E['action'](function(){return __awaiter(H,void 0x0,void 0x0,function(){var e,Y,I,O,G,m,s,L,Q,Z,n,x,X,b,j,p,f,R,z,K0,K1,K2,K3,K4;return __generator(this,function(K5){var Kr=a1M;switch(K5['label']){case 0x0:(0x0,utils_1[Kr(0x16e)])(K),e=E[Kr(0x15b)]();return[0x4,P(e)];case 0x1:Y=K5[Kr(0x17f)](),u['setPathVars'](Y);return[0x4,i(e)];case 0x2:I=K5['sent'](),O=Object[Kr(0x11a)]((K3=(K2=a['opt'])===null||K2===void 0x0?void 0x0:K2[Kr(0x12d)])!==null&&K3!==void 0x0?K3:{})[Kr(0x1ca)](function(K6){var Kv=Kr;return''[Kv(0x12f)](K6,'=')[Kv(0x12f)](chalk_1[Kv(0x1d8)][Kv(0x183)](Y[K6]));})[Kr(0x145)](',\x20');O[Kr(0x174)]>0x0&&(G=Kr(0x167)[Kr(0x12f)](O),console[Kr(0x1c8)](G));if(!((K4=a[Kr(0x123)])===null||K4===void 0x0?void 0x0:K4[Kr(0x1c7)]))return[0x3,0x4];return[0x4,d(e,a,t)];case 0x3:s=K5['sent']();return[0x3,0x5];case 0x4:s=undefined,K5[Kr(0x17e)]=0x5;case 0x5:m=s,L=!e[Kr(0x17b)]&&t[Kr(0x168)](Kr(0x1e2));if(!L)return[0x3,0x7];return[0x4,u[Kr(0x148)]()];case 0x6:L=!K5[Kr(0x17f)](),K5['label']=0x7;case 0x7:if(L)return(0x0,utils_1[Kr(0x135)])(Kr(0x187)),[0x2];return[0x4,c[Kr(0x13a)]({'parameters':Y,'options':I,'data':m})];case 0x8:Q=K5[Kr(0x17f)](),Z=Q[Kr(0x15e)],n=Q['request'],x=Q[Kr(0x15a)];(e===null||e===void 0x0?void 0x0:e[Kr(0x1dc)])&&(console[Kr(0x1c8)]('VERBOSE:\x20Using\x20endpoint\x20->\x20'[Kr(0x12f)](n[Kr(0x124)],':')[Kr(0x12f)](n[Kr(0x1a5)])),console[Kr(0x1c8)](Kr(0x153)[Kr(0x12f)](n[Kr(0x1c7)])));if(x){X=x[Kr(0x12c)]?Kr(0x18f)[Kr(0x12f)](JSON[Kr(0x1d2)](x[Kr(0x12c)])):'',b=(x===null||x===void 0x0?void 0x0:x['id'])?Kr(0x1d3)[Kr(0x12f)](x['id']):'',j=Kr(0x154)[Kr(0x12f)](x[Kr(0x16b)])[Kr(0x12f)](b,')');throw new Error(Kr(0x1df)[Kr(0x12f)](x[Kr(0x1bf)],'\x20')[Kr(0x12f)](j)[Kr(0x12f)](X));}if(!(e===null||e===void 0x0?void 0x0:e[Kr(0x149)])){p=e===null||e===void 0x0?void 0x0:e['output'];if(p===Kr(0x197))console['log']((0x0,console_format_helpers_1[Kr(0x18c)])(Z));else{if(p===Kr(0x1cb)||p===Kr(0x1b1))console[Kr(0x1c8)](yaml[Kr(0x126)](Z));else isListCommand(t)?(f=(p===null||p===void 0x0?void 0x0:p[Kr(0x1d7)](Kr(0x186)))?p[Kr(0x176)](Kr(0x186),'')[Kr(0x1de)](',')[Kr(0x1ca)](function(K6){var KV=Kr;return K6[KV(0x12b)]();}):undefined,R=t[t[Kr(0x174)]-0x1],z=''[Kr(0x12f)](R)[Kr(0x12f)](R['endsWith']('s')?'':'s'),K0=_['upperFirst'](z),K1=_[Kr(0x185)](Z,z)?Z[z]:Z,(0x0,console_format_helpers_1[Kr(0x11b)])(K1,K0,f)):console[Kr(0x1c8)]((0x0,console_format_helpers_1['consoleFormat'])(Z));}}return[0x2];}});});}),E;}var g=_[KC(0x185)](a,KC(0x123)),l=c,U=q(l,g);N[KC(0x1a6)](U);var B=_[KC(0x1ac)](a,'opt');Object[KC(0x11a)](B)[KC(0x174)]>0x0&&generateCommands(K,c,U,B,t);});function T(h,c,a){return __awaiter(this,void 0x0,void 0x0,function(){var t,y,W,P;return __generator(this,function(i){var KE=a1M;switch(i[KE(0x17e)]){case 0x0:t=h[KE(0x1c4)],y=h[KE(0x11e)];if(t!==undefined)try{return[0x2,JSON[KE(0x173)](t)];}catch(o){try{return[0x2,yaml[KE(0x14b)](t)];}catch(q){throw new Error('Unknown\x20input\x20format.\x20Not\x20valid\x20json\x20and\x20not\x20valid\x20yaml.');}}if(y!==undefined){if(!fs_1['default'][KE(0x184)](y))throw new Error(KE(0x1bb)[KE(0x12f)](y));W=fs_1[KE(0x1d8)][KE(0x177)](y)[KE(0x182)](),P=void 0x0;try{if(_[KE(0x1aa)](W)){if(h[KE(0x11e)][KE(0x12e)](KE(0x127)))P=JSON[KE(0x173)](W);else{if(h[KE(0x11e)][KE(0x12e)]('.yaml')||h[KE(0x11e)][KE(0x12e)]('yml'))P=yaml[KE(0x14b)](W);else throw new Error('Unknown\x20input\x20file\x20type:\x20'['concat'](h['file'][KE(0x1de)]('.')[KE(0x140)]()));}}else P=W;return[0x2,P];}catch(g){throw new Error('Failed\x20to\x20validate\x20input\x20(incorrect\x20format):\x20'['concat'](g[KE(0x1bf)]));}}return[0x4,u['retrievePayloadViaInteractiveCli'](c,{'cmdPath':a})];case 0x1:return[0x2,i[KE(0x17f)]()];}});});}function d(h,c,a){var t;return __awaiter(this,void 0x0,void 0x0,function(){var y,W,P,i;return __generator(this,function(o){var Ke=a1M;switch(o['label']){case 0x0:return[0x4,T(h,c,a)];case 0x1:y=o[Ke(0x17f)](),W=new ajv_1[(Ke(0x1d8))]({'allErrors':!![],'keywords':['example'],'validateFormats':![],'strict':![]}),P=W[Ke(0x19d)](c[Ke(0x123)]['body'],y),i=(t=W===null||W===void 0x0?void 0x0:W['errors'])===null||t===void 0x0?void 0x0:t[Ke(0x1ab)](function(q){var KY=Ke,g;return!((g=q===null||q===void 0x0?void 0x0:q[KY(0x1bf)])===null||g===void 0x0?void 0x0:g[KY(0x168)](KY(0x14d)));});if(!P&&i!==undefined&&(i===null||i===void 0x0?void 0x0:i[Ke(0x174)])>0x0)throw new Error(Ke(0x144)['concat'](JSON['stringify'](W[Ke(0x178)],null,'\x20')));return[0x2,y];}});});}}