@datadog/datadog-ci 2.13.0 → 2.14.0
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 +2 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/gate/evaluate.d.ts +3 -1
- package/dist/commands/gate/evaluate.js +19 -10
- package/dist/commands/gate/evaluate.js.map +1 -1
- package/dist/commands/gate/renderer.d.ts +2 -1
- package/dist/commands/gate/renderer.js +24 -8
- package/dist/commands/gate/renderer.js.map +1 -1
- package/dist/commands/gate/utils.d.ts +4 -0
- package/dist/commands/gate/utils.js +21 -1
- package/dist/commands/gate/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -20,7 +20,8 @@ const cli = new clipanion_1.Cli({
|
|
|
20
20
|
});
|
|
21
21
|
const commandsPath = `${__dirname}/commands`;
|
|
22
22
|
for (const commandFolder of fs_1.default.readdirSync(commandsPath)) {
|
|
23
|
-
|
|
23
|
+
const betaCommandsEnabled = process.env.DD_BETA_COMMANDS_ENABLED === '1' || process.env.DD_BETA_COMMANDS_ENABLED === 'true';
|
|
24
|
+
if (BETA_COMMANDS.includes(commandFolder) && !betaCommandsEnabled) {
|
|
24
25
|
continue;
|
|
25
26
|
}
|
|
26
27
|
const commandPath = `${commandsPath}/${commandFolder}`;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;AAAA,4CAAmB;AAEnB,yCAA6B;AAG7B,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,CAAA;AAE9B,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,EAAE;IAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAA;AAED,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;AACxC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;AAEzC,MAAM,GAAG,GAAG,IAAI,eAAG,CAAC;IAClB,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO;CAClD,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,GAAG,SAAS,WAAW,CAAA;AAC5C,KAAK,MAAM,aAAa,IAAI,YAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IACxD,IAAI,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;AAAA,4CAAmB;AAEnB,yCAA6B;AAG7B,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,CAAA;AAE9B,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,EAAE;IAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAA;AAED,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;AACxC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;AAEzC,MAAM,GAAG,GAAG,IAAI,eAAG,CAAC;IAClB,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO;CAClD,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,GAAG,SAAS,WAAW,CAAA;AAC5C,KAAK,MAAM,aAAa,IAAI,YAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IACxD,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,CAAA;IACjG,IAAI,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,EAAE;QACjE,SAAQ;KACT;IACD,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,aAAa,EAAE,CAAA;IACtD,IAAI,YAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE;QAC1C,OAAO,CAAC,GAAG,WAAW,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAqB,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;KACxF;CACF;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,KAAK,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAA;CACH"}
|
|
@@ -3,11 +3,13 @@ export declare class GateEvaluateCommand extends Command {
|
|
|
3
3
|
private config;
|
|
4
4
|
private dryRun;
|
|
5
5
|
private failOnEmpty;
|
|
6
|
+
private failIfUnavailable;
|
|
6
7
|
private userScope?;
|
|
7
8
|
private tags?;
|
|
8
9
|
execute(): Promise<number>;
|
|
9
10
|
private getApiHelper;
|
|
10
11
|
private getSpanTags;
|
|
11
12
|
private evaluateRules;
|
|
12
|
-
private
|
|
13
|
+
private handleEvaluationSuccess;
|
|
14
|
+
private handleEvaluationError;
|
|
13
15
|
}
|
|
@@ -17,6 +17,7 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
17
17
|
const clipanion_1 = require("clipanion");
|
|
18
18
|
const ci_1 = require("../../helpers/ci");
|
|
19
19
|
const format_git_span_data_1 = require("../../helpers/git/format-git-span-data");
|
|
20
|
+
const retry_1 = require("../../helpers/retry");
|
|
20
21
|
const tags_1 = require("../../helpers/tags");
|
|
21
22
|
const user_provided_git_1 = require("../../helpers/user-provided-git");
|
|
22
23
|
const api_1 = require("./api");
|
|
@@ -33,6 +34,7 @@ class GateEvaluateCommand extends clipanion_1.Command {
|
|
|
33
34
|
};
|
|
34
35
|
this.dryRun = false;
|
|
35
36
|
this.failOnEmpty = false;
|
|
37
|
+
this.failIfUnavailable = false;
|
|
36
38
|
}
|
|
37
39
|
execute() {
|
|
38
40
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -74,33 +76,40 @@ class GateEvaluateCommand extends clipanion_1.Command {
|
|
|
74
76
|
this.context.stdout.write(renderer_1.renderDryRunEvaluation());
|
|
75
77
|
return 0;
|
|
76
78
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
79
|
+
return retry_1.retryRequest(() => api.evaluateGateRules(evaluateRequest, this.context.stdout.write.bind(this.context.stdout)), {
|
|
80
|
+
onRetry: (e, attempt) => {
|
|
81
|
+
this.context.stderr.write(renderer_1.renderEvaluationRetry(attempt, e));
|
|
82
|
+
},
|
|
83
|
+
retries: 5,
|
|
84
|
+
})
|
|
80
85
|
.then((response) => {
|
|
81
|
-
return this.
|
|
86
|
+
return this.handleEvaluationSuccess(response.data.data.attributes);
|
|
82
87
|
})
|
|
83
88
|
.catch((error) => {
|
|
84
|
-
|
|
85
|
-
this.context.stderr.write(renderer_1.renderGateEvaluationError(error));
|
|
86
|
-
return 1;
|
|
89
|
+
return this.handleEvaluationError(error);
|
|
87
90
|
});
|
|
88
91
|
});
|
|
89
92
|
}
|
|
90
|
-
|
|
93
|
+
handleEvaluationSuccess(evaluationResponse) {
|
|
91
94
|
this.context.stdout.write(renderer_1.renderEvaluationResponse(evaluationResponse));
|
|
92
95
|
if (evaluationResponse.status === 'failed' || (evaluationResponse.status === 'empty' && this.failOnEmpty)) {
|
|
93
96
|
return 1;
|
|
94
97
|
}
|
|
95
|
-
|
|
96
|
-
|
|
98
|
+
return 0;
|
|
99
|
+
}
|
|
100
|
+
handleEvaluationError(error) {
|
|
101
|
+
this.context.stderr.write(renderer_1.renderGateEvaluationError(error, this.failIfUnavailable));
|
|
102
|
+
if (utils_1.is4xxError(error) || (utils_1.is5xxError(error) && this.failIfUnavailable)) {
|
|
103
|
+
return 1;
|
|
97
104
|
}
|
|
105
|
+
return 0;
|
|
98
106
|
}
|
|
99
107
|
}
|
|
100
108
|
exports.GateEvaluateCommand = GateEvaluateCommand;
|
|
101
109
|
GateEvaluateCommand.addPath('gate', 'evaluate');
|
|
102
110
|
GateEvaluateCommand.addOption('dryRun', clipanion_1.Command.Boolean('--dry-run'));
|
|
103
111
|
GateEvaluateCommand.addOption('failOnEmpty', clipanion_1.Command.Boolean('--fail-on-empty'));
|
|
112
|
+
GateEvaluateCommand.addOption('failIfUnavailable', clipanion_1.Command.Boolean('--fail-if-unavailable'));
|
|
104
113
|
GateEvaluateCommand.addOption('userScope', clipanion_1.Command.Array('--scope'));
|
|
105
114
|
GateEvaluateCommand.addOption('tags', clipanion_1.Command.Array('--tags'));
|
|
106
115
|
//# sourceMappingURL=evaluate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/commands/gate/evaluate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,yCAAiC;AAEjC,yCAA8C;AAC9C,iFAAqE;AAErE,6CAA4C;AAC5C,uEAAkE;AAElE,+BAAoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/commands/gate/evaluate.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,4 +5,5 @@ export declare const renderStatus: (result: string) => string;
|
|
|
5
5
|
export declare const renderRuleEvaluation: (ruleEvaluation: RuleEvaluation) => string;
|
|
6
6
|
export declare const renderDryRunEvaluation: () => string;
|
|
7
7
|
export declare const renderGateEvaluationInput: (evaluateRequest: Payload) => string;
|
|
8
|
-
export declare const renderGateEvaluationError: (error: any) => string;
|
|
8
|
+
export declare const renderGateEvaluationError: (error: any, failIfUnavailable: boolean) => string;
|
|
9
|
+
export declare const renderEvaluationRetry: (attempt: number, error: any) => string;
|
|
@@ -3,9 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.renderGateEvaluationError = exports.renderGateEvaluationInput = exports.renderDryRunEvaluation = exports.renderRuleEvaluation = exports.renderStatus = exports.renderEmptyEvaluation = exports.renderEvaluationResponse = void 0;
|
|
6
|
+
exports.renderEvaluationRetry = exports.renderGateEvaluationError = exports.renderGateEvaluationInput = exports.renderDryRunEvaluation = exports.renderRuleEvaluation = exports.renderStatus = exports.renderEmptyEvaluation = exports.renderEvaluationResponse = void 0;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
8
|
const tags_1 = require("../../helpers/tags");
|
|
9
|
+
const utils_1 = require("./utils");
|
|
9
10
|
const ICONS = {
|
|
10
11
|
FAILED: '❌',
|
|
11
12
|
SUCCESS: '✅',
|
|
@@ -17,7 +18,7 @@ const renderEvaluationResponse = (evaluationResponse) => {
|
|
|
17
18
|
return exports.renderEmptyEvaluation();
|
|
18
19
|
}
|
|
19
20
|
let fullStr = '';
|
|
20
|
-
fullStr += chalk_1.default.green('Successfully evaluated
|
|
21
|
+
fullStr += chalk_1.default.green('Successfully evaluated all matching rules.\n');
|
|
21
22
|
fullStr += `Overall result: ${exports.renderStatus(evaluationResponse.status)}\n`;
|
|
22
23
|
fullStr += `Number of rules evaluated: ${chalk_1.default.bold(evaluationResponse.rule_evaluations.length)}\n`;
|
|
23
24
|
fullStr += '\n';
|
|
@@ -72,13 +73,28 @@ const renderGateEvaluationInput = (evaluateRequest) => {
|
|
|
72
73
|
return fullStr;
|
|
73
74
|
};
|
|
74
75
|
exports.renderGateEvaluationInput = renderGateEvaluationInput;
|
|
75
|
-
const renderGateEvaluationError = (error) => {
|
|
76
|
-
let
|
|
77
|
-
if (error.response) {
|
|
78
|
-
|
|
76
|
+
const renderGateEvaluationError = (error, failIfUnavailable) => {
|
|
77
|
+
let errorStr = 'ERROR: Could not evaluate the rules.';
|
|
78
|
+
if (!error.response) {
|
|
79
|
+
return chalk_1.default.red(`${errorStr}\n`);
|
|
79
80
|
}
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
errorStr += ` Status code: ${error.response.status}.\n`;
|
|
82
|
+
if (utils_1.isBadRequestError(error)) {
|
|
83
|
+
const errorMessage = error.response.data.errors[0].detail;
|
|
84
|
+
errorStr += `Error is "${errorMessage}".\n`;
|
|
85
|
+
}
|
|
86
|
+
else if (utils_1.is5xxError(error) && !failIfUnavailable) {
|
|
87
|
+
errorStr += "Use the '--fail-if-unavailable' option to fail the command in this situation.\n";
|
|
88
|
+
}
|
|
89
|
+
return chalk_1.default.red(errorStr);
|
|
82
90
|
};
|
|
83
91
|
exports.renderGateEvaluationError = renderGateEvaluationError;
|
|
92
|
+
const renderEvaluationRetry = (attempt, error) => {
|
|
93
|
+
if (utils_1.is5xxError(error)) {
|
|
94
|
+
const errorStatus = utils_1.getStatus(error);
|
|
95
|
+
return chalk_1.default.yellow(`[attempt ${attempt}] Gate evaluation failed with status code ${errorStatus}, retrying.\n`);
|
|
96
|
+
}
|
|
97
|
+
return chalk_1.default.yellow(`[attempt ${attempt}] Gate evaluation failed, retrying.\n`);
|
|
98
|
+
};
|
|
99
|
+
exports.renderEvaluationRetry = renderEvaluationRetry;
|
|
84
100
|
//# sourceMappingURL=renderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/commands/gate/renderer.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAEzB,6CAAiE;
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/commands/gate/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,3 +6,7 @@ export declare const getBaseIntakeUrl: () => string;
|
|
|
6
6
|
export declare const parseScope: (scope: string[]) => {
|
|
7
7
|
[key: string]: string[];
|
|
8
8
|
};
|
|
9
|
+
export declare const getStatus: (error: any) => any;
|
|
10
|
+
export declare const is4xxError: (error: any) => any;
|
|
11
|
+
export declare const isBadRequestError: (error: any) => any;
|
|
12
|
+
export declare const is5xxError: (error: any) => any;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseScope = exports.getBaseIntakeUrl = void 0;
|
|
3
|
+
exports.is5xxError = exports.isBadRequestError = exports.is4xxError = exports.getStatus = exports.parseScope = exports.getBaseIntakeUrl = void 0;
|
|
4
4
|
const getBaseIntakeUrl = () => {
|
|
5
5
|
if (process.env.DATADOG_SITE || process.env.DD_SITE) {
|
|
6
6
|
return `https://quality-gates.${process.env.DATADOG_SITE || process.env.DD_SITE}`;
|
|
@@ -37,4 +37,24 @@ const parseScope = (scope) => {
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
exports.parseScope = parseScope;
|
|
40
|
+
const getStatus = (error) => {
|
|
41
|
+
var _a;
|
|
42
|
+
return (_a = error.response) === null || _a === void 0 ? void 0 : _a.status;
|
|
43
|
+
};
|
|
44
|
+
exports.getStatus = getStatus;
|
|
45
|
+
const is4xxError = (error) => {
|
|
46
|
+
const status = exports.getStatus(error);
|
|
47
|
+
return status && status >= 400 && status <= 499;
|
|
48
|
+
};
|
|
49
|
+
exports.is4xxError = is4xxError;
|
|
50
|
+
const isBadRequestError = (error) => {
|
|
51
|
+
const status = exports.getStatus(error);
|
|
52
|
+
return status && status === 400;
|
|
53
|
+
};
|
|
54
|
+
exports.isBadRequestError = isBadRequestError;
|
|
55
|
+
const is5xxError = (error) => {
|
|
56
|
+
const status = exports.getStatus(error);
|
|
57
|
+
return status && status >= 500 && status <= 599;
|
|
58
|
+
};
|
|
59
|
+
exports.is5xxError = is5xxError;
|
|
40
60
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/commands/gate/utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;QACnD,OAAO,yBAAyB,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;KAClF;IAED,OAAO,qCAAqC,CAAA;AAC9C,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B;AAED;;;GAGG;AACI,MAAM,UAAU,GAAG,CAAC,KAAe,EAAE,EAAE;IAC5C,IAAI;QACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAA8B,EAAE,YAAY,EAAE,EAAE;YACnE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC/B,OAAO,GAAG,CAAA;aACX;YAED,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC5C,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;YACjD,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;YAEpD,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;iBACrB;aACF;iBAAM;gBACL,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;aACnB;YAED,OAAO,GAAG,CAAA;QACZ,CAAC,EAAE,EAAE,CAAC,CAAA;KACP;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,EAAE,CAAA;KACV;AACH,CAAC,CAAA;AAxBY,QAAA,UAAU,cAwBtB"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/commands/gate/utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;QACnD,OAAO,yBAAyB,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;KAClF;IAED,OAAO,qCAAqC,CAAA;AAC9C,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B;AAED;;;GAGG;AACI,MAAM,UAAU,GAAG,CAAC,KAAe,EAAE,EAAE;IAC5C,IAAI;QACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAA8B,EAAE,YAAY,EAAE,EAAE;YACnE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC/B,OAAO,GAAG,CAAA;aACX;YAED,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC5C,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;YACjD,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;YAEpD,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;iBACrB;aACF;iBAAM;gBACL,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;aACnB;YAED,OAAO,GAAG,CAAA;QACZ,CAAC,EAAE,EAAE,CAAC,CAAA;KACP;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,EAAE,CAAA;KACV;AACH,CAAC,CAAA;AAxBY,QAAA,UAAU,cAwBtB;AAEM,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE;;IACtC,OAAO,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA;AAC/B,CAAC,CAAA;AAFY,QAAA,SAAS,aAErB;AAEM,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE;IACvC,MAAM,MAAM,GAAG,iBAAS,CAAC,KAAK,CAAC,CAAA;IAE/B,OAAO,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAA;AACjD,CAAC,CAAA;AAJY,QAAA,UAAU,cAItB;AAEM,MAAM,iBAAiB,GAAG,CAAC,KAAU,EAAE,EAAE;IAC9C,MAAM,MAAM,GAAG,iBAAS,CAAC,KAAK,CAAC,CAAA;IAE/B,OAAO,MAAM,IAAI,MAAM,KAAK,GAAG,CAAA;AACjC,CAAC,CAAA;AAJY,QAAA,iBAAiB,qBAI7B;AAEM,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE;IACvC,MAAM,MAAM,GAAG,iBAAS,CAAC,KAAK,CAAC,CAAA;IAE/B,OAAO,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAA;AACjD,CAAC,CAAA;AAJY,QAAA,UAAU,cAItB"}
|