bx-rest 0.6.7 → 0.6.8
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/esm2022/functions/errorHandler.mjs +34 -0
- package/esm2022/map/im/recent.mjs +14 -3
- package/esm2022/services/base.mjs +75 -13
- package/esm2022/typification/rest/im/dialog/recent/get.mjs +1 -1
- package/fesm2022/bx-rest.mjs +121 -14
- package/fesm2022/bx-rest.mjs.map +1 -1
- package/functions/errorHandler.d.ts +10 -0
- package/map/im/recent.d.ts +2 -1
- package/package.json +1 -1
- package/services/base.d.ts +52 -0
- package/typification/rest/im/dialog/recent/get.d.ts +11 -7
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export function CatchError(options) {
|
|
2
|
+
return function (target, propertyKey, descriptor) {
|
|
3
|
+
const original = descriptor.value;
|
|
4
|
+
descriptor.value = function (...args) {
|
|
5
|
+
try {
|
|
6
|
+
return original.apply(this, args);
|
|
7
|
+
}
|
|
8
|
+
catch (err) {
|
|
9
|
+
const errorInfo = {
|
|
10
|
+
message: `❌ Error in ${target.constructor.name}.${propertyKey}`,
|
|
11
|
+
args,
|
|
12
|
+
error: err instanceof Error ? err.message : String(err),
|
|
13
|
+
stack: err instanceof Error ? err.stack : new Error().stack,
|
|
14
|
+
};
|
|
15
|
+
console.error(formatError(errorInfo));
|
|
16
|
+
if (options?.rethrow)
|
|
17
|
+
throw err;
|
|
18
|
+
return options?.defaultValue;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
return descriptor;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
// Общая функция форматирования
|
|
25
|
+
export function formatError(info) {
|
|
26
|
+
const stackLines = info.stack?.split('\n').slice(2).join('\n');
|
|
27
|
+
return [
|
|
28
|
+
info.message,
|
|
29
|
+
info.args ? ` • args: ${JSON.stringify(info.args)}` : '',
|
|
30
|
+
info.error ? ` • error: ${info.error}` : '',
|
|
31
|
+
` • stack trace:\n${stackLines}`,
|
|
32
|
+
].join('\n');
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JIYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvZnVuY3Rpb25zL2Vycm9ySGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsVUFBVSxDQUFDLE9BQW1EO0lBQzVFLE9BQU8sVUFDTCxNQUFXLEVBQ1gsV0FBbUIsRUFDbkIsVUFBOEI7UUFFOUIsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQTtRQUVqQyxVQUFVLENBQUMsS0FBSyxHQUFHLFVBQVUsR0FBRyxJQUFXO1lBQ3pDLElBQUksQ0FBQztnQkFDSCxPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQ25DLENBQUM7WUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO2dCQUNiLE1BQU0sU0FBUyxHQUFHO29CQUNoQixPQUFPLEVBQUUsY0FBYyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxXQUFXLEVBQUU7b0JBQy9ELElBQUk7b0JBQ0osS0FBSyxFQUFFLEdBQUcsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7b0JBQ3ZELEtBQUssRUFBRSxHQUFHLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLEtBQUs7aUJBQzVELENBQUE7Z0JBRUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtnQkFFckMsSUFBSSxPQUFPLEVBQUUsT0FBTztvQkFBRSxNQUFNLEdBQUcsQ0FBQTtnQkFDL0IsT0FBTyxPQUFPLEVBQUUsWUFBWSxDQUFBO1lBQzlCLENBQUM7UUFDSCxDQUFDLENBQUE7UUFFRCxPQUFPLFVBQVUsQ0FBQTtJQUNuQixDQUFDLENBQUE7QUFDSCxDQUFDO0FBRUQsK0JBQStCO0FBQy9CLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBdUU7SUFDakcsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM5RCxPQUFPO1FBQ0wsSUFBSSxDQUFDLE9BQU87UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDMUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsZUFBZSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDN0Msc0JBQXNCLFVBQVUsRUFBRTtLQUNuQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gQ2F0Y2hFcnJvcihvcHRpb25zPzogeyByZXRocm93PzogYm9vbGVhbjsgZGVmYXVsdFZhbHVlPzogYW55IH0pIHtcclxuICByZXR1cm4gZnVuY3Rpb24gKFxyXG4gICAgdGFyZ2V0OiBhbnksXHJcbiAgICBwcm9wZXJ0eUtleTogc3RyaW5nLFxyXG4gICAgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yXHJcbiAgKSB7XHJcbiAgICBjb25zdCBvcmlnaW5hbCA9IGRlc2NyaXB0b3IudmFsdWVcclxuXHJcbiAgICBkZXNjcmlwdG9yLnZhbHVlID0gZnVuY3Rpb24gKC4uLmFyZ3M6IGFueVtdKSB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIGFyZ3MpXHJcbiAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgIGNvbnN0IGVycm9ySW5mbyA9IHtcclxuICAgICAgICAgIG1lc3NhZ2U6IGDinYwgRXJyb3IgaW4gJHt0YXJnZXQuY29uc3RydWN0b3IubmFtZX0uJHtwcm9wZXJ0eUtleX1gLFxyXG4gICAgICAgICAgYXJncyxcclxuICAgICAgICAgIGVycm9yOiBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogU3RyaW5nKGVyciksXHJcbiAgICAgICAgICBzdGFjazogZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIuc3RhY2sgOiBuZXcgRXJyb3IoKS5zdGFjayxcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZm9ybWF0RXJyb3IoZXJyb3JJbmZvKSlcclxuXHJcbiAgICAgICAgaWYgKG9wdGlvbnM/LnJldGhyb3cpIHRocm93IGVyclxyXG4gICAgICAgIHJldHVybiBvcHRpb25zPy5kZWZhdWx0VmFsdWVcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkZXNjcmlwdG9yXHJcbiAgfVxyXG59XHJcblxyXG4vLyDQntCx0YnQsNGPINGE0YPQvdC60YbQuNGPINGE0L7RgNC80LDRgtC40YDQvtCy0LDQvdC40Y9cclxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEVycm9yKGluZm86IHsgbWVzc2FnZTogc3RyaW5nOyBhcmdzPzogYW55W107IGVycm9yPzogc3RyaW5nOyBzdGFjaz86IHN0cmluZyB9KTogc3RyaW5nIHtcclxuICBjb25zdCBzdGFja0xpbmVzID0gaW5mby5zdGFjaz8uc3BsaXQoJ1xcbicpLnNsaWNlKDIpLmpvaW4oJ1xcbicpXHJcbiAgcmV0dXJuIFtcclxuICAgIGluZm8ubWVzc2FnZSxcclxuICAgIGluZm8uYXJncyA/IGAgICDigKIgYXJnczogJHtKU09OLnN0cmluZ2lmeShpbmZvLmFyZ3MpfWAgOiAnJyxcclxuICAgIGluZm8uZXJyb3IgPyBgICAg4oCiIGVycm9yOiAke2luZm8uZXJyb3J9YCA6ICcnLFxyXG4gICAgYCAgIOKAoiBzdGFjayB0cmFjZTpcXG4ke3N0YWNrTGluZXN9YCxcclxuICBdLmpvaW4oJ1xcbicpXHJcbn1cclxuIl19
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
1
2
|
import { toDate, toNum } from '../../services/base';
|
|
3
|
+
import { CatchError } from '../../functions/errorHandler';
|
|
2
4
|
export class BXRestMapImRecent {
|
|
3
5
|
static get(value) {
|
|
4
6
|
return value
|
|
@@ -18,7 +20,7 @@ export class BXRestMapImRecent {
|
|
|
18
20
|
}
|
|
19
21
|
}
|
|
20
22
|
: undefined,
|
|
21
|
-
chat: i.chat
|
|
23
|
+
chat: i.chat && BXRestMapImRecent.isIBXRestImDialogRecentGetChatChatDataHttp(i.chat)
|
|
22
24
|
? {
|
|
23
25
|
...i.chat,
|
|
24
26
|
...{
|
|
@@ -26,7 +28,7 @@ export class BXRestMapImRecent {
|
|
|
26
28
|
date_create: toDate(i.chat.date_create)
|
|
27
29
|
}
|
|
28
30
|
}
|
|
29
|
-
:
|
|
31
|
+
: i.chat,
|
|
30
32
|
}
|
|
31
33
|
}))
|
|
32
34
|
: undefined;
|
|
@@ -58,5 +60,14 @@ export class BXRestMapImRecent {
|
|
|
58
60
|
}
|
|
59
61
|
: undefined;
|
|
60
62
|
}
|
|
63
|
+
static isIBXRestImDialogRecentGetChatChatDataHttp(item) {
|
|
64
|
+
return 'id' in item;
|
|
65
|
+
}
|
|
61
66
|
}
|
|
62
|
-
|
|
67
|
+
__decorate([
|
|
68
|
+
CatchError({ rethrow: true })
|
|
69
|
+
], BXRestMapImRecent, "get", null);
|
|
70
|
+
__decorate([
|
|
71
|
+
CatchError({ rethrow: true })
|
|
72
|
+
], BXRestMapImRecent, "list", null);
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvbWFwL2ltL3JlY2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBSUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUtuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFFekQsTUFBTSxPQUFPLGlCQUFpQjtJQUdyQixBQUFQLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBaUQ7UUFFeEQsT0FBTyxLQUFLO1lBQ1YsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNoQixHQUFHLENBQUM7Z0JBQ0osR0FBRztvQkFDRCxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7b0JBQ2xDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDekIsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFO3dCQUN2QixDQUFDLENBQUM7NEJBQ0EsR0FBRyxDQUFDLENBQUMsSUFBSTs0QkFDVCxHQUFHO2dDQUNELEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0NBQ3BCLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7Z0NBQ3pGLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxD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QkFDRixDQUFDLENBQUM7aUJBQ0o7YUFDRjtZQUNELENBQUMsQ0FBQyxTQUFTLENBQUE7SUFDZixDQUFDO0lBRUQsTUFBTSxDQUFDLDBDQUEwQyxDQUFDLElBQXlGO1FBQ3pJLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQTtJQUNyQixDQUFDO0NBQ0Y7QUFsRVE7SUFETixVQUFVLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7a0NBaUM3QjtBQUdNO0lBRE4sVUFBVSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO21DQTJCN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldCwgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdENoYXREYXRhSHR0cCwgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdFVzZXJEYXRhQmFzZSxcclxuICBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRIdHRwLFxyXG59IGZyb20gJy4uLy4uL3R5cGlmaWNhdGlvbi9yZXN0L2ltL2RpYWxvZy9yZWNlbnQvZ2V0J1xyXG5pbXBvcnQgeyB0b0RhdGUsIHRvTnVtIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYmFzZSdcclxuaW1wb3J0IHtcclxuICBpQlhSZXN0SW1EaWFsb2dSZWNlbnRMaXN0LFxyXG4gIGlCWFJlc3RJbURpYWxvZ1JlY2VudExpc3RIdHRwXHJcbn0gZnJvbSAnLi4vLi4vdHlwaWZpY2F0aW9uL3Jlc3QvaW0vZGlhbG9nL3JlY2VudC9saXN0J1xyXG5pbXBvcnQgeyBDYXRjaEVycm9yIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2Vycm9ySGFuZGxlcidcclxuXHJcbmV4cG9ydCBjbGFzcyBCWFJlc3RNYXBJbVJlY2VudCB7XHJcblxyXG4gIEBDYXRjaEVycm9yKHsgcmV0aHJvdzogdHJ1ZSB9KVxyXG4gIHN0YXRpYyBnZXQodmFsdWU6IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEh0dHBbXSB8IHVuZGVmaW5lZCk6IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFtdIHwgdW5kZWZpbmVkIHtcclxuXHJcbiAgICAgIHJldHVybiB2YWx1ZVxyXG4gICAgICAgID8gdmFsdWUubWFwKGkgPT4gKHtcclxuICAgICAgICAgIC4uLmksXHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGRhdGVfdXBkYXRlOiB0b0RhdGUoaS5kYXRlX3VwZGF0ZSksXHJcbiAgICAgICAgICAgIGNvdW50ZXI6IHRvTnVtKGkuY291bnRlciksXHJcbiAgICAgICAgICAgIHVzZXI6IGkudXNlciAmJiBpLnVzZXIuaWRcclxuICAgICAgICAgICAgICA/IHtcclxuICAgICAgICAgICAgICAgIC4uLmkudXNlcixcclxuICAgICAgICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRvTnVtKGkudXNlci5pZCksXHJcbiAgICAgICAgICAgICAgICAgIGxhc3RfYWN0aXZpdHlfZGF0ZTogaS51c2VyLmxhc3RfYWN0aXZpdHlfZGF0ZSA/IHRvRGF0ZShpLnVzZXIubGFzdF9hY3Rpdml0eV9kYXRlKSA6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgICBtb2JpbGVfbGFzdF9kYXRlOiBpLnVzZXIubW9iaWxlX2xhc3RfZGF0ZSA/IHRvRGF0ZShpLnVzZXIubW9iaWxlX2xhc3RfZGF0ZSkgOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgICAgYWJzZW50OiBpLnVzZXIuYWJzZW50ID8gdG9EYXRlKGkudXNlci5hYnNlbnQpIDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICBjaGF0OiBpLmNoYXQgJiYgQlhSZXN0TWFwSW1SZWNlbnQuaXNJQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGFIdHRwKGkuY2hhdClcclxuICAgICAgICAgICAgICA/IHtcclxuICAgICAgICAgICAgICAgIC4uLmkuY2hhdCxcclxuICAgICAgICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRvTnVtKGkuY2hhdC5pZCksXHJcbiAgICAgICAgICAgICAgICAgIGRhdGVfY3JlYXRlOiB0b0RhdGUoaS5jaGF0LmRhdGVfY3JlYXRlKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICA6IGkuY2hhdCxcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSlcclxuICAgICAgICA6IHVuZGVmaW5lZFxyXG5cclxuICB9XHJcblxyXG4gIEBDYXRjaEVycm9yKHsgcmV0aHJvdzogdHJ1ZSB9KVxyXG4gIHN0YXRpYyBsaXN0KHZhbHVlOiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRMaXN0SHR0cCB8IHVuZGVmaW5lZCk6IGlCWFJlc3RJbURpYWxvZ1JlY2VudExpc3QgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuICh2YWx1ZSlcclxuICAgICAgPyB7XHJcbiAgICAgICAgLi4udmFsdWUsIC4uLntcclxuICAgICAgICAgIGl0ZW1zOiB2YWx1ZS5pdGVtcy5tYXAoaSA9PiAoe1xyXG4gICAgICAgICAgICAuLi5pLCAuLi57XHJcbiAgICAgICAgICAgICAgaWQ6IHRvTnVtKGkuaWQpLFxyXG4gICAgICAgICAgICAgIGRhdGVfdXBkYXRlOiB0b0RhdGUoaS5kYXRlX3VwZGF0ZSksXHJcbiAgICAgICAgICAgICAgbGluZXM6IChpLmxpbmVzKSA/IHsuLi5pLmxpbmVzLCAuLi57ZGF0ZV9jcmVhdGU6IHRvRGF0ZShpLmxpbmVzLmRhdGVfY3JlYXRlKX19IDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IHsuLi5pLm1lc3NhZ2UsIC4uLntkYXRlOiB0b0RhdGUoaS5tZXNzYWdlLmRhdGUpfX0sXHJcbiAgICAgICAgICAgICAgY2hhdDogKGkuY2hhdCkgPyB7Li4uaS5jaGF0LCAuLi57ZGF0ZV9jcmVhdGU6IHRvRGF0ZShpLmNoYXQuZGF0ZV9jcmVhdGUpfX0gOiB1bmRlZmluZWQsXHJcbiAgICAgICAgICAgICAgdXNlcjogKGkudXNlcilcclxuICAgICAgICAgICAgICAgID8ge1xyXG4gICAgICAgICAgICAgICAgICAuLi5pLnVzZXIsXHJcbiAgICAgICAgICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgICAgICAgICBiaXJ0aGRheTogKGkudXNlci5iaXJ0aGRheSkgPyB0b0RhdGUoaS51c2VyLmJpcnRoZGF5KSA6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgICAgIGxhc3RfYWN0aXZpdHlfZGF0ZTogKGkudXNlci5sYXN0X2FjdGl2aXR5X2RhdGUpID8gdG9EYXRlKGkudXNlci5sYXN0X2FjdGl2aXR5X2RhdGUpIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgICAgIG1vYmlsZV9sYXN0X2RhdGU6IChpLnVzZXIubW9iaWxlX2xhc3RfZGF0ZSkgPyB0b0RhdGUoaS51c2VyLm1vYmlsZV9sYXN0X2RhdGUpIDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KSlcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgOiB1bmRlZmluZWRcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpc0lCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXRDaGF0RGF0YUh0dHAoaXRlbTogaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdENoYXREYXRhSHR0cCB8IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXRVc2VyRGF0YUJhc2UpOiBpdGVtIGlzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXRDaGF0RGF0YUh0dHAge1xyXG4gICAgcmV0dXJuICdpZCcgaW4gaXRlbVxyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { DateTime } from 'luxon';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Преобразует значение в строку
|
|
4
|
+
*
|
|
5
|
+
* @param val
|
|
6
|
+
* @param throwError
|
|
7
|
+
*/
|
|
3
8
|
export function toStr(val, throwError = false) {
|
|
4
9
|
if (val === null || val === undefined) {
|
|
5
10
|
if (throwError) {
|
|
@@ -9,18 +14,49 @@ export function toStr(val, throwError = false) {
|
|
|
9
14
|
}
|
|
10
15
|
return String(val);
|
|
11
16
|
}
|
|
12
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Преобразует значение в число
|
|
19
|
+
*/
|
|
13
20
|
export function toNum(val, throwError = true, defValue = 0) {
|
|
14
21
|
const result = Number(val);
|
|
15
22
|
if (isNaN(result)) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
23
|
+
const error = new ToNumError(val);
|
|
24
|
+
if (throwError)
|
|
25
|
+
throw error;
|
|
26
|
+
// Если ошибка не пробрасывается — просто логируем
|
|
27
|
+
console.error(error.toString());
|
|
19
28
|
return defValue;
|
|
20
29
|
}
|
|
21
30
|
return result;
|
|
22
31
|
}
|
|
23
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Кастомный тип ошибки для числовых преобразований
|
|
34
|
+
*/
|
|
35
|
+
export class ToNumError extends Error {
|
|
36
|
+
constructor(value) {
|
|
37
|
+
const valueType = typeof value;
|
|
38
|
+
const formattedValue = valueType === 'object' ? JSON.stringify(value) : String(value);
|
|
39
|
+
const message = `Invalid value passed to toNum(): ${formattedValue} (type: ${valueType})`;
|
|
40
|
+
super(message);
|
|
41
|
+
this.value = value;
|
|
42
|
+
this.name = 'ToNumError';
|
|
43
|
+
// сохраняем стек вызова (отфильтровав сам конструктор)
|
|
44
|
+
if (this.stack) {
|
|
45
|
+
const stackLines = this.stack.split('\n');
|
|
46
|
+
// Удаляем строку конструктора (чтобы стек начинался с места вызова toNum)
|
|
47
|
+
this.stack = [stackLines[0], ...stackLines.slice(2)].join('\n');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
toString() {
|
|
51
|
+
return [
|
|
52
|
+
`❌ [${this.name}] ${this.message}`,
|
|
53
|
+
this.stack ? ` Stack trace:\n${this.stack}` : '',
|
|
54
|
+
].join('\n');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Преобразует значение в дату
|
|
59
|
+
*/
|
|
24
60
|
export function toDate(val, format, opt, throwError = true) {
|
|
25
61
|
if (val instanceof Date) {
|
|
26
62
|
return val;
|
|
@@ -45,7 +81,12 @@ export function toDate(val, format, opt, throwError = true) {
|
|
|
45
81
|
}
|
|
46
82
|
return new Date();
|
|
47
83
|
}
|
|
48
|
-
|
|
84
|
+
/**
|
|
85
|
+
* Преобразует дату в строку с учетом временной зоны
|
|
86
|
+
*
|
|
87
|
+
* @param date
|
|
88
|
+
* @param throwError
|
|
89
|
+
*/
|
|
49
90
|
export function toISOStringWithTimezone(date, throwError = true) {
|
|
50
91
|
if (!(date instanceof Date)) {
|
|
51
92
|
if (throwError)
|
|
@@ -64,7 +105,12 @@ export function toISOStringWithTimezone(date, throwError = true) {
|
|
|
64
105
|
diff + pad(tzOffset / 60) +
|
|
65
106
|
':' + pad(tzOffset % 60);
|
|
66
107
|
}
|
|
67
|
-
|
|
108
|
+
/**
|
|
109
|
+
* Преобразует значение в булево значение
|
|
110
|
+
*
|
|
111
|
+
* @param val
|
|
112
|
+
* @param throwError
|
|
113
|
+
*/
|
|
68
114
|
export function toBool(val, throwError = true) {
|
|
69
115
|
switch (typeof val) {
|
|
70
116
|
case 'string':
|
|
@@ -84,7 +130,11 @@ export function toBool(val, throwError = true) {
|
|
|
84
130
|
return Boolean(val);
|
|
85
131
|
}
|
|
86
132
|
}
|
|
87
|
-
|
|
133
|
+
/**
|
|
134
|
+
* Преобразует булево значение в 'Y' или 'N'
|
|
135
|
+
*
|
|
136
|
+
* @param val
|
|
137
|
+
*/
|
|
88
138
|
export function toBXYorN(val) {
|
|
89
139
|
return val ? 'Y' : 'N';
|
|
90
140
|
}
|
|
@@ -96,7 +146,11 @@ export function getBaseUrlHttps(url, component = false) {
|
|
|
96
146
|
return encodeURI('https://' + cropUrl(url) + '/');
|
|
97
147
|
}
|
|
98
148
|
}
|
|
99
|
-
|
|
149
|
+
/**
|
|
150
|
+
* Обрезает URL (удаляет протокол)
|
|
151
|
+
*
|
|
152
|
+
* @param url
|
|
153
|
+
*/
|
|
100
154
|
export function cropUrl(url) {
|
|
101
155
|
url = url ? url.replace('https://', '') : '';
|
|
102
156
|
url = url ? url.replace('http://', '') : '';
|
|
@@ -104,7 +158,11 @@ export function cropUrl(url) {
|
|
|
104
158
|
url = url ? url.replace('http:', '') : '';
|
|
105
159
|
return url;
|
|
106
160
|
}
|
|
107
|
-
|
|
161
|
+
/**
|
|
162
|
+
* Преобразует файл в base64
|
|
163
|
+
*
|
|
164
|
+
* @param file
|
|
165
|
+
*/
|
|
108
166
|
export function getBase64File(file) {
|
|
109
167
|
return new Promise((resolve, reject) => {
|
|
110
168
|
const reader = new FileReader();
|
|
@@ -113,7 +171,11 @@ export function getBase64File(file) {
|
|
|
113
171
|
reader.onerror = error => reject(error);
|
|
114
172
|
});
|
|
115
173
|
}
|
|
116
|
-
|
|
174
|
+
/**
|
|
175
|
+
* Получить файл в формате base64 с разбивкой на заголовок и данные
|
|
176
|
+
*
|
|
177
|
+
* @param file
|
|
178
|
+
*/
|
|
117
179
|
export async function getBase64FileLikeStr(file) {
|
|
118
180
|
const result = await getBase64File(file);
|
|
119
181
|
if (typeof result === 'string') {
|
|
@@ -140,4 +202,4 @@ export function prepareBaseAddress(url, add = '') {
|
|
|
140
202
|
}
|
|
141
203
|
return url;
|
|
142
204
|
}
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUdoQyxnQ0FBZ0M7QUFDaEMsTUFBTSxVQUFVLEtBQUssQ0FBQyxHQUFRLEVBQUUsVUFBVSxHQUFHLEtBQUs7SUFDaEQsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxnQ0FBZ0MsQ0FBQyxDQUFBO1FBQ3hFLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUNwQixDQUFDO0FBRUQsK0JBQStCO0FBQy9CLE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBUSxFQUFFLFVBQVUsR0FBRyxJQUFJLEVBQUUsUUFBUSxHQUFHLENBQUM7SUFDN0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzFCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbEIsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQTtRQUNqRSxDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUE7SUFDakIsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVELDhCQUE4QjtBQUM5QixNQUFNLFVBQVUsTUFBTSxDQUFDLEdBQTJCLEVBQUUsTUFBZSxFQUFFLEdBQXFCLEVBQUUsVUFBVSxHQUFHLElBQUk7SUFDM0csSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFLENBQUM7UUFDeEIsT0FB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LE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxHQUFXLEVBQUUsTUFBMEIsRUFBRTtJQUMxRSxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUMxRCxHQUFHLEdBQUcsVUFBVSxHQUFHLEdBQUcsQ0FBQTtJQUN4QixDQUFDO0lBRUQsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMxQixJQUFJLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUE7UUFDakIsQ0FBQztRQUVELEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2pCLENBQUM7SUFFRCxJQUFJLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUE7SUFDakIsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFBO0FBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nXHJcbmltcG9ydCB7IERhdGVUaW1lT3B0aW9ucyB9IGZyb20gJ2x1eG9uL3NyYy9kYXRldGltZSdcclxuXHJcbi8vINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LfQvdCw0YfQtdC90LjQtSDQsiDRgdGC0YDQvtC60YNcclxuZXhwb3J0IGZ1bmN0aW9uIHRvU3RyKHZhbDogYW55LCB0aHJvd0Vycm9yID0gZmFsc2UpOiBzdHJpbmcge1xyXG4gIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09PSB1bmRlZmluZWQpIHtcclxuICAgIGlmICh0aHJvd0Vycm9yKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB2YWx1ZTogJHt2YWx9IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gc3RyaW5nYClcclxuICAgIH1cclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuICByZXR1cm4gU3RyaW5nKHZhbClcclxufVxyXG5cclxuLy8g0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINGH0LjRgdC70L5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvTnVtKHZhbDogYW55LCB0aHJvd0Vycm9yID0gdHJ1ZSwgZGVmVmFsdWUgPSAwKTogbnVtYmVyIHtcclxuICBjb25zdCByZXN1bHQgPSBOdW1iZXIodmFsKVxyXG4gIGlmIChpc05hTihyZXN1bHQpKSB7XHJcbiAgICBpZiAodGhyb3dFcnJvcikge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gbnVtYmVyJylcclxuICAgIH1cclxuICAgIHJldHVybiBkZWZWYWx1ZVxyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0XHJcbn1cclxuXHJcbi8vINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LfQvdCw0YfQtdC90LjQtSDQsiDQtNCw0YLRg1xyXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlKHZhbDogbnVtYmVyIHwgc3RyaW5nIHwgRGF0ZSwgZm9ybWF0Pzogc3RyaW5nLCBvcHQ/OiBEYXRlVGltZU9wdGlvbnMsIHRocm93RXJyb3IgPSB0cnVlKTogRGF0ZSB7XHJcbiAgaWYgKHZhbCBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgIHJldHVybiB2YWxcclxuICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XHJcbiAgICBpZiAoZm9ybWF0KSB7XHJcbiAgICAgIGlmIChvcHQpIHtcclxuICAgICAgICByZXR1cm4gRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWwsIGZvcm1hdCwgb3B0KS50b0pTRGF0ZSgpXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIERhdGVUaW1lLmZyb21Gb3JtYXQodmFsLCBmb3JtYXQpLnRvSlNEYXRlKClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWwpXHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbClcclxuICB9XHJcblxyXG4gIGlmICh0aHJvd0Vycm9yKSB7XHJcbiAgICBjb25zb2xlLmVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcsIHZhbCwgZm9ybWF0KVxyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcpXHJcbiAgfVxyXG5cclxuICByZXR1cm4gbmV3IERhdGUoKVxyXG59XHJcblxyXG4vLyDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINC00LDRgtGDINCyINGB0YLRgNC+0LrRgyDRgSDRg9GH0LXRgtC+0Lwg0LLRgNC10LzQtdC90L3QvtC5INC30L7QvdGLXHJcbmV4cG9ydCBmdW5jdGlvbiB0b0lTT1N0cmluZ1dpdGhUaW1lem9uZShkYXRlOiBEYXRlLCB0aHJvd0Vycm9yID0gdHJ1ZSk6IHN0cmluZyB7XHJcbiAgaWYgKCEoZGF0ZSBpbnN0YW5jZW9mIERhdGUpKSB7XHJcbiAgICBpZiAodGhyb3dFcnJvcikgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHZhbHVlOiBub3QgYSB2YWxpZCBEYXRlIG9iamVjdCcpXHJcbiAgICByZXR1cm4gJydcclxuICB9XHJcblxyXG4gIGNvbnN0IHR6T2Zmc2V0ID0gLWRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKVxyXG4gIGNvbnN0IGRpZmYgPSB0ek9mZnNldCA+PSAwID8gJysnIDogJy0nXHJcbiAgY29uc3QgcGFkID0gKG46IG51bWJlcikgPT4gYCR7TWF0aC5mbG9vcihNYXRoLmFicyhuKSl9YC5wYWRTdGFydCgyLCAnMCcpXHJcbiAgcmV0dXJuIGRhdGUuZ2V0RnVsbFllYXIoKSArXHJcbiAgICAnLScgKyBwYWQoZGF0ZS5nZXRNb250aCgpICsgMSkgK1xyXG4gICAgJy0nICsgcGFkKGRhdGUuZ2V0RGF0ZSgpKSArXHJcbiAgICAnVCcgKyBwYWQoZGF0ZS5nZXRIb3VycygpKSArXHJcbiAgICAnOicgKyBwYWQoZGF0ZS5nZXRNaW51dGVzKCkpICtcclxuICAgICc6JyArIHBhZChkYXRlLmdldFNlY29uZHMoKSkgK1xyXG4gICAgZGlmZiArIHBhZCh0ek9mZnNldCAvIDYwKSArXHJcbiAgICAnOicgKyBwYWQodHpPZmZzZXQgJSA2MClcclxufVxyXG5cclxuLy8g0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINCx0YPQu9C10LLQviDQt9C90LDRh9C10L3QuNC1XHJcbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2wodmFsOiBhbnksIHRocm93RXJyb3IgPSB0cnVlKTogYm9vbGVhbiB7XHJcbiAgc3dpdGNoICh0eXBlb2YgdmFsKSB7XHJcbiAgICBjYXNlICdzdHJpbmcnOlxyXG4gICAgICB2YWwgPSB2YWwudG9Mb3dlckNhc2UoKVxyXG4gICAgICBpZiAodmFsID09PSAnbicgfHwgdmFsID09PSAneScpIHsgLy8g0LHQuNGC0YDQuNC60YHQvtCy0YvQtSDQv9C+0L3Rj9GC0LjRjyDQviBib29sXHJcbiAgICAgICAgcmV0dXJuIHZhbCA9PT0gJ3knXHJcbiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAndHJ1ZScgfHwgdmFsID09PSAnZmFsc2UnKSB7IC8vINCx0LjRgtGA0LjQutGB0L7QstGL0LUg0L/QvtC90Y/RgtC40Y8g0L4gYm9vbFxyXG4gICAgICAgIHJldHVybiB2YWwgPT09ICd0cnVlJ1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYm9vbGVhbicpXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgIH1cclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiBCb29sZWFuKHZhbClcclxuICB9XHJcbn1cclxuXHJcbi8vINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LHRg9C70LXQstC+INC30L3QsNGH0LXQvdC40LUg0LIgJ1knINC40LvQuCAnTidcclxuZXhwb3J0IGZ1bmN0aW9uIHRvQlhZb3JOKHZhbDogYm9vbGVhbik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHZhbCA/ICdZJyA6ICdOJ1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFzZVVybEh0dHBzKHVybDogc3RyaW5nLCBjb21wb25lbnQgPSBmYWxzZSk6IHN0cmluZyB7XHJcbiAgaWYgKGNvbXBvbmVudCkge1xyXG4gICAgcmV0dXJuIGVuY29kZVVSSShjcm9wVXJsKHVybCkgKyAnLycpXHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBlbmNvZGVVUkkoJ2h0dHBzOi8vJyArIGNyb3BVcmwodXJsKSArICcvJylcclxuICB9XHJcbn1cclxuXHJcbi8vINCe0LHRgNC10LfQsNC10YIgVVJMICjRg9C00LDQu9GP0LXRgiDQv9GA0L7RgtC+0LrQvtC7KVxyXG5leHBvcnQgZnVuY3Rpb24gY3JvcFVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgdXJsID0gdXJsID8gdXJsLnJlcGxhY2UoJ2h0dHBzOi8vJywgJycpIDogJydcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cDovLycsICcnKSA6ICcnXHJcbiAgdXJsID0gdXJsID8gdXJsLnJlcGxhY2UoJ2h0dHBzOicsICcnKSA6ICcnXHJcbiAgdXJsID0gdXJsID8gdXJsLnJlcGxhY2UoJ2h0dHA6JywgJycpIDogJydcclxuICByZXR1cm4gdXJsXHJcbn1cclxuXHJcbi8vINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0YTQsNC50Lsg0LIgYmFzZTY0XHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRCYXNlNjRGaWxlKGZpbGU6IEZpbGUpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpXHJcbiAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKVxyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpXHJcbiAgICByZWFkZXIub25lcnJvciA9IGVycm9yID0+IHJlamVjdChlcnJvcilcclxuICB9KVxyXG59XHJcblxyXG4vLyDQn9C+0LvRg9GH0LjRgtGMINGE0LDQudC7INCyINGE0L7RgNC80LDRgtC1IGJhc2U2NCDRgSDRgNCw0LfQsdC40LLQutC+0Lkg0L3QsCDQt9Cw0LPQvtC70L7QstC+0Log0Lgg0LTQsNC90L3Ri9C1XHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCYXNlNjRGaWxlTGlrZVN0cihmaWxlOiBGaWxlKTogUHJvbWlzZTx7XHJcbiAgaGVhZGVyOiBzdHJpbmcsXHJcbiAgdmFsOiBzdHJpbmdcclxufSB8IHVuZGVmaW5lZD4ge1xyXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdldEJhc2U2NEZpbGUoZmlsZSlcclxuICBpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ3N0cmluZycpIHtcclxuICAgIGNvbnN0IHNwbGl0ID0gcmVzdWx0LnNwbGl0KCcsJylcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGhlYWRlcjogc3BsaXRbMF0sXHJcbiAgICAgIHZhbDogc3BsaXRbMV1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHVuZGVmaW5lZFxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUJhc2VBZGRyZXNzKHVybDogc3RyaW5nLCBhZGQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnKSB7XHJcbiAgaWYgKHVybC5zZWFyY2goJ2h0dHBzOi8vJykgIT09IDAgJiYgdXJsLnNlYXJjaCgnaHR0cDovLycpKSB7XHJcbiAgICB1cmwgPSAnaHR0cHM6Ly8nICsgdXJsXHJcbiAgfVxyXG5cclxuICBpZiAoYWRkICYmIGFkZC5sZW5ndGggPiAwKSB7XHJcbiAgICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgICAgdXJsID0gdXJsICsgJy8nXHJcbiAgICB9XHJcblxyXG4gICAgdXJsID0gdXJsICsgYWRkXHJcbiAgfVxyXG5cclxuICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgIHVybCA9IHVybCArICcvJ1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHVybFxyXG59Il19
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUdoQzs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBUSxFQUFFLFVBQVUsR0FBRyxLQUFLO0lBQ2hELElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDdEMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLEdBQUcsZ0NBQWdDLENBQUMsQ0FBQTtRQUN4RSxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDcEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBQyxHQUFRLEVBQUUsVUFBVSxHQUFHLElBQUksRUFBRSxRQUFRLEdBQUcsQ0FBQztJQUM3RCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7SUFFMUIsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNsQixNQUFNLEtBQUssR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVqQyxJQUFJLFVBQVU7WUFBRSxNQUFNLEtBQUssQ0FBQTtRQUUzQixrREFBa0Q7UUFDbEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtRQUMvQixPQUFPLFFBQVEsQ0FBQTtJQUNqQixDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLEtBQUs7SUFDbkMsWUFBNEIs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O0FBQ2xCLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsR0FBVyxFQUFFLE1BQTBCLEVBQUU7SUFDMUUsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDMUQsR0FBRyxHQUFHLFVBQVUsR0FBRyxHQUFHLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDMUIsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzlDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO1FBQ2pCLENBQUM7UUFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQTtJQUNqQixDQUFDO0lBRUQsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2pCLENBQUM7SUFFRCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlVGltZSB9IGZyb20gJ2x1eG9uJ1xyXG5pbXBvcnQgeyBEYXRlVGltZU9wdGlvbnMgfSBmcm9tICdsdXhvbi9zcmMvZGF0ZXRpbWUnXHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINGB0YLRgNC+0LrRg1xyXG4gKlxyXG4gKiBAcGFyYW0gdmFsXHJcbiAqIEBwYXJhbSB0aHJvd0Vycm9yXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9TdHIodmFsOiBhbnksIHRocm93RXJyb3IgPSBmYWxzZSk6IHN0cmluZyB7XHJcbiAgaWYgKHZhbCA9PT0gbnVsbCB8fCB2YWwgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgaWYgKHRocm93RXJyb3IpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHZhbHVlOiAke3ZhbH0gY2Fubm90IGJlIGNvbnZlcnRlZCB0byBzdHJpbmdgKVxyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnXHJcbiAgfVxyXG4gIHJldHVybiBTdHJpbmcodmFsKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINGH0LjRgdC70L5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b051bSh2YWw6IGFueSwgdGhyb3dFcnJvciA9IHRydWUsIGRlZlZhbHVlID0gMCk6IG51bWJlciB7XHJcbiAgY29uc3QgcmVzdWx0ID0gTnVtYmVyKHZhbClcclxuXHJcbiAgaWYgKGlzTmFOKHJlc3VsdCkpIHtcclxuICAgIGNvbnN0IGVycm9yID0gbmV3IFRvTnVtRXJyb3IodmFsKVxyXG5cclxuICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBlcnJvclxyXG5cclxuICAgIC8vINCV0YHQu9C4INC+0YjQuNCx0LrQsCDQvdC1INC/0YDQvtCx0YDQsNGB0YvQstCw0LXRgtGB0Y8g4oCUINC/0YDQvtGB0YLQviDQu9C+0LPQuNGA0YPQtdC8XHJcbiAgICBjb25zb2xlLmVycm9yKGVycm9yLnRvU3RyaW5nKCkpXHJcbiAgICByZXR1cm4gZGVmVmFsdWVcclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHRcclxufVxyXG5cclxuLyoqXHJcbiAqINCa0LDRgdGC0L7QvNC90YvQuSDRgtC40L8g0L7RiNC40LHQutC4INC00LvRjyDRh9C40YHQu9C+0LLRi9GFINC/0YDQtdC+0LHRgNCw0LfQvtCy0LDQvdC40LlcclxuICovXHJcbmV4cG9ydCBjbGFzcyBUb051bUVycm9yIGV4dGVuZHMgRXJyb3Ige1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB2YWx1ZTogYW55KSB7XHJcbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB0eXBlb2YgdmFsdWVcclxuICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID1cclxuICAgICAgdmFsdWVUeXBlID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IFN0cmluZyh2YWx1ZSlcclxuICAgIGNvbnN0IG1lc3NhZ2UgPSBgSW52YWxpZCB2YWx1ZSBwYXNzZWQgdG8gdG9OdW0oKTogJHtmb3JtYXR0ZWRWYWx1ZX0gKHR5cGU6ICR7dmFsdWVUeXBlfSlgXHJcbiAgICBzdXBlcihtZXNzYWdlKVxyXG4gICAgdGhpcy5uYW1lID0gJ1RvTnVtRXJyb3InXHJcblxyXG4gICAgLy8g0YHQvtGF0YDQsNC90Y/QtdC8INGB0YLQtdC6INCy0YvQt9C+0LLQsCAo0L7RgtGE0LjQu9GM0YLRgNC+0LLQsNCyINGB0LDQvCDQutC+0L3RgdGC0YDRg9C60YLQvtGAKVxyXG4gICAgaWYgKHRoaXMuc3RhY2spIHtcclxuICAgICAgY29uc3Qgc3RhY2tMaW5lcyA9IHRoaXMuc3RhY2suc3BsaXQoJ1xcbicpXHJcbiAgICAgIC8vINCj0LTQsNC70Y/QtdC8INGB0YLRgNC+0LrRgyDQutC+0L3RgdGC0YDRg9C60YLQvtGA0LAgKNGH0YLQvtCx0Ysg0YHRgtC10Log0L3QsNGH0LjQvdCw0LvRgdGPINGBINC80LXRgdGC0LAg0LLRi9C30L7QstCwIHRvTnVtKVxyXG4gICAgICB0aGlzLnN0YWNrID0gW3N0YWNrTGluZXNbMF0sIC4uLnN0YWNrTGluZXMuc2xpY2UoMildLmpvaW4oJ1xcbicpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgYOKdjCBbJHt0aGlzLm5hbWV9XSAke3RoaXMubWVzc2FnZX1gLFxyXG4gICAgICB0aGlzLnN0YWNrID8gYCAgIFN0YWNrIHRyYWNlOlxcbiR7dGhpcy5zdGFja31gIDogJycsXHJcbiAgICBdLmpvaW4oJ1xcbicpXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINC00LDRgtGDXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlKHZhbDogbnVtYmVyIHwgc3RyaW5nIHwgRGF0ZSwgZm9ybWF0Pzogc3RyaW5nLCBvcHQ/OiBEYXRlVGltZU9wdGlvbnMsIHRocm93RXJyb3IgPSB0cnVlKTogRGF0ZSB7XHJcbiAgaWYgKHZhbCBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgIHJldHVybiB2YWxcclxuICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XHJcbiAgICBpZiAoZm9ybWF0KSB7XHJcbiAgICAgIGlmIChvcHQpIHtcclxuICAgICAgICByZXR1cm4gRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWwsIGZvcm1hdCwgb3B0KS50b0pTRGF0ZSgpXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIERhdGVUaW1lLmZyb21Gb3JtYXQodmFsLCBmb3JtYXQpLnRvSlNEYXRlKClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWwpXHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbClcclxuICB9XHJcblxyXG4gIGlmICh0aHJvd0Vycm9yKSB7XHJcbiAgICBjb25zb2xlLmVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcsIHZhbCwgZm9ybWF0KVxyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcpXHJcbiAgfVxyXG5cclxuICByZXR1cm4gbmV3IERhdGUoKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQtNCw0YLRgyDQsiDRgdGC0YDQvtC60YMg0YEg0YPRh9C10YLQvtC8INCy0YDQtdC80LXQvdC90L7QuSDQt9C+0L3Ri1xyXG4gKlxyXG4gKiBAcGFyYW0gZGF0ZVxyXG4gKiBAcGFyYW0gdGhyb3dFcnJvclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRvSVNPU3RyaW5nV2l0aFRpbWV6b25lKGRhdGU6IERhdGUsIHRocm93RXJyb3IgPSB0cnVlKTogc3RyaW5nIHtcclxuICBpZiAoIShkYXRlIGluc3RhbmNlb2YgRGF0ZSkpIHtcclxuICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IG5vdCBhIHZhbGlkIERhdGUgb2JqZWN0JylcclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuXHJcbiAgY29uc3QgdHpPZmZzZXQgPSAtZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpXHJcbiAgY29uc3QgZGlmZiA9IHR6T2Zmc2V0ID49IDAgPyAnKycgOiAnLSdcclxuICBjb25zdCBwYWQgPSAobjogbnVtYmVyKSA9PiBgJHtNYXRoLmZsb29yKE1hdGguYWJzKG4pKX1gLnBhZFN0YXJ0KDIsICcwJylcclxuICByZXR1cm4gZGF0ZS5nZXRGdWxsWWVhcigpICtcclxuICAgICctJyArIHBhZChkYXRlLmdldE1vbnRoKCkgKyAxKSArXHJcbiAgICAnLScgKyBwYWQoZGF0ZS5nZXREYXRlKCkpICtcclxuICAgICdUJyArIHBhZChkYXRlLmdldEhvdXJzKCkpICtcclxuICAgICc6JyArIHBhZChkYXRlLmdldE1pbnV0ZXMoKSkgK1xyXG4gICAgJzonICsgcGFkKGRhdGUuZ2V0U2Vjb25kcygpKSArXHJcbiAgICBkaWZmICsgcGFkKHR6T2Zmc2V0IC8gNjApICtcclxuICAgICc6JyArIHBhZCh0ek9mZnNldCAlIDYwKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINCx0YPQu9C10LLQviDQt9C90LDRh9C10L3QuNC1XHJcbiAqXHJcbiAqIEBwYXJhbSB2YWxcclxuICogQHBhcmFtIHRocm93RXJyb3JcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2wodmFsOiBhbnksIHRocm93RXJyb3IgPSB0cnVlKTogYm9vbGVhbiB7XHJcbiAgc3dpdGNoICh0eXBlb2YgdmFsKSB7XHJcbiAgICBjYXNlICdzdHJpbmcnOlxyXG4gICAgICB2YWwgPSB2YWwudG9Mb3dlckNhc2UoKVxyXG4gICAgICBpZiAodmFsID09PSAnbicgfHwgdmFsID09PSAneScpIHsgLy8g0LHQuNGC0YDQuNC60YHQvtCy0YvQtSDQv9C+0L3Rj9GC0LjRjyDQviBib29sXHJcbiAgICAgICAgcmV0dXJuIHZhbCA9PT0gJ3knXHJcbiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAndHJ1ZScgfHwgdmFsID09PSAnZmFsc2UnKSB7IC8vINCx0LjRgtGA0LjQutGB0L7QstGL0LUg0L/QvtC90Y/RgtC40Y8g0L4gYm9vbFxyXG4gICAgICAgIHJldHVybiB2YWwgPT09ICd0cnVlJ1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYm9vbGVhbicpXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgIH1cclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiBCb29sZWFuKHZhbClcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINCx0YPQu9C10LLQviDQt9C90LDRh9C10L3QuNC1INCyICdZJyDQuNC70LggJ04nXHJcbiAqXHJcbiAqIEBwYXJhbSB2YWxcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b0JYWW9yTih2YWw6IGJvb2xlYW4pOiBzdHJpbmcge1xyXG4gIHJldHVybiB2YWwgPyAnWScgOiAnTidcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEJhc2VVcmxIdHRwcyh1cmw6IHN0cmluZywgY29tcG9uZW50ID0gZmFsc2UpOiBzdHJpbmcge1xyXG4gIGlmIChjb21wb25lbnQpIHtcclxuICAgIHJldHVybiBlbmNvZGVVUkkoY3JvcFVybCh1cmwpICsgJy8nKVxyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gZW5jb2RlVVJJKCdodHRwczovLycgKyBjcm9wVXJsKHVybCkgKyAnLycpXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICog0J7QsdGA0LXQt9Cw0LXRgiBVUkwgKNGD0LTQsNC70Y/QtdGCINC/0YDQvtGC0L7QutC+0LspXHJcbiAqXHJcbiAqIEBwYXJhbSB1cmxcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjcm9wVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cHM6Ly8nLCAnJykgOiAnJ1xyXG4gIHVybCA9IHVybCA/IHVybC5yZXBsYWNlKCdodHRwOi8vJywgJycpIDogJydcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cHM6JywgJycpIDogJydcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cDonLCAnJykgOiAnJ1xyXG4gIHJldHVybiB1cmxcclxufVxyXG5cclxuLyoqXHJcbiAqINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0YTQsNC50Lsg0LIgYmFzZTY0XHJcbiAqXHJcbiAqIEBwYXJhbSBmaWxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFzZTY0RmlsZShmaWxlOiBGaWxlKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKVxyXG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSlcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKVxyXG4gICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpXHJcbiAgfSlcclxufVxyXG5cclxuLyoqXHJcbiAqINCf0L7Qu9GD0YfQuNGC0Ywg0YTQsNC50Lsg0LIg0YTQvtGA0LzQsNGC0LUgYmFzZTY0INGBINGA0LDQt9Cx0LjQstC60L7QuSDQvdCwINC30LDQs9C+0LvQvtCy0L7QuiDQuCDQtNCw0L3QvdGL0LVcclxuICpcclxuICogQHBhcmFtIGZpbGVcclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCYXNlNjRGaWxlTGlrZVN0cihmaWxlOiBGaWxlKTogUHJvbWlzZTx7XHJcbiAgaGVhZGVyOiBzdHJpbmcsXHJcbiAgdmFsOiBzdHJpbmdcclxufSB8IHVuZGVmaW5lZD4ge1xyXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdldEJhc2U2NEZpbGUoZmlsZSlcclxuICBpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ3N0cmluZycpIHtcclxuICAgIGNvbnN0IHNwbGl0ID0gcmVzdWx0LnNwbGl0KCcsJylcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGhlYWRlcjogc3BsaXRbMF0sXHJcbiAgICAgIHZhbDogc3BsaXRbMV1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHVuZGVmaW5lZFxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUJhc2VBZGRyZXNzKHVybDogc3RyaW5nLCBhZGQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnKSB7XHJcbiAgaWYgKHVybC5zZWFyY2goJ2h0dHBzOi8vJykgIT09IDAgJiYgdXJsLnNlYXJjaCgnaHR0cDovLycpKSB7XHJcbiAgICB1cmwgPSAnaHR0cHM6Ly8nICsgdXJsXHJcbiAgfVxyXG5cclxuICBpZiAoYWRkICYmIGFkZC5sZW5ndGggPiAwKSB7XHJcbiAgICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgICAgdXJsID0gdXJsICsgJy8nXHJcbiAgICB9XHJcblxyXG4gICAgdXJsID0gdXJsICsgYWRkXHJcbiAgfVxyXG5cclxuICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgIHVybCA9IHVybCArICcvJ1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHVybFxyXG59Il19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvdHlwaWZpY2F0aW9uL3Jlc3QvaW0vZGlhbG9nL3JlY2VudC9nZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlCWFJlc3RZZXNObyB9IGZyb20gJy4uLy4uLy4uL2Jhc2UveWVzLW5vJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRQYXJhbSB7XHJcbiAgLyoqXHJcbiAgICog0J/RgNC+0L/Rg9GB0LrQsNGC0Ywg0YfQsNGC0Ysg0L7RgtC60YDRi9GC0YvRhSDQu9C40L3QuNC5XHJcbiAgICovXHJcbiAgU0tJUF9PUEVOTElORVM/OiBpQlhSZXN0WWVzTm9cclxuXHJcbiAgLyoqINCf0YDQvtC/0YPRgdC60LDRgtGMINGH0LDRgtGLICovXHJcbiAgU0tJUF9DSEFUPzogaUJYUmVzdFllc05vXHJcblxyXG4gIC8qKiDQn9GA0L7Qv9GD0YHQutCw0YLRjCDQtNC40LDQu9C+0LPQuCDQvtC00LjQvS3QvdCwLdC+0LTQuNC9ICovXHJcbiAgU0tJUF9ESUFMT0c/OiBpQlhSZXN0WWVzTm9cclxuXHJcbiAgLyoqXHJcbiAgICog0J7Qs9GA0LDQvdC40YfQtdC90LjQtSDQstGL0LHQvtGA0LrQuCDQtNC70Y8g0LzQuNC90LjQvNC40LfQsNGG0LjQuCDQv9C10YDQtdC00LDQvdC90YvRhSDQtNCw0L3QvdGL0YUuXHJcbiAgICovXHJcbiAgTEFTVF9VUERBVEU/OiBEYXRlXHJcblxyXG4gIC8qKlxyXG4gICAqINCS0YvQsdC+0YDQutCwINGC0L7Qu9GM0LrQviDRh9Cw0YLQvtCyINC+0YLQutGA0YvRgtGL0YUg0LvQuNC90LjQuVxyXG4gICAqL1xyXG4gIE9OTFlfT1BFTkxJTkVTPzogaUJYUmVzdFllc05vXHJcblxyXG4gIC8qKlxyXG4gICAqINCU0LDRgtCwINC/0YDQtdC00YvQtNGD0YnQtdC5INCy0YvQsdC+0YDQutC4INC00LvRjyDQt9Cw0LPRgNGD0LfQutC4INC40LfQvNC10L3QtdC90LjQuSwg0L/RgNC+0LjQt9C+0YjQtdC00YjQuNGFINCyINGB0L/QuNGB0LrQtSDRgSDRjdGC0L7Qs9C+INCy0YDQtdC80LXQvdC4LlxyXG4gICAqINCS0YvQsdC+0YDQutCwINCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LDQvdC90YvQtSDQvdC1INGB0YLQsNGA0YjQtSA3INC00L3QtdC5LlxyXG4gICAqL1xyXG4gIExBU1RfU1lOQ19EQVRFPzogRGF0ZVxyXG59XHJcblxyXG5cclxuLy8g0J7Qv9C40YHQsNC90LjQtSDQsNCy0LDRgtCw0YDQsCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0LjQu9C4INGH0LDRgtCwXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0QXZhdGFyIHtcclxuICAvKiog0KHRgdGL0LvQutCwINC90LAg0LDQstCw0YLQsNGAICjQtdGB0LvQuCDQv9GD0YHRgtC+IOKAlCDQsNCy0LDRgtCw0YAg0L3QtSDQt9Cw0LTQsNC9KSAqL1xyXG4gIHVybDogc3RyaW5nXHJcbiAgLyoqINCm0LLQtdGCINC00LjQsNC70L7Qs9CwINCyINGE0L7RgNC80LDRgtC1IGhleCAqL1xyXG4gIGNvbG9yOiBzdHJpbmdcclxufVxyXG5cclxuLy8g0J7Qv9C40YHQsNC90LjQtSDQv9C+0YHQu9C10LTQvdC10LPQviDRgdC+0L7QsdGJ0LXQvdC40Y9cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRNZXNzYWdlIHtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHQvtC+0LHRidC10L3QuNGPICovXHJcbiAgaWQ6IHN0cmluZ1xyXG4gIC8qKiDQotC10LrRgdGCINGB0L7QvtCx0YnQtdC90LjRjyAo0LHQtdC3IEJCLdC60L7QtNC+0LIg0Lgg0L/QtdGA0LXQvdC+0YHQvtCyINGB0YLRgNC+0LopICovXHJcbiAgdGV4dDogc3RyaW5nXHJcbiAgLyoqINCf0YDQuNC30L3QsNC6INC90LDQu9C40YfQuNGPINGE0LDQudC70L7QsiAqL1xyXG4gIGZpbGU6IGJvb2xlYW5cclxuICAvKiog0J/RgNC40LfQvdCw0Log0L3QsNC70LjRh9C40Y8g0LLQu9C+0LbQtdC90LjQuSAqL1xyXG4gIGF0dGFjaDogYm9vbGVhblxyXG4gIC8qKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQsNCy0YLQvtGA0LAg0YHQvtC+0LHRidC10L3QuNGPICovXHJcbiAgYXV0aG9yX2lkOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YSBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgaWQ6IG51bWJlclxyXG4gIC8qKiDQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDQtNC10LnRgdGC0LLQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGxhc3RfYWN0aXZpdHlfZGF0ZTogRGF0ZSB8IGZhbHNlXHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQuSDQsNC60YLQuNCy0L3QvtGB0YLQuCDQsiDQvNC+0LHQuNC70YzQvdC+0Lwg0L/RgNC40LvQvtC20LXQvdC40Lgg0LjQu9C4IGZhbHNlICovXHJcbiAgbW9iaWxlX2xhc3RfZGF0ZTogRGF0ZSB8IGZhbHNlXHJcbiAgLyoqINCU0LDRgtCwINC+0LrQvtC90YfQsNC90LjRjyDQvtGC0L/Rg9GB0LrQsCDQuNC70LggZmFsc2UgKi9cclxuICBhYnNlbnQ6IERhdGUgfCBmYWxzZVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhSHR0cCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgaWQ6IHN0cmluZ1xyXG4gIC8qKiDQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDQtNC10LnRgdGC0LLQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGxhc3RfYWN0aXZpdHlfZGF0ZTogc3RyaW5nXHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQuSDQsNC60YLQuNCy0L3QvtGB0YLQuCDQsiDQvNC+0LHQuNC70YzQvdC+0Lwg0L/RgNC40LvQvtC20LXQvdC40Lgg0LjQu9C4IGZhbHNlICovXHJcbiAgbW9iaWxlX2xhc3RfZGF0ZTogc3RyaW5nIHwgZmFsc2VcclxuICAvKiog0JTQsNGC0LAg0L7QutC+0L3Rh9Cw0L3QuNGPINC+0YLQv9GD0YHQutCwINC40LvQuCBmYWxzZSAqL1xyXG4gIGFic2VudDogc3RyaW5nIHwgZmFsc2VcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YUJhc2Uge1xyXG4gIC8qKiDQn9C+0LvQvdC+0LUg0LjQvNGPICjQuNC80Y8g0Lgg0YTQsNC80LjQu9C40Y8pICovXHJcbiAgbmFtZTogc3RyaW5nXHJcbiAgLyoqINCY0LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gKi9cclxuICBmaXJzdF9uYW1lOiBzdHJpbmdcclxuICAvKiog0KTQsNC80LjQu9C40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgbGFzdF9uYW1lOiBzdHJpbmdcclxuICAvKiog0JTQvtC70LbQvdC+0YHRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIHdvcmtfcG9zaXRpb246IHN0cmluZ1xyXG4gIC8qKiDQptCy0LXRgiDQsiDRhNC+0YDQvNCw0YLQtSBoZXggKi9cclxuICBjb2xvcjogc3RyaW5nXHJcbiAgLyoqINCh0YHRi9C70LrQsCDQvdCwINCw0LLQsNGC0LDRgCAqL1xyXG4gIGF2YXRhcjogc3RyaW5nXHJcbiAgLyoqINCf0L7QuyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gKE0vRikgKi9cclxuICBnZW5kZXI6IHN0cmluZ1xyXG4gIC8qKiDQlNC10L3RjCDRgNC+0LbQtNC10L3QuNGPINCyINGE0L7RgNC80LDRgtC1IERELU1NINC40LvQuCBmYWxzZSAqL1xyXG4gIGJpcnRoZGF5OiBzdHJpbmcgfCBmYWxzZVxyXG4gIC8qKiDQktC90LXRiNC90LjQuSDRjdC60YHRgtGA0LDQvdC10YIt0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GMICovXHJcbiAgZXh0cmFuZXQ6IGJvb2xlYW5cclxuICAvKiog0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINCR0LjRgtGA0LjQutGBMjQuTmV0d29yayAqL1xyXG4gIG5ldHdvcms6IGJvb2xlYW5cclxuICAvKiog0JHQvtGCICovXHJcbiAgYm90OiBib29sZWFuXHJcbiAgLyoqINCf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQvtGC0LrRgNGL0YLRi9GFINC70LjQvdC40LkgKi9cclxuICBjb25uZWN0b3I6IGJvb2xlYW5cclxuICAvKiog0JrQvtC0INCy0L3QtdGI0L3QtdC5INCw0LLRgtC+0YDQuNC30LDRhtC40LggKi9cclxuICBleHRlcm5hbF9hdXRoX2lkOiBzdHJpbmdcclxuICAvKiog0KHRgtCw0YLRg9GBINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAo0L3QsNC/0YDQuNC80LXRgCwgb25saW5lKSAqL1xyXG4gIHN0YXR1czogc3RyaW5nXHJcbiAgLyoqINCU0LDRgtCwLCDQutC+0LPQtNCwINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQvtGC0L7RiNC10Lsg0L7RgiDQutC+0LzQv9GM0Y7RgtC10YDQsCwg0LjQu9C4IGZhbHNlICovXHJcbiAgaWRsZTogc3RyaW5nIHwgZmFsc2VcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0RGF0YSBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXREYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YfQsNGC0LAgKi9cclxuICBpZDogbnVtYmVyXHJcbiAgLyoqINCU0LDRgtCwINGB0L7Qt9C00LDQvdC40Y8g0YfQsNGC0LAgKi9cclxuICBkYXRlX2NyZWF0ZTogRGF0ZVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXREYXRhSHR0cCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXREYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YfQsNGC0LAgKi9cclxuICBpZDogc3RyaW5nXHJcbiAgLyoqINCU0LDRgtCwINGB0L7Qt9C00LDQvdC40Y8g0YfQsNGC0LAgKi9cclxuICBkYXRlX2NyZWF0ZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdERhdGFCYXNlIHtcclxuICAvKiog0J3QsNC30LLQsNC90LjQtSDRh9Cw0YLQsCAqL1xyXG4gIHRpdGxlOiBzdHJpbmdcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LLQu9Cw0LTQtdC70YzRhtCwINGH0LDRgtCwICovXHJcbiAgb3duZXI6IHN0cmluZ1xyXG4gIC8qKiDQn9GA0LjQt9C90LDQuiDRg9GH0LDRgdGC0LjRjyDQstC90LXRiNC90LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGV4dHJhbmV0OiBib29sZWFuXHJcbiAgLyoqINCh0YHRi9C70LrQsCDQvdCwINCw0LLQsNGC0LDRgCDRh9Cw0YLQsCAqL1xyXG4gIGF2YXRhcjogc3RyaW5nXHJcbiAgLyoqINCm0LLQtdGCINGH0LDRgtCwICovXHJcbiAgY29sb3I6IHN0cmluZ1xyXG4gIC8qKiDQotC40L8g0YfQsNGC0LAgKGNoYXQsIG9wZW5saW5lINC4INGCLtC0LikgKi9cclxuICB0eXBlOiBzdHJpbmdcclxuICAvKiog0JLQvdC10YjQvdC40Lkg0LrQvtC0INGH0LDRgtCwIOKAlCDRgtC40L8gKi9cclxuICBlbnRpdHlfdHlwZTogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC5INC60L7QtCDRh9Cw0YLQsCDigJQg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAgKNC80L7QttC10YIg0L7RgtGB0YPRgtGB0YLQstC+0LLQsNGC0YwpICovXHJcbiAgZW50aXR5X2lkPzogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDEpICovXHJcbiAgZW50aXR5X2RhdGFfMTogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDIpICovXHJcbiAgZW50aXR5X2RhdGFfMjogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDMpICovXHJcbiAgZW50aXR5X2RhdGFfMzogc3RyaW5nXHJcbiAgLyoqINCi0LjQvyDRgdC+0L7QsdGJ0LXQvdC40Lkg0LIg0YfQsNGC0LUgKNC+0LHRi9GH0L3QviBcIkNcIikgKi9cclxuICBtZXNzYWdlX3R5cGU6IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEJhc2V7XHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQs9C+INGB0L7QvtCx0YnQtdC90LjRjyAqL1xyXG4gIGRhdGVfdXBkYXRlOiBEYXRlXHJcbiAgLyoqINCe0LHRitC10LrRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8sINC10YHQu9C4IHR5cGUgPT09ICd1c2VyJyAqL1xyXG4gIHVzZXI/OiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YVxyXG4gIC8qKiDQntCx0YrQtdC60YIg0YfQsNGC0LAsINC10YHQu9C4IHR5cGUgPT09ICdjaGF0JyAqL1xyXG4gIGNoYXQ/OiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0RGF0YVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEh0dHAgZXh0ZW5kcyBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRCYXNle1xyXG4gIC8qKiDQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDRgdC+0L7QsdGJ0LXQvdC40Y8gKi9cclxuICBkYXRlX3VwZGF0ZTogc3RyaW5nXHJcbiAgLyoqXHJcbiAgICog0J7QsdGK0LXQutGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0LXRgdC70LggdHlwZSA9PT0gJ3VzZXInXHJcbiAgICog0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LHRiyDQsiDQs9C70LDQt9CwINGC0L7QvNGDINGH0LXQu9C+0LLQtdC60YMg0YfRgtC+INGN0YLRgyDRhdGD0LXRgtGDINGB0LTQtdC70LDQu9CwLCDQvdGDINGC0LjQvyB7aWQ6IDB9INGN0YLQviDQsNGF0YPQuVxyXG4gICAqXHJcbiAgICovXHJcbiAgdXNlcj86IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhSHR0cCB8IHtpZDogMH1cclxuICAvKiog0J7QsdGK0LXQutGCINGH0LDRgtCwLCDQtdGB0LvQuCB0eXBlID09PSAnY2hhdCcgKi9cclxuICBjaGF0PzogaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdERhdGFIdHRwXHJcbn1cclxuXHJcbi8vINCj0L3QuNCy0LXRgNGB0LDQu9GM0L3QsNGPINC30LDQv9C40YHRjCDQsiDRgdC/0LjRgdC60LUgKNC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQuNC70Lgg0YfQsNGCKVxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEJhc2Uge1xyXG4gIC8qKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lg6INGH0LjRgdC70L4g0LTQu9GPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0YHRgtGA0L7QutCwIFwiY2hhdFhYWFwiINC00LvRjyDRh9Cw0YLQsCAqL1xyXG4gIGlkOiBzdHJpbmcgfCBudW1iZXJcclxuICAvKiog0JrQvtC70LjRh9C10YHRgtCy0L4g0L3QtdC/0YDQvtGH0LjRgtCw0L3QvdGL0YUg0YHQvtC+0LHRidC10L3QuNC5ICovXHJcbiAgY291bnRlcjogbnVtYmVyXHJcbiAgLyoqINCi0LjQvyDQt9Cw0L/QuNGB0Lg6ICd1c2VyJyDQuNC70LggJ2NoYXQnICovXHJcbiAgdHlwZTogJ3VzZXInIHwgJ2NoYXQnXHJcbiAgLyoqINCe0LHRitC10LrRgiDQsNCy0LDRgtCw0YDQsCAqL1xyXG4gIGF2YXRhcjogaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0QXZhdGFyXHJcbiAgLyoqINCX0LDQs9C+0LvQvtCy0L7Qujog0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuNC70Lgg0L3QsNC30LLQsNC90LjQtSDRh9Cw0YLQsCAqL1xyXG4gIHRpdGxlOiBzdHJpbmdcclxuICAvKiog0J/QvtGB0LvQtdC00L3QtdC1INGB0L7QvtCx0YnQtdC90LjQtSAqL1xyXG4gIG1lc3NhZ2U6IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldE1lc3NhZ2VcclxuICAvKiog0J7QsdGK0LXQutGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0LXRgdC70LggdHlwZSA9PT0gJ3VzZXInICovXHJcbiAgdXNlcj86IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZSB8IHtpZDogMH1cclxufVxyXG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvdHlwaWZpY2F0aW9uL3Jlc3QvaW0vZGlhbG9nL3JlY2VudC9nZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlCWFJlc3RZZXNObyB9IGZyb20gJy4uLy4uLy4uL2Jhc2UveWVzLW5vJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRQYXJhbSB7XHJcbiAgLyoqXHJcbiAgICog0J/RgNC+0L/Rg9GB0LrQsNGC0Ywg0YfQsNGC0Ysg0L7RgtC60YDRi9GC0YvRhSDQu9C40L3QuNC5XHJcbiAgICovXHJcbiAgU0tJUF9PUEVOTElORVM/OiBpQlhSZXN0WWVzTm9cclxuXHJcbiAgLyoqINCf0YDQvtC/0YPRgdC60LDRgtGMINGH0LDRgtGLICovXHJcbiAgU0tJUF9DSEFUPzogaUJYUmVzdFllc05vXHJcblxyXG4gIC8qKiDQn9GA0L7Qv9GD0YHQutCw0YLRjCDQtNC40LDQu9C+0LPQuCDQvtC00LjQvS3QvdCwLdC+0LTQuNC9ICovXHJcbiAgU0tJUF9ESUFMT0c/OiBpQlhSZXN0WWVzTm9cclxuXHJcbiAgLyoqXHJcbiAgICog0J7Qs9GA0LDQvdC40YfQtdC90LjQtSDQstGL0LHQvtGA0LrQuCDQtNC70Y8g0LzQuNC90LjQvNC40LfQsNGG0LjQuCDQv9C10YDQtdC00LDQvdC90YvRhSDQtNCw0L3QvdGL0YUuXHJcbiAgICovXHJcbiAgTEFTVF9VUERBVEU/OiBEYXRlXHJcblxyXG4gIC8qKlxyXG4gICAqINCS0YvQsdC+0YDQutCwINGC0L7Qu9GM0LrQviDRh9Cw0YLQvtCyINC+0YLQutGA0YvRgtGL0YUg0LvQuNC90LjQuVxyXG4gICAqL1xyXG4gIE9OTFlfT1BFTkxJTkVTPzogaUJYUmVzdFllc05vXHJcblxyXG4gIC8qKlxyXG4gICAqINCU0LDRgtCwINC/0YDQtdC00YvQtNGD0YnQtdC5INCy0YvQsdC+0YDQutC4INC00LvRjyDQt9Cw0LPRgNGD0LfQutC4INC40LfQvNC10L3QtdC90LjQuSwg0L/RgNC+0LjQt9C+0YjQtdC00YjQuNGFINCyINGB0L/QuNGB0LrQtSDRgSDRjdGC0L7Qs9C+INCy0YDQtdC80LXQvdC4LlxyXG4gICAqINCS0YvQsdC+0YDQutCwINCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LDQvdC90YvQtSDQvdC1INGB0YLQsNGA0YjQtSA3INC00L3QtdC5LlxyXG4gICAqL1xyXG4gIExBU1RfU1lOQ19EQVRFPzogRGF0ZVxyXG59XHJcblxyXG5cclxuLy8g0J7Qv9C40YHQsNC90LjQtSDQsNCy0LDRgtCw0YDQsCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0LjQu9C4INGH0LDRgtCwXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0QXZhdGFyIHtcclxuICAvKiog0KHRgdGL0LvQutCwINC90LAg0LDQstCw0YLQsNGAICjQtdGB0LvQuCDQv9GD0YHRgtC+IOKAlCDQsNCy0LDRgtCw0YAg0L3QtSDQt9Cw0LTQsNC9KSAqL1xyXG4gIHVybDogc3RyaW5nXHJcbiAgLyoqINCm0LLQtdGCINC00LjQsNC70L7Qs9CwINCyINGE0L7RgNC80LDRgtC1IGhleCAqL1xyXG4gIGNvbG9yOiBzdHJpbmdcclxufVxyXG5cclxuLy8g0J7Qv9C40YHQsNC90LjQtSDQv9C+0YHQu9C10LTQvdC10LPQviDRgdC+0L7QsdGJ0LXQvdC40Y9cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRNZXNzYWdlIHtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHQvtC+0LHRidC10L3QuNGPICovXHJcbiAgaWQ6IHN0cmluZ1xyXG4gIC8qKiDQotC10LrRgdGCINGB0L7QvtCx0YnQtdC90LjRjyAo0LHQtdC3IEJCLdC60L7QtNC+0LIg0Lgg0L/QtdGA0LXQvdC+0YHQvtCyINGB0YLRgNC+0LopICovXHJcbiAgdGV4dDogc3RyaW5nXHJcbiAgLyoqINCf0YDQuNC30L3QsNC6INC90LDQu9C40YfQuNGPINGE0LDQudC70L7QsiAqL1xyXG4gIGZpbGU6IGJvb2xlYW5cclxuICAvKiog0J/RgNC40LfQvdCw0Log0L3QsNC70LjRh9C40Y8g0LLQu9C+0LbQtdC90LjQuSAqL1xyXG4gIGF0dGFjaDogYm9vbGVhblxyXG4gIC8qKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQsNCy0YLQvtGA0LAg0YHQvtC+0LHRidC10L3QuNGPICovXHJcbiAgYXV0aG9yX2lkOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YSBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgaWQ6IG51bWJlclxyXG4gIC8qKiDQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDQtNC10LnRgdGC0LLQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGxhc3RfYWN0aXZpdHlfZGF0ZTogRGF0ZSB8IGZhbHNlXHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQuSDQsNC60YLQuNCy0L3QvtGB0YLQuCDQsiDQvNC+0LHQuNC70YzQvdC+0Lwg0L/RgNC40LvQvtC20LXQvdC40Lgg0LjQu9C4IGZhbHNlICovXHJcbiAgbW9iaWxlX2xhc3RfZGF0ZTogRGF0ZSB8IGZhbHNlXHJcbiAgLyoqINCU0LDRgtCwINC+0LrQvtC90YfQsNC90LjRjyDQvtGC0L/Rg9GB0LrQsCDQuNC70LggZmFsc2UgKi9cclxuICBhYnNlbnQ6IERhdGUgfCBmYWxzZVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhSHR0cCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZXtcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgaWQ6IHN0cmluZ1xyXG4gIC8qKiDQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDQtNC10LnRgdGC0LLQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGxhc3RfYWN0aXZpdHlfZGF0ZTogc3RyaW5nXHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQuSDQsNC60YLQuNCy0L3QvtGB0YLQuCDQsiDQvNC+0LHQuNC70YzQvdC+0Lwg0L/RgNC40LvQvtC20LXQvdC40Lgg0LjQu9C4IGZhbHNlICovXHJcbiAgbW9iaWxlX2xhc3RfZGF0ZTogc3RyaW5nIHwgZmFsc2VcclxuICAvKiog0JTQsNGC0LAg0L7QutC+0L3Rh9Cw0L3QuNGPINC+0YLQv9GD0YHQutCwINC40LvQuCBmYWxzZSAqL1xyXG4gIGFic2VudDogc3RyaW5nIHwgZmFsc2VcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YUJhc2Uge1xyXG4gIC8qKiDQn9C+0LvQvdC+0LUg0LjQvNGPICjQuNC80Y8g0Lgg0YTQsNC80LjQu9C40Y8pICovXHJcbiAgbmFtZTogc3RyaW5nXHJcbiAgLyoqINCY0LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gKi9cclxuICBmaXJzdF9uYW1lOiBzdHJpbmdcclxuICAvKiog0KTQsNC80LjQu9C40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgbGFzdF9uYW1lOiBzdHJpbmdcclxuICAvKiog0JTQvtC70LbQvdC+0YHRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIHdvcmtfcG9zaXRpb246IHN0cmluZ1xyXG4gIC8qKiDQptCy0LXRgiDQsiDRhNC+0YDQvNCw0YLQtSBoZXggKi9cclxuICBjb2xvcjogc3RyaW5nXHJcbiAgLyoqINCh0YHRi9C70LrQsCDQvdCwINCw0LLQsNGC0LDRgCAqL1xyXG4gIGF2YXRhcjogc3RyaW5nXHJcbiAgLyoqINCf0L7QuyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gKE0vRikgKi9cclxuICBnZW5kZXI6IHN0cmluZ1xyXG4gIC8qKiDQlNC10L3RjCDRgNC+0LbQtNC10L3QuNGPINCyINGE0L7RgNC80LDRgtC1IERELU1NINC40LvQuCBmYWxzZSAqL1xyXG4gIGJpcnRoZGF5OiBzdHJpbmcgfCBmYWxzZVxyXG4gIC8qKiDQktC90LXRiNC90LjQuSDRjdC60YHRgtGA0LDQvdC10YIt0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GMICovXHJcbiAgZXh0cmFuZXQ6IGJvb2xlYW5cclxuICAvKiog0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINCR0LjRgtGA0LjQutGBMjQuTmV0d29yayAqL1xyXG4gIG5ldHdvcms6IGJvb2xlYW5cclxuICAvKiog0JHQvtGCICovXHJcbiAgYm90OiBib29sZWFuXHJcbiAgLyoqINCf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQvtGC0LrRgNGL0YLRi9GFINC70LjQvdC40LkgKi9cclxuICBjb25uZWN0b3I6IGJvb2xlYW5cclxuICAvKiog0JrQvtC0INCy0L3QtdGI0L3QtdC5INCw0LLRgtC+0YDQuNC30LDRhtC40LggKi9cclxuICBleHRlcm5hbF9hdXRoX2lkOiBzdHJpbmdcclxuICAvKiog0KHRgtCw0YLRg9GBINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAo0L3QsNC/0YDQuNC80LXRgCwgb25saW5lKSAqL1xyXG4gIHN0YXR1czogc3RyaW5nXHJcbiAgLyoqINCU0LDRgtCwLCDQutC+0LPQtNCwINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQvtGC0L7RiNC10Lsg0L7RgiDQutC+0LzQv9GM0Y7RgtC10YDQsCwg0LjQu9C4IGZhbHNlICovXHJcbiAgaWRsZTogc3RyaW5nIHwgZmFsc2VcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGEgZXh0ZW5kcyBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGFCYXNle1xyXG4gIC8qKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRh9Cw0YLQsCAqL1xyXG4gIGlkOiBudW1iZXJcclxuICAvKiog0JTQsNGC0LAg0YHQvtC30LTQsNC90LjRjyDRh9Cw0YLQsCAqL1xyXG4gIGRhdGVfY3JlYXRlOiBEYXRlXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdENoYXREYXRhSHR0cCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXRDaGF0RGF0YUJhc2V7XHJcbiAgLyoqINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINGH0LDRgtCwICovXHJcbiAgaWQ6IHN0cmluZ1xyXG4gIC8qKiDQlNCw0YLQsCDRgdC+0LfQtNCw0L3QuNGPINGH0LDRgtCwICovXHJcbiAgZGF0ZV9jcmVhdGU6IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0RGF0YUJhc2UgPSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGFCYXNlIHwgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0Q2hhdFVzZXJEYXRhQmFzZVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGFCYXNlIHtcclxuICBiYWNrZ3JvdW5kX2lkOiBudWxsIC8vIFRPRE86INC90LDQudGC0Lgg0YfRgtC+INGC0YPRgiDQvNC+0LbQtdGCINC60YDQvtC80LUgbnVsbCDRgdGC0L7Rj9GC0YxcclxuICB0ZXh0X2ZpZWxkX2VuYWJsZWQ6IHRydWVcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0VXNlckRhdGFCYXNlIHtcclxuICAvKiog0J3QsNC30LLQsNC90LjQtSDRh9Cw0YLQsCAqL1xyXG4gIHRpdGxlOiBzdHJpbmdcclxuICAvKiog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LLQu9Cw0LTQtdC70YzRhtCwINGH0LDRgtCwICovXHJcbiAgb3duZXI6IHN0cmluZ1xyXG4gIC8qKiDQn9GA0LjQt9C90LDQuiDRg9GH0LDRgdGC0LjRjyDQstC90LXRiNC90LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gIGV4dHJhbmV0OiBib29sZWFuXHJcbiAgLyoqINCh0YHRi9C70LrQsCDQvdCwINCw0LLQsNGC0LDRgCDRh9Cw0YLQsCAqL1xyXG4gIGF2YXRhcjogc3RyaW5nXHJcbiAgLyoqINCm0LLQtdGCINGH0LDRgtCwICovXHJcbiAgY29sb3I6IHN0cmluZ1xyXG4gIC8qKiDQotC40L8g0YfQsNGC0LAgKGNoYXQsIG9wZW5saW5lINC4INGCLtC0LikgKi9cclxuICB0eXBlOiBzdHJpbmdcclxuICAvKiog0JLQvdC10YjQvdC40Lkg0LrQvtC0INGH0LDRgtCwIOKAlCDRgtC40L8gKi9cclxuICBlbnRpdHlfdHlwZTogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC5INC60L7QtCDRh9Cw0YLQsCDigJQg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAgKNC80L7QttC10YIg0L7RgtGB0YPRgtGB0YLQstC+0LLQsNGC0YwpICovXHJcbiAgZW50aXR5X2lkPzogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDEpICovXHJcbiAgZW50aXR5X2RhdGFfMTogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDIpICovXHJcbiAgZW50aXR5X2RhdGFfMjogc3RyaW5nXHJcbiAgLyoqINCS0L3QtdGI0L3QuNC1INC00LDQvdC90YvQtSDQtNC70Y8g0YfQsNGC0LAgKDMpICovXHJcbiAgZW50aXR5X2RhdGFfMzogc3RyaW5nXHJcbiAgLyoqINCi0LjQvyDRgdC+0L7QsdGJ0LXQvdC40Lkg0LIg0YfQsNGC0LUgKNC+0LHRi9GH0L3QviBcIkNcIikgKi9cclxuICBtZXNzYWdlX3R5cGU6IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEJhc2V7XHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQs9C+INGB0L7QvtCx0YnQtdC90LjRjyAqL1xyXG4gIGRhdGVfdXBkYXRlOiBEYXRlXHJcbiAgLyoqINCe0LHRitC10LrRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8sINC10YHQu9C4IHR5cGUgPT09ICd1c2VyJyAqL1xyXG4gIHVzZXI/OiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YVxyXG4gIC8qKiDQntCx0YrQtdC60YIg0YfQsNGC0LAsINC10YHQu9C4IHR5cGUgPT09ICdjaGF0JyAqL1xyXG4gIGNoYXQ/OiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0Q2hhdERhdGEgfCBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0VXNlckRhdGFCYXNlXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0SHR0cCBleHRlbmRzIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEJhc2V7XHJcbiAgLyoqINCU0LDRgtCwINC/0L7RgdC70LXQtNC90LXQs9C+INGB0L7QvtCx0YnQtdC90LjRjyAqL1xyXG4gIGRhdGVfdXBkYXRlOiBzdHJpbmdcclxuICAvKipcclxuICAgKiDQntCx0YrQtdC60YIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLCDQtdGB0LvQuCB0eXBlID09PSAndXNlcidcclxuICAgKiDQn9C+0YHQvNC+0YLRgNC10YLRjCDQsdGLINCyINCz0LvQsNC30LAg0YLQvtC80YMg0YfQtdC70L7QstC10LrRgywg0YfRgtC+INGN0YLRgyDRhdGD0LXRgtGDINGB0LTQtdC70LDQu9CwLCDQvdGDINGC0LjQvyB7aWQ6IDB9INGN0YLQviDQsNGF0YPQuVxyXG4gICAqL1xyXG4gIHVzZXI/OiBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRVc2VyRGF0YUh0dHAgfCB7aWQ6IDB9XHJcbiAgLyoqINCe0LHRitC10LrRgiDRh9Cw0YLQsCwg0LXRgdC70LggdHlwZSA9PT0gJ2NoYXQnICovXHJcbiAgY2hhdD86IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldENoYXRDaGF0RGF0YUh0dHAgfCBpQlhSZXN0SW1EaWFsb2dSZWNlbnRHZXRDaGF0VXNlckRhdGFCYXNlXHJcbn1cclxuXHJcbi8vINCj0L3QuNCy0LXRgNGB0LDQu9GM0L3QsNGPINC30LDQv9C40YHRjCDQsiDRgdC/0LjRgdC60LUgKNC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQuNC70Lgg0YfQsNGCKVxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldEJhc2Uge1xyXG4gIC8qKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lg6INGH0LjRgdC70L4g0LTQu9GPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0YHRgtGA0L7QutCwIFwiY2hhdFhYWFwiINC00LvRjyDRh9Cw0YLQsCAqL1xyXG4gIGlkOiBzdHJpbmcgfCBudW1iZXJcclxuICAvKiog0JrQvtC70LjRh9C10YHRgtCy0L4g0L3QtdC/0YDQvtGH0LjRgtCw0L3QvdGL0YUg0YHQvtC+0LHRidC10L3QuNC5ICovXHJcbiAgY291bnRlcjogbnVtYmVyXHJcbiAgLyoqINCi0LjQvyDQt9Cw0L/QuNGB0Lg6ICd1c2VyJyDQuNC70LggJ2NoYXQnICovXHJcbiAgdHlwZTogJ3VzZXInIHwgJ2NoYXQnXHJcbiAgLyoqINCe0LHRitC10LrRgiDQsNCy0LDRgtCw0YDQsCAqL1xyXG4gIGF2YXRhcjogaUJYUmVzdEltRGlhbG9nUmVjZW50R2V0QXZhdGFyXHJcbiAgLyoqINCX0LDQs9C+0LvQvtCy0L7Qujog0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuNC70Lgg0L3QsNC30LLQsNC90LjQtSDRh9Cw0YLQsCAqL1xyXG4gIHRpdGxlOiBzdHJpbmdcclxuICAvKiog0J/QvtGB0LvQtdC00L3QtdC1INGB0L7QvtCx0YnQtdC90LjQtSAqL1xyXG4gIG1lc3NhZ2U6IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldE1lc3NhZ2VcclxuICAvKiog0J7QsdGK0LXQutGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0LXRgdC70LggdHlwZSA9PT0gJ3VzZXInICovXHJcbiAgdXNlcj86IGlCWFJlc3RJbURpYWxvZ1JlY2VudEdldFVzZXJEYXRhQmFzZSB8IHtpZDogMH1cclxufVxyXG4iXX0=
|
package/fesm2022/bx-rest.mjs
CHANGED
|
@@ -7,6 +7,7 @@ import flatten from 'just-flatten-it';
|
|
|
7
7
|
import * as qs from 'qs';
|
|
8
8
|
import values from 'just-values';
|
|
9
9
|
import camelCase from 'just-camel-case';
|
|
10
|
+
import { __decorate } from 'tslib';
|
|
10
11
|
|
|
11
12
|
const DEFAULT_BX_REST_SETTINGS = {
|
|
12
13
|
auth: {
|
|
@@ -79,7 +80,12 @@ class CookiesServices {
|
|
|
79
80
|
}
|
|
80
81
|
}
|
|
81
82
|
|
|
82
|
-
|
|
83
|
+
/**
|
|
84
|
+
* Преобразует значение в строку
|
|
85
|
+
*
|
|
86
|
+
* @param val
|
|
87
|
+
* @param throwError
|
|
88
|
+
*/
|
|
83
89
|
function toStr(val, throwError = false) {
|
|
84
90
|
if (val === null || val === undefined) {
|
|
85
91
|
if (throwError) {
|
|
@@ -89,18 +95,49 @@ function toStr(val, throwError = false) {
|
|
|
89
95
|
}
|
|
90
96
|
return String(val);
|
|
91
97
|
}
|
|
92
|
-
|
|
98
|
+
/**
|
|
99
|
+
* Преобразует значение в число
|
|
100
|
+
*/
|
|
93
101
|
function toNum(val, throwError = true, defValue = 0) {
|
|
94
102
|
const result = Number(val);
|
|
95
103
|
if (isNaN(result)) {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
104
|
+
const error = new ToNumError(val);
|
|
105
|
+
if (throwError)
|
|
106
|
+
throw error;
|
|
107
|
+
// Если ошибка не пробрасывается — просто логируем
|
|
108
|
+
console.error(error.toString());
|
|
99
109
|
return defValue;
|
|
100
110
|
}
|
|
101
111
|
return result;
|
|
102
112
|
}
|
|
103
|
-
|
|
113
|
+
/**
|
|
114
|
+
* Кастомный тип ошибки для числовых преобразований
|
|
115
|
+
*/
|
|
116
|
+
class ToNumError extends Error {
|
|
117
|
+
constructor(value) {
|
|
118
|
+
const valueType = typeof value;
|
|
119
|
+
const formattedValue = valueType === 'object' ? JSON.stringify(value) : String(value);
|
|
120
|
+
const message = `Invalid value passed to toNum(): ${formattedValue} (type: ${valueType})`;
|
|
121
|
+
super(message);
|
|
122
|
+
this.value = value;
|
|
123
|
+
this.name = 'ToNumError';
|
|
124
|
+
// сохраняем стек вызова (отфильтровав сам конструктор)
|
|
125
|
+
if (this.stack) {
|
|
126
|
+
const stackLines = this.stack.split('\n');
|
|
127
|
+
// Удаляем строку конструктора (чтобы стек начинался с места вызова toNum)
|
|
128
|
+
this.stack = [stackLines[0], ...stackLines.slice(2)].join('\n');
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
toString() {
|
|
132
|
+
return [
|
|
133
|
+
`❌ [${this.name}] ${this.message}`,
|
|
134
|
+
this.stack ? ` Stack trace:\n${this.stack}` : '',
|
|
135
|
+
].join('\n');
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Преобразует значение в дату
|
|
140
|
+
*/
|
|
104
141
|
function toDate(val, format, opt, throwError = true) {
|
|
105
142
|
if (val instanceof Date) {
|
|
106
143
|
return val;
|
|
@@ -125,7 +162,12 @@ function toDate(val, format, opt, throwError = true) {
|
|
|
125
162
|
}
|
|
126
163
|
return new Date();
|
|
127
164
|
}
|
|
128
|
-
|
|
165
|
+
/**
|
|
166
|
+
* Преобразует дату в строку с учетом временной зоны
|
|
167
|
+
*
|
|
168
|
+
* @param date
|
|
169
|
+
* @param throwError
|
|
170
|
+
*/
|
|
129
171
|
function toISOStringWithTimezone(date, throwError = true) {
|
|
130
172
|
if (!(date instanceof Date)) {
|
|
131
173
|
if (throwError)
|
|
@@ -144,7 +186,12 @@ function toISOStringWithTimezone(date, throwError = true) {
|
|
|
144
186
|
diff + pad(tzOffset / 60) +
|
|
145
187
|
':' + pad(tzOffset % 60);
|
|
146
188
|
}
|
|
147
|
-
|
|
189
|
+
/**
|
|
190
|
+
* Преобразует значение в булево значение
|
|
191
|
+
*
|
|
192
|
+
* @param val
|
|
193
|
+
* @param throwError
|
|
194
|
+
*/
|
|
148
195
|
function toBool(val, throwError = true) {
|
|
149
196
|
switch (typeof val) {
|
|
150
197
|
case 'string':
|
|
@@ -164,7 +211,11 @@ function toBool(val, throwError = true) {
|
|
|
164
211
|
return Boolean(val);
|
|
165
212
|
}
|
|
166
213
|
}
|
|
167
|
-
|
|
214
|
+
/**
|
|
215
|
+
* Преобразует булево значение в 'Y' или 'N'
|
|
216
|
+
*
|
|
217
|
+
* @param val
|
|
218
|
+
*/
|
|
168
219
|
function toBXYorN(val) {
|
|
169
220
|
return val ? 'Y' : 'N';
|
|
170
221
|
}
|
|
@@ -176,7 +227,11 @@ function getBaseUrlHttps(url, component = false) {
|
|
|
176
227
|
return encodeURI('https://' + cropUrl(url) + '/');
|
|
177
228
|
}
|
|
178
229
|
}
|
|
179
|
-
|
|
230
|
+
/**
|
|
231
|
+
* Обрезает URL (удаляет протокол)
|
|
232
|
+
*
|
|
233
|
+
* @param url
|
|
234
|
+
*/
|
|
180
235
|
function cropUrl(url) {
|
|
181
236
|
url = url ? url.replace('https://', '') : '';
|
|
182
237
|
url = url ? url.replace('http://', '') : '';
|
|
@@ -184,7 +239,11 @@ function cropUrl(url) {
|
|
|
184
239
|
url = url ? url.replace('http:', '') : '';
|
|
185
240
|
return url;
|
|
186
241
|
}
|
|
187
|
-
|
|
242
|
+
/**
|
|
243
|
+
* Преобразует файл в base64
|
|
244
|
+
*
|
|
245
|
+
* @param file
|
|
246
|
+
*/
|
|
188
247
|
function getBase64File(file) {
|
|
189
248
|
return new Promise((resolve, reject) => {
|
|
190
249
|
const reader = new FileReader();
|
|
@@ -193,7 +252,11 @@ function getBase64File(file) {
|
|
|
193
252
|
reader.onerror = error => reject(error);
|
|
194
253
|
});
|
|
195
254
|
}
|
|
196
|
-
|
|
255
|
+
/**
|
|
256
|
+
* Получить файл в формате base64 с разбивкой на заголовок и данные
|
|
257
|
+
*
|
|
258
|
+
* @param file
|
|
259
|
+
*/
|
|
197
260
|
async function getBase64FileLikeStr(file) {
|
|
198
261
|
const result = await getBase64File(file);
|
|
199
262
|
if (typeof result === 'string') {
|
|
@@ -223,6 +286,7 @@ function prepareBaseAddress(url, add = '') {
|
|
|
223
286
|
|
|
224
287
|
var base = /*#__PURE__*/Object.freeze({
|
|
225
288
|
__proto__: null,
|
|
289
|
+
ToNumError: ToNumError,
|
|
226
290
|
cropUrl: cropUrl,
|
|
227
291
|
getBase64File: getBase64File,
|
|
228
292
|
getBase64FileLikeStr: getBase64FileLikeStr,
|
|
@@ -5538,6 +5602,40 @@ class BXRestNavvyImDialog {
|
|
|
5538
5602
|
}
|
|
5539
5603
|
}
|
|
5540
5604
|
|
|
5605
|
+
function CatchError(options) {
|
|
5606
|
+
return function (target, propertyKey, descriptor) {
|
|
5607
|
+
const original = descriptor.value;
|
|
5608
|
+
descriptor.value = function (...args) {
|
|
5609
|
+
try {
|
|
5610
|
+
return original.apply(this, args);
|
|
5611
|
+
}
|
|
5612
|
+
catch (err) {
|
|
5613
|
+
const errorInfo = {
|
|
5614
|
+
message: `❌ Error in ${target.constructor.name}.${propertyKey}`,
|
|
5615
|
+
args,
|
|
5616
|
+
error: err instanceof Error ? err.message : String(err),
|
|
5617
|
+
stack: err instanceof Error ? err.stack : new Error().stack,
|
|
5618
|
+
};
|
|
5619
|
+
console.error(formatError(errorInfo));
|
|
5620
|
+
if (options?.rethrow)
|
|
5621
|
+
throw err;
|
|
5622
|
+
return options?.defaultValue;
|
|
5623
|
+
}
|
|
5624
|
+
};
|
|
5625
|
+
return descriptor;
|
|
5626
|
+
};
|
|
5627
|
+
}
|
|
5628
|
+
// Общая функция форматирования
|
|
5629
|
+
function formatError(info) {
|
|
5630
|
+
const stackLines = info.stack?.split('\n').slice(2).join('\n');
|
|
5631
|
+
return [
|
|
5632
|
+
info.message,
|
|
5633
|
+
info.args ? ` • args: ${JSON.stringify(info.args)}` : '',
|
|
5634
|
+
info.error ? ` • error: ${info.error}` : '',
|
|
5635
|
+
` • stack trace:\n${stackLines}`,
|
|
5636
|
+
].join('\n');
|
|
5637
|
+
}
|
|
5638
|
+
|
|
5541
5639
|
class BXRestMapImRecent {
|
|
5542
5640
|
static get(value) {
|
|
5543
5641
|
return value
|
|
@@ -5557,7 +5655,7 @@ class BXRestMapImRecent {
|
|
|
5557
5655
|
}
|
|
5558
5656
|
}
|
|
5559
5657
|
: undefined,
|
|
5560
|
-
chat: i.chat
|
|
5658
|
+
chat: i.chat && BXRestMapImRecent.isIBXRestImDialogRecentGetChatChatDataHttp(i.chat)
|
|
5561
5659
|
? {
|
|
5562
5660
|
...i.chat,
|
|
5563
5661
|
...{
|
|
@@ -5565,7 +5663,7 @@ class BXRestMapImRecent {
|
|
|
5565
5663
|
date_create: toDate(i.chat.date_create)
|
|
5566
5664
|
}
|
|
5567
5665
|
}
|
|
5568
|
-
:
|
|
5666
|
+
: i.chat,
|
|
5569
5667
|
}
|
|
5570
5668
|
}))
|
|
5571
5669
|
: undefined;
|
|
@@ -5597,7 +5695,16 @@ class BXRestMapImRecent {
|
|
|
5597
5695
|
}
|
|
5598
5696
|
: undefined;
|
|
5599
5697
|
}
|
|
5698
|
+
static isIBXRestImDialogRecentGetChatChatDataHttp(item) {
|
|
5699
|
+
return 'id' in item;
|
|
5700
|
+
}
|
|
5600
5701
|
}
|
|
5702
|
+
__decorate([
|
|
5703
|
+
CatchError({ rethrow: true })
|
|
5704
|
+
], BXRestMapImRecent, "get", null);
|
|
5705
|
+
__decorate([
|
|
5706
|
+
CatchError({ rethrow: true })
|
|
5707
|
+
], BXRestMapImRecent, "list", null);
|
|
5601
5708
|
|
|
5602
5709
|
class BXRestNavvyImRecent {
|
|
5603
5710
|
constructor() {
|