testcafe-reporter-qase 1.2.0-alpha.2 → 2.0.0-beta.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/index.js DELETED
@@ -1,532 +0,0 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __assign = (this && this.__assign) || function () {
7
- __assign = Object.assign || function(t) {
8
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9
- s = arguments[i];
10
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
- t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (_) try {
33
- 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;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
- var __spreadArrays = (this && this.__spreadArrays) || function () {
54
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
55
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
56
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
57
- r[k] = a[j];
58
- return r;
59
- };
60
- var __importDefault = (this && this.__importDefault) || function (mod) {
61
- return (mod && mod.__esModule) ? mod : { "default": mod };
62
- };
63
- /* eslint-disable no-console,@typescript-eslint/require-await */
64
- /* eslint-disable camelcase */
65
- /* eslint-disable no-unused-vars */
66
- var CustomBoundaryFormData_1 = require("./CustomBoundaryFormData");
67
- var src_1 = require("qaseio/dist/src");
68
- var fs_1 = require("fs");
69
- var qaseio_1 = require("qaseio");
70
- var chalk_1 = __importDefault(require("chalk"));
71
- var child_process_1 = require("child_process");
72
- var moment_1 = __importDefault(require("moment"));
73
- var path_1 = __importDefault(require("path"));
74
- var RuntimeError = WebAssembly.RuntimeError;
75
- var loadJSON = function (file) {
76
- try {
77
- var data = fs_1.readFileSync(file, { encoding: 'utf8' });
78
- if (data) {
79
- return JSON.parse(data);
80
- }
81
- }
82
- catch (error) {
83
- // Ignore error when file does not exist or it's malformed
84
- }
85
- return undefined;
86
- };
87
- var prepareConfig = function (options) {
88
- if (options === void 0) { options = {}; }
89
- var loaded = loadJSON(path_1.default.join(process.cwd(), '.qaserc'));
90
- if (!loaded) {
91
- throw new RuntimeError();
92
- }
93
- var config = Object.assign(loaded, options);
94
- return {
95
- enabled: process.env.QASE_ENABLED === 'true' || config.enabled || false,
96
- apiToken: process.env.QASE_API_TOKEN || config.apiToken,
97
- basePath: process.env.QASE_API_BASE_URL || config.basePath,
98
- rootSuiteTitle: process.env.QASE_ROOT_SUITE_TITLE || config.rootSuiteTitle || '',
99
- projectCode: process.env.QASE_PROJECT || config.projectCode || '',
100
- runId: process.env.QASE_RUN_ID || config.runId || '',
101
- runName: process.env.QASE_RUN_NAME ||
102
- config.runName ||
103
- 'Automated Run %DATE%',
104
- runDescription: process.env.QASE_RUN_DESCRIPTION || config.runDescription,
105
- runComplete: process.env.QASE_RUN_COMPLETE === 'true' || config.runComplete,
106
- uploadAttachments: process.env.QASE_UPLOAD_ATTACHMENTS === 'true' || config.uploadAttachments,
107
- environmentId: process.env.QASE_ENVIRONMENT_ID || config.environmentId || undefined,
108
- logging: process.env.QASE_LOGGING !== '' || config.logging,
109
- };
110
- };
111
- var prepareReportName = function (config, userAgents) {
112
- var date = moment_1.default().format();
113
- return config.runName
114
- .replace('%DATE%', date)
115
- .replace('%AGENTS%', "(" + userAgents.join(', ') + ")");
116
- };
117
- var verifyConfig = function (config) {
118
- var enabled = config.enabled, apiToken = config.apiToken, projectCode = config.projectCode;
119
- if (enabled) {
120
- if (!projectCode) {
121
- console.log('[Qase] Project Code should be provided');
122
- }
123
- if (apiToken && projectCode) {
124
- return true;
125
- }
126
- }
127
- return false;
128
- };
129
- var TestcafeQaseReporter = /** @class */ (function () {
130
- function TestcafeQaseReporter() {
131
- var _this = this;
132
- this.pending = [];
133
- this.results = [];
134
- this.reportTaskStart = function (_startTime, userAgents) { return __awaiter(_this, void 0, void 0, function () {
135
- var _this = this;
136
- return __generator(this, function (_a) {
137
- if (!this.enabled) {
138
- return [2 /*return*/];
139
- }
140
- this.userAgents = userAgents;
141
- this.config.runName = prepareReportName(this.config, this.userAgents);
142
- return [2 /*return*/, this.checkProject(this.config.projectCode, function (prjExists) { return __awaiter(_this, void 0, void 0, function () {
143
- var _this = this;
144
- return __generator(this, function (_a) {
145
- if (!prjExists) {
146
- this.log(chalk_1.default(templateObject_1 || (templateObject_1 = __makeTemplateObject(["{red Project ", " does not exist}"], ["{red Project ", " does not exist}"])), this.config.projectCode));
147
- this.enabled = false;
148
- return [2 /*return*/];
149
- }
150
- this.log(chalk_1.default(templateObject_2 || (templateObject_2 = __makeTemplateObject(["{green Project ", " exists}"], ["{green Project ", " exists}"])), this.config.projectCode));
151
- if (this.config.runId) {
152
- this.saveRunId(this.config.runId);
153
- return [2 /*return*/, this.checkRun(this.config.runId, function (runExists) {
154
- if (runExists) {
155
- _this.log(chalk_1.default(templateObject_3 || (templateObject_3 = __makeTemplateObject(["{green Using run ", " to publish test results}"], ["{green Using run ", " to publish test results}"])), _this.config.runId));
156
- }
157
- else {
158
- _this.log(chalk_1.default(templateObject_4 || (templateObject_4 = __makeTemplateObject(["{red Run ", " does not exist}"], ["{red Run ", " does not exist}"])), _this.config.runId));
159
- _this.enabled = false;
160
- }
161
- })];
162
- }
163
- else {
164
- return [2 /*return*/, this.createRun(this.config.runName, this.config.runDescription, function (created) {
165
- var _a;
166
- if (created) {
167
- _this.saveRunId((_a = created.result) === null || _a === void 0 ? void 0 : _a.id);
168
- _this.log(chalk_1.default(templateObject_5 || (templateObject_5 = __makeTemplateObject(["{green Using run ", " to publish test results}"], ["{green Using run ", " to publish test results}"])), _this.config.runId));
169
- }
170
- else {
171
- _this.log(chalk_1.default(templateObject_6 || (templateObject_6 = __makeTemplateObject(["{red Could not create run in project ", "}"], ["{red Could not create run in project ", "}"])), _this.config.projectCode));
172
- _this.enabled = false;
173
- }
174
- })];
175
- }
176
- return [2 /*return*/];
177
- });
178
- }); })];
179
- });
180
- }); };
181
- this.reportFixtureStart = function (name) { return __awaiter(_this, void 0, void 0, function () {
182
- return __generator(this, function (_a) {
183
- this.fixtureName = String(name);
184
- return [2 /*return*/];
185
- });
186
- }); };
187
- this.reportTestDone = function (name, testRunInfo, meta, formatError) { return __awaiter(_this, void 0, void 0, function () {
188
- var hasErr, testStatus, errorLog, attachmentsArray;
189
- return __generator(this, function (_a) {
190
- switch (_a.label) {
191
- case 0:
192
- if (!this.enabled) {
193
- return [2 /*return*/];
194
- }
195
- this.queued++;
196
- hasErr = testRunInfo.errs.length;
197
- if (testRunInfo.skipped) {
198
- testStatus = src_1.ResultCreateStatusEnum.SKIPPED;
199
- }
200
- else if (hasErr > 0) {
201
- testStatus = src_1.ResultCreateStatusEnum.FAILED;
202
- }
203
- else {
204
- testStatus = src_1.ResultCreateStatusEnum.PASSED;
205
- }
206
- errorLog = testRunInfo.errs
207
- .map(function (x) { return formatError(x).replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, ''); })
208
- .join('\n');
209
- attachmentsArray = [];
210
- if (!(this.config.uploadAttachments && testRunInfo.screenshots.length > 0)) return [3 /*break*/, 2];
211
- return [4 /*yield*/, this.uploadAttachments(testRunInfo)];
212
- case 1:
213
- attachmentsArray = _a.sent();
214
- _a.label = 2;
215
- case 2:
216
- this.prepareCaseResult({ name: name, info: testRunInfo, meta: meta, error: errorLog }, testStatus, attachmentsArray);
217
- return [2 /*return*/];
218
- }
219
- });
220
- }); };
221
- this.reportTaskDone = function () { return __awaiter(_this, void 0, void 0, function () {
222
- var body;
223
- var _this = this;
224
- return __generator(this, function (_a) {
225
- switch (_a.label) {
226
- case 0:
227
- if (!this.enabled) {
228
- return [2 /*return*/];
229
- }
230
- return [4 /*yield*/, new Promise(function (resolve, reject) {
231
- var timer = 0;
232
- var interval = setInterval(function () {
233
- timer++;
234
- if (_this.config.runId && _this.queued === 0) {
235
- clearInterval(interval);
236
- resolve();
237
- }
238
- if (timer > 30) {
239
- clearInterval(interval);
240
- reject();
241
- }
242
- }, 1000);
243
- })];
244
- case 1:
245
- _a.sent();
246
- if (!(this.results.length === 0)) return [3 /*break*/, 2];
247
- console.warn("\n(Qase Reporter)\n \nNo testcases were matched.\n Ensure that your tests are declared correctly.\n");
248
- return [3 /*break*/, 5];
249
- case 2:
250
- body = {
251
- results: this.results,
252
- };
253
- return [4 /*yield*/, this.api.results.createResultBulk(this.config.projectCode, Number(this.config.runId), body)];
254
- case 3:
255
- _a.sent();
256
- this.log('Results sent to Qase');
257
- if (!this.config.runComplete) return [3 /*break*/, 5];
258
- return [4 /*yield*/, this.completeRun(this.config.runId)];
259
- case 4:
260
- _a.sent();
261
- _a.label = 5;
262
- case 5: return [2 /*return*/];
263
- }
264
- });
265
- }); };
266
- this.config = prepareConfig();
267
- this.enabled = verifyConfig(this.config);
268
- this.api = new qaseio_1.QaseApi(this.config.apiToken, this.config.basePath, TestcafeQaseReporter.createHeaders(), CustomBoundaryFormData_1.CustomBoundaryFormData);
269
- this.queued = 0;
270
- this.fixtureName = '';
271
- this.screenshots = {};
272
- }
273
- TestcafeQaseReporter.getCaseId = function (meta) {
274
- if (!meta.CID) {
275
- return [];
276
- }
277
- return meta.CID;
278
- };
279
- TestcafeQaseReporter.createHeaders = function () {
280
- var nodeVersion = process.version, os = process.platform, arch = process.arch;
281
- var npmVersion = child_process_1.execSync('npm -v', { encoding: 'utf8' }).replace(/['"\n]+/g, '');
282
- var qaseapiVersion = this.getPackageVersion('qaseio');
283
- var testcafeVersion = this.getPackageVersion('testcafe');
284
- var testcafeCaseReporterVersion = this.getPackageVersion('testcafe-reporter-qase');
285
- var xPlatformHeader = "node=" + nodeVersion + "; npm=" + npmVersion + "; os=" + os + "; arch=" + arch;
286
- // eslint-disable-next-line max-len
287
- var xClientHeader = "testcafe=" + testcafeVersion + "; qase-testcafe=" + testcafeCaseReporterVersion + "; qaseapi=" + qaseapiVersion;
288
- return {
289
- 'X-Client': xClientHeader,
290
- 'X-Platform': xPlatformHeader,
291
- };
292
- };
293
- TestcafeQaseReporter.createRunObject = function (name, cases, args) {
294
- return __assign({ title: name, cases: cases }, args);
295
- };
296
- TestcafeQaseReporter.getPackageVersion = function (name) {
297
- var UNDEFINED = 'undefined';
298
- try {
299
- var pathToPackageJson = require.resolve(name + "/package.json", { paths: [process.cwd()] });
300
- if (pathToPackageJson) {
301
- try {
302
- var packageString = fs_1.readFileSync(pathToPackageJson, { encoding: 'utf8' });
303
- if (packageString) {
304
- var packageObject = JSON.parse(packageString);
305
- return packageObject.version;
306
- }
307
- return UNDEFINED;
308
- }
309
- catch (error) {
310
- return UNDEFINED;
311
- }
312
- }
313
- }
314
- catch (error) {
315
- return UNDEFINED;
316
- }
317
- };
318
- TestcafeQaseReporter.prototype.completeRun = function (runId) {
319
- return __awaiter(this, void 0, void 0, function () {
320
- var _this = this;
321
- return __generator(this, function (_a) {
322
- switch (_a.label) {
323
- case 0:
324
- if (!(runId !== undefined)) return [3 /*break*/, 2];
325
- return [4 /*yield*/, this.api.runs.completeRun(this.config.projectCode, Number(this.config.runId))
326
- .then(function () {
327
- _this.log('Run completed successfully');
328
- })
329
- .catch(function (err) {
330
- _this.log("Error on completing run " + err);
331
- })];
332
- case 1:
333
- _a.sent();
334
- _a.label = 2;
335
- case 2: return [2 /*return*/];
336
- }
337
- });
338
- });
339
- };
340
- TestcafeQaseReporter.prototype.log = function (message) {
341
- var optionalParams = [];
342
- for (var _i = 1; _i < arguments.length; _i++) {
343
- optionalParams[_i - 1] = arguments[_i];
344
- }
345
- if (this.config.logging) {
346
- console.log.apply(console, __spreadArrays([chalk_1.default(templateObject_7 || (templateObject_7 = __makeTemplateObject(["{bold {blue qase:}} ", ""], ["{bold {blue qase:}} ", ""])), message)], optionalParams));
347
- }
348
- };
349
- TestcafeQaseReporter.prototype.checkProject = function (projectCode, cb) {
350
- var _a;
351
- return __awaiter(this, void 0, void 0, function () {
352
- var resp, err_1;
353
- return __generator(this, function (_b) {
354
- switch (_b.label) {
355
- case 0:
356
- _b.trys.push([0, 3, , 4]);
357
- return [4 /*yield*/, this.api.projects.getProject(projectCode)];
358
- case 1:
359
- resp = _b.sent();
360
- return [4 /*yield*/, cb(Boolean((_a = resp.data.result) === null || _a === void 0 ? void 0 : _a.code))];
361
- case 2:
362
- _b.sent();
363
- return [3 /*break*/, 4];
364
- case 3:
365
- err_1 = _b.sent();
366
- this.log("Error on checking project " + err_1);
367
- this.enabled = false;
368
- return [3 /*break*/, 4];
369
- case 4: return [2 /*return*/];
370
- }
371
- });
372
- });
373
- };
374
- TestcafeQaseReporter.prototype.createRun = function (name, description, cb) {
375
- return __awaiter(this, void 0, void 0, function () {
376
- var runObject, res, err_2;
377
- return __generator(this, function (_a) {
378
- switch (_a.label) {
379
- case 0:
380
- _a.trys.push([0, 2, , 3]);
381
- runObject = TestcafeQaseReporter.createRunObject(name || "Automated run " + new Date().toISOString(), [], {
382
- description: description || 'TestCafe automated run',
383
- environment_id: Number(this.config.environmentId),
384
- is_autotest: true,
385
- });
386
- return [4 /*yield*/, this.api.runs.createRun(this.config.projectCode, runObject)];
387
- case 1:
388
- res = _a.sent();
389
- cb(res.data);
390
- return [3 /*break*/, 3];
391
- case 2:
392
- err_2 = _a.sent();
393
- this.log("Error on creating run " + err_2);
394
- this.enabled = false;
395
- return [3 /*break*/, 3];
396
- case 3: return [2 /*return*/];
397
- }
398
- });
399
- });
400
- };
401
- TestcafeQaseReporter.prototype.checkRun = function (runId, cb) {
402
- return __awaiter(this, void 0, void 0, function () {
403
- var _this = this;
404
- return __generator(this, function (_a) {
405
- if (runId === undefined) {
406
- cb(false);
407
- return [2 /*return*/];
408
- }
409
- return [2 /*return*/, this.api.runs.getRun(this.config.projectCode, Number(runId))
410
- .then(function (resp) {
411
- var _a, _b;
412
- _this.log("Get run result on checking run " + ((_a = resp.data.result) === null || _a === void 0 ? void 0 : _a.id));
413
- cb(Boolean((_b = resp.data.result) === null || _b === void 0 ? void 0 : _b.id));
414
- })
415
- .catch(function (err) {
416
- _this.log("Error on checking run " + err);
417
- _this.enabled = false;
418
- })];
419
- });
420
- });
421
- };
422
- TestcafeQaseReporter.prototype.saveRunId = function (runId) {
423
- this.config.runId = runId;
424
- if (this.config.runId) {
425
- while (this.pending.length) {
426
- this.log("Number of pending: " + this.pending.length);
427
- var cb = this.pending.shift();
428
- if (cb) {
429
- cb(this.config.runId);
430
- }
431
- }
432
- }
433
- };
434
- TestcafeQaseReporter.prototype.logTestItem = function (name, status) {
435
- var map = {
436
- failed: chalk_1.default(templateObject_8 || (templateObject_8 = __makeTemplateObject(["{red Test ", " ", "}"], ["{red Test ", " ", "}"])), name, status),
437
- passed: chalk_1.default(templateObject_9 || (templateObject_9 = __makeTemplateObject(["{green Test ", " ", "}"], ["{green Test ", " ", "}"])), name, status),
438
- pending: chalk_1.default(templateObject_10 || (templateObject_10 = __makeTemplateObject(["{blueBright Test ", " ", "}"], ["{blueBright Test ", " ", "}"])), name, status),
439
- skipped: chalk_1.default(templateObject_11 || (templateObject_11 = __makeTemplateObject(["{blueBright Test ", " ", "}"], ["{blueBright Test ", " ", "}"])), name, status),
440
- };
441
- if (status) {
442
- this.log(map[status]);
443
- }
444
- };
445
- TestcafeQaseReporter.prototype.prepareCaseResult = function (test, status, attachments) {
446
- var _this = this;
447
- this.logTestItem(test.name, status);
448
- this.queued--;
449
- var caseObject = {
450
- status: status,
451
- time_ms: test.info.durationMs,
452
- stacktrace: test.error,
453
- comment: test.error ? test.error.split('\n')[0] : undefined,
454
- attachments: attachments.length > 0
455
- ? attachments
456
- : undefined,
457
- };
458
- if (!test.meta.CID) {
459
- caseObject.case = {
460
- title: test.name,
461
- suite_title: this.config.rootSuiteTitle
462
- ? this.config.rootSuiteTitle + '\t' + this.fixtureName
463
- : this.fixtureName,
464
- };
465
- this.results.push(caseObject);
466
- }
467
- else {
468
- var caseIds_1 = TestcafeQaseReporter.getCaseId(test.meta);
469
- caseIds_1.forEach(function (caseId) {
470
- if (caseId) {
471
- var add = caseIds_1.length > 1 ? chalk_1.default(templateObject_12 || (templateObject_12 = __makeTemplateObject([" {white For case ", "}"], [" {white For case ", "}"])), caseId) : '';
472
- _this.log(chalk_1.default(templateObject_13 || (templateObject_13 = __makeTemplateObject(["{gray Ready for publishing: ", "}", ""], ["{gray Ready for publishing: ", "}", ""])), test.name, add));
473
- var caseObjectWithId = __assign({ case_id: parseInt(caseId, 10) }, caseObject);
474
- _this.results.push(caseObjectWithId);
475
- }
476
- });
477
- }
478
- };
479
- TestcafeQaseReporter.prototype.uploadAttachments = function (testRunInfo) {
480
- return __awaiter(this, void 0, void 0, function () {
481
- var _this = this;
482
- return __generator(this, function (_a) {
483
- switch (_a.label) {
484
- case 0: return [4 /*yield*/, Promise.all(testRunInfo.screenshots.map(function (attachment) { return __awaiter(_this, void 0, void 0, function () {
485
- var data, options, response;
486
- var _a;
487
- return __generator(this, function (_b) {
488
- switch (_b.label) {
489
- case 0:
490
- data = fs_1.createReadStream(attachment === null || attachment === void 0 ? void 0 : attachment.screenshotPath);
491
- options = {
492
- headers: {
493
- 'Content-Type': 'multipart/form-data; boundary=' + CustomBoundaryFormData_1.customBoundary,
494
- },
495
- };
496
- return [4 /*yield*/, this.api.attachments.uploadAttachment(this.config.projectCode, [data], options)];
497
- case 1:
498
- response = _b.sent();
499
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
500
- return [2 /*return*/, (_a = response.data.result) === null || _a === void 0 ? void 0 : _a[0].hash];
501
- }
502
- });
503
- }); }))];
504
- case 1: return [2 /*return*/, _a.sent()];
505
- }
506
- });
507
- });
508
- };
509
- return TestcafeQaseReporter;
510
- }());
511
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
512
- module.exports = function () {
513
- var reporter = new TestcafeQaseReporter();
514
- return {
515
- reportTaskStart: reporter.reportTaskStart,
516
- reportFixtureStart: reporter.reportFixtureStart,
517
- reportTestDone: function (name, testRunInfo, meta) {
518
- return __awaiter(this, void 0, void 0, function () {
519
- return __generator(this, function (_a) {
520
- return [2 /*return*/, reporter.reportTestDone(name, testRunInfo, meta,
521
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
522
- // @ts-expect-error Inject testrail error formatting method with bound context
523
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
524
- this.formatError.bind(this))];
525
- });
526
- });
527
- },
528
- reportTaskDone: reporter.reportTaskDone,
529
- reporter: reporter,
530
- };
531
- };
532
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAgE;AAChE,8BAA8B;AAC9B,mCAAmC;AACnC,mEAAkF;AAClF,uCAEyB;AACzB,yBAAkD;AAClD,iCAAiC;AACjC,gDAA0B;AAC1B,+CAAuC;AACvC,kDAA4B;AAC5B,8CAAwB;AACxB,IAAO,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;AA+C/C,IAAM,QAAQ,GAAG,UAAC,IAAY;IAC1B,IAAI;QACA,IAAM,IAAI,GAAG,iBAAY,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAEtD,IAAI,IAAI,EAAE;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAW,CAAC;SACrC;KACJ;IAAC,OAAO,KAAK,EAAE;QACZ,0DAA0D;KAC7D;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,IAAM,aAAa,GAAG,UAAC,OAA8B;IAA9B,wBAAA,EAAA,UAAkB,EAAY;IACjD,IAAM,MAAM,GAAG,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,EAAE;QACT,MAAM,IAAI,YAAY,EAAE,CAAC;KAC5B;IACD,IAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAChC,MAAM,EACN,OAAO,CACV,CAAC;IAEF,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,KAAK;QACvE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,CAAC,QAAQ;QACvD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC,QAAQ;QAC1D,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,MAAM,CAAC,cAAc,IAAI,EAAE;QAChF,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE;QACjE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE;QACpD,OAAO,EACH,OAAO,CAAC,GAAG,CAAC,aAAa;YACzB,MAAM,CAAC,OAAO;YACd,sBAAsB;QAC1B,cAAc,EACV,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,MAAM,CAAC,cAAc;QAC7D,WAAW,EACP,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,IAAI,MAAM,CAAC,WAAW;QAClE,iBAAiB,EACb,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM,IAAI,MAAM,CAAC,iBAAiB;QAC9E,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,MAAM,CAAC,aAAa,IAAI,SAAS;QACnF,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE,IAAI,MAAM,CAAC,OAAO;KAC7D,CAAC;AACN,CAAC,CAAC;AAEF,IAAM,iBAAiB,GAAG,UACtB,MAAc,EACd,UAAoB;IAEpB,IAAM,IAAI,GAAG,gBAAM,EAAE,CAAC,MAAM,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,OAAO;SAChB,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;SACvB,OAAO,CAAC,UAAU,EAAE,MAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC,CAAC;AAC3D,CAAC,CAAC;AAEF,IAAM,YAAY,GAAG,UAAC,MAAc;IACxB,IAAA,OAAO,GAA4B,MAAM,QAAlC,EAAE,QAAQ,GAAkB,MAAM,SAAxB,EAAE,WAAW,GAAK,MAAM,YAAX,CAAY;IAClD,IAAI,OAAO,EAAE;QACT,IAAI,CAAC,WAAW,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;SACzD;QACD,IAAI,QAAQ,IAAI,WAAW,EAAE;YACzB,OAAO,IAAI,CAAC;SACf;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF;IAcI;QAAA,iBAYC;QApBO,YAAO,GAA4C,EAAE,CAAC;QACtD,YAAO,GAAmB,EAAE,CAAC;QA6E9B,oBAAe,GAAG,UAAO,UAAkB,EAAE,UAAoB;;;gBACpE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBACf,sBAAO;iBACV;gBACD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAEtE,sBAAO,IAAI,CAAC,YAAY,CACpB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,UAAO,SAAS;;;4BACZ,IAAI,CAAC,SAAS,EAAE;gCACZ,IAAI,CAAC,GAAG,CACJ,eAAK,sGAAA,eAAgB,EAAuB,kBAAkB,KAAzC,IAAI,CAAC,MAAM,CAAC,WAAW,EAC/C,CAAC;gCACF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gCACrB,sBAAO;6BACV;4BAED,IAAI,CAAC,GAAG,CAAC,eAAK,gGAAA,iBAAkB,EAAuB,UAAU,KAAjC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAW,CAAC;4BACnE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;gCACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gCAClC,sBAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,UAAC,SAAkB;wCACvD,IAAI,SAAS,EAAE;4CACX,KAAI,CAAC,GAAG,CACJ,eAAK,mHAAA,mBAAoB,EAAiB,2BAA2B,KAA5C,KAAI,CAAC,MAAM,CAAC,KAAK,EAC7C,CAAC;yCACL;6CAAM;4CACH,KAAI,CAAC,GAAG,CAAC,eAAK,kGAAA,WAAY,EAAiB,kBAAkB,KAAnC,KAAI,CAAC,MAAM,CAAC,KAAK,EAAmB,CAAC;4CAC/D,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;yCACxB;oCACL,CAAC,CAAC,EAAC;6BACN;iCAAM;gCACH,sBAAO,IAAI,CAAC,SAAS,CACjB,IAAI,CAAC,MAAM,CAAC,OAAO,EACnB,IAAI,CAAC,MAAM,CAAC,cAAc,EAC1B,UAAC,OAAO;;wCACJ,IAAI,OAAO,EAAE;4CACT,KAAI,CAAC,SAAS,OAAC,OAAO,CAAC,MAAM,0CAAE,EAAE,CAAC,CAAC;4CACnC,KAAI,CAAC,GAAG,CACJ,eAAK,mHAAA,mBAAoB,EAAiB,2BAA2B,KAA5C,KAAI,CAAC,MAAM,CAAC,KAAK,EAC7C,CAAC;yCACL;6CAAM;4CACH,KAAI,CAAC,GAAG,CACJ,eAAK,+GAAA,uCAAwC,EAAuB,GAAG,KAA1B,KAAI,CAAC,MAAM,CAAC,WAAW,EACvE,CAAC;4CACF,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;yCACxB;oCACL,CAAC,CACJ,EAAC;6BACL;;;yBACJ,CACJ,EAAC;;aACL,CAAC;QAEK,uBAAkB,GAAG,UAAO,IAAI;;gBACnC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;;;aACnC,CAAC;QAEK,mBAAc,GAAG,UACpB,IAAY,EACZ,WAAwB,EACxB,IAAU,EACV,WAAmD;;;;;wBAEnD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;4BACf,sBAAO;yBACV;wBACD,IAAI,CAAC,MAAM,EAAG,CAAC;wBACT,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;wBAGvC,IAAI,WAAW,CAAC,OAAO,EAAE;4BACrB,UAAU,GAAG,4BAAsB,CAAC,OAAO,CAAC;yBAC/C;6BAAM,IAAI,MAAM,GAAG,CAAC,EAAE;4BACnB,UAAU,GAAG,4BAAsB,CAAC,MAAM,CAAC;yBAC9C;6BAAM;4BACH,UAAU,GAAG,4BAAsB,CAAC,MAAM,CAAC;yBAC9C;wBAEK,QAAQ,GAAG,WAAW,CAAC,IAAI;6BAC5B,GAAG,CAAC,UAAC,CAA0B,IAAK,OAAA,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CACvD,6EAA6E,EAC7E,EAAE,CACL,EAHoC,CAGpC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEZ,gBAAgB,GAAU,EAAE,CAAC;6BAC7B,CAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA,EAAnE,wBAAmE;wBAChD,qBAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAA;;wBAA5D,gBAAgB,GAAG,SAAyC,CAAC;;;wBAGjE,IAAI,CAAC,iBAAiB,CAAC,EAAC,IAAI,MAAA,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,MAAA,EAAE,KAAK,EAAE,QAAQ,EAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;;;;aAC1G,CAAC;QAEK,mBAAc,GAAG;;;;;;wBACpB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;4BACf,sBAAO;yBACV;wBACD,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gCAC9B,IAAI,KAAK,GAAI,CAAC,CAAC;gCACf,IAAM,QAAQ,GAAG,WAAW,CAAE;oCAC1B,KAAK,EAAG,CAAC;oCACT,IAAI,KAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;wCACxC,aAAa,CAAC,QAAQ,CAAC,CAAC;wCACxB,OAAO,EAAE,CAAC;qCACb;oCACD,IAAI,KAAK,GAAG,EAAE,EAAE;wCACZ,aAAa,CAAC,QAAQ,CAAC,CAAC;wCACxB,MAAM,EAAE,CAAC;qCACZ;gCACL,CAAC,EAAE,IAAI,CAAC,CAAC;4BACb,CAAC,CAAC,EAAA;;wBAbF,SAaE,CAAC;6BAEC,CAAA,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA,EAAzB,wBAAyB;wBACzB,OAAO,CAAC,IAAI,CACR,mKAEiE,CACpE,CAAC;;;wBAEI,IAAI,GAAG;4BACT,OAAO,EAAE,IAAI,CAAC,OAAO;yBACxB,CAAC;wBACF,qBAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CACnC,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EACzB,IAAI,CACP,EAAA;;wBAJD,SAIC,CAAC;wBACF,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;6BAE7B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAvB,wBAAuB;wBACvB,qBAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAA;;wBAAzC,SAAyC,CAAC;;;;;aAGrD,CAAC;QA3ME,IAAI,CAAC,MAAM,GAAG,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,GAAG,IAAI,gBAAO,CAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,oBAAoB,CAAC,aAAa,EAAE,EACpC,+CAAsB,CACzB,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IAC1B,CAAC;IAEc,8BAAS,GAAxB,UAAyB,IAAU;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,OAAO,EAAE,CAAC;SACb;QACD,OAAO,IAAI,CAAC,GAA0B,CAAC;IAC3C,CAAC;IAEc,kCAAa,GAA5B;QACY,IAAS,WAAW,GAAyB,OAAO,QAAhC,EAAY,EAAE,GAAW,OAAO,SAAlB,EAAE,IAAI,GAAK,OAAO,KAAZ,CAAa;QAC7D,IAAM,UAAU,GAAG,wBAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACpF,IAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAM,2BAA2B,GAAG,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,CAAC;QACrF,IAAM,eAAe,GAAG,UAAQ,WAAW,cAAS,UAAU,aAAQ,EAAE,eAAU,IAAM,CAAC;QACzF,mCAAmC;QACnC,IAAM,aAAa,GAAG,cAAY,eAAyB,wBAAmB,2BAAqC,kBAAa,cAA0B,CAAC;QAE3J,OAAO;YACH,UAAU,EAAE,aAAa;YACzB,YAAY,EAAE,eAAe;SAChC,CAAC;IACN,CAAC;IAEc,oCAAe,GAA9B,UAA+B,IAAY,EAAE,KAAe,EAAE,IAI7D;QACG,kBACI,KAAK,EAAE,IAAI,EACX,KAAK,OAAA,IACF,IAAI,EACT;IACN,CAAC;IAEc,sCAAiB,GAAhC,UAAiC,IAAY;QACzC,IAAM,SAAS,GAAG,WAAW,CAAC;QAC9B,IAAI;YACA,IAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAI,IAAI,kBAAe,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,IAAI,iBAAiB,EAAE;gBACnB,IAAI;oBACA,IAAM,aAAa,GAAG,iBAAY,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC5E,IAAI,aAAa,EAAE;wBACf,IAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAwB,CAAC;wBACvE,OAAO,aAAa,CAAC,OAAO,CAAC;qBAChC;oBACD,OAAO,SAAS,CAAC;iBACpB;gBAAC,OAAO,KAAK,EAAE;oBACZ,OAAO,SAAS,CAAC;iBACpB;aACJ;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;IA0Ia,0CAAW,GAAzB,UAA0B,KAAkC;;;;;;6BACpD,CAAA,KAAK,KAAK,SAAS,CAAA,EAAnB,wBAAmB;wBACnB,qBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iCAC9E,IAAI,CAAC;gCACF,KAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;4BAC3C,CAAC,CAAC;iCACD,KAAK,CAAC,UAAC,GAAG;gCACP,KAAI,CAAC,GAAG,CAAC,6BAA2B,GAAe,CAAC,CAAC;4BACzD,CAAC,CAAC,EAAA;;wBANN,SAMM,CAAC;;;;;;KAEd;IAEO,kCAAG,GAAX,UAAY,OAAa;QAAE,wBAAwB;aAAxB,UAAwB,EAAxB,qBAAwB,EAAxB,IAAwB;YAAxB,uCAAwB;;QAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAC;YACpB,OAAO,CAAC,GAAG,OAAX,OAAO,kBAAK,eAAK,6FAAA,sBAAuB,EAAO,EAAE,KAAT,OAAO,IAAO,cAAc,GAAE;SACzE;IACL,CAAC;IAEa,2CAAY,GAA1B,UAA2B,WAAmB,EAAE,EAAsC;;;;;;;;wBAEjE,qBAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,EAAA;;wBAAtD,IAAI,GAAG,SAA+C;wBAC5D,qBAAM,EAAE,CAAC,OAAO,OAAC,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,IAAI,CAAC,CAAC,EAAA;;wBAAzC,SAAyC,CAAC;;;;wBAE1C,IAAI,CAAC,GAAG,CAAC,+BAA6B,KAAe,CAAC,CAAC;wBACvD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;;;;;;KAE5B;IAEa,wCAAS,GAAvB,UACI,IAAwB,EACxB,WAA+B,EAC/B,EAA6C;;;;;;;wBAInC,SAAS,GAAG,oBAAoB,CAAC,eAAe,CAClD,IAAI,IAAI,mBAAiB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAI,EACnD,EAAE,EACF;4BACI,WAAW,EAAE,WAAW,IAAI,wBAAwB;4BACpD,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;4BACjD,WAAW,EAAE,IAAI;yBACpB,CACJ,CAAC;wBACU,qBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CACrC,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,SAAS,CACZ,EAAA;;wBAHK,GAAG,GAAG,SAGX;wBACD,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;;;;wBAEb,IAAI,CAAC,GAAG,CAAC,2BAAyB,KAAe,CAAC,CAAC;wBACnD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;;;;;;KAE5B;IAEa,uCAAQ,GAAtB,UAAuB,KAAkC,EAAE,EAA6B;;;;gBACpF,IAAI,KAAK,KAAK,SAAS,EAAE;oBACrB,EAAE,CAAC,KAAK,CAAC,CAAC;oBACV,sBAAO;iBACV;gBAED,sBAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;yBAC9D,IAAI,CAAC,UAAC,IAAI;;wBACP,KAAI,CAAC,GAAG,CAAC,qCAAkC,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,EAAuB,CAAE,CAAC,CAAC;wBACxF,EAAE,CAAC,OAAO,OAAC,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,EAAE,CAAC,CAAC,CAAC;oBACtC,CAAC,CAAC;yBACD,KAAK,CAAC,UAAC,GAAG;wBACP,KAAI,CAAC,GAAG,CAAC,2BAAyB,GAAe,CAAC,CAAC;wBACnD,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBACzB,CAAC,CAAC,EAAC;;;KAEV;IAEO,wCAAS,GAAjB,UAAkB,KAAuB;QACrC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACxB,IAAI,CAAC,GAAG,CAAC,wBAAsB,IAAI,CAAC,OAAO,CAAC,MAAQ,CAAC,CAAC;gBACtD,IAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,EAAE,EAAE;oBACJ,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACzB;aACJ;SACJ;IACL,CAAC;IAEO,0CAAW,GAAnB,UAAoB,IAAY,EAAE,MAA8B;QAC5D,IAAM,GAAG,GAAG;YACR,MAAM,EAAE,eAAK,yFAAA,YAAa,EAAI,GAAI,EAAM,GAAG,KAAjB,IAAI,EAAI,MAAM,CAAG;YAC3C,MAAM,EAAE,eAAK,2FAAA,cAAe,EAAI,GAAI,EAAM,GAAG,KAAjB,IAAI,EAAI,MAAM,CAAG;YAC7C,OAAO,EAAE,eAAK,kGAAA,mBAAoB,EAAI,GAAI,EAAM,GAAG,KAAjB,IAAI,EAAI,MAAM,CAAG;YACnD,OAAO,EAAE,eAAK,kGAAA,mBAAoB,EAAI,GAAI,EAAM,GAAG,KAAjB,IAAI,EAAI,MAAM,CAAG;SACtD,CAAC;QACF,IAAI,MAAM,EAAE;YACR,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;SACzB;IACL,CAAC;IAEO,gDAAiB,GAAzB,UAA0B,IAAU,EAAE,MAA8B,EAAE,WAAkB;QAAxF,iBAoCC;QAnCG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAG,CAAC;QACf,IAAM,UAAU,GAAiB;YAC7B,MAAM,QAAA;YACN,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAC7B,UAAU,EAAE,IAAI,CAAC,KAAK;YACtB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAA,SAAS;YACzD,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC/B,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,SAAS;SAClB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAChB,UAAU,CAAC,IAAI,GAAG;gBACd,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;oBACnC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,WAAW;oBACtD,CAAC,CAAC,IAAI,CAAC,WAAW;aACzB,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACjC;aAAM;YACH,IAAM,SAAO,GAAG,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,SAAO,CAAC,OAAO,CAAC,UAAC,MAAM;gBACnB,IAAI,MAAM,EAAE;oBACR,IAAM,GAAG,GAAG,SAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,6FAAA,mBAAoB,EAAM,GAAG,KAAT,MAAM,EAAG,CAAC,CAAA,EAAE,CAAC;oBACvE,KAAI,CAAC,GAAG,CACJ,eAAK,4GAAA,8BAA+B,EAAS,GAAI,EAAG,EAAE,KAAlB,IAAI,CAAC,IAAI,EAAI,GAAG,EACvD,CAAC;oBACF,IAAM,gBAAgB,cAClB,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,IAC1B,UAAU,CAChB,CAAC;oBACF,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;iBACvC;YACL,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAEa,gDAAiB,GAA/B,UAAgC,WAAwB;;;;;4BAC7C,qBAAM,OAAO,CAAC,GAAG,CACpB,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,UAAO,UAAU;;;;;;wCACnC,IAAI,GAAG,qBAAgB,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,cAAc,CAAC,CAAC;wCAEpD,OAAO,GAAG;4CACZ,OAAO,EAAE;gDACL,cAAc,EAAE,gCAAgC,GAAG,uCAAc;6CACpE;yCACJ,CAAC;wCAEe,qBAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,gBAAgB,CACxD,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,CAAC,IAAI,CAAC,EACN,OAAO,CACV,EAAA;;wCAJK,QAAQ,GAAG,SAIhB;wCAED,sEAAsE;wCACtE,sBAAQ,MAAA,QAAQ,CAAC,IAAI,CAAC,MAAM,0CAAG,CAAC,EAAE,IAAe,EAAC;;;6BACrD,CAAC,CACL,EAAA;4BAnBD,sBAAO,SAmBN,EAAC;;;;KACL;IACL,2BAAC;AAAD,CAAC,AA1XD,IA0XC;;AAID,iBAAS;IACL,IAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC5C,OAAO;QACH,eAAe,EAAE,QAAQ,CAAC,eAAe;QACzC,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;QACzC,cAAc,EAApB,UACI,IAAY,EACZ,WAAwB,EACxB,IAAU;;;oBAEV,sBAAO,QAAQ,CAAC,cAAc,CAC1B,IAAI,EACJ,WAAW,EACX,IAAI;wBACJ,6DAA6D;wBAC7D,8EAA8E;wBAC9E,wGAAwG;wBACxG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9B,EAAC;;;SACL;QACD,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,QAAQ,UAAA;KACX,CAAC;AACN,CAAC,CAAC"}