@rangertechnologies/ngnxt 2.1.162 → 2.1.164
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/environments/version.mjs +2 -2
- package/esm2022/lib/components/custom-rich-text/custom-rich-text.component.mjs +2 -2
- package/esm2022/lib/components/custom-text-area/custom-text-area.component.mjs +2 -2
- package/esm2022/lib/components/file-upload/file-upload.component.mjs +9 -5
- package/fesm2022/rangertechnologies-ngnxt.mjs +11 -8
- package/fesm2022/rangertechnologies-ngnxt.mjs.map +1 -1
- package/package.json +1 -1
- package/rangertechnologies-ngnxt-2.1.164.tgz +0 -0
- package/rangertechnologies-ngnxt-2.1.162.tgz +0 -0
|
@@ -9,7 +9,7 @@ export const VERSION = {
|
|
|
9
9
|
"semver": null,
|
|
10
10
|
"suffix": "05a52cb-dirty",
|
|
11
11
|
"semverString": null,
|
|
12
|
-
"version": "2.1.
|
|
12
|
+
"version": "2.1.164"
|
|
13
13
|
};
|
|
14
14
|
/* tslint:enable */
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL254dC1hcHAvc3JjL2Vudmlyb25tZW50cy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJFQUEyRTtBQUMzRSxvQkFBb0I7QUFDcEIsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ25CLE9BQU8sRUFBRSxJQUFJO0lBQ2IsS0FBSyxFQUFFLGVBQWU7SUFDdEIsTUFBTSxFQUFFLFNBQVM7SUFDakIsVUFBVSxFQUFFLElBQUk7SUFDaEIsS0FBSyxFQUFFLElBQUk7SUFDWCxRQUFRLEVBQUUsSUFBSTtJQUNkLFFBQVEsRUFBRSxlQUFlO0lBQ3pCLGNBQWMsRUFBRSxJQUFJO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0NBQ3ZCLENBQUM7QUFDRixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJTVBPUlRBTlQ6IFRISVMgRklMRSBJUyBBVVRPIEdFTkVSQVRFRCEgRE8gTk9UIE1BTlVBTExZIEVESVQgT1IgQ0hFQ0tJTiFcbi8qIHRzbGludDpkaXNhYmxlICovXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IHtcbiAgICBcImRpcnR5XCI6IHRydWUsXG4gICAgXCJyYXdcIjogXCIwNWE1MmNiLWRpcnR5XCIsXG4gICAgXCJoYXNoXCI6IFwiMDVhNTJjYlwiLFxuICAgIFwiZGlzdGFuY2VcIjogbnVsbCxcbiAgICBcInRhZ1wiOiBudWxsLFxuICAgIFwic2VtdmVyXCI6IG51bGwsXG4gICAgXCJzdWZmaXhcIjogXCIwNWE1MmNiLWRpcnR5XCIsXG4gICAgXCJzZW12ZXJTdHJpbmdcIjogbnVsbCxcbiAgICBcInZlcnNpb25cIjogXCIyLjEuMTY0XCJcbn07XG4vKiB0c2xpbnQ6ZW5hYmxlICovXG4iXX0=
|
|
@@ -104,7 +104,7 @@ export class CustomRichTextComponent {
|
|
|
104
104
|
// Separated dependency initialization for better organization
|
|
105
105
|
initializeDependency() {
|
|
106
106
|
// AP-25MAR25 Parse subText if it's not already an object
|
|
107
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
107
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
108
108
|
if (this.question?.subText) {
|
|
109
109
|
try {
|
|
110
110
|
const dependencyObj = this.question.subText;
|
|
@@ -179,4 +179,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
179
179
|
}], maxLength: [{
|
|
180
180
|
type: Input
|
|
181
181
|
}] } });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJpY2gtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ueHQtYXBwL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b20tcmljaC10ZXh0L2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLXJpY2gtdGV4dC9jdXN0b20tcmljaC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdGQUF3RjtBQUN4RixrQkFBa0I7QUFDbEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBcUMsTUFBTSxlQUFlLENBQUM7QUFLbEgsT0FBTyxFQUFFLG9CQUFvQixFQUFnQixNQUFNLFdBQVcsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxZQUFZLE1BQU0scUJBQXFCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFFL0MsZUFBZTtBQUNmLHVGQUF1RjtBQUN2RixNQUFNLGFBQWEsR0FBRyxDQUFDLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxjQUFjO0lBQy9GLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsbUJBQW1CO0lBQ2hFLFVBQVUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxXQUFXO0lBQ2pFLFFBQVEsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLHdC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Q0FBQyxHQUFHLENBQUMsOENBQThDLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVDLDRDQUE0QztJQUM1QyxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQzt3R0F4RlUsdUJBQXVCOzRGQUF2Qix1QkFBdUIsbVRDM0ZwQyx3WEFhTSxvZUR1RVEsb0JBQW9CLHdEQUFFLFdBQVcsOFZBQUUsWUFBWTs7NEZBT2hELHVCQUF1QjtrQkFSbkMsU0FBUzs4QkFDRyxDQUFDLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUMsWUFDaEQsc0JBQXNCLGNBQ3BCLElBQUk7NEdBTVQsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDaGFuZ2VzIGNvbW1lbnRlZCBvdXQgZHVlIHRvIEFuZ3VsYXIgdmVyc2lvbiBjb21wYXRpYmlsaXR5OyB3aWxsIGFwcGx5IGFmdGVyIHVwZ3JhZGUuXG4vLyAvLyBSUyAwNkpBTjIwMjVcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIE9uRGVzdHJveSwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi9pMThuLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDaGFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2hhbmdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVwZW5kZW5jeU1ldGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2RlcGVuZGVuY3lNZXRhJztcbmltcG9ydCB7IFF1aWxsRWRpdG9yQ29tcG9uZW50LCBRdWlsbE1vZHVsZXMgfSBmcm9tICduZ3gtcXVpbGwnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCBRdWlsbCBmcm9tICdxdWlsbCc7XG5pbXBvcnQgeyBNZW50aW9uIH0gZnJvbSAncXVpbGwtbWVudGlvbic7XG5pbXBvcnQgSW1hZ2VSZXNpem9yIGZyb20gJ3F1aWxsLWltYWdlLXJlc2l6b3InXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vLyBSUyAxN0pBTjIwMjVcbi8vIEFuIGFycmF5IGZvbnRGYW1pbHlBcnIgaXMgY3JlYXRlZCBjb250YWluaW5nIGEgbGlzdCBvZiBmb250IGZhbWlseSBuYW1lcyBhcyBzdHJpbmdzLlxuY29uc3QgZm9udEZhbWlseUFyciA9IFtcIlJvYm90b1wiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJBcmlhbFwiLCBcIlZlcmRhbmFcIiwgXCJUYWhvbWFcIiwgXCJUcmVidWNoZXQgTVNcIixcbiAgXCJHZW9yZ2lhXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFwiQ291cmllciBOZXdcIiwgXCJQYWxhdGlubyBMaW5vdHlwZVwiLFxuICBcIlNlZ29lIFVJXCIsIFwiQ2FsaWJyaVwiLCBcIkNhbGlicmkgTGlnaHRcIiwgXCJTYW5zLVNlcmlmXCIsIFwiSGVsdmV0aWNhXCIsXG4gIFwiSW1wYWN0XCIsIFwiR2FyYW1vbmRcIiwgXCJDb21pYyBTYW5zIE1TXCIsIFwiTHVjaWRhIENvbnNvbGVcIiwgXCJGcmFua2xpbiBHb3RoaWMgTWVkaXVtXCJdO1xuXG4vLyBSZWdpc3RlciBRdWlsbCBtb2R1bGVzXG5RdWlsbC5yZWdpc3RlcignbW9kdWxlcy9tZW50aW9uJywgTWVudGlvbik7XG5JbWFnZVJlc2l6b3IuUXVpbGwgPSBRdWlsbFxuUXVpbGwucmVnaXN0ZXIoJ21vZHVsZXMvaW1hZ2VSZXNpem9yJywgSW1hZ2VSZXNpem9yKVxuXG4vLyBSUyAxN0pBTjIwMjVcbi8vVGhlIFF1aWxsIGZvbnQgc3R5bGUgYXR0cmlidXRvciBpcyBpbXBvcnRlZCBhbmQgaXQgaXMgcmVnaXN0ZXJlZCB3aXRoIFF1aWxcbmxldCBmb250czogYW55ID0gUXVpbGwuaW1wb3J0KFwiYXR0cmlidXRvcnMvc3R5bGUvZm9udFwiKTtcbmZvbnRzLndoaXRlbGlzdCA9IGZvbnRGYW1pbHlBcnI7XG5RdWlsbC5yZWdpc3Rlcihmb250cywgdHJ1ZSk7XG5cbmV4cG9ydCBjb25zdCBRdWlsbENvbmZpZ3VyYXRpb246IFF1aWxsTW9kdWxlcyA9IHtcbiAgICBpbWFnZVJlc2l6b3I6IHt9LFxuICB0b29sYmFyOiB7XG4gICAgY29udGFpbmVyOiBbXG4gICAgICBbeyAnZm9udCc6IGZvbnRGYW1pbHlBcnIgfV0sICAvL1JTIDE3SkFOMjAyNSAgQWRkZWQgZm9udCBmYW1pbHkgZHJvcGRvd25cbiAgICAgIFsnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJywgJ3N0cmlrZSddLFxuICAgICAgWydibG9ja3F1b3RlJywgJ2NvZGUtYmxvY2snXSxcbiAgICAgIFt7IGhlYWRlcjogWzEsIDIsIDMsIDQsIDUsIDYsIGZhbHNlXSB9XSxcbiAgICAgIFt7IGxpc3Q6ICdvcmRlcmVkJyB9LCB7IGxpc3Q6ICdidWxsZXQnIH1dLFxuICAgICAgW3sgY29sb3I6IFtdIH0sIHsgYmFja2dyb3VuZDogW10gfV0sXG4gICAgICBbeyBhbGlnbjogW10gfV0sXG4gICAgICBbJ2xpbmsnLCAnaW1hZ2UnLCAndmlkZW8nXSxcbiAgICAgIFsnZm9ybXVsYSddLFxuICAgICAgWydjbGVhbiddLFxuICAgIF0sXG4gIH0sXG4gIG1lbnRpb246IHtcbiAgICBhbGxvd2VkQ2hhcnM6IC9eW0EtWmEtelxcc8OFw4TDlsOlw6TDtl0qJC8sXG4gICAgbWVudGlvbkRlbm90YXRpb25DaGFyczogWydAJywgJyMnXSxcbiAgICBzb3VyY2U6IGZ1bmN0aW9uIChzZWFyY2hUZXJtOiBzdHJpbmcsIHJlbmRlckxpc3Q6IGFueSkge1xuICAgICAgY29uc3QgdmFsdWVzID0gW1xuICAgICAgICB7IGlkOiAxLCB2YWx1ZTogJ1VzZXIgMScgfSxcbiAgICAgICAgeyBpZDogMiwgdmFsdWU6ICdVc2VyIDInIH0sXG4gICAgICBdO1xuXG4gICAgICBpZiAoc2VhcmNoVGVybS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmVuZGVyTGlzdCh2YWx1ZXMsIHNlYXJjaFRlcm0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHZhbHVlcy5maWx0ZXIoKGl0ZW0pID0+XG4gICAgICAgICAgaXRlbS52YWx1ZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSlcbiAgICAgICAgKTtcbiAgICAgICAgcmVuZGVyTGlzdChtYXRjaGVzLCBzZWFyY2hUZXJtKTtcbiAgICAgIH1cbiAgICB9LFxuICB9LFxufTtcblxuLy8gcmVzaXplOiB7XG4vLyAgICAgZGlzcGxheVNpemU6IHRydWUsXG4vLyAgICAgbW9kdWxlczogWydSZXNpemUnLCAnRGlzcGxheVNpemUnLCAnVG9vbGJhciddLFxuLy8gICAgIHRvb2xiYXJTdHlsZXM6IHtcbi8vICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAnYmxhY2snLFxuLy8gICAgICAgICBib3JkZXI6ICdub25lJyxcbi8vICAgICAgICAgY29sb3I6ICd3aGl0ZSdcbi8vICAgICB9LFxuLy8gICAgIGhhbmRsZVN0eWxlczoge1xuLy8gICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdibGFjaycsXG4vLyAgICAgICAgIGJvcmRlcjogJ25vbmUnLFxuLy8gICAgICAgICBjb2xvcjogJ3doaXRlJ1xuLy8gICAgIH1cbi8vIH0sXG5AQ29tcG9uZW50KHtcbiAgICBpbXBvcnRzOiBbUXVpbGxFZGl0b3JDb21wb25lbnQsIEZvcm1zTW9kdWxlICxDb21tb25Nb2R1bGVdLFxuICAgIHNlbGVjdG9yOiAnYXBwLWN1c3RvbS1yaWNoLXRleHQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50LmNzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgQ3VzdG9tUmljaFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHZhbHVlOiBhbnkgfCBhbnlbXSA9ICcnO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBlcnJvcjogYW55O1xuICBASW5wdXQoKSBxdWVzdGlvbjogYW55O1xuICBASW5wdXQoKSByb3dzOk51bWJlcjsgLy9UaGUgbnVtYmVyIG9mIHZpc2libGUgdGV4dCBsaW5lcyBmb3IgdGhlIGNvbnRyb2xcbiAgQElucHV0KCkgcmVhZE9ubHkgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHRleHRWYWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQElucHV0KCkgbWluTGVuZ3RoPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXI7XG4gIC8vIEBJbnB1dCgpIHZhbHVlOiBhbnkgPSAnJzsgLy8gU2V0IGRlZmF1bHQgdmFsdWVcblxuICBxdWlsbENvbmZpZ3VyYXRpb246IFF1aWxsTW9kdWxlcyA9IFF1aWxsQ29uZmlndXJhdGlvbjtcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZVNlcnZpY2U6IENoYW5nZVNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQoJycpO1xuXG4gICAgfVxuICAgIHRoaXMuaW5pdGlhbGl6ZURlcGVuZGVuY3koKTtcbiAgfVxuXG4gIC8vIFNlcGFyYXRlZCBkZXBlbmRlbmN5IGluaXRpYWxpemF0aW9uIGZvciBiZXR0ZXIgb3JnYW5pemF0aW9uXG4gIHByaXZhdGUgaW5pdGlhbGl6ZURlcGVuZGVuY3koKTogdm9pZCB7XG4gICAgLy8gQVAtMjVNQVIyNSBQYXJzZSBzdWJUZXh0IGlmIGl0J3Mgbm90IGFscmVhZHkgYW4gb2JqZWN0XG4gICAgdGhpcy5xdWVzdGlvblsnc3ViVGV4dCddID0gdHlwZW9mIHRoaXMucXVlc3Rpb24/LnN1YlRleHQgPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA6IEpTT04ucGFyc2UodGhpcy5xdWVzdGlvblsnc3ViVGV4dCddIHx8IHt9KTtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uc3ViVGV4dCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZGVwZW5kZW5jeU9iajogRGVwZW5kZW5jeU1ldGEgPSB0aGlzLnF1ZXN0aW9uLnN1YlRleHQ7XG4gICAgICAgICAgICBpZiAoZGVwZW5kZW5jeU9iaj8uc291cmNlUXVlc3Rpb25JZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5jaGFuZ2VTZXJ2aWNlLmNoYW5nZUFubm91bmNlZCQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlVmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGFuZ2VWYWx1ZSAmJiBjaGFuZ2VWYWx1ZS52YWx1ZU9iaiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZVZhbHVlLmZyb21RdWVzdGlvbklkID09PSBkZXBlbmRlbmN5T2JqLnNvdXJjZVF1ZXN0aW9uSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gY2hhbmdlVmFsdWUudmFsdWVPYmpbZGVwZW5kZW5jeU9iai52YWx1ZUZpZWxkXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRleHRWYWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VTZXJ2aWNlLmNvbmZpcm1DaGFuZ2UoZGVwZW5kZW5jeU9iai5zb3VyY2VRdWVzdGlvbklkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBwYXJzaW5nIHN1YlRleHQ6JywgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIG9uRWRpdG9yQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbi8vICAgaWYgKGV2ZW50ICYmIGV2ZW50Lmh0bWwgIT09IHVuZGVmaW5lZCkge1xuLy8gICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQoZXZlbnQuaHRtbCk7XG4vLyAgIH0gZWxzZSB7XG4vLyAgICAgdGhpcy50ZXh0VmFsdWVDaGFuZ2UuZW1pdCgnJyk7XG4vLyAgIH1cbi8vIH1cbi8vIG9uRWRpdG9yQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbi8vICAgY29uc29sZS5sb2coJ1R5cGluZyBkZXRlY3RlZC4uLicsIGV2ZW50Lmh0bWwpO1xuXG4vLyAgIGlmICh0aGlzLnR5cGluZ1RpbWVyKSB7XG4vLyAgICAgY2xlYXJUaW1lb3V0KHRoaXMudHlwaW5nVGltZXIpOyAvLyBDbGVhciBwcmV2aW91cyB0aW1lclxuLy8gICB9XG4vLyAgIHRoaXMudHlwaW5nVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbi8vICAgICBjb25zb2xlLmxvZygnRGVib3VuY2VkIGV2ZW50IGZpcmVkOicsIGV2ZW50Lmh0bWwpO1xuXG4vLyAgICAgY29uc3QgbmV3VmFsdWUgPSBldmVudD8uaHRtbCA/IGV2ZW50Lmh0bWwgOiAnJzsgLy8gRW5zdXJlIGVtcHR5IHZhbHVlcyBhcmUgaGFuZGxlZFxuLy8gICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuLy8gICB9LCB0aGlzLmRvbmVUeXBpbmdJbnRlcnZhbCk7XG4vLyB9XG5cbi8vIFJTIDI4SkFOMjAxNVxub25FZGl0b3JGb2N1c091dCgpOiB2b2lkIHtcbiAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy52YWx1ZSB8fCAnJztcbiAgdGhpcy50ZXh0VmFsdWVDaGFuZ2UuZW1pdChjdXJyZW50VmFsdWUpO1xuICBjb25zb2xlLmxvZygnUmljaCBUZXh0IEVkaXRvciBGb2N1cyBPdXQgLSBFbWl0dGluZyBWYWx1ZTonLCBjdXJyZW50VmFsdWUpO1xufVxuXG4gIC8vIEFkZGVkIG5nT25EZXN0cm95IHRvIHByZXZlbnQgbWVtb3J5IGxlYWtzXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cblxuXG4iLCI8IS0tIFJTIDA2SkFOMjUgLS0+XG48ZGl2IGNsYXNzPVwicmljaC10ZXh0LWNvbnRhaW5lclwiPlxuICA8cXVpbGwtZWRpdG9yXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICBbbW9kdWxlc109XCJxdWlsbENvbmZpZ3VyYXRpb25cIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgKGZvY3Vzb3V0KT1cIm9uRWRpdG9yRm9jdXNPdXQoKVwiXG4gICAgW2NsYXNzLmVycm9yXT1cImVycm9yXCI+XG4gIDwvcXVpbGwtZWRpdG9yPlxuICA8ZGl2ICpuZ0lmPVwiZXJyb3JcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cbiAgICB7eyBlcnJvciB9fVxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXJpY2gtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ueHQtYXBwL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b20tcmljaC10ZXh0L2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLXJpY2gtdGV4dC9jdXN0b20tcmljaC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdGQUF3RjtBQUN4RixrQkFBa0I7QUFDbEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBcUMsTUFBTSxlQUFlLENBQUM7QUFLbEgsT0FBTyxFQUFFLG9CQUFvQixFQUFnQixNQUFNLFdBQVcsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxZQUFZLE1BQU0scUJBQXFCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFFL0MsZUFBZTtBQUNmLHVGQUF1RjtBQUN2RixNQUFNLGFBQWEsR0FBRyxDQUFDLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxjQUFjO0lBQy9GLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsbUJBQW1CO0lBQ2hFLFVBQVUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxXQUFXO0lBQ2pFLFFBQVEsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLHdCQUF3QixDQUFDLENBQUM7QUFFckYseUJBQXlCO0FBQ3pCLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDM0MsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7QUFDMUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxZQUFZLENBQUMsQ0FBQTtBQUVwRCxlQUFlO0FBQ2YsNEVBQTRFO0FBQzVFLElBQUksS0FBSyxHQUFRLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztBQUN4RCxLQUFLLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQztBQUNoQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztBQUU1QixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBaUI7SUFDNUMsWUFBWSxFQUFFLEVBQUU7SUFDbEIsT0FBTyxFQUFFO1FBQ1AsU0FBUyxFQUFFO1lBQ1QsQ0FBQyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsQ0FBQyxFQUFHLDBDQUEwQztZQUN4RSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQztZQUN6QyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7WUFDNUIsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkMsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUN6QyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ25DLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDZixDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1lBQzFCLENBQUMsU0FBUyxDQUFDO1lBQ1gsQ0FBQyxPQUFPLENBQUM7U0FDVjtLQUNGO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsWUFBWSxFQUFFLHFCQUFxQjtRQUNuQyxzQkFBc0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDbEMsTUFBTSxFQUFFLFVBQVUsVUFBa0IsRUFBRSxVQUFlO1lBQ25ELE1BQU0sTUFBTSxHQUFHO2dCQUNiLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFO2dCQUMxQixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTthQUMzQixDQUFDO1lBRUYsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUM1QixVQUFVLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQzVELENBQUM7Z0JBQ0YsVUFBVSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0gsQ0FBQztLQUNGO0NBQ0YsQ0FBQztBQUVGLFlBQVk7QUFDWix5QkFBeUI7QUFDekIscURBQXFEO0FBQ3JELHVCQUF1QjtBQUN2QixvQ0FBb0M7QUFDcEMsMEJBQTBCO0FBQzFCLHlCQUF5QjtBQUN6QixTQUFTO0FBQ1Qsc0JBQXNCO0FBQ3RCLG9DQUFvQztBQUNwQywwQkFBMEI7QUFDMUIseUJBQXlCO0FBQ3pCLFFBQVE7QUFDUixLQUFLO0FBU0wsTUFBTSxPQUFPLHVCQUF1QjtJQWdCekI7SUFDQztJQWhCRCxLQUFLLEdBQWdCLEVBQUUsQ0FBQztJQUN4QixXQUFXLENBQVM7SUFDcEIsS0FBSyxDQUFNO0lBQ1gsUUFBUSxDQUFNO0lBQ2QsSUFBSSxDQUFRLENBQUMsa0RBQWtEO0lBQy9ELFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDaEIsZUFBZSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO0lBQ3BFLFNBQVMsQ0FBVTtJQUNuQixTQUFTLENBQVU7SUFDNUIsaURBQWlEO0lBRWpELGtCQUFrQixHQUFpQixrQkFBa0IsQ0FBQztJQUN0RCxZQUFZLENBQWU7SUFFM0IsWUFDUyxXQUF3QixFQUN2QixhQUE0QjtRQUQ3QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUNsQyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVoQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELDhEQUE4RDtJQUN0RCxvQkFBb0I7UUFDMUIseURBQXlEO1FBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQztnQkFDRCxNQUFNLGFBQWEsR0FBbUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQzVELElBQUksYUFBYSxFQUFFLGdCQUFnQixFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQzdELENBQUMsV0FBVyxFQUFFLEVBQUU7d0JBQ1osSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLFFBQVE7NEJBQ25DLFdBQVcsQ0FBQyxjQUFjLEtBQUssYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7NEJBQ2hFLElBQUksQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7NEJBQzVELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDMUMsQ0FBQzt3QkFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztvQkFDckUsQ0FBQyxDQUNKLENBQUM7Z0JBQ04sQ0FBQztZQUNMLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDbkQsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBR0QscUNBQXFDO0lBQ3JDLDZDQUE2QztJQUM3Qyw2Q0FBNkM7SUFDN0MsYUFBYTtJQUNiLHFDQUFxQztJQUNyQyxNQUFNO0lBQ04sSUFBSTtJQUNKLHFDQUFxQztJQUNyQyxtREFBbUQ7SUFFbkQsNEJBQTRCO0lBQzVCLDhEQUE4RDtJQUM5RCxNQUFNO0lBQ04sMENBQTBDO0lBQzFDLHlEQUF5RDtJQUV6RCx5RkFBeUY7SUFDekYsMkNBQTJDO0lBQzNDLGlDQUFpQztJQUNqQyxJQUFJO0lBRUosZUFBZTtJQUNmLGdCQUFnQjtRQUNkLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsOENBQThDLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVDLDRDQUE0QztJQUM1QyxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQzt3R0F4RlUsdUJBQXVCOzRGQUF2Qix1QkFBdUIsbVRDM0ZwQyx3WEFhTSxvZUR1RVEsb0JBQW9CLHdEQUFFLFdBQVcsOFZBQUUsWUFBWTs7NEZBT2hELHVCQUF1QjtrQkFSbkMsU0FBUzs4QkFDRyxDQUFDLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUMsWUFDaEQsc0JBQXNCLGNBQ3BCLElBQUk7NEdBTVQsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDaGFuZ2VzIGNvbW1lbnRlZCBvdXQgZHVlIHRvIEFuZ3VsYXIgdmVyc2lvbiBjb21wYXRpYmlsaXR5OyB3aWxsIGFwcGx5IGFmdGVyIHVwZ3JhZGUuXG4vLyAvLyBSUyAwNkpBTjIwMjVcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIE9uRGVzdHJveSwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi9pMThuLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDaGFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2hhbmdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVwZW5kZW5jeU1ldGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2RlcGVuZGVuY3lNZXRhJztcbmltcG9ydCB7IFF1aWxsRWRpdG9yQ29tcG9uZW50LCBRdWlsbE1vZHVsZXMgfSBmcm9tICduZ3gtcXVpbGwnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCBRdWlsbCBmcm9tICdxdWlsbCc7XG5pbXBvcnQgeyBNZW50aW9uIH0gZnJvbSAncXVpbGwtbWVudGlvbic7XG5pbXBvcnQgSW1hZ2VSZXNpem9yIGZyb20gJ3F1aWxsLWltYWdlLXJlc2l6b3InXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vLyBSUyAxN0pBTjIwMjVcbi8vIEFuIGFycmF5IGZvbnRGYW1pbHlBcnIgaXMgY3JlYXRlZCBjb250YWluaW5nIGEgbGlzdCBvZiBmb250IGZhbWlseSBuYW1lcyBhcyBzdHJpbmdzLlxuY29uc3QgZm9udEZhbWlseUFyciA9IFtcIlJvYm90b1wiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJBcmlhbFwiLCBcIlZlcmRhbmFcIiwgXCJUYWhvbWFcIiwgXCJUcmVidWNoZXQgTVNcIixcbiAgXCJHZW9yZ2lhXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFwiQ291cmllciBOZXdcIiwgXCJQYWxhdGlubyBMaW5vdHlwZVwiLFxuICBcIlNlZ29lIFVJXCIsIFwiQ2FsaWJyaVwiLCBcIkNhbGlicmkgTGlnaHRcIiwgXCJTYW5zLVNlcmlmXCIsIFwiSGVsdmV0aWNhXCIsXG4gIFwiSW1wYWN0XCIsIFwiR2FyYW1vbmRcIiwgXCJDb21pYyBTYW5zIE1TXCIsIFwiTHVjaWRhIENvbnNvbGVcIiwgXCJGcmFua2xpbiBHb3RoaWMgTWVkaXVtXCJdO1xuXG4vLyBSZWdpc3RlciBRdWlsbCBtb2R1bGVzXG5RdWlsbC5yZWdpc3RlcignbW9kdWxlcy9tZW50aW9uJywgTWVudGlvbik7XG5JbWFnZVJlc2l6b3IuUXVpbGwgPSBRdWlsbFxuUXVpbGwucmVnaXN0ZXIoJ21vZHVsZXMvaW1hZ2VSZXNpem9yJywgSW1hZ2VSZXNpem9yKVxuXG4vLyBSUyAxN0pBTjIwMjVcbi8vVGhlIFF1aWxsIGZvbnQgc3R5bGUgYXR0cmlidXRvciBpcyBpbXBvcnRlZCBhbmQgaXQgaXMgcmVnaXN0ZXJlZCB3aXRoIFF1aWxcbmxldCBmb250czogYW55ID0gUXVpbGwuaW1wb3J0KFwiYXR0cmlidXRvcnMvc3R5bGUvZm9udFwiKTtcbmZvbnRzLndoaXRlbGlzdCA9IGZvbnRGYW1pbHlBcnI7XG5RdWlsbC5yZWdpc3Rlcihmb250cywgdHJ1ZSk7XG5cbmV4cG9ydCBjb25zdCBRdWlsbENvbmZpZ3VyYXRpb246IFF1aWxsTW9kdWxlcyA9IHtcbiAgICBpbWFnZVJlc2l6b3I6IHt9LFxuICB0b29sYmFyOiB7XG4gICAgY29udGFpbmVyOiBbXG4gICAgICBbeyAnZm9udCc6IGZvbnRGYW1pbHlBcnIgfV0sICAvL1JTIDE3SkFOMjAyNSAgQWRkZWQgZm9udCBmYW1pbHkgZHJvcGRvd25cbiAgICAgIFsnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJywgJ3N0cmlrZSddLFxuICAgICAgWydibG9ja3F1b3RlJywgJ2NvZGUtYmxvY2snXSxcbiAgICAgIFt7IGhlYWRlcjogWzEsIDIsIDMsIDQsIDUsIDYsIGZhbHNlXSB9XSxcbiAgICAgIFt7IGxpc3Q6ICdvcmRlcmVkJyB9LCB7IGxpc3Q6ICdidWxsZXQnIH1dLFxuICAgICAgW3sgY29sb3I6IFtdIH0sIHsgYmFja2dyb3VuZDogW10gfV0sXG4gICAgICBbeyBhbGlnbjogW10gfV0sXG4gICAgICBbJ2xpbmsnLCAnaW1hZ2UnLCAndmlkZW8nXSxcbiAgICAgIFsnZm9ybXVsYSddLFxuICAgICAgWydjbGVhbiddLFxuICAgIF0sXG4gIH0sXG4gIG1lbnRpb246IHtcbiAgICBhbGxvd2VkQ2hhcnM6IC9eW0EtWmEtelxcc8OFw4TDlsOlw6TDtl0qJC8sXG4gICAgbWVudGlvbkRlbm90YXRpb25DaGFyczogWydAJywgJyMnXSxcbiAgICBzb3VyY2U6IGZ1bmN0aW9uIChzZWFyY2hUZXJtOiBzdHJpbmcsIHJlbmRlckxpc3Q6IGFueSkge1xuICAgICAgY29uc3QgdmFsdWVzID0gW1xuICAgICAgICB7IGlkOiAxLCB2YWx1ZTogJ1VzZXIgMScgfSxcbiAgICAgICAgeyBpZDogMiwgdmFsdWU6ICdVc2VyIDInIH0sXG4gICAgICBdO1xuXG4gICAgICBpZiAoc2VhcmNoVGVybS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmVuZGVyTGlzdCh2YWx1ZXMsIHNlYXJjaFRlcm0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHZhbHVlcy5maWx0ZXIoKGl0ZW0pID0+XG4gICAgICAgICAgaXRlbS52YWx1ZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSlcbiAgICAgICAgKTtcbiAgICAgICAgcmVuZGVyTGlzdChtYXRjaGVzLCBzZWFyY2hUZXJtKTtcbiAgICAgIH1cbiAgICB9LFxuICB9LFxufTtcblxuLy8gcmVzaXplOiB7XG4vLyAgICAgZGlzcGxheVNpemU6IHRydWUsXG4vLyAgICAgbW9kdWxlczogWydSZXNpemUnLCAnRGlzcGxheVNpemUnLCAnVG9vbGJhciddLFxuLy8gICAgIHRvb2xiYXJTdHlsZXM6IHtcbi8vICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAnYmxhY2snLFxuLy8gICAgICAgICBib3JkZXI6ICdub25lJyxcbi8vICAgICAgICAgY29sb3I6ICd3aGl0ZSdcbi8vICAgICB9LFxuLy8gICAgIGhhbmRsZVN0eWxlczoge1xuLy8gICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdibGFjaycsXG4vLyAgICAgICAgIGJvcmRlcjogJ25vbmUnLFxuLy8gICAgICAgICBjb2xvcjogJ3doaXRlJ1xuLy8gICAgIH1cbi8vIH0sXG5AQ29tcG9uZW50KHtcbiAgICBpbXBvcnRzOiBbUXVpbGxFZGl0b3JDb21wb25lbnQsIEZvcm1zTW9kdWxlICxDb21tb25Nb2R1bGVdLFxuICAgIHNlbGVjdG9yOiAnYXBwLWN1c3RvbS1yaWNoLXRleHQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2N1c3RvbS1yaWNoLXRleHQuY29tcG9uZW50LmNzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgQ3VzdG9tUmljaFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHZhbHVlOiBhbnkgfCBhbnlbXSA9ICcnO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBlcnJvcjogYW55O1xuICBASW5wdXQoKSBxdWVzdGlvbjogYW55O1xuICBASW5wdXQoKSByb3dzOk51bWJlcjsgLy9UaGUgbnVtYmVyIG9mIHZpc2libGUgdGV4dCBsaW5lcyBmb3IgdGhlIGNvbnRyb2xcbiAgQElucHV0KCkgcmVhZE9ubHkgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHRleHRWYWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQElucHV0KCkgbWluTGVuZ3RoPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXI7XG4gIC8vIEBJbnB1dCgpIHZhbHVlOiBhbnkgPSAnJzsgLy8gU2V0IGRlZmF1bHQgdmFsdWVcblxuICBxdWlsbENvbmZpZ3VyYXRpb246IFF1aWxsTW9kdWxlcyA9IFF1aWxsQ29uZmlndXJhdGlvbjtcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZVNlcnZpY2U6IENoYW5nZVNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQoJycpO1xuXG4gICAgfVxuICAgIHRoaXMuaW5pdGlhbGl6ZURlcGVuZGVuY3koKTtcbiAgfVxuXG4gIC8vIFNlcGFyYXRlZCBkZXBlbmRlbmN5IGluaXRpYWxpemF0aW9uIGZvciBiZXR0ZXIgb3JnYW5pemF0aW9uXG4gIHByaXZhdGUgaW5pdGlhbGl6ZURlcGVuZGVuY3koKTogdm9pZCB7XG4gICAgLy8gQVAtMjVNQVIyNSBQYXJzZSBzdWJUZXh0IGlmIGl0J3Mgbm90IGFscmVhZHkgYW4gb2JqZWN0XG4gICAgdGhpcy5xdWVzdGlvblsnc3ViVGV4dCddID0gdHlwZW9mIHRoaXMucXVlc3Rpb24/LnN1YlRleHQgPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA6IEpTT04ucGFyc2UodGhpcy5xdWVzdGlvblsnc3ViVGV4dCddKSB8fCB7fTtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uc3ViVGV4dCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZGVwZW5kZW5jeU9iajogRGVwZW5kZW5jeU1ldGEgPSB0aGlzLnF1ZXN0aW9uLnN1YlRleHQ7XG4gICAgICAgICAgICBpZiAoZGVwZW5kZW5jeU9iaj8uc291cmNlUXVlc3Rpb25JZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5jaGFuZ2VTZXJ2aWNlLmNoYW5nZUFubm91bmNlZCQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlVmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGFuZ2VWYWx1ZSAmJiBjaGFuZ2VWYWx1ZS52YWx1ZU9iaiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZVZhbHVlLmZyb21RdWVzdGlvbklkID09PSBkZXBlbmRlbmN5T2JqLnNvdXJjZVF1ZXN0aW9uSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gY2hhbmdlVmFsdWUudmFsdWVPYmpbZGVwZW5kZW5jeU9iai52YWx1ZUZpZWxkXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRleHRWYWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VTZXJ2aWNlLmNvbmZpcm1DaGFuZ2UoZGVwZW5kZW5jeU9iai5zb3VyY2VRdWVzdGlvbklkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBwYXJzaW5nIHN1YlRleHQ6JywgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIG9uRWRpdG9yQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbi8vICAgaWYgKGV2ZW50ICYmIGV2ZW50Lmh0bWwgIT09IHVuZGVmaW5lZCkge1xuLy8gICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQoZXZlbnQuaHRtbCk7XG4vLyAgIH0gZWxzZSB7XG4vLyAgICAgdGhpcy50ZXh0VmFsdWVDaGFuZ2UuZW1pdCgnJyk7XG4vLyAgIH1cbi8vIH1cbi8vIG9uRWRpdG9yQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbi8vICAgY29uc29sZS5sb2coJ1R5cGluZyBkZXRlY3RlZC4uLicsIGV2ZW50Lmh0bWwpO1xuXG4vLyAgIGlmICh0aGlzLnR5cGluZ1RpbWVyKSB7XG4vLyAgICAgY2xlYXJUaW1lb3V0KHRoaXMudHlwaW5nVGltZXIpOyAvLyBDbGVhciBwcmV2aW91cyB0aW1lclxuLy8gICB9XG4vLyAgIHRoaXMudHlwaW5nVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbi8vICAgICBjb25zb2xlLmxvZygnRGVib3VuY2VkIGV2ZW50IGZpcmVkOicsIGV2ZW50Lmh0bWwpO1xuXG4vLyAgICAgY29uc3QgbmV3VmFsdWUgPSBldmVudD8uaHRtbCA/IGV2ZW50Lmh0bWwgOiAnJzsgLy8gRW5zdXJlIGVtcHR5IHZhbHVlcyBhcmUgaGFuZGxlZFxuLy8gICAgIHRoaXMudGV4dFZhbHVlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuLy8gICB9LCB0aGlzLmRvbmVUeXBpbmdJbnRlcnZhbCk7XG4vLyB9XG5cbi8vIFJTIDI4SkFOMjAxNVxub25FZGl0b3JGb2N1c091dCgpOiB2b2lkIHtcbiAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy52YWx1ZSB8fCAnJztcbiAgdGhpcy50ZXh0VmFsdWVDaGFuZ2UuZW1pdChjdXJyZW50VmFsdWUpO1xuICBjb25zb2xlLmxvZygnUmljaCBUZXh0IEVkaXRvciBGb2N1cyBPdXQgLSBFbWl0dGluZyBWYWx1ZTonLCBjdXJyZW50VmFsdWUpO1xufVxuXG4gIC8vIEFkZGVkIG5nT25EZXN0cm95IHRvIHByZXZlbnQgbWVtb3J5IGxlYWtzXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cblxuXG4iLCI8IS0tIFJTIDA2SkFOMjUgLS0+XG48ZGl2IGNsYXNzPVwicmljaC10ZXh0LWNvbnRhaW5lclwiPlxuICA8cXVpbGwtZWRpdG9yXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICBbbW9kdWxlc109XCJxdWlsbENvbmZpZ3VyYXRpb25cIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgKGZvY3Vzb3V0KT1cIm9uRWRpdG9yRm9jdXNPdXQoKVwiXG4gICAgW2NsYXNzLmVycm9yXT1cImVycm9yXCI+XG4gIDwvcXVpbGwtZWRpdG9yPlxuICA8ZGl2ICpuZ0lmPVwiZXJyb3JcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cbiAgICB7eyBlcnJvciB9fVxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
@@ -24,7 +24,7 @@ export class CustomTextAreaComponent {
|
|
|
24
24
|
// RS 09DEC24 Changed keys
|
|
25
25
|
ngOnInit() {
|
|
26
26
|
// AP-25MAR25 Parse subText if it's not already an object
|
|
27
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
27
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
28
28
|
// 10MAY24 - VD Dependent update
|
|
29
29
|
if (this.question.subText) {
|
|
30
30
|
let dependencyObj = this.question.subText;
|
|
@@ -68,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
68
68
|
}], textareaValueChange: [{
|
|
69
69
|
type: Output
|
|
70
70
|
}] } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXRleHQtYXJlYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ueHQtYXBwL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b20tdGV4dC1hcmVhL2N1c3RvbS10ZXh0LWFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLXRleHQtYXJlYS9jdXN0b20tdGV4dC1hcmVhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBVzdDLE1BQU0sT0FBTyx1QkFBdUI7SUFVZjtJQUFpQztJQVQzQyxLQUFLLENBQWMsQ0FBQyxjQUFjO0lBQ2xDLFdBQVcsQ0FBUTtJQUNuQixJQUFJLENBQVEsQ0FBQyxrREFBa0Q7SUFDL0QsS0FBSyxDQUFLO0lBQ1YsUUFBUSxDQUFLO0lBQ2IsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLCtCQUErQjtJQUNoRCxtQkFBbUIsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUNqRixZQUFZLENBQWU7SUFFM0IsWUFBbUIsV0FBd0IsRUFBUyxhQUE0QjtRQUE3RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFTLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUksQ0FBQztJQUNyRiwwQkFBMEI7SUFDMUIsUUFBUTtRQUNOLHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFFLElBQUksRUFBRSxDQUFDO1FBQzdJLGdDQUFnQztRQUM5QixJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFDLENBQUM7WUFDeEIsSUFBSSxhQUFhLEdBQW1CLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1lBQzFELElBQUcsYUFBYSxDQUFDLGdCQUFnQixFQUFDLENBQUM7Z0JBQ2pDLDRCQUE0QjtnQkFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FDL0QsQ0FBQyxXQUFXLEVBQUUsRUFBRTtvQkFDZCxJQUFHLFdBQVcsSUFBSSxTQUFTLEVBQUUsQ0FBQzt3QkFDNUIsSUFBRyxXQUFXLENBQUMsUUFBUSxJQUFJLFNBQVMsSUFBSSxXQUFXLENBQUMsY0FBYyxJQUFJLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDOzRCQUNyRyxJQUFJLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDOzRCQUM1RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDNUMsQ0FBQzt3QkFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztvQkFDbkUsQ0FBQztnQkFDSCxDQUFDLENBQ0YsQ0FBQztZQUNOLENBQUM7UUFDSCxDQUFDO0lBRUgsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVM7UUFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7d0dBdENVLHVCQUF1Qjs0RkFBdkIsdUJBQXVCLDJRQ2xCcEMsa2ZBYXlFLG1HREFyRSxZQUFZLGtJQUFFLFdBQVc7OzRGQUtoQix1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUDt3QkFDUCxZQUFZLEVBQUUsV0FBVztxQkFDMUI7NEdBS1EsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8gSEEgMTlERUMyMyBpbXBvcnRlZCB0cmFuc2xhdGlvbiBzZXJ2aWNlXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENoYW5nZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jaGFuZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBEZXBlbmRlbmN5TWV0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZGVwZW5kZW5jeU1ldGEnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY3VzdG9tLXRleHQtYXJlYScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b20tdGV4dC1hcmVhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tLXRleHQtYXJlYS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tVGV4dEFyZWFDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB2YWx1ZTogYW55IHwgYW55W107IC8vIGlucHV0IHZhbHVlXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOnN0cmluZztcbiAgQElucHV0KCkgcm93czpOdW1iZXI7IC8vVGhlIG51bWJlciBvZiB2aXNpYmxlIHRleHQgbGluZXMgZm9yIHRoZSBjb250cm9sXG4gIEBJbnB1dCgpIGVycm9yOmFueTtcbiAgQElucHV0KCkgcXVlc3Rpb246YW55O1xuICBASW5wdXQoKSByZWFkT25seSA9IGZhbHNlOyAvLyBWRCAxMkp1bjI0IC0gcmVhZG9ubHkgY2hhbmdlXG4gIEBPdXRwdXQoKSB0ZXh0YXJlYVZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpOyBcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHVibGljIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZSxwcml2YXRlIGNoYW5nZVNlcnZpY2U6IENoYW5nZVNlcnZpY2UpIHsgfVxuICAvLyBSUyAwOURFQzI0IENoYW5nZWQga2V5c1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBUC0yNU1BUjI1IFBhcnNlIHN1YlRleHQgaWYgaXQncyBub3QgYWxyZWFkeSBhbiBvYmplY3RcbiAgICB0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10gPSB0eXBlb2YgdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA9PT0gJ29iamVjdCcgPyB0aGlzLnF1ZXN0aW9uPy5zdWJUZXh0IDogSlNPTi5wYXJzZSh0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10gKSB8fCB7fTtcbiAgICAvLyAxME1BWTI0IC0gVkQgRGVwZW5kZW50IHVwZGF0ZVxuICAgICAgaWYodGhpcy5xdWVzdGlvbi5zdWJUZXh0KXtcbiAgICAgICAgbGV0IGRlcGVuZGVuY3lPYmo6IERlcGVuZGVuY3lNZXRhID0gdGhpcy5xdWVzdGlvbi5zdWJUZXh0O1xuICAgICAgICBpZihkZXBlbmRlbmN5T2JqLnNvdXJjZVF1ZXN0aW9uSWQpe1xuICAgICAgICAgIC8vIFN1YnNjcmliZSBmb3IgdGhlIGNoYW5nZXNcbiAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY2hhbmdlU2VydmljZS5jaGFuZ2VBbm5vdW5jZWQkLnN1YnNjcmliZShcbiAgICAgICAgICAgIChjaGFuZ2VWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgICBpZihjaGFuZ2VWYWx1ZSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBpZihjaGFuZ2VWYWx1ZS52YWx1ZU9iaiAhPSB1bmRlZmluZWQgJiYgY2hhbmdlVmFsdWUuZnJvbVF1ZXN0aW9uSWQgPT0gZGVwZW5kZW5jeU9iai5zb3VyY2VRdWVzdGlvbklkKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gY2hhbmdlVmFsdWUudmFsdWVPYmpbZGVwZW5kZW5jeU9iai52YWx1ZUZpZWxkXTtcbiAgICAgICAgICAgICAgICAgIHRoaXMudGV4dGFyZWFWYWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVNlcnZpY2UuY29uZmlybUNoYW5nZShkZXBlbmRlbmN5T2JqLnNvdXJjZVF1ZXN0aW9uSWQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gIH1cblxuICBvblRleHRhcmVhQ2hhbmdlKGV2ZW50OmFueSk6IHZvaWQge1xuICAgIHRoaXMudGV4dGFyZWFWYWx1ZUNoYW5nZS5lbWl0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gIH1cblxufVxuIiwiPCEtLSAvLyBWRCAxMkp1bjI0IC0gcmVhZG9ubHkgY2hhbmdlLS0+XG48IS0tIFZEIDAxQXVnMjQgLSB2YWxpZGF0aW9uIGNoYW5nZS0tPlxuPCEtLSBSUyAwOURFQzI0IENoYW5nZWQga2V5cy0tPiBcbjx0ZXh0YXJlYSBcbiAgICBbY2xhc3NdPVwiZXJyb3IgPyAnaW52YWxpZCcgOiAnJ1wiXG4gICAgWyhuZ01vZGVsKV0gPVwidmFsdWVcIiBcbiAgICBbcm93c109XCJyb3dzXCIgXG4gICAgY2xhc3M9XCJzaGUtbGluZS1pbnB1dCBmb3JtLWNvbnRyb2xcIiBcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgKGlucHV0KT1cIm9uVGV4dGFyZWFDaGFuZ2UoJGV2ZW50KVwiXG4+PC90ZXh0YXJlYT5cbjwhLS0gSEEgMTlERUMyMyBGb3IgdHJhbnNsYXRpb24gLS0+XG48c3BhbiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJlcnJvci1tc2dcIj57eyBxdWVzdGlvbj8uZXJyb3JNZXNzYWdlIH19PC9zcGFuPiJdfQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Component, Output, EventEmitter, Input } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { I18nPipe } from '../../i18n.pipe';
|
|
4
|
+
import { catchError, of } from 'rxjs';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "../../services/shared.service";
|
|
6
7
|
import * as i2 from "../../services/data.service";
|
|
@@ -73,7 +74,7 @@ export class FileUploadComponent {
|
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
catch (error) {
|
|
76
|
-
console.error('Error parsing fieldsMeta:', error);
|
|
77
|
+
// console.error('Error parsing fieldsMeta:', error);
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
@@ -136,7 +137,7 @@ export class FileUploadComponent {
|
|
|
136
137
|
console.log('uploadedFiles', inputFiles);
|
|
137
138
|
this.selectedFileData.emit(inputFiles);
|
|
138
139
|
}).catch(() => {
|
|
139
|
-
console.error('Error reading files');
|
|
140
|
+
// console.error('Error reading files');
|
|
140
141
|
});
|
|
141
142
|
}
|
|
142
143
|
else {
|
|
@@ -196,7 +197,7 @@ export class FileUploadComponent {
|
|
|
196
197
|
this.showFile = true;
|
|
197
198
|
console.log(currentFile);
|
|
198
199
|
// AP-25MAR25 Ensure subText is parsed into an object if it's not already
|
|
199
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
200
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
200
201
|
if (this.question.subText != undefined) {
|
|
201
202
|
let fileMeta = this.question.subText;
|
|
202
203
|
let endpoint = fileMeta.endpoint;
|
|
@@ -205,7 +206,10 @@ export class FileUploadComponent {
|
|
|
205
206
|
if (endpoint) {
|
|
206
207
|
const fullEndPoint = endpoint + '?' + queryParameter + '=' + file[queryParameter];
|
|
207
208
|
if (fullEndPoint) {
|
|
208
|
-
this.dataService.apiResponse(fullEndPoint).
|
|
209
|
+
this.dataService.apiResponse(fullEndPoint).pipe(catchError((error) => {
|
|
210
|
+
this.viewLocalFile(); // Call fallback method
|
|
211
|
+
return of(null); // Return a fallback value to keep observable chain alive
|
|
212
|
+
})).subscribe((apiResponse) => {
|
|
209
213
|
if (apiResponse) {
|
|
210
214
|
this.handleFileContent(apiResponse);
|
|
211
215
|
}
|
|
@@ -281,4 +285,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
281
285
|
}], error: [{
|
|
282
286
|
type: Input
|
|
283
287
|
}] } });
|
|
284
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBUyxNQUFNLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBc0MsTUFBTSxlQUFlLENBQUM7QUFNakgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVUzQyxNQUFNLE9BQU8sbUJBQW1CO0lBeUJWO0lBQXVDO0lBQWlDO0lBQ25GO0lBekJDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7SUFDN0MsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsUUFBUSxDQUFDO0lBQ1Qsa0JBQWtCLENBQUM7SUFDbkIseUJBQXlCLENBQUM7SUFDMUIsZ0JBQWdCLENBQUM7SUFDakIsU0FBUyxDQUFDLENBQUUseUJBQXlCO0lBQ3JDLFFBQVEsQ0FBQztJQUNULEtBQUssQ0FBSztJQUNyQixjQUFjO0lBQ0wsZ0JBQWdCLEdBQWEsRUFBRSxDQUFDO0lBQ2hDLFdBQVcsR0FBVyxDQUFDLENBQUMsQ0FBRSxtQkFBbUI7SUFDN0MsUUFBUSxHQUFXLENBQUMsQ0FBQyxDQUFLLGdCQUFnQjtJQUMxQyxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFHaEMscUJBQXFCLEdBQWEsRUFBRSxDQUFDO0lBQ3JDLG1CQUFtQixDQUFDO0lBQ3BCLHdCQUF3QixD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QyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO3dHQTFRVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwrWkNqQmhDLDZpSUF1RkEsbXRFRDNFSSxZQUFZLHlWQUFFLFFBQVE7OzRGQUtiLG1CQUFtQjtrQkFUL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1A7d0JBQ1AsWUFBWSxFQUFFLFFBQVE7cUJBQ3ZCO2lLQUtTLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNFLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLHlCQUF5QjtzQkFBakMsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LE91dHB1dCxFdmVudEVtaXR0ZXIsIElucHV0ICxFbGVtZW50UmVmLCBPbkNoYW5nZXMsU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLyBIQSAxOURFQzIzIGltcG9ydGVkIHRyYW5zbGF0aW9uIHNlcnZpY2VcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaTE4bi5zZXJ2aWNlJztcbmltcG9ydCB7IFNoYXJlZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaGFyZWQuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEkxOG5QaXBlIH0gZnJvbSAnLi4vLi4vaTE4bi5waXBlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWxlLXVwbG9hZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsIEkxOG5QaXBlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZEZpbGVEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgQE91dHB1dCgpIGRlbGV0ZWRGaWxlRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBhbGxGaWxlcztcbiAgQElucHV0KCkgbGltaXRGaWxlVXBsb2FkaW5nO1xuICBASW5wdXQoKSBpc0RlbGV0ZUZpbGVCdXR0b25WaXNpYmxlO1xuICBASW5wdXQoKSBpc1Nob3dOb0ZpbGVJY29uO1xuICBASW5wdXQoKSB0YWJsZUZpbGU7ICAvLyBmaWxlIFVwbG9hZCBmcm9tIHRhYmxlXG4gIEBJbnB1dCgpIHF1ZXN0aW9uO1xuICBASW5wdXQoKSBlcnJvcjphbnk7XG4vL1JTIDA5SkFOMjAyNVxuICBwdWJsaWMgYWxsb3dlZEZpbGVUeXBlczogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIG1heEZpbGVTaXplOiBudW1iZXIgPSAwOyAgLy8gaW4gYnl0ZXMoQmluYXJ5KVxuICBwdWJsaWMgbWF4RmlsZXM6IG51bWJlciA9IDQ7ICAgICAvLyBkZWZhdWx0IGxpbWl0XG4gIHB1YmxpYyB2YWxpZGF0aW9uRXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuIFxuXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVOYW1lQXJyYXk6IHN0cmluZ1tdID0gW107XG4gIHB1YmxpYyBjb3B5T2ZJbnB1dEFsbEZpbGVzO1xuICBwdWJsaWMgY29weU9mRmlsZVVwbG9hZGluZ0xpbWl0O1xuICBwdWJsaWMgZmlsZVVybDtcbiAgcHVibGljIHNob3dGaWxlID0gZmFsc2U7XG4gIHB1YmxpYyBpc0ltYWdlID0gZmFsc2U7XG4gIHB1YmxpYyBmaWxlTmFtZSA9ICcnO1xuICBjdXJyZW50RmlsZTogYW55O1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIFNoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2UsICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHB1YmxpYyBpMThuU2VydmljZTogSTE4blNlcnZpY2VcbiAgKSB7IH1cbiAgLy9SUyAwOUpBTjIwMjVcbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0aWFsaXplRmlsZUNvbmZpZ3MoKTtcbiAgIH1cbiAgLy8gVkQgMDNNYXkyNCBmaWxlIHVwbG9hZCBmaXhcbiAgLy8gb25GaWxlVXBsb2FkKGV2ZW50OiBhbnkpIHtcbiAgLy8gICBjb25zdCBmaWxlVXBsb2FkZXJFbGVtZW50OiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFxuICAvLyAgICAgJ2ZpbGVVcGxvYWQnXG4gIC8vICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgLy8gICBmaWxlVXBsb2FkZXJFbGVtZW50LmNsaWNrKCk7XG4gIC8vIH1cblxuICBuZ09uQ2hhbmdlcyhzaW1wbGVDaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHNpbXBsZUNoYW5nZXMuYWxsRmlsZXMpIHsgIC8vU0tTNU5PVjI1XG4gICAgICB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMgPSBzaW1wbGVDaGFuZ2VzLmFsbEZpbGVzLmN1cnJlbnRWYWx1ZSB8fCBbXTtcbiAgICB9XG5cbiAgICBpZiAoc2ltcGxlQ2hhbmdlcy5saW1pdEZpbGVVcGxvYWRpbmcpIHtcbiAgICAgIHRoaXMuY29weU9mRmlsZVVwbG9hZGluZ0xpbWl0ID0gc2ltcGxlQ2hhbmdlcy5saW1pdEZpbGVVcGxvYWRpbmc/LmN1cnJlbnRWYWx1ZTtcbiAgICB9XG5cbiAgfVxuXG4gIC8vUlMgMDlKQU4yMDI1IEluaXRpYWxpemVzIGZpbGUgdXBsb2FkIHNldHRpbmdzIChhbGxvd2VkIHR5cGVzLCBtYXggc2l6ZSwgYW5kIG1heCBmaWxlcykgYnkgcGFyc2luZyBtZXRhZGF0YSBmcm9tIGZpZWxkc01ldGFcbiAgIGluaXRpYWxpemVGaWxlQ29uZmlncygpIHtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uZmllbGRzTWV0YSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gU0tTMjBNQVIyNSBjaGVjayBpZiBxdWVzdGlvbiBmaWVsZHNtZXRhIGlzIHN0cmluZ1xuICAgICAgICBjb25zdCBtZXRhRGF0YSA9ICB0eXBlb2YgdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddID09PSAnb2JqZWN0JyAgPyAgdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddIHx8IFtdIDogSlNPTi5wYXJzZSggdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddKSA7XG4gICAgICAgIGNvbnN0IGZpbGVDb25maWcgPSBtZXRhRGF0YVswXTsgIC8vIEdldCBmaXJzdCBjb25maWcgb2JqZWN0XG4gICAgICAgIGlmIChmaWxlQ29uZmlnKSB7XG4gICAgICAgICAgdGhpcy5hbGxvd2VkRmlsZVR5cGVzID0gZmlsZUNvbmZpZy5hbGxvd2VkVHlwZXMgfHwgW107XG4gICAgICAgICAgdGhpcy5tYXhGaWxlU2l6ZSA9IGZpbGVDb25maWcubWF4RmlsZVNpemUgfHwgMDtcbiAgICAgICAgICB0aGlzLm1heEZpbGVzID0gZmlsZUNvbmZpZy5tYXhGaWxlcyB8fCA1O1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBwYXJzaW5nIGZpZWxkc01ldGE6JywgZXJyb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVwbG9hZE11bHRpcGxlRmlsZXMoZXZlbnQ6IGFueSkge1xuICAgIGNvbnNvbGUubG9nKCdGaWxlIHVwbG9hZGVyIGluaXRpYXRlZCcpO1xuICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9IFtdOyAvLyBSUyAxN0pBTjIwMjUgQ2xlYXIgcHJldmlvdXMgZXJyb3JzXG4gICAgbGV0IGlucHV0RmlsZXM6IGFueVtdID0gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID8gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzIDogW107XG4gICAgY29uc3Qgc2VsZWN0ZWRGaWxlRGF0YSA9IFtdO1xuICAgIGNvbnN0IHVwbG9hZGVkRmlsZXMgPSBldmVudC50YXJnZXQuZmlsZXM7XG5cbiAgICAvLyBSUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSBjb3VudCBsaW1pdFxuICAgIGlmICh1cGxvYWRlZEZpbGVzLmxlbmd0aCArIGlucHV0RmlsZXMubGVuZ3RoID4gdGhpcy5tYXhGaWxlcykge1xuICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYE1heGltdW0gJHt0aGlzLm1heEZpbGVzfSBmaWxlcyBhbGxvd2VkYCk7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCByZWFkRmlsZXNQcm9taXNlcyA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBlYWNoVXBsb2FkZWRGaWxlIG9mIHVwbG9hZGVkRmlsZXMpIHtcbiAgICAgIGNvbnN0IGZpbGU6IEZpbGUgPSBlYWNoVXBsb2FkZWRGaWxlO1xuICAgICAgXG4gICAgICAvL1JTIDA5SkFOMjAyNSBDaGVjayBmaWxlIHR5cGVcbiAgICAgIGNvbnN0IGZpbGVFeHQgPSAnLicgKyBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKHRoaXMuYWxsb3dlZEZpbGVUeXBlcy5sZW5ndGggPiAwICYmICF0aGlzLmFsbG93ZWRGaWxlVHlwZXMuaW5jbHVkZXMoZmlsZUV4dCkpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEZpbGUgdHlwZSAke2ZpbGVFeHR9IG5vdCBhbGxvd2VkLiBBbGxvd2VkIHR5cGVzOiAke3RoaXMuYWxsb3dlZEZpbGVUeXBlcy5qb2luKCcsICcpfWApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgLy9SUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSBzaXplXG4gICAgICBpZiAodGhpcy5tYXhGaWxlU2l6ZSA+IDAgJiYgZmlsZS5zaXplID4gdGhpcy5tYXhGaWxlU2l6ZSkge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMucHVzaChgRmlsZSBcIiR7ZmlsZS5uYW1lfVwiIGV4Y2VlZHMgc2l6ZSBsaW1pdCBvZiAke3RoaXMubWF4RmlsZVNpemUgLyAxMDQ4NTc2fU1CYCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudmFsaWRhdGlvbkVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZmlsZUV4dC5zdWJzdHJpbmcoMSk7XG4gICAgICAgIGNvbnN0IGZpbGVSZWFkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICBcbiAgICAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmlsZURhdGEgPSB7XG4gICAgICAgICAgICAgIGRvYzogcmVhZGVyLnJlc3VsdCxcbiAgICAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgICB0eXBlOiBmaWxlLnR5cGUsXG4gICAgICAgICAgICAgIGZvcm1hdCxcbiAgICAgICAgICAgICAgc2l6ZTogZmlsZS5zaXplLCAvLyBSUyAxN0pBTjIwMjUgXG4gICAgICAgICAgICAgIGlkOiBudWxsLFxuICAgICAgICAgICAgfTtcbiAgXG4gICAgICAgICAgICBzZWxlY3RlZEZpbGVEYXRhLnB1c2goZmlsZURhdGEpO1xuICAgICAgICAgICAgaW5wdXRGaWxlcy5wdXNoKGZpbGVEYXRhKTtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICB9O1xuICBcbiAgICAgICAgICByZWFkZXIub25lcnJvciA9ICgpID0+IHtcbiAgICAgICAgICAgIHJlamVjdCgpO1xuICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEVycm9yIHJlYWRpbmcgZmlsZSBcIiR7ZmlsZS5uYW1lfVwiYCk7Ly8gUlMgMTdKQU4yMDI1IFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgICByZWFkRmlsZXNQcm9taXNlcy5wdXNoKGZpbGVSZWFkUHJvbWlzZSk7ICAgICBcbiAgICB9XG4gIH1cbiAgICBpZiAocmVhZEZpbGVzUHJvbWlzZXMubGVuZ3RoID4gMCkge1xuICAgICAgLy8gV2FpdCBmb3IgYWxsIHByb21pc2VzIHRvIHJlc29sdmVcbiAgICAgIFByb21pc2UuYWxsKHJlYWRGaWxlc1Byb21pc2VzKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gaW5wdXRGaWxlcztcbiAgICAgICAgY29uc29sZS5sb2coJ3VwbG9hZGVkRmlsZXMnLCBpbnB1dEZpbGVzKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoaW5wdXRGaWxlcyk7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJlYWRpbmcgZmlsZXMnKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1lvdSBjYW4gdXBsb2FkIG1heCA1IGZpbGVzJyk7XG4gICAgICAvLyB0aGlzLnRvYXN0ci53YXJuaW5nKFRPQVNURVJfTUVTU0FHRVMuTUFYX0ZJVkVfRklMRVMsIFRPQVNURVJfTUVTU0FHRVMuV0FSTklOR19USVRMRSk7XG4gICAgfVxuICBcbiAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgfVxuICBcblxuICAvLyB1cGxvYWRNdWx0aXBsZUZpbGVzKGV2ZW50OiBhbnkpIHtcbiAgLy8gICBjb25zb2xlLmxvZygnRmlsZSB1cGxvYWRlciBpbml0aWF0ZWQnKTtcbiAgLy8gICBsZXQgaW5wdXRGaWxlczogYW55W10gPSB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMgPyB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMgOiBbXTtcbiAgLy8gICBjb25zdCBzZWxlY3RlZEZpbGVEYXRhID0gW107XG4gIC8vICAgY29uc3QgdXBsb2FkZWRGaWxlcyA9IGV2ZW50LnRhcmdldC5maWxlcztcbiAgLy8gICBpZiAodXBsb2FkZWRGaWxlcy5sZW5ndGggKyBpbnB1dEZpbGVzLmxlbmd0aCA8PSB0aGlzLmNvcHlPZkZpbGVVcGxvYWRpbmdMaW1pdCkge1xuICAvLyAgICAgZm9yIChjb25zdCBlYWNoVXBsb2FkZWRGaWxlIG9mIHVwbG9hZGVkRmlsZXMpIHtcbiAgLy8gICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgLy8gICAgICAgY29uc3QgZmlsZTogRmlsZSA9IGVhY2hVcGxvYWRlZEZpbGU7XG4gIC8vICAgICAgIGNvbnN0IGZvcm1hdCA9IGZpbGUubmFtZS5zcGxpdCgnLicpWzFdO1xuICAvLyAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcbiAgLy8gICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcbiAgLy8gICAgICAgICBzZWxlY3RlZEZpbGVEYXRhLnB1c2goe1xuICAvLyAgICAgICAgICAgZG9jOiByZWFkZXIucmVzdWx0LFxuICAvLyAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxuICAvLyAgICAgICAgICAgdHlwZTogZmlsZS50eXBlLFxuICAvLyAgICAgICAgICAgZm9ybWF0LFxuICAvLyAgICAgICAgICAgaWQ6IG51bGwsXG4gIC8vICAgICAgICAgfSk7XG4gIC8vICAgICAgICAgaW5wdXRGaWxlcy5wdXNoKHtcbiAgLy8gICAgICAgICAgIGRvYzogcmVhZGVyLnJlc3VsdCxcbiAgLy8gICAgICAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgLy8gICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgLy8gICAgICAgICAgIGZvcm1hdCxcbiAgLy8gICAgICAgICAgIGlkOiBudWxsLFxuICAvLyAgICAgICAgIH0pO1xuICAvLyAgICAgICB9O1xuICAvLyAgICAgfVxuICAvLyAgIH0gZWxzZSB7XG4gIC8vICAgICBjb25zb2xlLndhcm4oJ1lvdSBjYW4gdXBsb2FkIG1heCA1IGZpbGVzJyk7XG4gIC8vICAgICAvL3RoaXMudG9hc3RyLndhcm5pbmcoVE9BU1RFUl9NRVNTQUdFUy5NQVhfRklWRV9GSUxFUywgVE9BU1RFUl9NRVNTQUdFUy5XQVJOSU5HX1RJVExFKTtcbiAgLy8gICB9XG4gIC8vICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gIC8vICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gaW5wdXRGaWxlcztcbiAgLy8gICBjb25zb2xlLmxvZygndXBsb2FkZWRGaWxlcycsaW5wdXRGaWxlcyk7XG4gIC8vICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoaW5wdXRGaWxlcyk7XG4gIC8vIH1cblxuXG4gIGRlbGV0ZUZpbGUoY3VycmVudEZpbGVJbmRleCkge1xuICAgICAgICBjb25zdCBkZWxldGVkRmlsZU5hbWUgPSB0aGlzLnNlbGVjdGVkRmlsZU5hbWVBcnJheS5zcGxpY2UoY3VycmVudEZpbGVJbmRleCwgMSk7XG4gICAgICAgIGNvbnN0IGRlbGV0ZWRGaWxlID0gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzLnNwbGljZShjdXJyZW50RmlsZUluZGV4LCAxKTtcbiAgICAgICAgY29uc29sZS5sb2coJ2VtaXQnLCBkZWxldGVkRmlsZVswXSk7XG4gICAgICAgIHRoaXMuZGVsZXRlZEZpbGVEYXRhLmVtaXQoZGVsZXRlZEZpbGVbMF0pO1xuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZURhdGEuZW1pdCh0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMpO1xuICB9XG5cblxuLy8gVkQgMjBNYXkyNCAtIHByZXZpZXcgY2hhbmdlc1xuLy8gUlMgMDlERUMyNCBDaGFuZ2VkIGtleXNcbiAgdmlld0ZpbGUoY3VycmVudEZpbGUpIHtcbiAgICB0aGlzLmN1cnJlbnRGaWxlID0gY3VycmVudEZpbGU7XG4gICAgdGhpcy5zaG93RmlsZSA9IHRydWU7XG4gICAgY29uc29sZS5sb2coY3VycmVudEZpbGUpO1xuICAgIC8vIEFQLTI1TUFSMjUgRW5zdXJlIHN1YlRleHQgaXMgcGFyc2VkIGludG8gYW4gb2JqZWN0IGlmIGl0J3Mgbm90IGFscmVhZHlcbiAgICB0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10gPSB0eXBlb2YgdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA9PT0gJ29iamVjdCcgPyB0aGlzLnF1ZXN0aW9uPy5zdWJUZXh0IDogSlNPTi5wYXJzZSh0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10gfHwge30pO1xuICAgIGlmKHRoaXMucXVlc3Rpb24uc3ViVGV4dCAhPSB1bmRlZmluZWQpIHtcbiAgICAgIGxldCBmaWxlTWV0YSA9IHRoaXMucXVlc3Rpb24uc3ViVGV4dDtcbiAgICAgIGxldCBlbmRwb2ludCA9IGZpbGVNZXRhLmVuZHBvaW50O1xuICAgICAgbGV0IHF1ZXJ5UGFyYW1ldGVyID0gZmlsZU1ldGEucXVlcnlQYXJhbWV0ZXI7XG4gICAgICAgIGxldCBmaWxlID0gY3VycmVudEZpbGU7XG4gICAgICAgICAgaWYoZW5kcG9pbnQpe1xuICAgICAgICAgICAgY29uc3QgZnVsbEVuZFBvaW50ID0gZW5kcG9pbnQgKyAnPycrIHF1ZXJ5UGFyYW1ldGVyICsgJz0nICsgZmlsZVtxdWVyeVBhcmFtZXRlcl07XG4gICAgICAgICAgICBpZihmdWxsRW5kUG9pbnQpe1xuICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmFwaVJlc3BvbnNlKGZ1bGxFbmRQb2ludCkuc3Vic2NyaWJlKChhcGlSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmKGFwaVJlc3BvbnNlKXtcbiAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRmlsZUNvbnRlbnQoYXBpUmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgfWVsc2Uge1xuICAgICAgICB0aGlzLnZpZXdMb2NhbEZpbGUoKVxuICAgIH1cbiAgfVxuXG4vLyAvLyBWRCAwM0F1ZzI0IHByb2Nlc3MgbG9jYWwgcHJldmlldyBcbiAgdmlld0xvY2FsRmlsZSgpe1xuICAgIGlmKHRoaXMuY3VycmVudEZpbGUpe1xuICAgICAgdGhpcy5zZXRGaWxlVXJsKHRoaXMuY3VycmVudEZpbGU/LmRvYyk7XG4gICAgICB0aGlzLmZpbGVOYW1lID0gdGhpcy5jdXJyZW50RmlsZS5uYW1lO1xuICAgICAgdGhpcy5pc0ltYWdlID0gdGhpcy5jdXJyZW50RmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpO1xuICAgIH1cblxuICB9XG5cbiBcbiAgaGFuZGxlRmlsZUNvbnRlbnQoZmlsZVJlc3BvbnNlOiBhbnkpIHtcbiAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShmaWxlUmVzcG9uc2UuY29udGVudC5kYXRhKTtcbiAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2J5dGVBcnJheV0sIHsgdHlwZTogZmlsZVJlc3BvbnNlLnR5cGUgfSk7XG4gICAgY29uc3QgdXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgdGhpcy5zZXRGaWxlVXJsKHVybCk7XG4gICAgdGhpcy5pc0ltYWdlID0gZmFsc2U7XG4gICAgaWYoZmlsZVJlc3BvbnNlLm5hbWUpe1xuICAgICAgdGhpcy5maWxlTmFtZSA9IGZpbGVSZXNwb25zZS5uYW1lO1xuICAgICAgY29uc3QgaW1hZ2VFeHRlbnNpb25zID0gWydqcGcnLCAnanBlZycsICdwbmcnLCAnZ2lmJywgJ2JtcCcsICd3ZWJwJ107XG4gICAgICBjb25zdCBmaWxlRXh0ZW5zaW9uID0gZmlsZVJlc3BvbnNlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKT8udG9Mb3dlckNhc2UoKTtcbiAgICAgIHRoaXMuaXNJbWFnZSA9IGltYWdlRXh0ZW5zaW9ucy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uIHx8ICcnKTtcbiAgICB9XG4gIH1cblxuICBzZXRGaWxlVXJsKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5maWxlVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHVybCk7XG4gIH1cblxuICBnZXREb2NJY29uKGRvY05hbWUpIHtcbiAgICBjb25zdCBleHQgPSBkb2NOYW1lLnNwbGl0KCcuJykucG9wKC0xKTtcbiAgICByZXR1cm4gdGhpcy5TaGFyZWRTZXJ2aWNlLmRvY0ljb24oZXh0KTtcbiAgfVxuXG4gIGNsb3NlKCl7XG4gICAgdGhpcy5zaG93RmlsZSA9IGZhbHNlO1xuICAgIHRoaXMuZmlsZU5hbWUgPSAnJztcbiAgICB0aGlzLmZpbGVVcmwgPSAnJztcbiAgICB0aGlzLmlzSW1hZ2UgPSBmYWxzZTtcbiAgICBpZiAodGhpcy5maWxlVXJsKSB7XG4gICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHRoaXMuZmlsZVVybCk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIiBzdHlsZT1cIm1hcmdpbjogMDtcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiICpuZ0lmPVwiIWlzRGVsZXRlRmlsZUJ1dHRvblZpc2libGVcIiBzdHlsZT1cInRleHQtYWxpZ246IGxlZnQ7XCI+XG4gICAgPCEtLSBIQSAxOURFQzIzIEZvciB0cmFuc2xhdGlvbiAtLT5cbiAgICA8bGFiZWwgY2xhc3M9XCJzaGUtbGFiZWxcIj57eyAnYXR0YWNobWVudCcgfCBpMThuOmkxOG5TZXJ2aWNlLmN1cnJlbnRMYW5ndWFnZSB9fTwvbGFiZWw+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb2wtbGctNSBkb2N1bWVudC1jbnQgbS10LTEwIG0tYi0xMFwiXG4gICAgKm5nRm9yPVwibGV0IGVhY2hGaWxlIG9mIGNvcHlPZklucHV0QWxsRmlsZXM7IGxldCBjdXJyZW50RmlsZUluZGV4ID0gaW5kZXhcIj5cbiAgICAgPGRpdiAqbmdJZj1cIiF0YWJsZUZpbGVcIj4gPCEtLSAoY2xpY2spPVwidmlld0ZpbGUoZWFjaEZpbGUpXCIgIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0zIGRvY3VtZW50X2ltYWdlXCI+XG4gICAgICAgIDxpbWcgW3NyY109XCJnZXREb2NJY29uKGVhY2hGaWxlPy5uYW1lKVwiPlxuICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05IGRvY3VtZW50X25hbWVcIj5cbiAgICAgICAge3tlYWNoRmlsZT8ubmFtZX19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkb2N1bWVudF9kZWxldGVcIiAoY2xpY2spPVwiZGVsZXRlRmlsZShjdXJyZW50RmlsZUluZGV4KTskZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAqbmdJZj1cImlzRGVsZXRlRmlsZUJ1dHRvblZpc2libGVcIj5cbiAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3JueHQuczMuYW1hem9uYXdzLmNvbS9JY29ucy9maWxlVHlwZUljb25zL2Jpbi5zdmdcIj5cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBWRCAyME1heTI0IC0gcHJldmlldyBjaGFuZ2VzLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJldmlldy1pY29uXCIgKGNsaWNrKT1cInZpZXdGaWxlKGVhY2hGaWxlKVwiICpuZ0lmPVwiaXNEZWxldGVGaWxlQnV0dG9uVmlzaWJsZVwiPlxuICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vcm54dC5zMy5hbWF6b25hd3MuY29tL0ljb25zL2ZpbGVUeXBlSWNvbnMvaWNvbnM4LWV5ZS0yNC5wbmdcIj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJ0YWJsZUZpbGVcIiBjbGFzcz1cInJvd1wiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyO1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0zIGRvY3VtZW50X2ltYWdlXCI+XG4gICAgICAgICAgPGltZyBbc3JjXT1cImdldERvY0ljb24oZWFjaEZpbGU/LmRvYylcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogMTBweDtoZWlnaHQ6IDQwcHg7XCI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOSBkb2N1bWVudF9uYW1lXCIgc3R5bGU9XCJvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjM1cHg7XCI+XG4gICAgICAgICAge3tlYWNoRmlsZT8ubmFtZX19XG4gICAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG0tYi0zMCB0ZXh0LWNlbnRlclwiICpuZ0lmPVwiY29weU9mSW5wdXRBbGxGaWxlcz8ubGVuZ3RoID09PSAwICYmIGlzU2hvd05vRmlsZUljb25cIj5cbiAgICA8aW1nIHNyYz1cImh0dHBzOi8vcm54dC5zMy5hbWF6b25hd3MuY29tL0ljb25zL2ZpbGVUeXBlSWNvbnMvaWNfbm9fYXR0YWNobWVudHMuc3ZnXCIgc3R5bGU9XCJoZWlnaHQ6IDE0MHB4O1wiPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY29sLWxnLTZcIiBzdHlsZT1cInBhZGRpbmc6MDttYXJnaW4tdG9wOiAxMHB4O1wiPlxuICA8bGFiZWwgY2xhc3M9XCJjdXN0b20tZmlsZVwiICpuZ0lmPVwiaXNEZWxldGVGaWxlQnV0dG9uVmlzaWJsZSAmJiAhdGFibGVGaWxlXCI+XG4gICAgPCEtLSBIQSAxOURFQzIzIEZvciB0cmFuc2xhdGlvbiAtLT5cbiAgICA8IS0tIFZEIDAzTWF5MjQgZmlsZSB1cGxvYWQgZml4LS0+XG4gICAgPCEtLSBSUyAwOUpBTjIwMjUgLS0+XG4gICAgPGJ1dHRvbiBbY2xhc3NdPVwiZXJyb3IgPyAnc2hlLWJ0bi1wcmltYXJ5LWJvcmRlcmVkIEludmFsaWQnIDogJ3NoZS1idG4tcHJpbWFyeS1ib3JkZXJlZCdcIiBzdHlsZT1cIndpZHRoOjI3NXB4O1wiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiW25nQ2xhc3NdPVwieyAnYnRuLWRpc2FibGVkJzogY29weU9mSW5wdXRBbGxGaWxlcz8ubGVuZ3RoID49IG1heEZpbGVzIH1cIiBbZGlzYWJsZWRdPVwiY29weU9mSW5wdXRBbGxGaWxlcz8ubGVuZ3RoID49IG1heEZpbGVzXCI+Q2hvb3NlIEZpbGVzPC9idXR0b24+XG4gICAgPGlucHV0ICNmaWxlSW5wdXQgdHlwZT1cImZpbGVcIiAgbmFtZT1cImZpbGVVcGxvYWRcIiBtdWx0aXBsZT1cIm11bHRpcGxlXCIgIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlcy5qb2luKCcsJylcIlxuICAgIHN0eWxlPVwiZGlzcGxheTpub25lO1wiXG4gICAgKGNoYW5nZSkgPSB1cGxvYWRNdWx0aXBsZUZpbGVzKCRldmVudClcbiAgICAvPlxuICA8L2xhYmVsPlxuXG4gIDwhLS0gUlMgMDlKQU4yMDI1IC0tPlxuICA8IS0tIEVycm9yIG1lc3NhZ2VzIHNlY3Rpb24gLS0+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLWNvbnN0cmFpbnRzXCIgKm5nSWY9XCJ2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aCA+IDBcIj5cbiAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgdmFsaWRhdGlvbkVycm9yc1wiPnt7IGVycm9yIH19PC9kaXY+XG4gICAgPC9zbWFsbD5cbiAgPC9kaXY+XG5cbjwhLS0gSEEgMTlERUMyMyBGb3IgdHJhbnNsYXRpb24gLS0+XG4gIDxsYWJlbCAqbmdJZj1cInRhYmxlRmlsZVwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCI+XG4gICAge3sgJ3VwbG9hZEZpbGUnIHwgaTE4bjppMThuU2VydmljZS5jdXJyZW50TGFuZ3VhZ2UgfX1cbiAgICA8aW5wdXQgaWQ9XCJmaWxlXCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiIHR5cGU9XCJmaWxlXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAoY2hhbmdlKT0gdXBsb2FkTXVsdGlwbGVGaWxlcygkZXZlbnQpIC8+XG4gIDwvbGFiZWw+XG4gIDwhLS0gPHNwYW4gY2xhc3M9XCJlcnJvci1tc2dcIiAqbmdJZj1cIihmb3JtQ29udHJvbD8uZG9jdW1lbnRzPy50b3VjaGVkIHx8ICAgICAgICBmb3JtQ29udHJvbD8uZG9jdW1lbnRzPy5kaXJ0eSkgJiZcbiAgZm9ybUNvbnRyb2w/LmRvY3VtZW50cz8uZXJyb3JzPy5yZXF1aXJlZFwiPlxuICAgIHt7TE1fUE9MSUNZX1ZBTElEQVRJT05fTUVTU0FHRS5SRVFVSVJFRH19XG4gIDwvc3Bhbj4gLS0+XG4gIDwhLS0gUlMgMDlERUMyNCBDaGFuZ2VkIGtleXMtLT4gXG48L2Rpdj5cbjxkaXYgKm5nSWY9XCJlcnJvclwiIGNsYXNzPVwiZXJyb3ItbXNnXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4O1wiPnt7cXVlc3Rpb24/LmVycm9yTWVzc2FnZX19PC9kaXY+XG48ZGl2IGNsYXNzPVwibnh0LWZpbGUtb3ZlcmxheVwiICpuZ0lmPVwic2hvd0ZpbGVcIj5cbiAgPGRpdiBjbGFzcz1cIm54dC1maWxlLW1hcC1tb2RhbFwiPlxuICAgIDxkaXYgY2xhc3M9XCJueHQtZmlsZS1tb2RlbC1jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibnh0LWZpbGUtbW9kZWwtaGVhZGVyXCI+XG4gICAgICAgIDxoND57e2ZpbGVOYW1lfX08L2g0PlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlKClcIj5YPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0ltYWdlOyBlbHNlIG90aGVyRmlsZVwiPlxuICAgICAgICA8aW1nIFtzcmNdPVwiZmlsZVVybFwiIGNsYXNzPVwiaW1nLWZsdWlkXCIgYWx0PVwiRmlsZSBQcmV2aWV3XCIgLz5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNvdGhlckZpbGU+XG4gICAgICAgIDxpZnJhbWUgW3NyY109XCJmaWxlVXJsXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNTAwcHhcIj48L2lmcmFtZT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cblxuIl19
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFNckgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQVV0QyxNQUFNLE9BQU8sbUJBQW1CO0lBeUJWO0lBQXNDO0lBQWtDO0lBQ25GO0lBekJDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7SUFDN0MsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsUUFBUSxDQUFDO0lBQ1Qsa0JBQWtCLENBQUM7SUFDbkIseUJBQXlCLENBQUM7SUFDMUIsZ0JBQWdCLENBQUM7SUFDakIsU0FBUyxDQUFDLENBQUUseUJBQXlCO0lBQ3JDLFFBQVEsQ0FBQztJQUNULEtBQUssQ0FBTTtJQUNwQixjQUFjO0lBQ1AsZ0JBQWdCLEdBQWEsRUFBRSxDQUFDO0lBQ2hDLFdBQVcsR0FBVyxDQUFDLENBQUMsQ0FBRSxtQkFBbUI7SUFDN0MsUUFBUSxHQUFXLENBQUMsQ0FBQyxDQUFLLGdCQUFnQjtJQUMxQyxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFHaEMscUJB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QUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO3dHQS9RVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwrWkNsQmhDLDZpSUF1RkEsbXRFRDFFSSxZQUFZLHlWQUFFLFFBQVE7OzRGQUtiLG1CQUFtQjtrQkFUL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1A7d0JBQ1AsWUFBWSxFQUFFLFFBQVE7cUJBQ3ZCO2lLQUtTLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNFLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLHlCQUF5QjtzQkFBakMsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8gSEEgMTlERUMyMyBpbXBvcnRlZCB0cmFuc2xhdGlvbiBzZXJ2aWNlXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBTaGFyZWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2hhcmVkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJy4uLy4uL2kxOG4ucGlwZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBvZiB9IGZyb20gJ3J4anMnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZpbGUtdXBsb2FkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgSTE4blBpcGVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZEZpbGVEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgQE91dHB1dCgpIGRlbGV0ZWRGaWxlRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBhbGxGaWxlcztcbiAgQElucHV0KCkgbGltaXRGaWxlVXBsb2FkaW5nO1xuICBASW5wdXQoKSBpc0RlbGV0ZUZpbGVCdXR0b25WaXNpYmxlO1xuICBASW5wdXQoKSBpc1Nob3dOb0ZpbGVJY29uO1xuICBASW5wdXQoKSB0YWJsZUZpbGU7ICAvLyBmaWxlIFVwbG9hZCBmcm9tIHRhYmxlXG4gIEBJbnB1dCgpIHF1ZXN0aW9uO1xuICBASW5wdXQoKSBlcnJvcjogYW55O1xuICAvL1JTIDA5SkFOMjAyNVxuICBwdWJsaWMgYWxsb3dlZEZpbGVUeXBlczogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIG1heEZpbGVTaXplOiBudW1iZXIgPSAwOyAgLy8gaW4gYnl0ZXMoQmluYXJ5KVxuICBwdWJsaWMgbWF4RmlsZXM6IG51bWJlciA9IDQ7ICAgICAvLyBkZWZhdWx0IGxpbWl0XG4gIHB1YmxpYyB2YWxpZGF0aW9uRXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuXG5cbiAgcHVibGljIHNlbGVjdGVkRmlsZU5hbWVBcnJheTogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIGNvcHlPZklucHV0QWxsRmlsZXM7XG4gIHB1YmxpYyBjb3B5T2ZGaWxlVXBsb2FkaW5nTGltaXQ7XG4gIHB1YmxpYyBmaWxlVXJsO1xuICBwdWJsaWMgc2hvd0ZpbGUgPSBmYWxzZTtcbiAgcHVibGljIGlzSW1hZ2UgPSBmYWxzZTtcbiAgcHVibGljIGZpbGVOYW1lID0gJyc7XG4gIGN1cnJlbnRGaWxlOiBhbnk7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgU2hhcmVkU2VydmljZTogU2hhcmVkU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHVibGljIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZVxuICApIHsgfVxuICAvL1JTIDA5SkFOMjAyNVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxpemVGaWxlQ29uZmlncygpO1xuICB9XG4gIC8vIFZEIDAzTWF5MjQgZmlsZSB1cGxvYWQgZml4XG4gIC8vIG9uRmlsZVVwbG9hZChldmVudDogYW55KSB7XG4gIC8vICAgY29uc3QgZmlsZVVwbG9hZGVyRWxlbWVudDogSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcbiAgLy8gICAgICdmaWxlVXBsb2FkJ1xuICAvLyAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gIC8vICAgZmlsZVVwbG9hZGVyRWxlbWVudC5jbGljaygpO1xuICAvLyB9XG5cbiAgbmdPbkNoYW5nZXMoc2ltcGxlQ2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChzaW1wbGVDaGFuZ2VzLmFsbEZpbGVzKSB7ICAvL1NLUzVOT1YyNVxuICAgICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gc2ltcGxlQ2hhbmdlcy5hbGxGaWxlcy5jdXJyZW50VmFsdWUgfHwgW107XG4gICAgfVxuXG4gICAgaWYgKHNpbXBsZUNoYW5nZXMubGltaXRGaWxlVXBsb2FkaW5nKSB7XG4gICAgICB0aGlzLmNvcHlPZkZpbGVVcGxvYWRpbmdMaW1pdCA9IHNpbXBsZUNoYW5nZXMubGltaXRGaWxlVXBsb2FkaW5nPy5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gIH1cblxuICAvL1JTIDA5SkFOMjAyNSBJbml0aWFsaXplcyBmaWxlIHVwbG9hZCBzZXR0aW5ncyAoYWxsb3dlZCB0eXBlcywgbWF4IHNpemUsIGFuZCBtYXggZmlsZXMpIGJ5IHBhcnNpbmcgbWV0YWRhdGEgZnJvbSBmaWVsZHNNZXRhXG4gIGluaXRpYWxpemVGaWxlQ29uZmlncygpIHtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uZmllbGRzTWV0YSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gU0tTMjBNQVIyNSBjaGVjayBpZiBxdWVzdGlvbiBmaWVsZHNtZXRhIGlzIHN0cmluZ1xuICAgICAgICBjb25zdCBtZXRhRGF0YSA9IHR5cGVvZiB0aGlzLnF1ZXN0aW9uWydmaWVsZHNNZXRhJ10gPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddIHx8IFtdIDogSlNPTi5wYXJzZSh0aGlzLnF1ZXN0aW9uWydmaWVsZHNNZXRhJ10pO1xuICAgICAgICBjb25zdCBmaWxlQ29uZmlnID0gbWV0YURhdGFbMF07ICAvLyBHZXQgZmlyc3QgY29uZmlnIG9iamVjdFxuICAgICAgICBpZiAoZmlsZUNvbmZpZykge1xuICAgICAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlcyA9IGZpbGVDb25maWcuYWxsb3dlZFR5cGVzIHx8IFtdO1xuICAgICAgICAgIHRoaXMubWF4RmlsZVNpemUgPSBmaWxlQ29uZmlnLm1heEZpbGVTaXplIHx8IDA7XG4gICAgICAgICAgdGhpcy5tYXhGaWxlcyA9IGZpbGVDb25maWcubWF4RmlsZXMgfHwgNTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gY29uc29sZS5lcnJvcignRXJyb3IgcGFyc2luZyBmaWVsZHNNZXRhOicsIGVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB1cGxvYWRNdWx0aXBsZUZpbGVzKGV2ZW50OiBhbnkpIHtcbiAgICBjb25zb2xlLmxvZygnRmlsZSB1cGxvYWRlciBpbml0aWF0ZWQnKTtcbiAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMgPSBbXTsgLy8gUlMgMTdKQU4yMDI1IENsZWFyIHByZXZpb3VzIGVycm9yc1xuICAgIGxldCBpbnB1dEZpbGVzOiBhbnlbXSA9IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA/IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA6IFtdO1xuICAgIGNvbnN0IHNlbGVjdGVkRmlsZURhdGEgPSBbXTtcbiAgICBjb25zdCB1cGxvYWRlZEZpbGVzID0gZXZlbnQudGFyZ2V0LmZpbGVzO1xuXG4gICAgLy8gUlMgMDlKQU4yMDI1IENoZWNrIGZpbGUgY291bnQgbGltaXRcbiAgICBpZiAodXBsb2FkZWRGaWxlcy5sZW5ndGggKyBpbnB1dEZpbGVzLmxlbmd0aCA+IHRoaXMubWF4RmlsZXMpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBNYXhpbXVtICR7dGhpcy5tYXhGaWxlc30gZmlsZXMgYWxsb3dlZGApO1xuICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVhZEZpbGVzUHJvbWlzZXMgPSBbXTtcblxuICAgIGZvciAoY29uc3QgZWFjaFVwbG9hZGVkRmlsZSBvZiB1cGxvYWRlZEZpbGVzKSB7XG4gICAgICBjb25zdCBmaWxlOiBGaWxlID0gZWFjaFVwbG9hZGVkRmlsZTtcblxuICAgICAgLy9SUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSB0eXBlXG4gICAgICBjb25zdCBmaWxlRXh0ID0gJy4nICsgZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIGlmICh0aGlzLmFsbG93ZWRGaWxlVHlwZXMubGVuZ3RoID4gMCAmJiAhdGhpcy5hbGxvd2VkRmlsZVR5cGVzLmluY2x1ZGVzKGZpbGVFeHQpKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBGaWxlIHR5cGUgJHtmaWxlRXh0fSBub3QgYWxsb3dlZC4gQWxsb3dlZCB0eXBlczogJHt0aGlzLmFsbG93ZWRGaWxlVHlwZXMuam9pbignLCAnKX1gKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIC8vUlMgMDlKQU4yMDI1IENoZWNrIGZpbGUgc2l6ZVxuICAgICAgaWYgKHRoaXMubWF4RmlsZVNpemUgPiAwICYmIGZpbGUuc2l6ZSA+IHRoaXMubWF4RmlsZVNpemUpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEZpbGUgXCIke2ZpbGUubmFtZX1cIiBleGNlZWRzIHNpemUgbGltaXQgb2YgJHt0aGlzLm1heEZpbGVTaXplIC8gMTA0ODU3Nn1NQmApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLnZhbGlkYXRpb25FcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGZvcm1hdCA9IGZpbGVFeHQuc3Vic3RyaW5nKDEpO1xuICAgICAgICBjb25zdCBmaWxlUmVhZFByb21pc2UgPSBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcblxuICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWxlRGF0YSA9IHtcbiAgICAgICAgICAgICAgZG9jOiByZWFkZXIucmVzdWx0LFxuICAgICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgICAgICBzaXplOiBmaWxlLnNpemUsIC8vIFJTIDE3SkFOMjAyNSBcbiAgICAgICAgICAgICAgaWQ6IG51bGwsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBzZWxlY3RlZEZpbGVEYXRhLnB1c2goZmlsZURhdGEpO1xuICAgICAgICAgICAgaW5wdXRGaWxlcy5wdXNoKGZpbGVEYXRhKTtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAgICAgICByZWplY3QoKTtcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBFcnJvciByZWFkaW5nIGZpbGUgXCIke2ZpbGUubmFtZX1cImApOy8vIFJTIDE3SkFOMjAyNSBcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgcmVhZEZpbGVzUHJvbWlzZXMucHVzaChmaWxlUmVhZFByb21pc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAocmVhZEZpbGVzUHJvbWlzZXMubGVuZ3RoID4gMCkge1xuICAgICAgLy8gV2FpdCBmb3IgYWxsIHByb21pc2VzIHRvIHJlc29sdmVcbiAgICAgIFByb21pc2UuYWxsKHJlYWRGaWxlc1Byb21pc2VzKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gaW5wdXRGaWxlcztcbiAgICAgICAgY29uc29sZS5sb2coJ3VwbG9hZGVkRmlsZXMnLCBpbnB1dEZpbGVzKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoaW5wdXRGaWxlcyk7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJlYWRpbmcgZmlsZXMnKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1lvdSBjYW4gdXBsb2FkIG1heCA1IGZpbGVzJyk7XG4gICAgICAvLyB0aGlzLnRvYXN0ci53YXJuaW5nKFRPQVNURVJfTUVTU0FHRVMuTUFYX0ZJVkVfRklMRVMsIFRPQVNURVJfTUVTU0FHRVMuV0FSTklOR19USVRMRSk7XG4gICAgfVxuXG4gICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gIH1cblxuXG4gIC8vIHVwbG9hZE11bHRpcGxlRmlsZXMoZXZlbnQ6IGFueSkge1xuICAvLyAgIGNvbnNvbGUubG9nKCdGaWxlIHVwbG9hZGVyIGluaXRpYXRlZCcpO1xuICAvLyAgIGxldCBpbnB1dEZpbGVzOiBhbnlbXSA9IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA/IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA6IFtdO1xuICAvLyAgIGNvbnN0IHNlbGVjdGVkRmlsZURhdGEgPSBbXTtcbiAgLy8gICBjb25zdCB1cGxvYWRlZEZpbGVzID0gZXZlbnQudGFyZ2V0LmZpbGVzO1xuICAvLyAgIGlmICh1cGxvYWRlZEZpbGVzLmxlbmd0aCArIGlucHV0RmlsZXMubGVuZ3RoIDw9IHRoaXMuY29weU9mRmlsZVVwbG9hZGluZ0xpbWl0KSB7XG4gIC8vICAgICBmb3IgKGNvbnN0IGVhY2hVcGxvYWRlZEZpbGUgb2YgdXBsb2FkZWRGaWxlcykge1xuICAvLyAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAvLyAgICAgICBjb25zdCBmaWxlOiBGaWxlID0gZWFjaFVwbG9hZGVkRmlsZTtcbiAgLy8gICAgICAgY29uc3QgZm9ybWF0ID0gZmlsZS5uYW1lLnNwbGl0KCcuJylbMV07XG4gIC8vICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAvLyAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xuICAvLyAgICAgICAgIHNlbGVjdGVkRmlsZURhdGEucHVzaCh7XG4gIC8vICAgICAgICAgICBkb2M6IHJlYWRlci5yZXN1bHQsXG4gIC8vICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXG4gIC8vICAgICAgICAgICB0eXBlOiBmaWxlLnR5cGUsXG4gIC8vICAgICAgICAgICBmb3JtYXQsXG4gIC8vICAgICAgICAgICBpZDogbnVsbCxcbiAgLy8gICAgICAgICB9KTtcbiAgLy8gICAgICAgICBpbnB1dEZpbGVzLnB1c2goe1xuICAvLyAgICAgICAgICAgZG9jOiByZWFkZXIucmVzdWx0LFxuICAvLyAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxuICAvLyAgICAgICAgICAgdHlwZTogZmlsZS50eXBlLFxuICAvLyAgICAgICAgICAgZm9ybWF0LFxuICAvLyAgICAgICAgICAgaWQ6IG51bGwsXG4gIC8vICAgICAgICAgfSk7XG4gIC8vICAgICAgIH07XG4gIC8vICAgICB9XG4gIC8vICAgfSBlbHNlIHtcbiAgLy8gICAgIGNvbnNvbGUud2FybignWW91IGNhbiB1cGxvYWQgbWF4IDUgZmlsZXMnKTtcbiAgLy8gICAgIC8vdGhpcy50b2FzdHIud2FybmluZyhUT0FTVEVSX01FU1NBR0VTLk1BWF9GSVZFX0ZJTEVTLCBUT0FTVEVSX01FU1NBR0VTLldBUk5JTkdfVElUTEUpO1xuICAvLyAgIH1cbiAgLy8gICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgLy8gICB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMgPSBpbnB1dEZpbGVzO1xuICAvLyAgIGNvbnNvbGUubG9nKCd1cGxvYWRlZEZpbGVzJyxpbnB1dEZpbGVzKTtcbiAgLy8gICB0aGlzLnNlbGVjdGVkRmlsZURhdGEuZW1pdChpbnB1dEZpbGVzKTtcbiAgLy8gfVxuXG5cbiAgZGVsZXRlRmlsZShjdXJyZW50RmlsZUluZGV4KSB7XG4gICAgY29uc3QgZGVsZXRlZEZpbGVOYW1lID0gdGhpcy5zZWxlY3RlZEZpbGVOYW1lQXJyYXkuc3BsaWNlKGN1cnJlbnRGaWxlSW5kZXgsIDEpO1xuICAgIGNvbnN0IGRlbGV0ZWRGaWxlID0gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzLnNwbGljZShjdXJyZW50RmlsZUluZGV4LCAxKTtcbiAgICBjb25zb2xlLmxvZygnZW1pdCcsIGRlbGV0ZWRGaWxlWzBdKTtcbiAgICB0aGlzLmRlbGV0ZWRGaWxlRGF0YS5lbWl0KGRlbGV0ZWRGaWxlWzBdKTtcbiAgICB0aGlzLnNlbGVjdGVkRmlsZURhdGEuZW1pdCh0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMpO1xuICB9XG5cblxuICAvLyBWRCAyME1heTI0IC0gcHJldmlldyBjaGFuZ2VzXG4gIC8vIFJTIDA5REVDMjQgQ2hhbmdlZCBrZXlzXG4gIHZpZXdGaWxlKGN1cnJlbnRGaWxlKSB7XG4gICAgdGhpcy5jdXJyZW50RmlsZSA9IGN1cnJlbnRGaWxlO1xuICAgIHRoaXMuc2hvd0ZpbGUgPSB0cnVlO1xuICAgIGNvbnNvbGUubG9nKGN1cnJlbnRGaWxlKTtcbiAgICAvLyBBUC0yNU1BUjI1IEVuc3VyZSBzdWJUZXh0IGlzIHBhcnNlZCBpbnRvIGFuIG9iamVjdCBpZiBpdCdzIG5vdCBhbHJlYWR5XG4gICAgdGhpcy5xdWVzdGlvblsnc3ViVGV4dCddID0gdHlwZW9mIHRoaXMucXVlc3Rpb24/LnN1YlRleHQgPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA6IEpTT04ucGFyc2UodGhpcy5xdWVzdGlvblsnc3ViVGV4dCddKSB8fCB7fTtcbiAgICBpZiAodGhpcy5xdWVzdGlvbi5zdWJUZXh0ICE9IHVuZGVmaW5lZCkge1xuICAgICAgbGV0IGZpbGVNZXRhID0gdGhpcy5xdWVzdGlvbi5zdWJUZXh0O1xuICAgICAgbGV0IGVuZHBvaW50ID0gZmlsZU1ldGEuZW5kcG9pbnQ7XG4gICAgICBsZXQgcXVlcnlQYXJhbWV0ZXIgPSBmaWxlTWV0YS5xdWVyeVBhcmFtZXRlcjtcbiAgICAgIGxldCBmaWxlID0gY3VycmVudEZpbGU7XG4gICAgICBpZiAoZW5kcG9pbnQpIHtcbiAgICAgICAgY29uc3QgZnVsbEVuZFBvaW50ID0gZW5kcG9pbnQgKyAnPycgKyBxdWVyeVBhcmFtZXRlciArICc9JyArIGZpbGVbcXVlcnlQYXJhbWV0ZXJdO1xuICAgICAgICBpZiAoZnVsbEVuZFBvaW50KSB7XG4gICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5hcGlSZXNwb25zZShmdWxsRW5kUG9pbnQpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnZpZXdMb2NhbEZpbGUoKTsgLy8gQ2FsbCBmYWxsYmFjayBtZXRob2RcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpOyAvLyBSZXR1cm4gYSBmYWxsYmFjayB2YWx1ZSB0byBrZWVwIG9ic2VydmFibGUgY2hhaW4gYWxpdmVcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXBpUmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgdGhpcy5oYW5kbGVGaWxlQ29udGVudChhcGlSZXNwb25zZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52aWV3TG9jYWxGaWxlKClcbiAgICB9XG4gIH1cblxuICAvLyAvLyBWRCAwM0F1ZzI0IHByb2Nlc3MgbG9jYWwgcHJldmlldyBcbiAgdmlld0xvY2FsRmlsZSgpIHtcbiAgICBpZiAodGhpcy5jdXJyZW50RmlsZSkge1xuICAgICAgdGhpcy5zZXRGaWxlVXJsKHRoaXMuY3VycmVudEZpbGU/LmRvYyk7XG4gICAgICB0aGlzLmZpbGVOYW1lID0gdGhpcy5jdXJyZW50RmlsZS5uYW1lO1xuICAgICAgdGhpcy5pc0ltYWdlID0gdGhpcy5jdXJyZW50RmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpO1xuICAgIH1cblxuICB9XG5cblxuICBoYW5kbGVGaWxlQ29udGVudChmaWxlUmVzcG9uc2U6IGFueSkge1xuICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGZpbGVSZXNwb25zZS5jb250ZW50LmRhdGEpO1xuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnl0ZUFycmF5XSwgeyB0eXBlOiBmaWxlUmVzcG9uc2UudHlwZSB9KTtcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbiAgICB0aGlzLnNldEZpbGVVcmwodXJsKTtcbiAgICB0aGlzLmlzSW1hZ2UgPSBmYWxzZTtcbiAgICBpZiAoZmlsZVJlc3BvbnNlLm5hbWUpIHtcbiAgICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlUmVzcG9uc2UubmFtZTtcbiAgICAgIGNvbnN0IGltYWdlRXh0ZW5zaW9ucyA9IFsnanBnJywgJ2pwZWcnLCAncG5nJywgJ2dpZicsICdibXAnLCAnd2VicCddO1xuICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVSZXNwb25zZS5uYW1lLnNwbGl0KCcuJykucG9wKCk/LnRvTG93ZXJDYXNlKCk7XG4gICAgICB0aGlzLmlzSW1hZ2UgPSBpbWFnZUV4dGVuc2lvbnMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbiB8fCAnJyk7XG4gICAgfVxuICB9XG5cbiAgc2V0RmlsZVVybCh1cmw6IHN0cmluZykge1xuICAgIHRoaXMuZmlsZVVybCA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh1cmwpO1xuICB9XG5cbiAgZ2V0RG9jSWNvbihkb2NOYW1lKSB7XG4gICAgY29uc3QgZXh0ID0gZG9jTmFtZS5zcGxpdCgnLicpLnBvcCgtMSk7XG4gICAgcmV0dXJuIHRoaXMuU2hhcmVkU2VydmljZS5kb2NJY29uKGV4dCk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLnNob3dGaWxlID0gZmFsc2U7XG4gICAgdGhpcy5maWxlTmFtZSA9ICcnO1xuICAgIHRoaXMuZmlsZVVybCA9ICcnO1xuICAgIHRoaXMuaXNJbWFnZSA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmZpbGVVcmwpIHtcbiAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwodGhpcy5maWxlVXJsKTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cInJvd1wiIHN0eWxlPVwibWFyZ2luOiAwO1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCIgKm5nSWY9XCIhaXNEZWxldGVGaWxlQnV0dG9uVmlzaWJsZVwiIHN0eWxlPVwidGV4dC1hbGlnbjogbGVmdDtcIj5cbiAgICA8IS0tIEhBIDE5REVDMjMgRm9yIHRyYW5zbGF0aW9uIC0tPlxuICAgIDxsYWJlbCBjbGFzcz1cInNoZS1sYWJlbFwiPnt7ICdhdHRhY2htZW50JyB8IGkxOG46aTE4blNlcnZpY2UuY3VycmVudExhbmd1YWdlIH19PC9sYWJlbD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImNvbC1sZy01IGRvY3VtZW50LWNudCBtLXQtMTAgbS1iLTEwXCJcbiAgICAqbmdGb3I9XCJsZXQgZWFjaEZpbGUgb2YgY29weU9mSW5wdXRBbGxGaWxlczsgbGV0IGN1cnJlbnRGaWxlSW5kZXggPSBpbmRleFwiPlxuICAgICA8ZGl2ICpuZ0lmPVwiIXRhYmxlRmlsZVwiPiA8IS0tIChjbGljayk9XCJ2aWV3RmlsZShlYWNoRmlsZSlcIiAgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTMgZG9jdW1lbnRfaW1hZ2VcIj5cbiAgICAgICAgPGltZyBbc3JjXT1cImdldERvY0ljb24oZWFjaEZpbGU/Lm5hbWUpXCI+XG4gICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTkgZG9jdW1lbnRfbmFtZVwiPlxuICAgICAgICB7e2VhY2hGaWxlPy5uYW1lfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImRvY3VtZW50X2RlbGV0ZVwiIChjbGljayk9XCJkZWxldGVGaWxlKGN1cnJlbnRGaWxlSW5kZXgpOyRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiICpuZ0lmPVwiaXNEZWxldGVGaWxlQnV0dG9uVmlzaWJsZVwiPlxuICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vcm54dC5zMy5hbWF6b25hd3MuY29tL0ljb25zL2ZpbGVUeXBlSWNvbnMvYmluLnN2Z1wiPlxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIFZEIDIwTWF5MjQgLSBwcmV2aWV3IGNoYW5nZXMtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmV2aWV3LWljb25cIiAoY2xpY2spPVwidmlld0ZpbGUoZWFjaEZpbGUpXCIgKm5nSWY9XCJpc0RlbGV0ZUZpbGVCdXR0b25WaXNpYmxlXCI+XG4gICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9ybnh0LnMzLmFtYXpvbmF3cy5jb20vSWNvbnMvZmlsZVR5cGVJY29ucy9pY29uczgtZXllLTI0LnBuZ1wiPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInRhYmxlRmlsZVwiIGNsYXNzPVwicm93XCIgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTMgZG9jdW1lbnRfaW1hZ2VcIj5cbiAgICAgICAgICA8aW1nIFtzcmNdPVwiZ2V0RG9jSWNvbihlYWNoRmlsZT8uZG9jKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHB4O2hlaWdodDogNDBweDtcIj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05IGRvY3VtZW50X25hbWVcIiBzdHlsZT1cIm92ZXJmbG93OmhpZGRlbjtoZWlnaHQ6MzVweDtcIj5cbiAgICAgICAgICB7e2VhY2hGaWxlPy5uYW1lfX1cbiAgICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbS1iLTMwIHRleHQtY2VudGVyXCIgKm5nSWY9XCJjb3B5T2ZJbnB1dEFsbEZpbGVzPy5sZW5ndGggPT09IDAgJiYgaXNTaG93Tm9GaWxlSWNvblwiPlxuICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9ybnh0LnMzLmFtYXpvbmF3cy5jb20vSWNvbnMvZmlsZVR5cGVJY29ucy9pY19ub19hdHRhY2htZW50cy5zdmdcIiBzdHlsZT1cImhlaWdodDogMTQwcHg7XCI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJjb2wtbGctNlwiIHN0eWxlPVwicGFkZGluZzowO21hcmdpbi10b3A6IDEwcHg7XCI+XG4gIDxsYWJlbCBjbGFzcz1cImN1c3RvbS1maWxlXCIgKm5nSWY9XCJpc0RlbGV0ZUZpbGVCdXR0b25WaXNpYmxlICYmICF0YWJsZUZpbGVcIj5cbiAgICA8IS0tIEhBIDE5REVDMjMgRm9yIHRyYW5zbGF0aW9uIC0tPlxuICAgIDwhLS0gVkQgMDNNYXkyNCBmaWxlIHVwbG9hZCBmaXgtLT5cbiAgICA8IS0tIFJTIDA5SkFOMjAyNSAtLT5cbiAgICA8YnV0dG9uIFtjbGFzc109XCJlcnJvciA/ICdzaGUtYnRuLXByaW1hcnktYm9yZGVyZWQgSW52YWxpZCcgOiAnc2hlLWJ0bi1wcmltYXJ5LWJvcmRlcmVkJ1wiIHN0eWxlPVwid2lkdGg6Mjc1cHg7XCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCJbbmdDbGFzc109XCJ7ICdidG4tZGlzYWJsZWQnOiBjb3B5T2ZJbnB1dEFsbEZpbGVzPy5sZW5ndGggPj0gbWF4RmlsZXMgfVwiIFtkaXNhYmxlZF09XCJjb3B5T2ZJbnB1dEFsbEZpbGVzPy5sZW5ndGggPj0gbWF4RmlsZXNcIj5DaG9vc2UgRmlsZXM8L2J1dHRvbj5cbiAgICA8aW5wdXQgI2ZpbGVJbnB1dCB0eXBlPVwiZmlsZVwiICBuYW1lPVwiZmlsZVVwbG9hZFwiIG11bHRpcGxlPVwibXVsdGlwbGVcIiAgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVzLmpvaW4oJywnKVwiXG4gICAgc3R5bGU9XCJkaXNwbGF5Om5vbmU7XCJcbiAgICAoY2hhbmdlKSA9IHVwbG9hZE11bHRpcGxlRmlsZXMoJGV2ZW50KVxuICAgIC8+XG4gIDwvbGFiZWw+XG5cbiAgPCEtLSBSUyAwOUpBTjIwMjUgLS0+XG4gIDwhLS0gRXJyb3IgbWVzc2FnZXMgc2VjdGlvbiAtLT5cbiAgPGRpdiBjbGFzcz1cImZpbGUtY29uc3RyYWludHNcIiAqbmdJZj1cInZhbGlkYXRpb25FcnJvcnMubGVuZ3RoID4gMFwiPlxuICAgIDxzbWFsbCBjbGFzcz1cInRleHQtZGFuZ2VyXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBlcnJvciBvZiB2YWxpZGF0aW9uRXJyb3JzXCI+e3sgZXJyb3IgfX08L2Rpdj5cbiAgICA8L3NtYWxsPlxuICA8L2Rpdj5cblxuPCEtLSBIQSAxOURFQzIzIEZvciB0cmFuc2xhdGlvbiAtLT5cbiAgPGxhYmVsICpuZ0lmPVwidGFibGVGaWxlXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIj5cbiAgICB7eyAndXBsb2FkRmlsZScgfCBpMThuOmkxOG5TZXJ2aWNlLmN1cnJlbnRMYW5ndWFnZSB9fVxuICAgIDxpbnB1dCBpZD1cImZpbGVcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgdHlwZT1cImZpbGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIChjaGFuZ2UpPSB1cGxvYWRNdWx0aXBsZUZpbGVzKCRldmVudCkgLz5cbiAgPC9sYWJlbD5cbiAgPCEtLSA8c3BhbiBjbGFzcz1cImVycm9yLW1zZ1wiICpuZ0lmPVwiKGZvcm1Db250cm9sPy5kb2N1bWVudHM/LnRvdWNoZWQgfHwgICAgICAgIGZvcm1Db250cm9sPy5kb2N1bWVudHM/LmRpcnR5KSAmJlxuICBmb3JtQ29udHJvbD8uZG9jdW1lbnRzPy5lcnJvcnM/LnJlcXVpcmVkXCI+XG4gICAge3tMTV9QT0xJQ1lfVkFMSURBVElPTl9NRVNTQUdFLlJFUVVJUkVEfX1cbiAgPC9zcGFuPiAtLT5cbiAgPCEtLSBSUyAwOURFQzI0IENoYW5nZWQga2V5cy0tPiBcbjwvZGl2PlxuPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJlcnJvci1tc2dcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+e3txdWVzdGlvbj8uZXJyb3JNZXNzYWdlfX08L2Rpdj5cbjxkaXYgY2xhc3M9XCJueHQtZmlsZS1vdmVybGF5XCIgKm5nSWY9XCJzaG93RmlsZVwiPlxuICA8ZGl2IGNsYXNzPVwibnh0LWZpbGUtbWFwLW1vZGFsXCI+XG4gICAgPGRpdiBjbGFzcz1cIm54dC1maWxlLW1vZGVsLWNvbnRlbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJueHQtZmlsZS1tb2RlbC1oZWFkZXJcIj5cbiAgICAgICAgPGg0Pnt7ZmlsZU5hbWV9fTwvaDQ+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b25cIiAoY2xpY2spPVwiY2xvc2UoKVwiPlg8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzSW1hZ2U7IGVsc2Ugb3RoZXJGaWxlXCI+XG4gICAgICAgIDxpbWcgW3NyY109XCJmaWxlVXJsXCIgY2xhc3M9XCJpbWctZmx1aWRcIiBhbHQ9XCJGaWxlIFByZXZpZXdcIiAvPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI290aGVyRmlsZT5cbiAgICAgICAgPGlmcmFtZSBbc3JjXT1cImZpbGVVcmxcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCI1MDBweFwiPjwvaWZyYW1lPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuXG4iXX0=
|
|
@@ -5,7 +5,7 @@ import { FormsModule, Validators, ReactiveFormsModule } from '@angular/forms';
|
|
|
5
5
|
import * as i7 from 'ngx-spinner';
|
|
6
6
|
import { NgxSpinnerModule } from 'ngx-spinner';
|
|
7
7
|
import * as moment from 'moment';
|
|
8
|
-
import { Subject, BehaviorSubject, merge, fromEvent } from 'rxjs';
|
|
8
|
+
import { Subject, BehaviorSubject, merge, fromEvent, catchError, of } from 'rxjs';
|
|
9
9
|
import * as i2 from '@angular/common';
|
|
10
10
|
import { DOCUMENT, CommonModule, NgIf } from '@angular/common';
|
|
11
11
|
import * as i5$1 from '@ng-select/ng-select';
|
|
@@ -6769,7 +6769,7 @@ class CustomTextAreaComponent {
|
|
|
6769
6769
|
// RS 09DEC24 Changed keys
|
|
6770
6770
|
ngOnInit() {
|
|
6771
6771
|
// AP-25MAR25 Parse subText if it's not already an object
|
|
6772
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
6772
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
6773
6773
|
// 10MAY24 - VD Dependent update
|
|
6774
6774
|
if (this.question.subText) {
|
|
6775
6775
|
let dependencyObj = this.question.subText;
|
|
@@ -7277,7 +7277,7 @@ class CustomRichTextComponent {
|
|
|
7277
7277
|
// Separated dependency initialization for better organization
|
|
7278
7278
|
initializeDependency() {
|
|
7279
7279
|
// AP-25MAR25 Parse subText if it's not already an object
|
|
7280
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
7280
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
7281
7281
|
if (this.question?.subText) {
|
|
7282
7282
|
try {
|
|
7283
7283
|
const dependencyObj = this.question.subText;
|
|
@@ -11876,7 +11876,7 @@ class FileUploadComponent {
|
|
|
11876
11876
|
}
|
|
11877
11877
|
}
|
|
11878
11878
|
catch (error) {
|
|
11879
|
-
console.error('Error parsing fieldsMeta:', error);
|
|
11879
|
+
// console.error('Error parsing fieldsMeta:', error);
|
|
11880
11880
|
}
|
|
11881
11881
|
}
|
|
11882
11882
|
}
|
|
@@ -11939,7 +11939,7 @@ class FileUploadComponent {
|
|
|
11939
11939
|
console.log('uploadedFiles', inputFiles);
|
|
11940
11940
|
this.selectedFileData.emit(inputFiles);
|
|
11941
11941
|
}).catch(() => {
|
|
11942
|
-
console.error('Error reading files');
|
|
11942
|
+
// console.error('Error reading files');
|
|
11943
11943
|
});
|
|
11944
11944
|
}
|
|
11945
11945
|
else {
|
|
@@ -11999,7 +11999,7 @@ class FileUploadComponent {
|
|
|
11999
11999
|
this.showFile = true;
|
|
12000
12000
|
console.log(currentFile);
|
|
12001
12001
|
// AP-25MAR25 Ensure subText is parsed into an object if it's not already
|
|
12002
|
-
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText'] || {}
|
|
12002
|
+
this.question['subText'] = typeof this.question?.subText === 'object' ? this.question?.subText : JSON.parse(this.question['subText']) || {};
|
|
12003
12003
|
if (this.question.subText != undefined) {
|
|
12004
12004
|
let fileMeta = this.question.subText;
|
|
12005
12005
|
let endpoint = fileMeta.endpoint;
|
|
@@ -12008,7 +12008,10 @@ class FileUploadComponent {
|
|
|
12008
12008
|
if (endpoint) {
|
|
12009
12009
|
const fullEndPoint = endpoint + '?' + queryParameter + '=' + file[queryParameter];
|
|
12010
12010
|
if (fullEndPoint) {
|
|
12011
|
-
this.dataService.apiResponse(fullEndPoint).
|
|
12011
|
+
this.dataService.apiResponse(fullEndPoint).pipe(catchError((error) => {
|
|
12012
|
+
this.viewLocalFile(); // Call fallback method
|
|
12013
|
+
return of(null); // Return a fallback value to keep observable chain alive
|
|
12014
|
+
})).subscribe((apiResponse) => {
|
|
12012
12015
|
if (apiResponse) {
|
|
12013
12016
|
this.handleFileContent(apiResponse);
|
|
12014
12017
|
}
|
|
@@ -14824,7 +14827,7 @@ const VERSION = {
|
|
|
14824
14827
|
"semver": null,
|
|
14825
14828
|
"suffix": "05a52cb-dirty",
|
|
14826
14829
|
"semverString": null,
|
|
14827
|
-
"version": "2.1.
|
|
14830
|
+
"version": "2.1.164"
|
|
14828
14831
|
};
|
|
14829
14832
|
/* tslint:enable */
|
|
14830
14833
|
|