@energycap/components 0.39.32-ECAP-26866-table-multi-sort-improvements.20241022-1702 → 0.39.32-ECAP-27075-confirm-bug-textbox-always-showing-even-when-not-requested.20241023-1555
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/esm2020/lib/display/confirm/confirm.component.mjs +3 -2
- package/esm2020/lib/display/table/table.component.mjs +28 -32
- package/fesm2015/energycap-components.mjs +28 -31
- package/fesm2015/energycap-components.mjs.map +1 -1
- package/fesm2020/energycap-components.mjs +28 -31
- package/fesm2020/energycap-components.mjs.map +1 -1
- package/lib/display/table/table.component.d.ts +2 -4
- package/package.json +1 -1
@@ -56,6 +56,7 @@ export class ConfirmComponent {
|
|
56
56
|
onOpen(openContext) {
|
57
57
|
this.context = openContext;
|
58
58
|
this.dialogId = openContext.id;
|
59
|
+
this.showTextBox = this.context.checkConfirm ? false : true;
|
59
60
|
if (this.context.alternateSaveLabel) {
|
60
61
|
this.context.saveOnEnter = false;
|
61
62
|
}
|
@@ -65,7 +66,7 @@ export class ConfirmComponent {
|
|
65
66
|
/** Form Group to hold any form controls needed */
|
66
67
|
this.formGroup = new UntypedFormGroup({});
|
67
68
|
this.status = new Overlay('hasData');
|
68
|
-
this.showTextBox =
|
69
|
+
this.showTextBox = false;
|
69
70
|
this.destroyed = new Subject();
|
70
71
|
this.onDialogSave = new EventEmitter();
|
71
72
|
this.onDialogCancel = new EventEmitter();
|
@@ -163,4 +164,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
163
164
|
}], onDialogCancel: [{
|
164
165
|
type: Output
|
165
166
|
}] } });
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS9jb25maXJtL2NvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTL0IsTUFBTSxPQUFPLG9CQUFvQjtJQUFqQztRQUNFLHlGQUF5RjtRQUNsRixPQUFFLEdBQVcsRUFBRSxDQUFDO1FBK0J2Qjs7O1dBR0c7UUFDSSxvQkFBZSxHQUFhLEtBQUssQ0FBQztRQUt6Qyw2Q0FBNkM7UUFDdEMscUJBQWdCLEdBQWEsS0FBSyxDQUFDO1FBRTFDOzs7O1dBSUc7UUFDSSxpQkFBWSxHQUFZLENBQUMsQ0FBQztRQWFqQyxpQ0FBaUM7UUFDMUIsY0FBUyxHQUFZLE1BQU0sQ0FBQyxDQUFDLE9BQU87UUFFM0MsZ0NBQWdDO1FBQ3pCLG1CQUFjLEdBQWdCLFNBQVMsQ0FBQztRQUUvQyxtQ0FBbUM7UUFDNUIsZ0JBQVcsR0FBWSxRQUFRLENBQUMsQ0FBQyxPQUFPO1FBRS9DLDZEQUE2RDtRQUN0RCxlQUFVLEdBQWEsS0FB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bnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94VHlwZSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250ZW50IH0gZnJvbSAnLi4vZGlhbG9nL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uL3ZpZXctb3ZlcmxheS92aWV3LW92ZXJsYXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG50eXBlIFNhdmVTb3VyY2UgPSAncHJpbWFyeSd8J2FsdGVybmF0ZSc7XHJcblxyXG5leHBvcnQgdHlwZSBDdXN0b21BY3Rpb25SZXN1bHQgPSB7XHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG4gIGlzU3VjY2VzczogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29udGV4dCB7XHJcbiAgLyoqIElkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gY29uZmlybSBjb21wb25lbnQgY29udGV4dHMgZW1pdHRlZCBieSB0aGUgZGlhbG9nIHNlcnZpY2UgKi9cclxuICBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogT3B0aW9uYWwgdGl0bGUgb2YgdGhlIGNvbmZpcm0gKi9cclxuICBwdWJsaWMgdGl0bGU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBtZXNzYWdlICovXHJcbiAgcHVibGljIG1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBjaGVja0NvbmZpcm1cclxuICAgKiB0aGlzIHdpbGwgZGV0ZXJtaW5lIGlmIGVjLWNoZWNrYm94IGlzIGF2YWlsYWJsZSBvciBub1xyXG4gICAqIGluIG9yZGVyIHRvIGRlbGV0ZSBvciBtb3ZlIHRvIG5vIHBhcmVudCB0aGUgZW50aXR5XHJcbiAgICovXHJcbiAgcHVibGljIGNoZWNrQ29uZmlybT86Ym9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogY2hlY2tib3hDb250ZW50XHJcbiAgICogRGV0ZXJtaW5lIHRoZSBsYWJlbCBuZXh0IHRvIHRoZSBjaGVja2JveFxyXG4gICAqIGlmIGNoZWNrQ29uZmlybSBpcyB0cnVlIG90aGVyd2lzZSBpcyBub3QgdmlzaWJsZVxyXG4gICAqL1xyXG5cclxuICBwdWJsaWMgY2hlY2tib3hUZXh0PzpzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggdHlwZSwgdGhpcyB3aWxsIGRldGVybWluZSB3aGV0aGVyXHJcbiAgICogYW4gaW5wdXQgaXMgdmlzaWJsZSBvciBub3RcclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGJveFR5cGU/OiBUZXh0Ym94VHlwZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggbGFiZWwgKi9cclxuICBwdWJsaWMgdGV4dGJveExhYmVsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCByZXF1aXJlZCBmbGFnIGZvciB0aGUgdGV4dGJveCwgd2lsbCBzZXRcclxuICAgKiBhIHZhbGlkYXRvciBvbiB0aGUgaW5wdXQgaWYgdHJ1ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UmVxdWlyZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhcnJheSBvZiB2YWxpZGF0b3JzIHRvIGFkZCB0byB0aGUgdGV4dGJveCBmb3JtIGNvbnRyb2wuICovXHJcbiAgcHVibGljIHRleHRib3hWYWxpZGF0b3JzPzogVmFsaWRhdG9yRm5bXTtcclxuXHJcbiAgLyoqIFNldHMgdGhlIHRleHRib3gncyB1cHBlcmNhc2UgcGFyYW1ldGVyICovXHJcbiAgcHVibGljIHRleHRib3hVcHBlcmNhc2U/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggaGVpZ2h0IChpbiByb3dzKS5cclxuICAgKiBPbmx5IGFwcGxpZXMgdG8gbXVsdGktbGluZSB0eXBlLlxyXG4gICAqIERlZmF1bHQgMy5cclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGFyZWFSb3dzPzogbnVtYmVyID0gMztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggcGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBlcnJvciBtZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0ZXh0Ym94ICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25FcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBWYWx1ZSByZXR1cm5lZCBmcm9tIHRoZSBpbnB1dCBpZiBlbmFibGVkICovXHJcbiAgcHVibGljIHRleHRib3hWYWx1ZT86IHN0cmluZztcclxuICBwdWJsaWMgY2hlY2tib3hWYWx1ZT86Ym9vbGVhbjtcclxuICBwdWJsaWMgY29uZmlybUxhYmVsPzpzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBzYXZlIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBzYXZlTGFiZWw/OiBzdHJpbmcgPSAnU2F2ZSc7IC8vIExPQ09cclxuXHJcbiAgLyoqIE9wdGlvbmFsIHNhdmUgYnV0dG9uIHR5cGUgKi9cclxuICBwdWJsaWMgc2F2ZUJ1dHRvblR5cGU/OiBCdXR0b25UeXBlID0gJ3ByaW1hcnknO1xyXG5cclxuICAvKiogT3B0aW9uYWwgY2FuY2VsIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBjYW5jZWxMYWJlbD86IHN0cmluZyA9ICdDYW5jZWwnOyAvLyBMT0NPXHJcblxyXG4gIC8qKiBPcHRpb25hbCBmbGFnIGZvciBoaWRpbmcgdGhlIGNhbmNlbCAoc2Vjb25kYXJ5KSBidXR0b24gKi9cclxuICBwdWJsaWMgaGlkZUNhbmNlbD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqIFdoZW4gdHJ1ZSwgYWRkcyB0aGUgc3VibWl0IHRhZyB0byB0aGUgc2F2ZSBidXR0b24gc28gaGl0dGluZyBlbnRlciB0cmlnZ2VycyB0aGUgc2F2ZSAqL1xyXG4gIHB1YmxpYyBzYXZlT25FbnRlcj86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGFsdGVybmF0ZSBzYXZlIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBhbHRlcm5hdGVTYXZlTGFiZWw/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhbHRlcm5hdGUgc2F2ZSBidXR0b24gdHlwZSAqL1xyXG4gIHB1YmxpYyBhbHRlcm5hdGVTYXZlQnV0dG9uVHlwZT86IEJ1dHRvblR5cGUgPSB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIFVzZWQgdG8ga25vdyB3aGljaCBzYXZlIGJ1dHRvbiB3YXMgc2VsZWN0ZWQgaW4gY2FzZSB0aGUgY2FsbGluZyBjb21wb25lbnRcclxuICAgKiBpcyB1dGlsaXppbmcgdGhlIGFsdGVybmF0ZSBzYXZlIGJ1dHRvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBzYXZlU291cmNlPzogU2F2ZVNvdXJjZSA9ICdwcmltYXJ5JztcclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBwcm92aWRlZCwgdGhlIGNvbmZpcm0gd2lsbCBzaG93IGEgcGVuZGluZyBzdGF0ZSBhbmQgY2FsbCB0aGlzLCB0aGVuIHVwb25cclxuICAgKiBjb21wbGV0aW9uIGRpc3BsYXkgdGhlIHJlc3VsdCBtZXNzYWdlIGFuZCBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWRcclxuICAgKiBzdWNjZXNzZnVsbHksIHRoZSBjbG9zZSBidXR0b24gd2lsbCBlbWl0IG9uRGlhbG9nU2F2ZS4gSWYgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQsXHJcbiAgICogdGhlIGNsb3NlIGJ1dHRvbiB3aWxsIGVtaXQgb25EaWFsb2dDYW5jZWwuXHJcbiAgICovXHJcbiAgcHVibGljIGlubGluZUNvbmZpcm1BY3Rpb24/OiAoKSA9PiBQcm9taXNlPEN1c3RvbUFjdGlvblJlc3VsdD47XHJcblxyXG4gIC8qKiBUaGUgbWVzc2FnZSB0byBiZSBkaXNwbGF5ZWQgd2hpbGUgaW5saW5lQ29uZmlybUFjdGlvbiBpcyBwZW5kaW5nLiAqL1xyXG4gIHB1YmxpYyBpbmxpbmVDb25maXJtUGVuZGluZ01lc3NhZ2U/OiBzdHJpbmcgPSAnJztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy1jb25maXJtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlybS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBEaWFsb2dDb250ZW50PENvbmZpcm1EaWFsb2dDb250ZXh0PiwgT25EZXN0cm95e1xyXG5cclxuICBwdWJsaWMgZGlhbG9nSWQ6IHN0cmluZyA9ICdDb25maXJtJztcclxuXHJcbiAgLyoqIEZvcm0gR3JvdXAgdG8gaG9sZCBhbnkgZm9ybSBjb250cm9scyBuZWVkZWQgKi9cclxuICBwdWJsaWMgZm9ybUdyb3VwOiBVbnR5cGVkRm9ybUdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xyXG5cclxuICBwdWJsaWMgc3RhdHVzID0gbmV3IE92ZXJsYXkoJ2hhc0RhdGEnKTtcclxuXHJcbiAgcHVibGljIHNob3dUZXh0Qm94OmJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb3ZpZGVkIGJ5IHRoZSBjYWxsaW5nIGNvbXBvbmVudCB0byB0ZWxsIHRoZSBjb25maXJtIHdoYXQgdG8gc2hvd1xyXG4gICAqIGFuZCBpcyB1c2VkIG9uIHNhdmUgdG8gc2VuZCBiYWNrIGFueSBlbnRlcmVkIHZhbHVlcyBmcm9tIHRoZSB1c2VyXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGNvbnRleHQhOiBDb25maXJtRGlhbG9nQ29udGV4dDtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRpYWxvZ1NhdmU6IEV2ZW50RW1pdHRlcjxDb25maXJtRGlhbG9nQ29udGV4dD4gPSBuZXcgRXZlbnRFbWl0dGVyPENvbmZpcm1EaWFsb2dDb250ZXh0PigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25EaWFsb2dDYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIG9uT3BlbihvcGVuQ29udGV4dD86IENvbmZpcm1EaWFsb2dDb250ZXh0KTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRleHQgPSBvcGVuQ29udGV4dCE7XHJcbiAgICB0aGlzLmRpYWxvZ0lkID0gb3BlbkNvbnRleHQhLmlkO1xyXG5cclxuICAgIGlmICh0aGlzLmNvbnRleHQuYWx0ZXJuYXRlU2F2ZUxhYmVsKSB7XHJcbiAgICAgIHRoaXMuY29udGV4dC5zYXZlT25FbnRlciA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIEVycm9yIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgZXJyb3IgYmFubmVyICovXHJcbiAgcHVibGljIGVycm9yPzogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFkZEZvcm1Db250cm9scygpO1xyXG4gICAgdGhpcy5zZXRWYWxpZGF0aW9ucygpO1xyXG4gICAgdGhpcy5saXN0ZW5DaGVja0JveCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2F2ZShzb3VyY2U6IFNhdmVTb3VyY2UpOiB2b2lkIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwLm1hcmtBbGxBc1RvdWNoZWQoKTtcclxuXHJcbiAgICBpZiAodGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcclxuICAgICAgbGV0IGZvcm1WYWx1ZXMgPSB0aGlzLmZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpO1xyXG4gICAgICBpZiAoZm9ybVZhbHVlcy50ZXh0Ym94KSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0LnRleHRib3hWYWx1ZSA9IGZvcm1WYWx1ZXMudGV4dGJveDtcclxuICAgICAgfVxyXG4gICAgICBpZih0aGlzLmNvbnRleHQuY2hlY2tDb25maXJtKSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0LmNoZWNrYm94VmFsdWUgPSBmb3JtVmFsdWVzLmNoZWNrYm94ID8gZm9ybVZhbHVlcy5jaGVja2JveCA6IGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbnRleHQuc2F2ZVNvdXJjZSA9IHNvdXJjZTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmNvbnRleHQuaW5saW5lQ29uZmlybUFjdGlvbikge1xyXG4gICAgICAgIHRoaXMuZG9JbmxpbmVDb25maXJtQWN0aW9uKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5vbkRpYWxvZ1NhdmUuZW1pdCh0aGlzLmNvbnRleHQpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29udGV4dC52YWxpZGF0aW9uRXJyb3JNZXNzYWdlKSB7XHJcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLmNvbnRleHQudmFsaWRhdGlvbkVycm9yTWVzc2FnZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25EaWFsb2dDYW5jZWwuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsaXN0ZW5DaGVja0JveCgpOnZvaWQge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAuZ2V0KCdjaGVja2JveCcpPy52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLnNob3dUZXh0Qm94ID0gdmFsdWU7XHJcbiAgICAgIHRoaXMuc2V0VmFsaWRhdGlvbnMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRWYWxpZGF0aW9ucygpOnZvaWQge1xyXG4gICAgaWYodGhpcy5zaG93VGV4dEJveCl7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWyd0ZXh0Ym94J10/LmVuYWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ3RleHRib3gnXT8uZGlzYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkcyB0aGUgdGV4dGJveCBmb3JtIGNvbnRyb2wgdG8gb3VyIGZvcm0gZ3JvdXAgaWYgaXRzIGNvbmZpZ3VyZWQgdG8gYmUgdmlzaWJsZVxyXG4gICAqIFdpbGwgYWxzbyBhZGQgdGhlIHJlcXVpcmVkIHZhbGlkYXRvciBpZiByZXF1ZXN0ZWRcclxuICAgKi9cclxuICBwcml2YXRlIGFkZEZvcm1Db250cm9scygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbnRleHQudGV4dGJveFR5cGUpIHtcclxuICAgICAgbGV0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBbXTtcclxuICAgICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94UmVxdWlyZWQpIHtcclxuICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94VmFsaWRhdG9ycykge1xyXG4gICAgICAgIHZhbGlkYXRvcnMucHVzaCguLi50aGlzLmNvbnRleHQudGV4dGJveFZhbGlkYXRvcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ3RleHRib3gnLCBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCB2YWxpZGF0b3JzKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYodGhpcy5jb250ZXh0LmNoZWNrQ29uZmlybSl7XHJcbiAgICAgIHRoaXMuc2hvd1RleHRCb3ggPSBmYWxzZTtcclxuICAgICAgY29uc3QgY2hlY2tib3hDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ2NoZWNrYm94JywgY2hlY2tib3hDb250cm9sKTsgICAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgZG9JbmxpbmVDb25maXJtQWN0aW9uKCkge1xyXG4gICAgdGhpcy5zdGF0dXMuc2V0U3RhdHVzKCdwZW5kaW5nJywgdGhpcy5jb250ZXh0LmlubGluZUNvbmZpcm1QZW5kaW5nTWVzc2FnZSk7XHJcblxyXG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY29udGV4dC5pbmxpbmVDb25maXJtQWN0aW9uISgpO1xyXG5cclxuICAgIHRoaXMuc3RhdHVzLnNldFN0YXR1cygnbm9EYXRhJywgcmVzdWx0Lm1lc3NhZ2UsIHtcclxuICAgICAgaWQ6ICdpbmxpbmVDb25maXJtQ2xvc2UnLFxyXG4gICAgICBsYWJlbDogJ0Nsb3NlJyxcclxuICAgICAgaWNvbjogcmVzdWx0LmlzU3VjY2VzcyA/ICdpY29uLWNoZWNrLWNpcmNsZScgOiAnaWNvbi1lcnJvcicsXHJcbiAgICAgIGNsYXNzbGlzdDogcmVzdWx0LmlzU3VjY2VzcyA/ICdmb250LWNvbG9yLXN1Y2Nlc3MnIDogJ2ZvbnQtY29sb3ItZXJyb3InLFxyXG4gICAgICBvbkNsaWNrOiAoKSA9PiB7IHJlc3VsdC5pc1N1Y2Nlc3MgPyB0aGlzLm9uRGlhbG9nU2F2ZS5lbWl0KHRoaXMuY29udGV4dCkgOiB0aGlzLm9uRGlhbG9nQ2FuY2VsLmVtaXQoKSB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPHNlY3Rpb24gZWNPdmVybGF5XHJcbiAgICAgICAgIFtzdGF0dXNdPVwic3RhdHVzPy5zdGF0dXNcIlxyXG4gICAgICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgICAgICBbYWN0aW9uXT1cInN0YXR1cz8uYWN0aW9uXCJcclxuICAgICAgICAgW25vRGF0YVRlbXBsYXRlXT1cImlubGluZUNvbmZpcm1SZXN1bHRcIlxyXG4gICAgICAgICBvdmVybGF5Q2xhc3NMaXN0PVwicC0wXCJcclxuICAgICAgICAgY2xhc3M9XCJiZy1ib2R5IGZsZXgtZ3JvdyBkLWZsZXhcIj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIGNsYXNzPVwiZmxleC1ncm93IGZsZXgtY29sdW1uIGNvbmZpcm0tY29udGVudCB0ZXh0LWJvZHktMVwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJmbGV4LWdyb3dcIj5cclxuICAgICAgPGgyIGNsYXNzPVwiZm9udC13ZWlnaHQtYm9sZCBtYi0zXCIgKm5nSWY9XCJjb250ZXh0Py50aXRsZVwiPnt7Y29udGV4dD8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCJlcnJvclwiIFt0ZXh0XT1cImVycm9yIHwgdHJhbnNsYXRlXCIgYmFubmVyU3R5bGU9XCJub3JtYWxcIiBjbGFzcz1cIm1iLTNcIj48L2VjLWJhbm5lcj5cclxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRleHQ/Lm1lc3NhZ2VcIiBbaW5uZXJIdG1sXT1cImNvbnRleHQ/Lm1lc3NhZ2UgfCB0cmFuc2xhdGVcIiBjbGFzcz1cIm1iLTNcIj48L2Rpdj5cclxuICAgICAgXHJcbiAgICAgIDxlYy1jaGVja2JveCAqbmdJZj1cImNvbnRleHQ/LmNoZWNrQ29uZmlybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Nb2RlbF09XCJmb3JtR3JvdXAuZ2V0KCdjaGVja2JveCcpXCJcclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY29uZmlybUNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uY2hlY2tib3hUZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2VjLWNoZWNrYm94PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RleHRCb3hcIiBbaW5uZXJIdG1sXT1cImNvbnRleHQuY29uZmlybUxhYmVsXCIgY2xhc3M9XCJtYi0zXCI+PC9kaXY+XHJcbiAgICAgIDxlYy10ZXh0Ym94IGlkPVwiY29uZmlybVRleHRib3hcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIihjb250ZXh0Py50ZXh0Ym94VHlwZSAmJiAhY29udGV4dD8uY2hlY2tDb25maXJtKSB8fCBzaG93VGV4dEJveFwiXHJcbiAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtmb3JtTW9kZWxdPVwiZm9ybUdyb3VwLmdldCgndGV4dGJveCcpXCJcclxuICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImNvbnRleHQ/LnRleHRib3hSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py50ZXh0Ym94TGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCJjb250ZXh0Py50ZXh0Ym94VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtyb3dzXT1cImNvbnRleHQ/LnRleHRhcmVhUm93c1wiXHJcbiAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250ZXh0Py50ZXh0Ym94UGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgICBbdXBwZXJDYXNlXT1cImNvbnRleHQ/LnRleHRib3hVcHBlcmNhc2VcIj5cclxuICAgICAgPC9lYy10ZXh0Ym94PlxyXG4gICAgPC9zZWN0aW9uPlxyXG4gICAgPGZvb3RlciBjbGFzcz1cIm10LWF1dG8gZmxleC1zaHJpbmsgZC1mbGV4IHB5LTIgZmxleC1yb3ctcmV2ZXJzZVwiPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwic2F2ZUNvbmZpcm1CdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLTJcIlxyXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCJjb250ZXh0Py5zYXZlQnV0dG9uVHlwZSA/IGNvbnRleHQ/LnNhdmVCdXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRleHQ/LnNhdmVMYWJlbCA/IGNvbnRleHQ/LnNhdmVMYWJlbCA6ICdTYXZlJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwiIWNvbnRleHQ/LnRleHRib3hUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgW2lzU3VibWl0XT1cImNvbnRleHQ/LnNhdmVPbkVudGVyXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25TYXZlKCdwcmltYXJ5JylcIj5cclxuICAgICAgPC9lYy1idXR0b24+XHJcbiAgICAgIDxlYy1idXR0b24gaWQ9XCJhbHRlcm5hdGVTYXZlQ29uZmlybUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUJ1dHRvblR5cGUgPyBjb250ZXh0Py5hbHRlcm5hdGVTYXZlQnV0dG9uVHlwZSA6ICdwcmltYXJ5J1wiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5hbHRlcm5hdGVTYXZlTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvblNhdmUoJ2FsdGVybmF0ZScpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgICA8ZWMtYnV0dG9uICAqbmdJZj1cIiFjb250ZXh0Py5oaWRlQ2FuY2VsXCJcclxuICAgICAgICAgICAgICAgICAgaWQ9XCJjYW5jZWxDb25maXJtQnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC1hdXRvXCJcclxuICAgICAgICAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5jYW5jZWxMYWJlbCA/IGNvbnRleHQ/LmNhbmNlbExhYmVsIDogJ0NhbmNlbCdcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvbkNhbmNlbCgpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgPC9mb290ZXI+XHJcbiAgPC9mb3JtPlxyXG48L3NlY3Rpb24+XHJcblxyXG48bmctdGVtcGxhdGUgI2lubGluZUNvbmZpcm1SZXN1bHQ+XHJcbiAgPHNlY3Rpb24gY2xhc3M9XCJmbGV4LWdyb3cgYWxpZ24tc2VsZi1zdHJldGNoIGNvbmZpcm0tY29udGVudCB0ZXh0LWJvZHktMVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICA8aSBjbGFzcz1cImVjLWljb24ge3tzdGF0dXM/LmFjdGlvbj8uaWNvbn19IHt7c3RhdHVzPy5hY3Rpb24/LmNsYXNzbGlzdH19IGlubGluZS1jb25maXJtLXJlc3VsdC1pY29uXCI+PC9pPlxyXG4gICAgICA8ZGl2IFtpbm5lckhUTUxdPVwic3RhdHVzPy5tZXNzYWdlIHwgdHJhbnNsYXRlXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggcHQtMiBtdC1hdXRvXCI+XHJcbiAgICAgIDxlYy1idXR0b24gaWQ9XCJpbmxpbmVDb25maXJtQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgIGxhYmVsPVwiQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwic3RhdHVzPy5hY3Rpb24/Lm9uQ2xpY2shKClcIlxyXG4gICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvc2VjdGlvbj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS9jb25maXJtL2NvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTL0IsTUFBTSxPQUFPLG9CQUFvQjtJQUFqQztRQUNFLHlGQUF5RjtRQUNsRixPQUFFLEdBQVcsRUFBRSxDQUFDO1FBK0J2Qjs7O1dBR0c7UUFDSSxvQkFBZSxHQUFhLEtBQUssQ0FBQztRQUt6Qyw2Q0FBNkM7UUFDdEMscUJBQWdCLEdBQWEsS0FBSyxDQUFDO1FBRTFDOzs7O1dBSUc7UUFDSSxpQkFBWSxHQUFZLENBQUMsQ0FBQztRQWFqQyxpQ0FBaUM7UUFDMUIsY0FBUyxHQUFZLE1BQU0sQ0FBQyxDQUFDLE9BQU87UUFFM0MsZ0NBQWdDO1FBQ3pCLG1CQUFjLEdBQWdCLFNBQVMsQ0FBQztRQUUvQyxtQ0FBbUM7UUFDNUIsZ0JBQVcsR0FBWSxRQUFRLENBQUMsQ0FBQyxPQUFPO1FBRS9DLDZEQUE2RDtRQUN0RCxlQUFVLEdBQWEsS0FB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QUFTOytCQUNFLFlBQVk7MEVBcUJOLE9BQU87c0JBQXRCLEtBQUs7Z0JBRVcsWUFBWTtzQkFBNUIsTUFBTTtnQkFDVSxjQUFjO3NCQUE5QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94VHlwZSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250ZW50IH0gZnJvbSAnLi4vZGlhbG9nL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uL3ZpZXctb3ZlcmxheS92aWV3LW92ZXJsYXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG50eXBlIFNhdmVTb3VyY2UgPSAncHJpbWFyeSd8J2FsdGVybmF0ZSc7XHJcblxyXG5leHBvcnQgdHlwZSBDdXN0b21BY3Rpb25SZXN1bHQgPSB7XHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG4gIGlzU3VjY2VzczogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29udGV4dCB7XHJcbiAgLyoqIElkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gY29uZmlybSBjb21wb25lbnQgY29udGV4dHMgZW1pdHRlZCBieSB0aGUgZGlhbG9nIHNlcnZpY2UgKi9cclxuICBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogT3B0aW9uYWwgdGl0bGUgb2YgdGhlIGNvbmZpcm0gKi9cclxuICBwdWJsaWMgdGl0bGU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBtZXNzYWdlICovXHJcbiAgcHVibGljIG1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBjaGVja0NvbmZpcm1cclxuICAgKiB0aGlzIHdpbGwgZGV0ZXJtaW5lIGlmIGVjLWNoZWNrYm94IGlzIGF2YWlsYWJsZSBvciBub1xyXG4gICAqIGluIG9yZGVyIHRvIGRlbGV0ZSBvciBtb3ZlIHRvIG5vIHBhcmVudCB0aGUgZW50aXR5XHJcbiAgICovXHJcbiAgcHVibGljIGNoZWNrQ29uZmlybT86Ym9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogY2hlY2tib3hDb250ZW50XHJcbiAgICogRGV0ZXJtaW5lIHRoZSBsYWJlbCBuZXh0IHRvIHRoZSBjaGVja2JveFxyXG4gICAqIGlmIGNoZWNrQ29uZmlybSBpcyB0cnVlIG90aGVyd2lzZSBpcyBub3QgdmlzaWJsZVxyXG4gICAqL1xyXG5cclxuICBwdWJsaWMgY2hlY2tib3hUZXh0PzpzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggdHlwZSwgdGhpcyB3aWxsIGRldGVybWluZSB3aGV0aGVyXHJcbiAgICogYW4gaW5wdXQgaXMgdmlzaWJsZSBvciBub3RcclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGJveFR5cGU/OiBUZXh0Ym94VHlwZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggbGFiZWwgKi9cclxuICBwdWJsaWMgdGV4dGJveExhYmVsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCByZXF1aXJlZCBmbGFnIGZvciB0aGUgdGV4dGJveCwgd2lsbCBzZXRcclxuICAgKiBhIHZhbGlkYXRvciBvbiB0aGUgaW5wdXQgaWYgdHJ1ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UmVxdWlyZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhcnJheSBvZiB2YWxpZGF0b3JzIHRvIGFkZCB0byB0aGUgdGV4dGJveCBmb3JtIGNvbnRyb2wuICovXHJcbiAgcHVibGljIHRleHRib3hWYWxpZGF0b3JzPzogVmFsaWRhdG9yRm5bXTtcclxuXHJcbiAgLyoqIFNldHMgdGhlIHRleHRib3gncyB1cHBlcmNhc2UgcGFyYW1ldGVyICovXHJcbiAgcHVibGljIHRleHRib3hVcHBlcmNhc2U/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggaGVpZ2h0IChpbiByb3dzKS5cclxuICAgKiBPbmx5IGFwcGxpZXMgdG8gbXVsdGktbGluZSB0eXBlLlxyXG4gICAqIERlZmF1bHQgMy5cclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGFyZWFSb3dzPzogbnVtYmVyID0gMztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggcGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBlcnJvciBtZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0ZXh0Ym94ICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25FcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBWYWx1ZSByZXR1cm5lZCBmcm9tIHRoZSBpbnB1dCBpZiBlbmFibGVkICovXHJcbiAgcHVibGljIHRleHRib3hWYWx1ZT86IHN0cmluZztcclxuICBwdWJsaWMgY2hlY2tib3hWYWx1ZT86Ym9vbGVhbjtcclxuICBwdWJsaWMgY29uZmlybUxhYmVsPzpzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBzYXZlIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBzYXZlTGFiZWw/OiBzdHJpbmcgPSAnU2F2ZSc7IC8vIExPQ09cclxuXHJcbiAgLyoqIE9wdGlvbmFsIHNhdmUgYnV0dG9uIHR5cGUgKi9cclxuICBwdWJsaWMgc2F2ZUJ1dHRvblR5cGU/OiBCdXR0b25UeXBlID0gJ3ByaW1hcnknO1xyXG5cclxuICAvKiogT3B0aW9uYWwgY2FuY2VsIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBjYW5jZWxMYWJlbD86IHN0cmluZyA9ICdDYW5jZWwnOyAvLyBMT0NPXHJcblxyXG4gIC8qKiBPcHRpb25hbCBmbGFnIGZvciBoaWRpbmcgdGhlIGNhbmNlbCAoc2Vjb25kYXJ5KSBidXR0b24gKi9cclxuICBwdWJsaWMgaGlkZUNhbmNlbD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqIFdoZW4gdHJ1ZSwgYWRkcyB0aGUgc3VibWl0IHRhZyB0byB0aGUgc2F2ZSBidXR0b24gc28gaGl0dGluZyBlbnRlciB0cmlnZ2VycyB0aGUgc2F2ZSAqL1xyXG4gIHB1YmxpYyBzYXZlT25FbnRlcj86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGFsdGVybmF0ZSBzYXZlIGJ1dHRvbiBsYWJlbCAqL1xyXG4gIHB1YmxpYyBhbHRlcm5hdGVTYXZlTGFiZWw/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhbHRlcm5hdGUgc2F2ZSBidXR0b24gdHlwZSAqL1xyXG4gIHB1YmxpYyBhbHRlcm5hdGVTYXZlQnV0dG9uVHlwZT86IEJ1dHRvblR5cGUgPSB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIFVzZWQgdG8ga25vdyB3aGljaCBzYXZlIGJ1dHRvbiB3YXMgc2VsZWN0ZWQgaW4gY2FzZSB0aGUgY2FsbGluZyBjb21wb25lbnRcclxuICAgKiBpcyB1dGlsaXppbmcgdGhlIGFsdGVybmF0ZSBzYXZlIGJ1dHRvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBzYXZlU291cmNlPzogU2F2ZVNvdXJjZSA9ICdwcmltYXJ5JztcclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBwcm92aWRlZCwgdGhlIGNvbmZpcm0gd2lsbCBzaG93IGEgcGVuZGluZyBzdGF0ZSBhbmQgY2FsbCB0aGlzLCB0aGVuIHVwb25cclxuICAgKiBjb21wbGV0aW9uIGRpc3BsYXkgdGhlIHJlc3VsdCBtZXNzYWdlIGFuZCBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIHByb21pc2UgaXMgcmVzb2x2ZWRcclxuICAgKiBzdWNjZXNzZnVsbHksIHRoZSBjbG9zZSBidXR0b24gd2lsbCBlbWl0IG9uRGlhbG9nU2F2ZS4gSWYgdGhlIHByb21pc2UgaXMgcmVqZWN0ZWQsXHJcbiAgICogdGhlIGNsb3NlIGJ1dHRvbiB3aWxsIGVtaXQgb25EaWFsb2dDYW5jZWwuXHJcbiAgICovXHJcbiAgcHVibGljIGlubGluZUNvbmZpcm1BY3Rpb24/OiAoKSA9PiBQcm9taXNlPEN1c3RvbUFjdGlvblJlc3VsdD47XHJcblxyXG4gIC8qKiBUaGUgbWVzc2FnZSB0byBiZSBkaXNwbGF5ZWQgd2hpbGUgaW5saW5lQ29uZmlybUFjdGlvbiBpcyBwZW5kaW5nLiAqL1xyXG4gIHB1YmxpYyBpbmxpbmVDb25maXJtUGVuZGluZ01lc3NhZ2U/OiBzdHJpbmcgPSAnJztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy1jb25maXJtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlybS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBEaWFsb2dDb250ZW50PENvbmZpcm1EaWFsb2dDb250ZXh0PiwgT25EZXN0cm95e1xyXG5cclxuICBwdWJsaWMgZGlhbG9nSWQ6IHN0cmluZyA9ICdDb25maXJtJztcclxuXHJcbiAgLyoqIEZvcm0gR3JvdXAgdG8gaG9sZCBhbnkgZm9ybSBjb250cm9scyBuZWVkZWQgKi9cclxuICBwdWJsaWMgZm9ybUdyb3VwOiBVbnR5cGVkRm9ybUdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xyXG5cclxuICBwdWJsaWMgc3RhdHVzID0gbmV3IE92ZXJsYXkoJ2hhc0RhdGEnKTtcclxuXHJcbiAgcHVibGljIHNob3dUZXh0Qm94OmJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICAvKipcclxuICAgKiBQcm92aWRlZCBieSB0aGUgY2FsbGluZyBjb21wb25lbnQgdG8gdGVsbCB0aGUgY29uZmlybSB3aGF0IHRvIHNob3dcclxuICAgKiBhbmQgaXMgdXNlZCBvbiBzYXZlIHRvIHNlbmQgYmFjayBhbnkgZW50ZXJlZCB2YWx1ZXMgZnJvbSB0aGUgdXNlclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250ZXh0ITogQ29uZmlybURpYWxvZ0NvbnRleHQ7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25EaWFsb2dTYXZlOiBFdmVudEVtaXR0ZXI8Q29uZmlybURpYWxvZ0NvbnRleHQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDb25maXJtRGlhbG9nQ29udGV4dD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG9uRGlhbG9nQ2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHB1YmxpYyBvbk9wZW4ob3BlbkNvbnRleHQ/OiBDb25maXJtRGlhbG9nQ29udGV4dCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZXh0ID0gb3BlbkNvbnRleHQhO1xyXG4gICAgdGhpcy5kaWFsb2dJZCA9IG9wZW5Db250ZXh0IS5pZDtcclxuICAgIHRoaXMuc2hvd1RleHRCb3ggPSB0aGlzLmNvbnRleHQuY2hlY2tDb25maXJtID8gZmFsc2UgOiB0cnVlO1xyXG5cclxuICAgIGlmICh0aGlzLmNvbnRleHQuYWx0ZXJuYXRlU2F2ZUxhYmVsKSB7XHJcbiAgICAgIHRoaXMuY29udGV4dC5zYXZlT25FbnRlciA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIEVycm9yIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgZXJyb3IgYmFubmVyICovXHJcbiAgcHVibGljIGVycm9yPzogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFkZEZvcm1Db250cm9scygpO1xyXG4gICAgdGhpcy5zZXRWYWxpZGF0aW9ucygpO1xyXG4gICAgdGhpcy5saXN0ZW5DaGVja0JveCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2F2ZShzb3VyY2U6IFNhdmVTb3VyY2UpOiB2b2lkIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwLm1hcmtBbGxBc1RvdWNoZWQoKTtcclxuXHJcbiAgICBpZiAodGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcclxuICAgICAgbGV0IGZvcm1WYWx1ZXMgPSB0aGlzLmZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpO1xyXG4gICAgICBpZiAoZm9ybVZhbHVlcy50ZXh0Ym94KSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0LnRleHRib3hWYWx1ZSA9IGZvcm1WYWx1ZXMudGV4dGJveDtcclxuICAgICAgfVxyXG4gICAgICBpZih0aGlzLmNvbnRleHQuY2hlY2tDb25maXJtKSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0LmNoZWNrYm94VmFsdWUgPSBmb3JtVmFsdWVzLmNoZWNrYm94ID8gZm9ybVZhbHVlcy5jaGVja2JveCA6IGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbnRleHQuc2F2ZVNvdXJjZSA9IHNvdXJjZTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmNvbnRleHQuaW5saW5lQ29uZmlybUFjdGlvbikge1xyXG4gICAgICAgIHRoaXMuZG9JbmxpbmVDb25maXJtQWN0aW9uKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5vbkRpYWxvZ1NhdmUuZW1pdCh0aGlzLmNvbnRleHQpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29udGV4dC52YWxpZGF0aW9uRXJyb3JNZXNzYWdlKSB7XHJcbiAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLmNvbnRleHQudmFsaWRhdGlvbkVycm9yTWVzc2FnZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25EaWFsb2dDYW5jZWwuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsaXN0ZW5DaGVja0JveCgpOnZvaWQge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAuZ2V0KCdjaGVja2JveCcpPy52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLnNob3dUZXh0Qm94ID0gdmFsdWU7XHJcbiAgICAgIHRoaXMuc2V0VmFsaWRhdGlvbnMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRWYWxpZGF0aW9ucygpOnZvaWQge1xyXG4gICAgaWYodGhpcy5zaG93VGV4dEJveCl7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWyd0ZXh0Ym94J10/LmVuYWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ3RleHRib3gnXT8uZGlzYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkcyB0aGUgdGV4dGJveCBmb3JtIGNvbnRyb2wgdG8gb3VyIGZvcm0gZ3JvdXAgaWYgaXRzIGNvbmZpZ3VyZWQgdG8gYmUgdmlzaWJsZVxyXG4gICAqIFdpbGwgYWxzbyBhZGQgdGhlIHJlcXVpcmVkIHZhbGlkYXRvciBpZiByZXF1ZXN0ZWRcclxuICAgKi9cclxuICBwcml2YXRlIGFkZEZvcm1Db250cm9scygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbnRleHQudGV4dGJveFR5cGUpIHtcclxuICAgICAgbGV0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBbXTtcclxuICAgICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94UmVxdWlyZWQpIHtcclxuICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94VmFsaWRhdG9ycykge1xyXG4gICAgICAgIHZhbGlkYXRvcnMucHVzaCguLi50aGlzLmNvbnRleHQudGV4dGJveFZhbGlkYXRvcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ3RleHRib3gnLCBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCB2YWxpZGF0b3JzKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYodGhpcy5jb250ZXh0LmNoZWNrQ29uZmlybSl7XHJcbiAgICAgIHRoaXMuc2hvd1RleHRCb3ggPSBmYWxzZTtcclxuICAgICAgY29uc3QgY2hlY2tib3hDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ2NoZWNrYm94JywgY2hlY2tib3hDb250cm9sKTsgICAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgZG9JbmxpbmVDb25maXJtQWN0aW9uKCkge1xyXG4gICAgdGhpcy5zdGF0dXMuc2V0U3RhdHVzKCdwZW5kaW5nJywgdGhpcy5jb250ZXh0LmlubGluZUNvbmZpcm1QZW5kaW5nTWVzc2FnZSk7XHJcblxyXG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY29udGV4dC5pbmxpbmVDb25maXJtQWN0aW9uISgpO1xyXG5cclxuICAgIHRoaXMuc3RhdHVzLnNldFN0YXR1cygnbm9EYXRhJywgcmVzdWx0Lm1lc3NhZ2UsIHtcclxuICAgICAgaWQ6ICdpbmxpbmVDb25maXJtQ2xvc2UnLFxyXG4gICAgICBsYWJlbDogJ0Nsb3NlJyxcclxuICAgICAgaWNvbjogcmVzdWx0LmlzU3VjY2VzcyA/ICdpY29uLWNoZWNrLWNpcmNsZScgOiAnaWNvbi1lcnJvcicsXHJcbiAgICAgIGNsYXNzbGlzdDogcmVzdWx0LmlzU3VjY2VzcyA/ICdmb250LWNvbG9yLXN1Y2Nlc3MnIDogJ2ZvbnQtY29sb3ItZXJyb3InLFxyXG4gICAgICBvbkNsaWNrOiAoKSA9PiB7IHJlc3VsdC5pc1N1Y2Nlc3MgPyB0aGlzLm9uRGlhbG9nU2F2ZS5lbWl0KHRoaXMuY29udGV4dCkgOiB0aGlzLm9uRGlhbG9nQ2FuY2VsLmVtaXQoKSB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPHNlY3Rpb24gZWNPdmVybGF5XHJcbiAgICAgICAgIFtzdGF0dXNdPVwic3RhdHVzPy5zdGF0dXNcIlxyXG4gICAgICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgICAgICBbYWN0aW9uXT1cInN0YXR1cz8uYWN0aW9uXCJcclxuICAgICAgICAgW25vRGF0YVRlbXBsYXRlXT1cImlubGluZUNvbmZpcm1SZXN1bHRcIlxyXG4gICAgICAgICBvdmVybGF5Q2xhc3NMaXN0PVwicC0wXCJcclxuICAgICAgICAgY2xhc3M9XCJiZy1ib2R5IGZsZXgtZ3JvdyBkLWZsZXhcIj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIGNsYXNzPVwiZmxleC1ncm93IGZsZXgtY29sdW1uIGNvbmZpcm0tY29udGVudCB0ZXh0LWJvZHktMVwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJmbGV4LWdyb3dcIj5cclxuICAgICAgPGgyIGNsYXNzPVwiZm9udC13ZWlnaHQtYm9sZCBtYi0zXCIgKm5nSWY9XCJjb250ZXh0Py50aXRsZVwiPnt7Y29udGV4dD8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCJlcnJvclwiIFt0ZXh0XT1cImVycm9yIHwgdHJhbnNsYXRlXCIgYmFubmVyU3R5bGU9XCJub3JtYWxcIiBjbGFzcz1cIm1iLTNcIj48L2VjLWJhbm5lcj5cclxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRleHQ/Lm1lc3NhZ2VcIiBbaW5uZXJIdG1sXT1cImNvbnRleHQ/Lm1lc3NhZ2UgfCB0cmFuc2xhdGVcIiBjbGFzcz1cIm1iLTNcIj48L2Rpdj5cclxuICAgICAgXHJcbiAgICAgIDxlYy1jaGVja2JveCAqbmdJZj1cImNvbnRleHQ/LmNoZWNrQ29uZmlybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Nb2RlbF09XCJmb3JtR3JvdXAuZ2V0KCdjaGVja2JveCcpXCJcclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY29uZmlybUNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uY2hlY2tib3hUZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2VjLWNoZWNrYm94PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RleHRCb3hcIiBbaW5uZXJIdG1sXT1cImNvbnRleHQuY29uZmlybUxhYmVsXCIgY2xhc3M9XCJtYi0zXCI+PC9kaXY+XHJcbiAgICAgIDxlYy10ZXh0Ym94IGlkPVwiY29uZmlybVRleHRib3hcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIihjb250ZXh0Py50ZXh0Ym94VHlwZSAmJiAhY29udGV4dD8uY2hlY2tDb25maXJtKSB8fCBzaG93VGV4dEJveFwiXHJcbiAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtmb3JtTW9kZWxdPVwiZm9ybUdyb3VwLmdldCgndGV4dGJveCcpXCJcclxuICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImNvbnRleHQ/LnRleHRib3hSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py50ZXh0Ym94TGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCJjb250ZXh0Py50ZXh0Ym94VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtyb3dzXT1cImNvbnRleHQ/LnRleHRhcmVhUm93c1wiXHJcbiAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250ZXh0Py50ZXh0Ym94UGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgICBbdXBwZXJDYXNlXT1cImNvbnRleHQ/LnRleHRib3hVcHBlcmNhc2VcIj5cclxuICAgICAgPC9lYy10ZXh0Ym94PlxyXG4gICAgPC9zZWN0aW9uPlxyXG4gICAgPGZvb3RlciBjbGFzcz1cIm10LWF1dG8gZmxleC1zaHJpbmsgZC1mbGV4IHB5LTIgZmxleC1yb3ctcmV2ZXJzZVwiPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwic2F2ZUNvbmZpcm1CdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLTJcIlxyXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCJjb250ZXh0Py5zYXZlQnV0dG9uVHlwZSA/IGNvbnRleHQ/LnNhdmVCdXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImNvbnRleHQ/LnNhdmVMYWJlbCA/IGNvbnRleHQ/LnNhdmVMYWJlbCA6ICdTYXZlJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwiIWNvbnRleHQ/LnRleHRib3hUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgW2lzU3VibWl0XT1cImNvbnRleHQ/LnNhdmVPbkVudGVyXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25TYXZlKCdwcmltYXJ5JylcIj5cclxuICAgICAgPC9lYy1idXR0b24+XHJcbiAgICAgIDxlYy1idXR0b24gaWQ9XCJhbHRlcm5hdGVTYXZlQ29uZmlybUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUJ1dHRvblR5cGUgPyBjb250ZXh0Py5hbHRlcm5hdGVTYXZlQnV0dG9uVHlwZSA6ICdwcmltYXJ5J1wiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5hbHRlcm5hdGVTYXZlTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvblNhdmUoJ2FsdGVybmF0ZScpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgICA8ZWMtYnV0dG9uICAqbmdJZj1cIiFjb250ZXh0Py5oaWRlQ2FuY2VsXCJcclxuICAgICAgICAgICAgICAgICAgaWQ9XCJjYW5jZWxDb25maXJtQnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC1hdXRvXCJcclxuICAgICAgICAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5jYW5jZWxMYWJlbCA/IGNvbnRleHQ/LmNhbmNlbExhYmVsIDogJ0NhbmNlbCdcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvbkNhbmNlbCgpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgPC9mb290ZXI+XHJcbiAgPC9mb3JtPlxyXG48L3NlY3Rpb24+XHJcblxyXG48bmctdGVtcGxhdGUgI2lubGluZUNvbmZpcm1SZXN1bHQ+XHJcbiAgPHNlY3Rpb24gY2xhc3M9XCJmbGV4LWdyb3cgYWxpZ24tc2VsZi1zdHJldGNoIGNvbmZpcm0tY29udGVudCB0ZXh0LWJvZHktMVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICA8aSBjbGFzcz1cImVjLWljb24ge3tzdGF0dXM/LmFjdGlvbj8uaWNvbn19IHt7c3RhdHVzPy5hY3Rpb24/LmNsYXNzbGlzdH19IGlubGluZS1jb25maXJtLXJlc3VsdC1pY29uXCI+PC9pPlxyXG4gICAgICA8ZGl2IFtpbm5lckhUTUxdPVwic3RhdHVzPy5tZXNzYWdlIHwgdHJhbnNsYXRlXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggcHQtMiBtdC1hdXRvXCI+XHJcbiAgICAgIDxlYy1idXR0b24gaWQ9XCJpbmxpbmVDb25maXJtQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgIGxhYmVsPVwiQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwic3RhdHVzPy5hY3Rpb24/Lm9uQ2xpY2shKClcIlxyXG4gICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvc2VjdGlvbj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { Component, ContentChildren, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
|
2
|
-
import {
|
2
|
+
import { isEqual } from 'lodash';
|
3
3
|
import { Subject } from 'rxjs';
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
5
5
|
import { ResizableColumnComponent } from './resizable-column.component';
|
@@ -77,7 +77,7 @@ export class TableComponent {
|
|
77
77
|
if (this.sortable && changes.sort && changes.sort.currentValue && !changes.sort.firstChange) {
|
78
78
|
const newValue = changes.sort.currentValue;
|
79
79
|
if (!this.currentSort || !isEqual(newValue, this.currentSort)) {
|
80
|
-
this.onSort(newValue);
|
80
|
+
this.onSort(newValue.field, newValue.direction);
|
81
81
|
}
|
82
82
|
}
|
83
83
|
}
|
@@ -126,14 +126,7 @@ export class TableComponent {
|
|
126
126
|
if (th.classList.contains('is-resizable') && event.target && event.target.classList.contains('handle')) {
|
127
127
|
return;
|
128
128
|
}
|
129
|
-
|
130
|
-
if (th.classList.contains('is-sorted-desc')) {
|
131
|
-
direction = 'asc';
|
132
|
-
}
|
133
|
-
else {
|
134
|
-
direction = 'desc';
|
135
|
-
}
|
136
|
-
this.onSort({ field, direction });
|
129
|
+
this.onSort(field);
|
137
130
|
});
|
138
131
|
// Store unlisten function to remove listener when component is destroyed
|
139
132
|
this.unlisteners.push(unlisten);
|
@@ -145,7 +138,7 @@ export class TableComponent {
|
|
145
138
|
});
|
146
139
|
// Set the initial sort
|
147
140
|
if (this.sort) {
|
148
|
-
this.onSort(this.sort);
|
141
|
+
this.onSort(this.sort.field, this.sort.direction);
|
149
142
|
}
|
150
143
|
}
|
151
144
|
/**
|
@@ -154,29 +147,32 @@ export class TableComponent {
|
|
154
147
|
* Emit the current field and direction of the sorted column
|
155
148
|
* @param field
|
156
149
|
*/
|
157
|
-
onSort(
|
158
|
-
this.
|
159
|
-
if (Array.isArray(sort)) {
|
160
|
-
sort.forEach(s => this.applySort(s));
|
161
|
-
}
|
162
|
-
else {
|
163
|
-
this.applySort(sort);
|
164
|
-
}
|
165
|
-
this.currentSort = cloneDeep(sort);
|
166
|
-
this.sortChange.emit(this.currentSort);
|
167
|
-
}
|
168
|
-
clearSort() {
|
169
|
-
Object.values(this.sortableCols).forEach(th => {
|
170
|
-
this.renderer.removeClass(th, `is-sorted-asc`);
|
171
|
-
this.renderer.removeClass(th, `is-sorted-desc`);
|
172
|
-
});
|
173
|
-
}
|
174
|
-
applySort(sort) {
|
175
|
-
const th = this.sortableCols[sort.field];
|
150
|
+
onSort(field, direction) {
|
151
|
+
const th = this.sortableCols[field];
|
176
152
|
if (!th) {
|
177
153
|
return;
|
178
154
|
}
|
179
|
-
this.
|
155
|
+
if (this.currentSort && this.currentSort.field !== field) {
|
156
|
+
this.renderer.removeClass(this.sortableCols[this.currentSort.field], `is-sorted-${this.currentSort.direction}`);
|
157
|
+
}
|
158
|
+
if (th.classList.contains('is-sorted-desc')) {
|
159
|
+
this.renderer.removeClass(th, 'is-sorted-desc');
|
160
|
+
if (!direction) {
|
161
|
+
direction = 'asc';
|
162
|
+
}
|
163
|
+
}
|
164
|
+
else {
|
165
|
+
if (th.classList.contains('is-sorted-asc')) {
|
166
|
+
this.renderer.removeClass(th, 'is-sorted-asc');
|
167
|
+
}
|
168
|
+
if (!direction) {
|
169
|
+
direction = 'desc';
|
170
|
+
}
|
171
|
+
}
|
172
|
+
this.renderer.addClass(th, `is-sorted-${direction}`);
|
173
|
+
const sortEvent = { field: field, direction: direction };
|
174
|
+
this.currentSort = sortEvent;
|
175
|
+
this.sortChange.emit(sortEvent);
|
180
176
|
}
|
181
177
|
initSelectable() {
|
182
178
|
this.selectionContext.rowCheckboxes.valueChanges.pipe(takeUntil(this.destroyed)).subscribe((value) => {
|
@@ -245,4 +241,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
245
241
|
type: Input,
|
246
242
|
args: ['resizableColumns']
|
247
243
|
}] } });
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQW9ELGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdPLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBZXZFLE1BQU0sT0FBTyxjQUFjO0lBNEd6QixZQUFvQixRQUFtQixFQUFTLEVBQWM7UUFBMUMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFTLE9BQUUsR0FBRixFQUFFLENBQVk7UUExR3JELE9BQUUsR0FBRyxFQUFFLENBQUM7UUFFakI7OztXQUdHO1FBRU0sZUFBVSxHQUFHLEtBQUssQ0FBQztRQUU1Qjs7O1dBR0c7UUFFTSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTNCOzs7O1dBSUc7UUFFTSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FrQkc7UUFFTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBYTFCLGlEQUFpRDtR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bnRJbml0LCBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY2xvbmVEZWVwLCBpc0VxdWFsIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJlc2l6YWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vcmVzaXphYmxlLWNvbHVtbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZU1hc3RlclJvd0NvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtbWFzdGVyLXJvdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZVNlbGVjdGFibGVSb3dDb250ZXh0IH0gZnJvbSAnLi90YWJsZS1zZWxlY3RhYmxlLXJvdy5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IHR5cGUgVGFibGVTb3J0RGlyZWN0aW9uID0gJ2Rlc2MnIHwgJ2FzYyc7XHJcbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVTb3J0IHtcclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIGRpcmVjdGlvbjogVGFibGVTb3J0RGlyZWN0aW9uO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdHtcclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxyXG4gIEBJbnB1dCgpIGlkID0gJyc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZXMgdGFibGUgc2Nyb2xsaW5nIHdpdGggYSBzdGlja3kgaGVhZGVyIGFuZCBmb290ZXIuIFVzZVxyXG4gICAqIDx0aGVhZD4gYW5kIDx0Zm9vdD4gZWxlbWVudHMgZm9yIHN0eWxlcyB0byBiZSBhcHBsaWVkIGNvcnJlY3RseS4gXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zY3JvbGxhYmxlJylcclxuICBASW5wdXQoKSBzY3JvbGxhYmxlID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogRW5hYmxlcyByZXNpemFibGUgdGFibGUgY29sdW1ucy4gQXBwbHkgdGhlICdpcy1yZXNpemFibGUnIGNsYXNzXHJcbiAgICogdG8gdGhlIDx0aD4gb2YgYSB0YWJsZSBjb2x1bW4gdGhhbiBjYW4gYmUgcmVzaXplZC5cclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXJlc2l6YWJsZScpXHJcbiAgQElucHV0KCkgcmVzaXphYmxlID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqIFxyXG4gICAqIFR1cm5zIG9uIGNvbmRlbnNlZCB0YWJsZSBzdHlsaW5nLiBCeSBkZWZhdWx0IGEgY29uZGVuc2VkIHRhYmxlXHJcbiAgICogaGFzIG5vIHJvdyBib3JkZXJzLiBUbyBzaG93IGJvcmRlcnMsIGFwcGx5IHRoZSAnaGFzLWJvcmRlcnMnIGNsYXNzXHJcbiAgICogdG8gdGhlIDxlYy10YWJsZT4gZWxlbWVudFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtY29uZGVuc2VkJylcclxuICBASW5wdXQoKSBjb25kZW5zZWQgPSBmYWxzZTtcclxuICBcclxuICAvKiogXHJcbiAgICogRW5hYmxlcyBzb3J0aW5nIGJ5IGNsaWNraW5nIG9uIHRhYmxlIGNvbHVtbnMuIFRvIG1ha2UgYSBjb2x1bW4gc29ydGFibGVcclxuICAgKiBhcHBseSB0aGUgYGRhdGEtc29ydGFibGVgIGF0dHJpYnV0ZSB0byB0aGUgY29sdW1ucyBgPHRoPmAgZWxlbWVudCB3aXRoIFxyXG4gICAqIHRoZSB2YWx1ZSBvZiB0aGUgZmllbGQgdXNlZCB0byBzb3J0IHRoZSBjb2x1bW4uIFdoZW4gYSBjb2x1bW4gaXMgY2xpY2tlZFxyXG4gICAqIHRoZSBmaWVsZHMgYW5kIGN1cnJlbnQgc29ydCBkaXJlY3Rpb24gaXMgZW1pdHRlZCBmcm9tIHRoZSBgc29ydENoYW5nZWBcclxuICAgKiBvdXRwdXRcclxuICAgKiBcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqIGBgYGh0bWxcclxuICAgKiA8ZWMtdGFibGUgW3NvcnRhYmxlXT1cInRydWVcIiBbc29ydF09XCJjdXJyZW50U29ydFwiIChzb3J0Q2hhbmdlKT1cIm9uU29ydCgkZXZlbnQpXCI+XHJcbiAgICogIDx0aGVhZD5cclxuICAgKiAgICA8dGggZGF0YS1zb3J0YWJsZT1cIm5hbWVcIj5OYW1lPC90aD5cclxuICAgKiAgICA8dGggZGF0YS1zb3J0YWJsZT1cInF0eVwiPlF0eS48L3RoPlxyXG4gICAqICAgIDx0aCBkYXRhLXNvcnRhYmxlPVwicHJpY2VcIj5QcmljZTwvdGg+XHJcbiAgICogIDwvdGhlYWQ+XHJcbiAgICogIC4uLlxyXG4gICAqIDwvZWMtdGFibGU+XHJcbiAgICogYGBgXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zb3J0YWJsZScpXHJcbiAgQElucHV0KCkgc29ydGFibGUgPSBmYWxzZTtcclxuICBcclxuICAvKipcclxuICAgKiBTaGFyZWQgY29udGV4dCBvZiBUYWJsZVNlbGVjdGFibGVSb3dDb21wb25lbnRzIGluIHRoZSB0YWJsZS4gV2lsbCB0dXJuIG9uIGhpZ2hsaWdodGluZyBvbiByb3cgaG92ZXIuXHJcbiAgICogQWRkIHRoZSBgVGFibGVTZWxlY3RhYmxlUm93Q29tcG9uZW50YCB0byB0aGUgdGFibGUgY29udGVudCB0byBhZGQgY2hlY2tib3hlcyB0byBlYWNoIHJvdyBhbmQgYXNzaWduIGEgXHJcbiAgICogVGVtcGxhdGVSZWYgdG8gdGhlIGBbc2VsZWN0aW9uVG9vbGJhclRlbXBsYXRlXWAgaW5wdXQgdGhhdCBpbmNsdWRlcyBhY3Rpb25zIHRvIHRha2Ugb24gc2VsZWN0ZWQgaXRlbXMgXHJcbiAgICogdGhhdCB3aWxsIGFwcGVhciBvdmVyIHRoZSB0YWJsZSBoZWFkZXIgd2hlbiAxIG9yIG1vcmUgcm93cyBhcmUgc2VsZWN0ZWQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgc2VsZWN0aW9uQ29udGV4dD86IFRhYmxlU2VsZWN0YWJsZVJvd0NvbnRleHQ7XHJcblxyXG4gIC8qKiBJbmNsdWRlIGFjdGlvbnMgdG8gZGlzcGxheSBpbiBhIGJhciBvdmVyIHRoZSB0YWJsZSBoZWFkZXIgd2hlbiAxIG9yIG1vcmUgcm93cyBhcmUgc2VsZWN0ZWQuIFJlcXVpcmVzIGBbc2VsZWN0aW9uQ29udGV4dF1gIHRvIGJlIGRlZmluZWQgKi9cclxuICBASW5wdXQoKSBzZWxlY3Rpb25Ub29sYmFyVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIFxyXG4gIC8qKiBTZXQgdG8gdHJ1ZSBpZiBzZWxlY3Rpb25Db250ZXh0IGlzIGRlZmluZWQgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNlbGVjdGFibGUnKVxyXG4gIEBJbnB1dCgpIHNlbGVjdGFibGUgPSBmYWxzZTtcclxuXHJcbiAgLyoqIEhpZGVzL3Nob3dzIHRoZSBzZWxlY3Rpb24gdG9vbGJhciB0ZW1wbGF0ZSB3aGVuIDEgb3IgbW9yZSByb3dzIGlzIHNlbGVjdGVkICovXHJcbiAgaGFzU2VsZWN0aW9uID0gZmFsc2VcclxuXHJcbiAgLyoqXHJcbiAgICogRW5hYmxlcyBmb3JtIHRhYmxlIHN0eWxpbmcgdG8gYWxsb3cgZm9ybSBjb250cm9scyBpbnNpZGUgdGFibGUgY2VsbHMuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1mb3JtLXRhYmxlJylcclxuICBASW5wdXQoKSBpc0Zvcm0gPSBmYWxzZTtcclxuICBcclxuICAvKipcclxuICAgKiBUaGUgY3VycmVudCBzb3J0IGZpZWxkIGFuZCBkaXJlY3Rpb24gKCdkZXNjJyBvciAnYXNjJylcclxuICAgKi9cclxuICBASW5wdXQoKSBzb3J0PzogVGFibGVTb3J0IHwgVGFibGVTb3J0W107XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBuZXcgc29ydCB2YWx1ZSB3aGVuZXZlciBhIHNvcnRhYmxlIGNvbHVtbiBpcyBjbGlja2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNvcnRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUYWJsZVNvcnQgfCBUYWJsZVNvcnRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRydWUgaWYgYSBUYWJsZU1hc3RlclJvd0NvbXBvbmVudCBleGlzdHMgaW4gdGhlIHRhYmxlIGNvbnRlbnRcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLW1hc3Rlci1kZXRhaWwnKSBoYXNNYXN0ZXJEZXRhaWxSb3dzID0gZmFsc2U7XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oVGFibGVNYXN0ZXJSb3dDb21wb25lbnQsIHtkZXNjZW5kYW50czogdHJ1ZX0pIG1hc3RlclJvd3MhOiBRdWVyeUxpc3Q8VGFibGVNYXN0ZXJSb3dDb21wb25lbnQ+O1xyXG5cclxuICBwdWJsaWMgcmVzaXphYmxlQ29sdW1ucyE6IFF1ZXJ5TGlzdDxSZXNpemFibGVDb2x1bW5Db21wb25lbnQ+O1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oUmVzaXphYmxlQ29sdW1uQ29tcG9uZW50LCB7ZGVzY2VuZGFudHM6IHRydWV9KSBfcmVzaXphYmxlQ29sdW1ucyE6IFF1ZXJ5TGlzdDxSZXNpemFibGVDb2x1bW5Db21wb25lbnQ+O1xyXG5cclxuICBASW5wdXQoJ3Jlc2l6YWJsZUNvbHVtbnMnKSBzZWFyY2hhYmxlVGFibGVSZXNpemFibGVDb2x1bW5zPzogUXVlcnlMaXN0PFJlc2l6YWJsZUNvbHVtbkNvbXBvbmVudD47XHJcblxyXG4gIC8qKlxyXG4gICAqIFVubGlzdGVuIGZ1bmN0aW9uIHJldHVybmVkIGJ5IGByZW5kZXJlci5saXN0ZW4oKWAgdGhhdCBhcmUgY2FsbGVkXHJcbiAgICogT25EZXN0cm95IHRvIGNsZWFuIHVwIGFsbCBsaXN0ZW5lcnNcclxuICAgKi9cclxuICBwcml2YXRlIHVubGlzdGVuZXJzOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xyXG4gIFxyXG4gIC8qKiBUaGUgY3VycmVudCBzb3J0IHZhbHVlICovXHJcbiAgcHJpdmF0ZSBjdXJyZW50U29ydD86IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdO1xyXG4gIFxyXG4gIC8qKiBBIG1hcCBvZiBzb3J0YWJsZSBgPHRoPmAgZWxlbWVudHMgKi9cclxuICBwcml2YXRlIHNvcnRhYmxlQ29sczoge1tmaWVsZDogc3RyaW5nXTogSFRNTFRhYmxlSGVhZGVyQ2VsbEVsZW1lbnR9ID0ge307XHJcblxyXG4gIHByaXZhdGUgZGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHB1YmxpYyBlbDogRWxlbWVudFJlZikge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc29ydGFibGUgJiYgY2hhbmdlcy5zb3J0ICYmIGNoYW5nZXMuc29ydC5jdXJyZW50VmFsdWUgJiYgIWNoYW5nZXMuc29ydC5maXJzdENoYW5nZSkge1xyXG4gICAgICBjb25zdCBuZXdWYWx1ZTogVGFibGVTb3J0IHwgVGFibGVTb3J0W10gPSBjaGFuZ2VzLnNvcnQuY3VycmVudFZhbHVlO1xyXG4gICAgICBpZiAoIXRoaXMuY3VycmVudFNvcnQgfHwgIWlzRXF1YWwobmV3VmFsdWUsIHRoaXMuY3VycmVudFNvcnQpKXtcclxuICAgICAgICB0aGlzLm9uU29ydChuZXdWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaGFzTWFzdGVyRGV0YWlsUm93cyA9ICEhdGhpcy5tYXN0ZXJSb3dzLmxlbmd0aDtcclxuICAgIFxyXG4gICAgdGhpcy5tYXN0ZXJSb3dzLmNoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmhhc01hc3RlckRldGFpbFJvd3MgPSAhIXRoaXMubWFzdGVyUm93cy5sZW5ndGg7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnJlc2l6YWJsZUNvbHVtbnMgPSB0aGlzLnNlYXJjaGFibGVUYWJsZVJlc2l6YWJsZUNvbHVtbnMgfHwgdGhpcy5fcmVzaXphYmxlQ29sdW1ucztcclxuICB9XHJcbiAgXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc29ydGFibGUpIHtcclxuICAgICAgdGhpcy5pbml0U29ydGFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5zZWxlY3RhYmxlKSB7XHJcbiAgICAgIHRoaXMuaW5pdFNlbGVjdGFibGUoKTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy51bmxpc3RlbmVycy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy51bmxpc3RlbmVycy5mb3JFYWNoKHVubGlzdGVuID0+IHVubGlzdGVuKCkpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3llZC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IGFsbCBlbGVtZW50cyBpbnNpZGUgdGhlIGhvc3QgZWxlbWVudCB0aGF0IG1hdGNoIGEgc2VsZWN0b3IgXHJcbiAgICogQHBhcmFtIHNlbGVjdG9yIC0gQW55IHZhbGlkIHNlbGVjdG9yIGZvciBbcXVlcnlTZWxlY3RvckFsbF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0RvY3VtZW50L3F1ZXJ5U2VsZWN0b3JBbGwpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBxdWVyeUVsZW1lbnRzPFQ+KHNlbGVjdG9yOiBzdHJpbmcpOiBUW10ge1xyXG4gICAgY29uc3QgdGFibGUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0YWJsZS5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdG9yZSBhIGA8dGg+YCBmb3IgZWFjaCBzb3J0YWJsZSBjb2x1bW4gYW5kIGF0dGFjaCBhIGNsaWNrXHJcbiAgICogZXZlbnQgbGlzdGVuZXIuIFxyXG4gICAqL1xyXG4gIHByaXZhdGUgaW5pdFNvcnRhYmxlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5xdWVyeUVsZW1lbnRzPEhUTUxUYWJsZUhlYWRlckNlbGxFbGVtZW50PigndGgnKS5mb3JFYWNoKHRoID0+IHtcclxuICAgICAgaWYgKHRoLmhhc0F0dHJpYnV0ZSgnZGF0YS1zb3J0ZmllbGQnKSkge1xyXG4gICAgICAgIFxyXG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGguZ2V0QXR0cmlidXRlKCdkYXRhLXNvcnRmaWVsZCcpO1xyXG4gICAgICAgIGlmIChmaWVsZCkge1xyXG4gICAgICAgICAgdGhpcy5zb3J0YWJsZUNvbHNbZmllbGRdID0gdGg7XHJcbiAgICAgICAgICBjb25zdCB1bmxpc3RlbiA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoLCAnY2xpY2snLCAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcclxuXHJcbiAgICAgICAgICAgIC8vIERvIG5vdCBzb3J0IGlmIHRoZSBldmVudCB0YXJnZXQgd2FzIHRoZSByZXNpemFibGUgaGFuZGxlXHJcbiAgICAgICAgICAgIGlmICh0aC5jbGFzc0xpc3QuY29udGFpbnMoJ2lzLXJlc2l6YWJsZScpICYmIGV2ZW50LnRhcmdldCAmJiAoPEhUTUxFbGVtZW50PmV2ZW50LnRhcmdldCkuY2xhc3NMaXN0LmNvbnRhaW5zKCdoYW5kbGUnKSkge1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGV0IGRpcmVjdGlvbjogVGFibGVTb3J0RGlyZWN0aW9uO1xyXG5cclxuICAgICAgICAgICAgaWYgKHRoLmNsYXNzTGlzdC5jb250YWlucygnaXMtc29ydGVkLWRlc2MnKSkge1xyXG4gICAgICAgICAgICAgIGRpcmVjdGlvbiA9ICdhc2MnO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGRpcmVjdGlvbiA9ICdkZXNjJztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5vblNvcnQoeyBmaWVsZCwgZGlyZWN0aW9uIH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgICAvLyBTdG9yZSB1bmxpc3RlbiBmdW5jdGlvbiB0byByZW1vdmUgbGlzdGVuZXIgd2hlbiBjb21wb25lbnQgaXMgZGVzdHJveWVkXHJcbiAgICAgICAgICB0aGlzLnVubGlzdGVuZXJzLnB1c2godW5saXN0ZW4pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGBkYXRhLXNvcnRmaWVsZCBhdHRyaWJ1dGUgd2FzIG5vdCBhc3NpZ25lZCBhIHZhbHVlLmAsIHRoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIC8vIFNldCB0aGUgaW5pdGlhbCBzb3J0XHJcbiAgICBpZiAodGhpcy5zb3J0KSB7XHJcbiAgICAgIHRoaXMub25Tb3J0KHRoaXMuc29ydCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGaW5kIHRoZSBzb3J0ZWQgY29sdW1uIGFuZCBhcHBseSB0aGUgZGVzYyBvciBhc2MgY2xhc3MgaW4gb3JkZXJcclxuICAgKiB0byBzaG93IHRoZSBjb3JyZWN0IHNvcnQgaWNvbi4gSWYgYW5vdGhlciBmaWVsZCB3YXMgc29ydGVkLCByZXNldCBpdC5cclxuICAgKiBFbWl0IHRoZSBjdXJyZW50IGZpZWxkIGFuZCBkaXJlY3Rpb24gb2YgdGhlIHNvcnRlZCBjb2x1bW5cclxuICAgKiBAcGFyYW0gZmllbGQgXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvblNvcnQoc29ydDogVGFibGVTb3J0IHwgVGFibGVTb3J0W10pOiB2b2lkIHtcclxuICAgIHRoaXMuY2xlYXJTb3J0KCk7XHJcblxyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoc29ydCkpIHtcclxuICAgICAgc29ydC5mb3JFYWNoKHMgPT4gdGhpcy5hcHBseVNvcnQocykpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hcHBseVNvcnQoc29ydCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jdXJyZW50U29ydCA9IGNsb25lRGVlcChzb3J0KTtcclxuICAgIHRoaXMuc29ydENoYW5nZS5lbWl0KHRoaXMuY3VycmVudFNvcnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhclNvcnQoKSB7XHJcbiAgICBPYmplY3QudmFsdWVzKHRoaXMuc29ydGFibGVDb2xzKS5mb3JFYWNoKHRoID0+IHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aCwgYGlzLXNvcnRlZC1hc2NgKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aCwgYGlzLXNvcnRlZC1kZXNjYCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlTb3J0KHNvcnQ6IFRhYmxlU29ydCkge1xyXG4gICAgY29uc3QgdGggPSB0aGlzLnNvcnRhYmxlQ29sc1tzb3J0LmZpZWxkXTtcclxuICAgIGlmICghdGgpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aCwgYGlzLXNvcnRlZC0ke3NvcnQuZGlyZWN0aW9ufWApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0U2VsZWN0YWJsZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0aW9uQ29udGV4dCEucm93Q2hlY2tib3hlcy52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUoKHZhbHVlOiBib29sZWFuW10pID0+IHtcclxuICAgICAgdGhpcy5oYXNTZWxlY3Rpb24gPSB2YWx1ZS5zb21lKHYgPT4gdik7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlbGVjdGFibGUtdGFibGUtdG9vbGJhclwiXHJcbiAgICAgKm5nSWY9XCJoYXNTZWxlY3Rpb24gJiYgc2VsZWN0aW9uVG9vbGJhclRlbXBsYXRlXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuPGRpdiBpZD1cInt7aWR9fS1zY3JvbGwtY29udGFpbmVyXCIgXHJcbiAgICAgY2xhc3M9XCJ0YWJsZS1zY3JvbGwtY29udGFpbmVyXCI+XHJcbiAgPHRhYmxlIGNsYXNzPVwibWFpbi10YWJsZVwiXHJcbiAgICAgICAgIGlkPVwie3tpZH19XCJcclxuICAgICAgICAgW2VjUmVzaXphYmxlVGFibGVdPVwicmVzaXphYmxlXCJcclxuICAgICAgICAgW2NvbnRhaW5lckVsXT1cImVsXCJcclxuICAgICAgICAgW3NvcnRhYmxlVGFibGVdPVwic29ydGFibGVcIlxyXG4gICAgICAgICBbcmVzaXphYmxlQ29sdW1uc109XCJyZXNpemFibGVDb2x1bW5zXCI+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC90YWJsZT5cclxuPC9kaXY+Il19
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQW9ELGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdPLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFldkUsTUFBTSxPQUFPLGNBQWM7SUE0R3pCLFlBQW9CLFFBQW1CLEVBQVMsRUFBYztRQUExQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQTFHckQsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUVqQjs7O1dBR0c7UUFFTSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRTVCOzs7V0FHRztRQUVNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFM0I7Ozs7V0FJRztRQUVNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFM0I7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQWtCRztRQUVNLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFhMUIsaURBQWlEO1FBRXhDLGVBQVUs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b3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzRXF1YWwgfSBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUmVzaXphYmxlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNpemFibGUtY29sdW1uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYmxlTWFzdGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYmxlU2VsZWN0YWJsZVJvd0NvbnRleHQgfSBmcm9tICcuL3RhYmxlLXNlbGVjdGFibGUtcm93LmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgdHlwZSBUYWJsZVNvcnREaXJlY3Rpb24gPSAnZGVzYycgfCAnYXNjJztcclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZVNvcnQge1xyXG4gIGZpZWxkOiBzdHJpbmc7XHJcbiAgZGlyZWN0aW9uOiBUYWJsZVNvcnREaXJlY3Rpb247XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0e1xyXG4gIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXHJcbiAgQElucHV0KCkgaWQgPSAnJztcclxuXHJcbiAgLyoqXHJcbiAgICogRW5hYmxlcyB0YWJsZSBzY3JvbGxpbmcgd2l0aCBhIHN0aWNreSBoZWFkZXIgYW5kIGZvb3Rlci4gVXNlXHJcbiAgICogPHRoZWFkPiBhbmQgPHRmb290PiBlbGVtZW50cyBmb3Igc3R5bGVzIHRvIGJlIGFwcGxpZWQgY29ycmVjdGx5LiBcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNjcm9sbGFibGUnKVxyXG4gIEBJbnB1dCgpIHNjcm9sbGFibGUgPSBmYWxzZTtcclxuICBcclxuICAvKipcclxuICAgKiBFbmFibGVzIHJlc2l6YWJsZSB0YWJsZSBjb2x1bW5zLiBBcHBseSB0aGUgJ2lzLXJlc2l6YWJsZScgY2xhc3NcclxuICAgKiB0byB0aGUgPHRoPiBvZiBhIHRhYmxlIGNvbHVtbiB0aGFuIGNhbiBiZSByZXNpemVkLlxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcmVzaXphYmxlJylcclxuICBASW5wdXQoKSByZXNpemFibGUgPSBmYWxzZTtcclxuICBcclxuICAvKiogXHJcbiAgICogVHVybnMgb24gY29uZGVuc2VkIHRhYmxlIHN0eWxpbmcuIEJ5IGRlZmF1bHQgYSBjb25kZW5zZWQgdGFibGVcclxuICAgKiBoYXMgbm8gcm93IGJvcmRlcnMuIFRvIHNob3cgYm9yZGVycywgYXBwbHkgdGhlICdoYXMtYm9yZGVycycgY2xhc3NcclxuICAgKiB0byB0aGUgPGVjLXRhYmxlPiBlbGVtZW50XHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1jb25kZW5zZWQnKVxyXG4gIEBJbnB1dCgpIGNvbmRlbnNlZCA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKiBcclxuICAgKiBFbmFibGVzIHNvcnRpbmcgYnkgY2xpY2tpbmcgb24gdGFibGUgY29sdW1ucy4gVG8gbWFrZSBhIGNvbHVtbiBzb3J0YWJsZVxyXG4gICAqIGFwcGx5IHRoZSBgZGF0YS1zb3J0YWJsZWAgYXR0cmlidXRlIHRvIHRoZSBjb2x1bW5zIGA8dGg+YCBlbGVtZW50IHdpdGggXHJcbiAgICogdGhlIHZhbHVlIG9mIHRoZSBmaWVsZCB1c2VkIHRvIHNvcnQgdGhlIGNvbHVtbi4gV2hlbiBhIGNvbHVtbiBpcyBjbGlja2VkXHJcbiAgICogdGhlIGZpZWxkcyBhbmQgY3VycmVudCBzb3J0IGRpcmVjdGlvbiBpcyBlbWl0dGVkIGZyb20gdGhlIGBzb3J0Q2hhbmdlYFxyXG4gICAqIG91dHB1dFxyXG4gICAqIFxyXG4gICAqIEBleGFtcGxlXHJcbiAgICogYGBgaHRtbFxyXG4gICAqIDxlYy10YWJsZSBbc29ydGFibGVdPVwidHJ1ZVwiIFtzb3J0XT1cImN1cnJlbnRTb3J0XCIgKHNvcnRDaGFuZ2UpPVwib25Tb3J0KCRldmVudClcIj5cclxuICAgKiAgPHRoZWFkPlxyXG4gICAqICAgIDx0aCBkYXRhLXNvcnRhYmxlPVwibmFtZVwiPk5hbWU8L3RoPlxyXG4gICAqICAgIDx0aCBkYXRhLXNvcnRhYmxlPVwicXR5XCI+UXR5LjwvdGg+XHJcbiAgICogICAgPHRoIGRhdGEtc29ydGFibGU9XCJwcmljZVwiPlByaWNlPC90aD5cclxuICAgKiAgPC90aGVhZD5cclxuICAgKiAgLi4uXHJcbiAgICogPC9lYy10YWJsZT5cclxuICAgKiBgYGBcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNvcnRhYmxlJylcclxuICBASW5wdXQoKSBzb3J0YWJsZSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIFNoYXJlZCBjb250ZXh0IG9mIFRhYmxlU2VsZWN0YWJsZVJvd0NvbXBvbmVudHMgaW4gdGhlIHRhYmxlLiBXaWxsIHR1cm4gb24gaGlnaGxpZ2h0aW5nIG9uIHJvdyBob3Zlci5cclxuICAgKiBBZGQgdGhlIGBUYWJsZVNlbGVjdGFibGVSb3dDb21wb25lbnRgIHRvIHRoZSB0YWJsZSBjb250ZW50IHRvIGFkZCBjaGVja2JveGVzIHRvIGVhY2ggcm93IGFuZCBhc3NpZ24gYSBcclxuICAgKiBUZW1wbGF0ZVJlZiB0byB0aGUgYFtzZWxlY3Rpb25Ub29sYmFyVGVtcGxhdGVdYCBpbnB1dCB0aGF0IGluY2x1ZGVzIGFjdGlvbnMgdG8gdGFrZSBvbiBzZWxlY3RlZCBpdGVtcyBcclxuICAgKiB0aGF0IHdpbGwgYXBwZWFyIG92ZXIgdGhlIHRhYmxlIGhlYWRlciB3aGVuIDEgb3IgbW9yZSByb3dzIGFyZSBzZWxlY3RlZC5cclxuICAgKi9cclxuICBASW5wdXQoKSBzZWxlY3Rpb25Db250ZXh0PzogVGFibGVTZWxlY3RhYmxlUm93Q29udGV4dDtcclxuXHJcbiAgLyoqIEluY2x1ZGUgYWN0aW9ucyB0byBkaXNwbGF5IGluIGEgYmFyIG92ZXIgdGhlIHRhYmxlIGhlYWRlciB3aGVuIDEgb3IgbW9yZSByb3dzIGFyZSBzZWxlY3RlZC4gUmVxdWlyZXMgYFtzZWxlY3Rpb25Db250ZXh0XWAgdG8gYmUgZGVmaW5lZCAqL1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgXHJcbiAgLyoqIFNldCB0byB0cnVlIGlmIHNlbGVjdGlvbkNvbnRleHQgaXMgZGVmaW5lZCAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2VsZWN0YWJsZScpXHJcbiAgQElucHV0KCkgc2VsZWN0YWJsZSA9IGZhbHNlO1xyXG5cclxuICAvKiogSGlkZXMvc2hvd3MgdGhlIHNlbGVjdGlvbiB0b29sYmFyIHRlbXBsYXRlIHdoZW4gMSBvciBtb3JlIHJvd3MgaXMgc2VsZWN0ZWQgKi9cclxuICBoYXNTZWxlY3Rpb24gPSBmYWxzZVxyXG5cclxuICAvKipcclxuICAgKiBFbmFibGVzIGZvcm0gdGFibGUgc3R5bGluZyB0byBhbGxvdyBmb3JtIGNvbnRyb2xzIGluc2lkZSB0YWJsZSBjZWxscy5cclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWZvcm0tdGFibGUnKVxyXG4gIEBJbnB1dCgpIGlzRm9ybSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIFRoZSBjdXJyZW50IHNvcnQgZmllbGQgYW5kIGRpcmVjdGlvbiAoJ2Rlc2MnIG9yICdhc2MnKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHNvcnQ/OiBUYWJsZVNvcnQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBuZXcgc29ydCB2YWx1ZSB3aGVuZXZlciBhIHNvcnRhYmxlIGNvbHVtbiBpcyBjbGlja2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNvcnRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUYWJsZVNvcnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBUcnVlIGlmIGEgVGFibGVNYXN0ZXJSb3dDb21wb25lbnQgZXhpc3RzIGluIHRoZSB0YWJsZSBjb250ZW50XHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1tYXN0ZXItZGV0YWlsJykgaGFzTWFzdGVyRGV0YWlsUm93cyA9IGZhbHNlO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlTWFzdGVyUm93Q29tcG9uZW50LCB7ZGVzY2VuZGFudHM6IHRydWV9KSBtYXN0ZXJSb3dzITogUXVlcnlMaXN0PFRhYmxlTWFzdGVyUm93Q29tcG9uZW50PjtcclxuXHJcbiAgcHVibGljIHJlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuICBAQ29udGVudENoaWxkcmVuKFJlc2l6YWJsZUNvbHVtbkNvbXBvbmVudCwge2Rlc2NlbmRhbnRzOiB0cnVlfSkgX3Jlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KCdyZXNpemFibGVDb2x1bW5zJykgc2VhcmNoYWJsZVRhYmxlUmVzaXphYmxlQ29sdW1ucz86IFF1ZXJ5TGlzdDxSZXNpemFibGVDb2x1bW5Db21wb25lbnQ+O1xyXG5cclxuICAvKipcclxuICAgKiBVbmxpc3RlbiBmdW5jdGlvbiByZXR1cm5lZCBieSBgcmVuZGVyZXIubGlzdGVuKClgIHRoYXQgYXJlIGNhbGxlZFxyXG4gICAqIE9uRGVzdHJveSB0byBjbGVhbiB1cCBhbGwgbGlzdGVuZXJzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB1bmxpc3RlbmVyczogKCgpID0+IHZvaWQpW10gPSBbXTtcclxuICBcclxuICAvKiogVGhlIGN1cnJlbnQgc29ydCB2YWx1ZSAqL1xyXG4gIHByaXZhdGUgY3VycmVudFNvcnQ/OiBUYWJsZVNvcnQ7XHJcbiAgXHJcbiAgLyoqIEEgbWFwIG9mIHNvcnRhYmxlIGA8dGg+YCBlbGVtZW50cyAqL1xyXG4gIHByaXZhdGUgc29ydGFibGVDb2xzOiB7W2ZpZWxkOiBzdHJpbmddOiBIVE1MVGFibGVIZWFkZXJDZWxsRWxlbWVudH0gPSB7fTtcclxuXHJcbiAgcHJpdmF0ZSBkZXN0cm95ZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHVibGljIGVsOiBFbGVtZW50UmVmKSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zb3J0YWJsZSAmJiBjaGFuZ2VzLnNvcnQgJiYgY2hhbmdlcy5zb3J0LmN1cnJlbnRWYWx1ZSAmJiAhY2hhbmdlcy5zb3J0LmZpcnN0Q2hhbmdlKSB7XHJcbiAgICAgIGNvbnN0IG5ld1ZhbHVlOiBUYWJsZVNvcnQgPSBjaGFuZ2VzLnNvcnQuY3VycmVudFZhbHVlO1xyXG4gICAgICBpZiAoIXRoaXMuY3VycmVudFNvcnQgfHwgIWlzRXF1YWwobmV3VmFsdWUsIHRoaXMuY3VycmVudFNvcnQpKXtcclxuICAgICAgICB0aGlzLm9uU29ydChuZXdWYWx1ZS5maWVsZCwgbmV3VmFsdWUuZGlyZWN0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5oYXNNYXN0ZXJEZXRhaWxSb3dzID0gISF0aGlzLm1hc3RlclJvd3MubGVuZ3RoO1xyXG4gICAgXHJcbiAgICB0aGlzLm1hc3RlclJvd3MuY2hhbmdlcy5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpXHJcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuaGFzTWFzdGVyRGV0YWlsUm93cyA9ICEhdGhpcy5tYXN0ZXJSb3dzLmxlbmd0aDtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMucmVzaXphYmxlQ29sdW1ucyA9IHRoaXMuc2VhcmNoYWJsZVRhYmxlUmVzaXphYmxlQ29sdW1ucyB8fCB0aGlzLl9yZXNpemFibGVDb2x1bW5zO1xyXG4gIH1cclxuICBcclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zb3J0YWJsZSkge1xyXG4gICAgICB0aGlzLmluaXRTb3J0YWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNlbGVjdGFibGUpIHtcclxuICAgICAgdGhpcy5pbml0U2VsZWN0YWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnVubGlzdGVuZXJzLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLnVubGlzdGVuZXJzLmZvckVhY2godW5saXN0ZW4gPT4gdW5saXN0ZW4oKSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcclxuICAgIHRoaXMuZGVzdHJveWVkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgYWxsIGVsZW1lbnRzIGluc2lkZSB0aGUgaG9zdCBlbGVtZW50IHRoYXQgbWF0Y2ggYSBzZWxlY3RvciBcclxuICAgKiBAcGFyYW0gc2VsZWN0b3IgLSBBbnkgdmFsaWQgc2VsZWN0b3IgZm9yIFtxdWVyeVNlbGVjdG9yQWxsXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRG9jdW1lbnQvcXVlcnlTZWxlY3RvckFsbClcclxuICAgKi9cclxuICBwcml2YXRlIHF1ZXJ5RWxlbWVudHM8VD4oc2VsZWN0b3I6IHN0cmluZyk6IFRbXSB7XHJcbiAgICBjb25zdCB0YWJsZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcclxuICAgIHJldHVybiBBcnJheS5mcm9tKHRhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0b3JlIGEgYDx0aD5gIGZvciBlYWNoIHNvcnRhYmxlIGNvbHVtbiBhbmQgYXR0YWNoIGEgY2xpY2tcclxuICAgKiBldmVudCBsaXN0ZW5lci4gXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpbml0U29ydGFibGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnF1ZXJ5RWxlbWVudHM8SFRNTFRhYmxlSGVhZGVyQ2VsbEVsZW1lbnQ+KCd0aCcpLmZvckVhY2godGggPT4ge1xyXG4gICAgICBpZiAodGguaGFzQXR0cmlidXRlKCdkYXRhLXNvcnRmaWVsZCcpKSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgY29uc3QgZmllbGQgPSB0aC5nZXRBdHRyaWJ1dGUoJ2RhdGEtc29ydGZpZWxkJyk7XHJcbiAgICAgICAgaWYgKGZpZWxkKSB7XHJcbiAgICAgICAgICB0aGlzLnNvcnRhYmxlQ29sc1tmaWVsZF0gPSB0aDtcclxuICAgICAgICAgIGNvbnN0IHVubGlzdGVuID0gdGhpcy5yZW5kZXJlci5saXN0ZW4odGgsICdjbGljaycsIChldmVudDogTW91c2VFdmVudCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgLy8gRG8gbm90IHNvcnQgaWYgdGhlIGV2ZW50IHRhcmdldCB3YXMgdGhlIHJlc2l6YWJsZSBoYW5kbGVcclxuICAgICAgICAgICAgaWYgKHRoLmNsYXNzTGlzdC5jb250YWlucygnaXMtcmVzaXphYmxlJykgJiYgZXZlbnQudGFyZ2V0ICYmICg8SFRNTEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5jbGFzc0xpc3QuY29udGFpbnMoJ2hhbmRsZScpKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLm9uU29ydChmaWVsZCk7XHJcbiAgICAgICAgICB9KTtcclxuICBcclxuICAgICAgICAgIC8vIFN0b3JlIHVubGlzdGVuIGZ1bmN0aW9uIHRvIHJlbW92ZSBsaXN0ZW5lciB3aGVuIGNvbXBvbmVudCBpcyBkZXN0cm95ZWRcclxuICAgICAgICAgIHRoaXMudW5saXN0ZW5lcnMucHVzaCh1bmxpc3Rlbik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYGRhdGEtc29ydGZpZWxkIGF0dHJpYnV0ZSB3YXMgbm90IGFzc2lnbmVkIGEgdmFsdWUuYCwgdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gU2V0IHRoZSBpbml0aWFsIHNvcnRcclxuICAgIGlmICh0aGlzLnNvcnQpIHtcclxuICAgICAgdGhpcy5vblNvcnQodGhpcy5zb3J0LmZpZWxkLCB0aGlzLnNvcnQuZGlyZWN0aW9uKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpbmQgdGhlIHNvcnRlZCBjb2x1bW4gYW5kIGFwcGx5IHRoZSBkZXNjIG9yIGFzYyBjbGFzcyBpbiBvcmRlclxyXG4gICAqIHRvIHNob3cgdGhlIGNvcnJlY3Qgc29ydCBpY29uLiBJZiBhbm90aGVyIGZpZWxkIHdhcyBzb3J0ZWQsIHJlc2V0IGl0LlxyXG4gICAqIEVtaXQgdGhlIGN1cnJlbnQgZmllbGQgYW5kIGRpcmVjdGlvbiBvZiB0aGUgc29ydGVkIGNvbHVtblxyXG4gICAqIEBwYXJhbSBmaWVsZCBcclxuICAgKi9cclxuICBwcml2YXRlIG9uU29ydChmaWVsZDogc3RyaW5nLCBkaXJlY3Rpb24/OiBUYWJsZVNvcnREaXJlY3Rpb24pOiB2b2lkIHtcclxuICAgIGNvbnN0IHRoID0gdGhpcy5zb3J0YWJsZUNvbHNbZmllbGRdO1xyXG4gICAgaWYgKCF0aCkgeyByZXR1cm47IH1cclxuICAgIFxyXG4gICAgaWYgKHRoaXMuY3VycmVudFNvcnQgJiYgdGhpcy5jdXJyZW50U29ydC5maWVsZCAhPT0gZmllbGQpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLnNvcnRhYmxlQ29sc1t0aGlzLmN1cnJlbnRTb3J0LmZpZWxkXSwgYGlzLXNvcnRlZC0ke3RoaXMuY3VycmVudFNvcnQuZGlyZWN0aW9ufWApO1xyXG4gICAgfSBcclxuICAgIFxyXG4gICAgaWYgKHRoLmNsYXNzTGlzdC5jb250YWlucygnaXMtc29ydGVkLWRlc2MnKSkge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoLCAnaXMtc29ydGVkLWRlc2MnKTtcclxuXHJcbiAgICAgIGlmICghZGlyZWN0aW9uKSB7XHJcbiAgICAgICAgZGlyZWN0aW9uID0gJ2FzYyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGguY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1zb3J0ZWQtYXNjJykpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoLCAnaXMtc29ydGVkLWFzYycpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIWRpcmVjdGlvbikge1xyXG4gICAgICAgIGRpcmVjdGlvbiA9ICdkZXNjJztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGgsIGBpcy1zb3J0ZWQtJHtkaXJlY3Rpb259YCk7XHJcblxyXG4gICAgY29uc3Qgc29ydEV2ZW50ID0ge2ZpZWxkOiBmaWVsZCwgZGlyZWN0aW9uOiBkaXJlY3Rpb259O1xyXG4gICAgdGhpcy5jdXJyZW50U29ydCA9IHNvcnRFdmVudDtcclxuICAgIHRoaXMuc29ydENoYW5nZS5lbWl0KHNvcnRFdmVudCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRTZWxlY3RhYmxlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3Rpb25Db250ZXh0IS5yb3dDaGVja2JveGVzLnZhbHVlQ2hhbmdlcy5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpXHJcbiAgICApLnN1YnNjcmliZSgodmFsdWU6IGJvb2xlYW5bXSkgPT4ge1xyXG4gICAgICB0aGlzLmhhc1NlbGVjdGlvbiA9IHZhbHVlLnNvbWUodiA9PiB2KTtcclxuICAgIH0pO1xyXG4gIH1cclxufSIsIjxkaXYgY2xhc3M9XCJzZWxlY3RhYmxlLXRhYmxlLXRvb2xiYXJcIlxyXG4gICAgICpuZ0lmPVwiaGFzU2VsZWN0aW9uICYmIHNlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzZWxlY3Rpb25Ub29sYmFyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJ7e2lkfX0tc2Nyb2xsLWNvbnRhaW5lclwiIFxyXG4gICAgIGNsYXNzPVwidGFibGUtc2Nyb2xsLWNvbnRhaW5lclwiPlxyXG4gIDx0YWJsZSBjbGFzcz1cIm1haW4tdGFibGVcIlxyXG4gICAgICAgICBpZD1cInt7aWR9fVwiXHJcbiAgICAgICAgIFtlY1Jlc2l6YWJsZVRhYmxlXT1cInJlc2l6YWJsZVwiXHJcbiAgICAgICAgIFtjb250YWluZXJFbF09XCJlbFwiXHJcbiAgICAgICAgIFtzb3J0YWJsZVRhYmxlXT1cInNvcnRhYmxlXCJcclxuICAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwicmVzaXphYmxlQ29sdW1uc1wiPlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gIDwvdGFibGU+XHJcbjwvZGl2PiJdfQ==
|
@@ -5228,6 +5228,7 @@ class ConfirmComponent {
|
|
5228
5228
|
onOpen(openContext) {
|
5229
5229
|
this.context = openContext;
|
5230
5230
|
this.dialogId = openContext.id;
|
5231
|
+
this.showTextBox = this.context.checkConfirm ? false : true;
|
5231
5232
|
if (this.context.alternateSaveLabel) {
|
5232
5233
|
this.context.saveOnEnter = false;
|
5233
5234
|
}
|
@@ -5237,7 +5238,7 @@ class ConfirmComponent {
|
|
5237
5238
|
/** Form Group to hold any form controls needed */
|
5238
5239
|
this.formGroup = new UntypedFormGroup({});
|
5239
5240
|
this.status = new Overlay('hasData');
|
5240
|
-
this.showTextBox =
|
5241
|
+
this.showTextBox = false;
|
5241
5242
|
this.destroyed = new Subject();
|
5242
5243
|
this.onDialogSave = new EventEmitter();
|
5243
5244
|
this.onDialogCancel = new EventEmitter();
|
@@ -7145,7 +7146,7 @@ class TableComponent {
|
|
7145
7146
|
if (this.sortable && changes.sort && changes.sort.currentValue && !changes.sort.firstChange) {
|
7146
7147
|
const newValue = changes.sort.currentValue;
|
7147
7148
|
if (!this.currentSort || !isEqual(newValue, this.currentSort)) {
|
7148
|
-
this.onSort(newValue);
|
7149
|
+
this.onSort(newValue.field, newValue.direction);
|
7149
7150
|
}
|
7150
7151
|
}
|
7151
7152
|
}
|
@@ -7194,14 +7195,7 @@ class TableComponent {
|
|
7194
7195
|
if (th.classList.contains('is-resizable') && event.target && event.target.classList.contains('handle')) {
|
7195
7196
|
return;
|
7196
7197
|
}
|
7197
|
-
|
7198
|
-
if (th.classList.contains('is-sorted-desc')) {
|
7199
|
-
direction = 'asc';
|
7200
|
-
}
|
7201
|
-
else {
|
7202
|
-
direction = 'desc';
|
7203
|
-
}
|
7204
|
-
this.onSort({ field, direction });
|
7198
|
+
this.onSort(field);
|
7205
7199
|
});
|
7206
7200
|
// Store unlisten function to remove listener when component is destroyed
|
7207
7201
|
this.unlisteners.push(unlisten);
|
@@ -7213,7 +7207,7 @@ class TableComponent {
|
|
7213
7207
|
});
|
7214
7208
|
// Set the initial sort
|
7215
7209
|
if (this.sort) {
|
7216
|
-
this.onSort(this.sort);
|
7210
|
+
this.onSort(this.sort.field, this.sort.direction);
|
7217
7211
|
}
|
7218
7212
|
}
|
7219
7213
|
/**
|
@@ -7222,29 +7216,32 @@ class TableComponent {
|
|
7222
7216
|
* Emit the current field and direction of the sorted column
|
7223
7217
|
* @param field
|
7224
7218
|
*/
|
7225
|
-
onSort(
|
7226
|
-
this.
|
7227
|
-
if (Array.isArray(sort)) {
|
7228
|
-
sort.forEach(s => this.applySort(s));
|
7229
|
-
}
|
7230
|
-
else {
|
7231
|
-
this.applySort(sort);
|
7232
|
-
}
|
7233
|
-
this.currentSort = cloneDeep(sort);
|
7234
|
-
this.sortChange.emit(this.currentSort);
|
7235
|
-
}
|
7236
|
-
clearSort() {
|
7237
|
-
Object.values(this.sortableCols).forEach(th => {
|
7238
|
-
this.renderer.removeClass(th, `is-sorted-asc`);
|
7239
|
-
this.renderer.removeClass(th, `is-sorted-desc`);
|
7240
|
-
});
|
7241
|
-
}
|
7242
|
-
applySort(sort) {
|
7243
|
-
const th = this.sortableCols[sort.field];
|
7219
|
+
onSort(field, direction) {
|
7220
|
+
const th = this.sortableCols[field];
|
7244
7221
|
if (!th) {
|
7245
7222
|
return;
|
7246
7223
|
}
|
7247
|
-
this.
|
7224
|
+
if (this.currentSort && this.currentSort.field !== field) {
|
7225
|
+
this.renderer.removeClass(this.sortableCols[this.currentSort.field], `is-sorted-${this.currentSort.direction}`);
|
7226
|
+
}
|
7227
|
+
if (th.classList.contains('is-sorted-desc')) {
|
7228
|
+
this.renderer.removeClass(th, 'is-sorted-desc');
|
7229
|
+
if (!direction) {
|
7230
|
+
direction = 'asc';
|
7231
|
+
}
|
7232
|
+
}
|
7233
|
+
else {
|
7234
|
+
if (th.classList.contains('is-sorted-asc')) {
|
7235
|
+
this.renderer.removeClass(th, 'is-sorted-asc');
|
7236
|
+
}
|
7237
|
+
if (!direction) {
|
7238
|
+
direction = 'desc';
|
7239
|
+
}
|
7240
|
+
}
|
7241
|
+
this.renderer.addClass(th, `is-sorted-${direction}`);
|
7242
|
+
const sortEvent = { field: field, direction: direction };
|
7243
|
+
this.currentSort = sortEvent;
|
7244
|
+
this.sortChange.emit(sortEvent);
|
7248
7245
|
}
|
7249
7246
|
initSelectable() {
|
7250
7247
|
this.selectionContext.rowCheckboxes.valueChanges.pipe(takeUntil(this.destroyed)).subscribe((value) => {
|