@alauda/ui 6.4.6-beta.3 → 6.4.6-beta.6
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/alauda-ui.d.ts +3 -0
- package/button/button.types.d.ts +9 -0
- package/esm2020/accordion/accordion-item/accordion-item.component.mjs +3 -1
- package/esm2020/alauda-ui.mjs +4 -1
- package/esm2020/anchor/anchor.component.mjs +2 -1
- package/esm2020/back-top/back-top.component.mjs +4 -2
- package/esm2020/button/button.component.mjs +2 -1
- package/esm2020/button/button.types.mjs +10 -1
- package/esm2020/date-picker/calendar/constant.mjs +2 -1
- package/esm2020/date-picker/calendar/header/component.mjs +5 -1
- package/esm2020/date-picker/calendar/panel/picker-panel.mjs +5 -1
- package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +3 -1
- package/esm2020/date-picker/calendar/util.mjs +2 -1
- package/esm2020/dialog/dialog-content/dialog-content.component.mjs +2 -1
- package/esm2020/dialog/dialog.service.mjs +2 -1
- package/esm2020/drawer/component/drawer.component.mjs +4 -1
- package/esm2020/drawer/component/helper-directives.mjs +5 -1
- package/esm2020/form/common-form.mjs +8 -1
- package/esm2020/icon/icon-register.service.mjs +2 -1
- package/esm2020/input/autosize.directive.mjs +7 -2
- package/esm2020/input/input.component.mjs +5 -1
- package/esm2020/input/search/search.component.mjs +2 -2
- package/esm2020/input/tags-input/tags-input.component.mjs +7 -2
- package/esm2020/message/message.config.mjs +6 -1
- package/esm2020/notification/notification.component.mjs +5 -1
- package/esm2020/paginator/paginator-intl.mjs +12 -1
- package/esm2020/paginator/paginator.component.mjs +9 -1
- package/esm2020/radio/radio-button/radio-button.component.mjs +2 -1
- package/esm2020/radio/radio-group/radio-group.component.mjs +4 -1
- package/esm2020/radio/radio.component.mjs +2 -1
- package/esm2020/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +3 -1
- package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +3 -1
- package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +2 -1
- package/esm2020/select/base-select.mjs +5 -2
- package/esm2020/select/multi-select/multi-select.component.mjs +4 -2
- package/esm2020/select/select.component.mjs +2 -1
- package/esm2020/select/validators.mjs +6 -2
- package/esm2020/sort/sort-errors.mjs +5 -1
- package/esm2020/sort/sort-header.component.mjs +5 -1
- package/esm2020/sort/sort.directive.mjs +2 -1
- package/esm2020/steps/steps.component.mjs +5 -1
- package/esm2020/table/table-cell-def.directive.mjs +5 -1
- package/esm2020/table/table-cell.directive.mjs +3 -1
- package/esm2020/table/table-column-def.directive.mjs +7 -1
- package/esm2020/table/table-header-cell-def.directive.mjs +5 -1
- package/esm2020/table/table-header-cell.directive.mjs +3 -1
- package/esm2020/table/table-header-row-def.directive.mjs +5 -1
- package/esm2020/table/table-header-row.component.mjs +2 -1
- package/esm2020/table/table-row-def.directive.mjs +6 -1
- package/esm2020/table/table-row.component.mjs +2 -1
- package/esm2020/table/table-scroll.directive.mjs +2 -1
- package/esm2020/table/table.component.mjs +4 -1
- package/esm2020/tabs/tab-body.component.mjs +19 -1
- package/esm2020/tabs/tab-context.service.mjs +4 -1
- package/esm2020/tabs/tab-group.component.mjs +46 -1
- package/esm2020/tabs/tab-header-active-indicator.component.mjs +10 -1
- package/esm2020/tabs/tab-header.component.mjs +106 -3
- package/esm2020/tabs/tab.component.mjs +15 -1
- package/esm2020/tabs/tabs.types.mjs +4 -1
- package/esm2020/tag/tag.component.mjs +2 -1
- package/esm2020/time-picker/panel/panel.component.mjs +3 -1
- package/esm2020/tooltip/tooltip-intl.mjs +7 -1
- package/esm2020/tree-select/tree-select.component.mjs +2 -1
- package/esm2020/types.mjs +4 -1
- package/esm2020/utils/bem.mjs +2 -1
- package/esm2020/utils/coercion.mjs +5 -1
- package/fesm2015/alauda-ui.mjs +375 -10
- package/fesm2015/alauda-ui.mjs.map +1 -1
- package/fesm2020/alauda-ui.mjs +375 -10
- package/fesm2020/alauda-ui.mjs.map +1 -1
- package/form/common-form.d.ts +7 -0
- package/input/autosize.directive.d.ts +3 -0
- package/input/input.component.d.ts +3 -0
- package/message/message.config.d.ts +20 -0
- package/notification/notification.component.d.ts +4 -0
- package/package.json +2 -3
- package/paginator/paginator-intl.d.ts +9 -0
- package/paginator/paginator.component.d.ts +14 -0
- package/radio/radio-group/radio-group.component.d.ts +3 -0
- package/select/base-select.d.ts +3 -0
- package/sort/sort-errors.d.ts +4 -0
- package/steps/steps.component.d.ts +3 -0
- package/steps/types.d.ts +3 -0
- package/table/table-cell-def.directive.d.ts +4 -0
- package/table/table-cell.directive.d.ts +1 -0
- package/table/table-column-def.directive.d.ts +4 -0
- package/table/table-header-cell-def.directive.d.ts +4 -0
- package/table/table-header-cell.directive.d.ts +1 -0
- package/table/table-header-row-def.directive.d.ts +4 -0
- package/table/table-header-row.component.d.ts +1 -0
- package/table/table-row-def.directive.d.ts +5 -0
- package/table/table-row.component.d.ts +1 -0
- package/tabs/tab-body.component.d.ts +16 -0
- package/tabs/tab-context.service.d.ts +3 -0
- package/tabs/tab-group.component.d.ts +28 -0
- package/tabs/tab-header-active-indicator.component.d.ts +9 -0
- package/tabs/tab-header.component.d.ts +83 -0
- package/tabs/tab.component.d.ts +18 -0
- package/tabs/tabs.types.d.ts +3 -0
- package/theme/_theme-preset.scss +2 -0
- package/tooltip/tooltip-intl.d.ts +4 -0
- package/types.d.ts +3 -0
|
@@ -69,6 +69,7 @@ export class TableScrollShadowDirective {
|
|
|
69
69
|
const scrollTop = this.containerEl.scrollTop;
|
|
70
70
|
this.placeClassList(this.containerEl.classList, scrollTop > 0, HAS_TABLE_TOP_SHADOW);
|
|
71
71
|
this.placeClassList(this.containerEl.classList, scrollTop < scrollDis, HAS_TABLE_BOTTOM_SHADOW);
|
|
72
|
+
// 兼容屏幕缩放是 sticky多列的样式问题
|
|
72
73
|
this.table.updateStickyColumnStyles();
|
|
73
74
|
}
|
|
74
75
|
mutateHorizontalScroll() {
|
|
@@ -104,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
104
105
|
type: HostBinding,
|
|
105
106
|
args: [`class.${SHADOW_CLASS}`]
|
|
106
107
|
}] } });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtc2Nyb2xsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJsZS90YWJsZS1zY3JvbGwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsSUFBSSxFQUNKLFdBQVcsRUFDWCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssR0FDTixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQUk5RCxNQUFNLFlBQVksR0FBRyxXQUFXLENBQUM7QUFDakMsTUFBTSxZQUFZLEdBQUcsR0FBRyxZQUFZLGlCQUFpQixDQUFDO0FBQ3RELE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxZQUFZLGNBQWMsQ0FBQztBQUN2RCxNQUFNLGVBQWUsR0FBRyxHQUFHLFlBQVksYUFBYSxDQUFDO0FBQ3JELE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxZQUFZLGNBQWMsQ0FBQztBQUU5RCxNQUFNLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDO0FBQ2pELE1BQU0sdUJBQXVCLEdBQUcsc0JBQXNCLENBQUM7QUFDdkQsTUFBTSx5QkFBeUIsR0FBRyx3QkFBd0IsQ0FBQztBQVEzRCxNQUFNLE9BQU8sMkJBQTJCO0lBTnhDO1FBU0UsMEJBQXFCLEdBQUcsTUFBTSxDQUFDO0tBQ2hDOzt3SEFKWSwyQkFBMkI7NEdBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQU52QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztpQkFDRjs4QkFJQyxxQkFBcUI7c0JBRnBCLFdBQVc7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LENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFDMUIsVUFBVSxHQUFHLFNBQVMsRUFDdEIsdUJBQXVCLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQsY0FBYyxDQUNaLFNBQXVCLEVBQ3ZCLFNBQWtCLEVBQ2xCLFNBQWlCO1FBRWpCLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7dUhBOUdVLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtpQkFDbkM7OzBCQWFJLElBQUk7NENBTkgsb0JBQW9CO3NCQUR2QixLQUFLO2dCQVdOLHVCQUF1QjtzQkFEdEIsV0FBVzt1QkFBQyxTQUFTLHVCQUF1QixFQUFFO2dCQUkvQyxZQUFZO3NCQURYLFdBQVc7dUJBQUMsU0FBUyxZQUFZLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3QsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFN1YmplY3QsXG4gIGZyb21FdmVudCxcbiAgbWVyZ2UsXG4gIHN0YXJ0V2l0aCxcbiAgdGFrZVVudGlsLFxuICBzd2l0Y2hNYXAsXG4gIE5FVkVSLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgY29lcmNlQXR0ckJvb2xlYW4sIG9ic2VydmVSZXNpemVPbiB9IGZyb20gJy4uL3V0aWxzJztcblxuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLmNvbXBvbmVudCc7XG5cbmNvbnN0IENMQVNTX1BSRUZJWCA9ICdhdWktdGFibGUnO1xuY29uc3QgU0hBRE9XX0NMQVNTID0gYCR7Q0xBU1NfUFJFRklYfV9fc2Nyb2xsLXNoYWRvd2A7XG5jb25zdCBIQVNfU0NST0xMX0NMQVNTID0gYCR7U0hBRE9XX0NMQVNTfS0taGFzLXNjcm9sbGA7XG5jb25zdCBTQ1JPTExJTkdfQ0xBU1MgPSBgJHtTSEFET1dfQ0xBU1N9LS1zY3JvbGxpbmdgO1xuY29uc3QgU0NST0xMX0JFRk9SRV9FTkRfQ0xBU1MgPSBgJHtTSEFET1dfQ0xBU1N9LS1iZWZvcmUtZW5kYDtcblxuY29uc3QgSEFTX1RBQkxFX1RPUF9TSEFET1cgPSAnaGFzVGFibGVUb3BTaGFkb3cnO1xuY29uc3QgSEFTX1RBQkxFX0JPVFRPTV9TSEFET1cgPSAnaGFzVGFibGVCb3R0b21TaGFkb3cnO1xuY29uc3QgSEFTX1RBQkxFX1ZFUlRJQ0FMX1NDUk9MTCA9ICdoYXNUYWJsZVZlcnRpY2FsU2Nyb2xsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRhYmxlU2Nyb2xsV3JhcHBlcl0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdhdWktdGFibGVfX3Njcm9sbC13cmFwcGVyJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVTY3JvbGxXcmFwcGVyRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXgtaGVpZ2h0JylcbiAgQElucHV0KClcbiAgYXVpVGFibGVTY3JvbGxXcmFwcGVyID0gJzEwMCUnO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpVGFibGVTY3JvbGxTaGFkb3ddJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVTY3JvbGxTaGFkb3dEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBzY3JvbGxTaGFkb3ckJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBASW5wdXQoKVxuICBzZXQgYXVpVGFibGVTY3JvbGxTaGFkb3coc2Nyb2xsU2hhZG93OiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLnNjcm9sbFNoYWRvdyQkLm5leHQoY29lcmNlQXR0ckJvb2xlYW4oc2Nyb2xsU2hhZG93KSk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBASG9zdCgpIHByaXZhdGUgcmVhZG9ubHkgdGFibGU6IFRhYmxlQ29tcG9uZW50PHVua25vd24+LFxuICApIHt9XG5cbiAgQEhvc3RCaW5kaW5nKGBjbGFzcy4ke1NDUk9MTF9CRUZPUkVfRU5EX0NMQVNTfWApXG4gIFNDUk9MTF9CRUZPUkVfRU5EX0NMQVNTID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoYGNsYXNzLiR7U0hBRE9XX0NMQVNTfWApXG4gIFNIQURPV19DTEFTUyA9IHRydWU7XG5cbiAgZ2V0IGNvbnRhaW5lckVsKCkge1xuICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMudmlld011dGF0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICB2aWV3TXV0YXRpb24oKSB7XG4gICAgdGhpcy5zY3JvbGxTaGFkb3ckJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcChzY3JvbGxTaGFkb3cgPT5cbiAgICAgICAgICBzY3JvbGxTaGFkb3dcbiAgICAgICAgICAgID8gbWVyZ2UoXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZVJlc2l6ZU9uKHRoaXMuY29udGFpbmVyRWwpLFxuICAgICAgICAgICAgICAgIGZyb21FdmVudCh0aGlzLmNvbnRhaW5lckVsLCAnc2Nyb2xsJyksXG4gICAgICAgICAgICAgICkucGlwZShzdGFydFdpdGgobnVsbCkpXG4gICAgICAgICAgICA6IE5FVkVSLFxuICAgICAgICApLFxuICAgICAgKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLm11dGF0ZVZlcnRpY2FsU2Nyb2xsKCk7XG4gICAgICAgIHRoaXMubXV0YXRlSG9yaXpvbnRhbFNjcm9sbCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBtdXRhdGVWZXJ0aWNhbFNjcm9sbCgpIHtcbiAgICBjb25zdCBzY3JvbGxEaXMgPVxuICAgICAgdGhpcy5jb250YWluZXJFbC5zY3JvbGxIZWlnaHQgLSB0aGlzLmNvbnRhaW5lckVsLm9mZnNldEhlaWdodDtcblxuICAgIHRoaXMucGxhY2VDbGFzc0xpc3QoXG4gICAgICB0aGlzLmNvbnRhaW5lckVsLmNsYXNzTGlzdCxcbiAgICAgIHNjcm9sbERpcyA+IDAsXG4gICAgICBIQVNfVEFCTEVfVkVSVElDQUxfU0NST0xMLFxuICAgICk7XG5cbiAgICBjb25zdCBzY3JvbGxUb3AgPSB0aGlzLmNvbnRhaW5lckVsLnNjcm9sbFRvcDtcbiAgICB0aGlzLnBsYWNlQ2xhc3NMaXN0KFxuICAgICAgdGhpcy5jb250YWluZXJFbC5jbGFzc0xpc3QsXG4gICAgICBzY3JvbGxUb3AgPiAwLFxuICAgICAgSEFTX1RBQkxFX1RPUF9TSEFET1csXG4gICAgKTtcbiAgICB0aGlzLnBsYWNlQ2xhc3NMaXN0KFxuICAgICAgdGhpcy5jb250YWluZXJFbC5jbGFzc0xpc3QsXG4gICAgICBzY3JvbGxUb3AgPCBzY3JvbGxEaXMsXG4gICAgICBIQVNfVEFCTEVfQk9UVE9NX1NIQURPVyxcbiAgICApO1xuXG4gICAgLy8g5YW85a655bGP5bmV57yp5pS+5pivIHN0aWNreeWkmuWIl+eahOagt+W8j+mXrumimFxuICAgIHRoaXMudGFibGUudXBkYXRlU3RpY2t5Q29sdW1uU3R5bGVzKCk7XG4gIH1cblxuICBtdXRhdGVIb3Jpem9udGFsU2Nyb2xsKCkge1xuICAgIGNvbnN0IHNjcm9sbERpcyA9XG4gICAgICB0aGlzLmNvbnRhaW5lckVsLnNjcm9sbFdpZHRoIC0gdGhpcy5jb250YWluZXJFbC5vZmZzZXRXaWR0aDtcblxuICAgIHRoaXMucGxhY2VDbGFzc0xpc3QoXG4gICAgICB0aGlzLmNvbnRhaW5lckVsLmNsYXNzTGlzdCxcbiAgICAgIHNjcm9sbERpcyA+IDAsXG4gICAgICBIQVNfU0NST0xMX0NMQVNTLFxuICAgICk7XG5cbiAgICBjb25zdCBzY3JvbGxMZWZ0ID0gdGhpcy5jb250YWluZXJFbC5zY3JvbGxMZWZ0O1xuICAgIHRoaXMucGxhY2VDbGFzc0xpc3QoXG4gICAgICB0aGlzLmNvbnRhaW5lckVsLmNsYXNzTGlzdCxcbiAgICAgIHNjcm9sbExlZnQgPiAwLFxuICAgICAgU0NST0xMSU5HX0NMQVNTLFxuICAgICk7XG4gICAgdGhpcy5wbGFjZUNsYXNzTGlzdChcbiAgICAgIHRoaXMuY29udGFpbmVyRWwuY2xhc3NMaXN0LFxuICAgICAgc2Nyb2xsTGVmdCA8IHNjcm9sbERpcyxcbiAgICAgIFNDUk9MTF9CRUZPUkVfRU5EX0NMQVNTLFxuICAgICk7XG4gIH1cblxuICBwbGFjZUNsYXNzTGlzdChcbiAgICBjbGFzc0xpc3Q6IERPTVRva2VuTGlzdCxcbiAgICBjb25kaXRpb246IGJvb2xlYW4sXG4gICAgY2xhc3NOYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIGNsYXNzTGlzdFtjb25kaXRpb24gPyAnYWRkJyA6ICdyZW1vdmUnXShjbGFzc05hbWUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -6,10 +6,13 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
import * as i1 from "@angular/cdk/table";
|
|
7
7
|
import * as i2 from "./table-placeholder.directive";
|
|
8
8
|
export class TableComponent extends CdkTable {
|
|
9
|
+
// FIXME: workaround to override because it will break constructor if it is field, but why MatTable works?
|
|
10
|
+
// @ts-ignore
|
|
9
11
|
get stickyCssClass() {
|
|
10
12
|
return 'aui-table-sticky';
|
|
11
13
|
}
|
|
12
14
|
set stickyCssClass(_) {
|
|
15
|
+
// nothing
|
|
13
16
|
}
|
|
14
17
|
ngAfterContentInit() {
|
|
15
18
|
this._createPlaceholder();
|
|
@@ -73,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
73
76
|
type: ContentChild,
|
|
74
77
|
args: [TablePlaceholderDefDirective, { static: true }]
|
|
75
78
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLHVCQUF1QixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUiwwQkFBMEIsRUFDMUIsd0JBQXdCLEdBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCw0QkFBNEIsRUFDNUIsK0JBQStCLEdBQ2hDLE1BQU0sK0JBQStCLENBQUM7Ozs7QUE4QnZDLE1BQU0sT0FBTyxjQUNYLFNBQVEsUUFBVztJQVluQiwwR0FBMEc7SUFDMUcsYUFBYTtJQUNiLElBQWMsY0FBYztRQUMxQixPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUF1QixjQUFjLENBQUMsQ0FBUztRQUM3QyxVQUFVO0lBQ1osQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDekIsT0FBTztTQUNSO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQztRQUN4RCxTQUFTLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQzs7MkdBNUNVLGNBQWM7K0ZBQWQsY0FBYyxtSUFmZDtRQUNUO1lBQ0UsT0FBTyxFQUFFLFNBQVM7WUFDbEIsV0FBVyxFQUFFLGNBQWM7U0FDNUI7UUFDRDtZQUNFLE9BQU8sRUFBRSx1QkFBdUI7WUFDaEMsUUFBUSxFQUFFLDRCQUE0QjtTQUN2QztRQUNEO1lBQ0UsT0FBTyxFQUFFLDBCQUEwQjtZQUNuQyxRQUFRLEVBQUUsd0JBQXdCO1NBQ25DO0tBQ0YsdUVBWWEsNEJBQTRCLGtIQUgvQiwrQkFBK0I7MkZBUC9CLGNBQWM7a0JBNUIxQixTQUFTOytCQUNFLFdBQVcsWUFDWCxVQUFVLGlCQUNMLGlCQUFpQixDQUFDLElBQUksWUFHbkMsa0JBQWtCO3dCQUNsQix5REFBeUQsUUFDckQ7d0JBQ0osS0FBSyxFQUFFLFdBQVc7cUJBQ25CLHVCQUNvQixLQUFLLG1CQUNULHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLFNBQVM7NEJBQ2xCLFdBQVcsZ0JBQWdCO3lCQUM1Qjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxRQUFRLEVBQUUsNEJBQTRCO3lCQUN2Qzt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsMEJBQTBCOzRCQUNuQyxRQUFRLEVBQUUsd0JBQXdCO3lCQUNuQztxQkFDRjs4QkFPRCxtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBSU4sa0JBQWtCO3NCQURqQixTQUFTO3VCQUFDLCtCQUErQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJNUQsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLDRCQUE0QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIF9EaXNwb3NlVmlld1JlcGVhdGVyU3RyYXRlZ3ksXG4gIF9WSUVXX1JFUEVBVEVSX1NUUkFURUdZLFxufSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ0RLX1RBQkxFLFxuICBDREtfVEFCTEVfVEVNUExBVEUsXG4gIENka1RhYmxlLFxuICBfQ09BTEVTQ0VEX1NUWUxFX1NDSEVEVUxFUixcbiAgX0NvYWxlc2NlZFN0eWxlU2NoZWR1bGVyLFxufSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgVGFibGVQbGFjZWhvbGRlckRlZkRpcmVjdGl2ZSxcbiAgVGFibGVQbGFjZWhvbGRlck91dGxldERpcmVjdGl2ZSxcbn0gZnJvbSAnLi90YWJsZS1wbGFjZWhvbGRlci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGFibGUnLFxuICBleHBvcnRBczogJ2F1aVRhYmxlJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3R5bGVVcmxzOiBbJ3RhYmxlLmNvbXBvbmVudC5zY3NzJywgJ3RhYmxlLXNjcm9sbC5zY3NzJ10sXG4gIHRlbXBsYXRlOlxuICAgIENES19UQUJMRV9URU1QTEFURSArXG4gICAgJzxuZy1jb250YWluZXIgYXVpVGFibGVQbGFjZWhvbGRlck91dGxldD48L25nLWNvbnRhaW5lcj4nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdhdWktdGFibGUnLFxuICB9LFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IENES19UQUJMRSxcbiAgICAgIHVzZUV4aXN0aW5nOiBUYWJsZUNvbXBvbmVudCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IF9WSUVXX1JFUEVBVEVSX1NUUkFURUdZLFxuICAgICAgdXNlQ2xhc3M6IF9EaXNwb3NlVmlld1JlcGVhdGVyU3RyYXRlZ3ksXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBfQ09BTEVTQ0VEX1NUWUxFX1NDSEVEVUxFUixcbiAgICAgIHVzZUNsYXNzOiBfQ29hbGVzY2VkU3R5bGVTY2hlZHVsZXIsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQ8VD5cbiAgZXh0ZW5kcyBDZGtUYWJsZTxUPlxuICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveVxue1xuICBASW5wdXQoKVxuICBlbmFibGVTY3JvbGxXcmFwcGVyOiBib29sZWFuO1xuXG4gIEBWaWV3Q2hpbGQoVGFibGVQbGFjZWhvbGRlck91dGxldERpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgX3BsYWNlaG9sZGVyT3V0bGV0OiBUYWJsZVBsYWNlaG9sZGVyT3V0bGV0RGlyZWN0aXZlO1xuXG4gIEBDb250ZW50Q2hpbGQoVGFibGVQbGFjZWhvbGRlckRlZkRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgX3BsYWNlaG9sZGVyRGVmOiBUYWJsZVBsYWNlaG9sZGVyRGVmRGlyZWN0aXZlO1xuXG4gIC8vIEZJWE1FOiB3b3JrYXJvdW5kIHRvIG92ZXJyaWRlIGJlY2F1c2UgaXQgd2lsbCBicmVhayBjb25zdHJ1Y3RvciBpZiBpdCBpcyBmaWVsZCwgYnV0IHdoeSBNYXRUYWJsZSB3b3Jrcz9cbiAgLy8gQHRzLWlnbm9yZVxuICBwcm90ZWN0ZWQgZ2V0IHN0aWNreUNzc0NsYXNzKCkge1xuICAgIHJldHVybiAnYXVpLXRhYmxlLXN0aWNreSc7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2V0IHN0aWNreUNzc0NsYXNzKF86IHN0cmluZykge1xuICAgIC8vIG5vdGhpbmdcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLl9jcmVhdGVQbGFjZWhvbGRlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlUGxhY2Vob2xkZXIoKSB7XG4gICAgY29uc3QgZm9vdGVyUm93ID0gdGhpcy5fcGxhY2Vob2xkZXJEZWY7XG4gICAgaWYgKCF0aGlzLl9wbGFjZWhvbGRlckRlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX3BsYWNlaG9sZGVyT3V0bGV0LnZpZXdDb250YWluZXI7XG4gICAgY29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhmb290ZXJSb3cudGVtcGxhdGVSZWYpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xlYXJQbGFjZWhvbGRlcigpIHtcbiAgICB0aGlzLl9wbGFjZWhvbGRlck91dGxldC52aWV3Q29udGFpbmVyLmNsZWFyKCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuX2NsZWFyUGxhY2Vob2xkZXIoKTtcbiAgfVxufVxuIl19
|
|
@@ -7,6 +7,7 @@ export class TabBodyComponent {
|
|
|
7
7
|
constructor() {
|
|
8
8
|
this.content$ = new BehaviorSubject(null);
|
|
9
9
|
}
|
|
10
|
+
/** The tab body content to display. */
|
|
10
11
|
get content() {
|
|
11
12
|
return this._content;
|
|
12
13
|
}
|
|
@@ -31,7 +32,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
31
32
|
}], content: [{
|
|
32
33
|
type: Input
|
|
33
34
|
}] } });
|
|
35
|
+
/** Used to flag tab labels for use with the portal directive */
|
|
34
36
|
export class TabLabelDirective extends CdkPortal {
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-useless-constructor
|
|
35
38
|
constructor(templateRef, viewContainerRef) {
|
|
36
39
|
super(templateRef, viewContainerRef);
|
|
37
40
|
}
|
|
@@ -44,6 +47,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
44
47
|
selector: '[auiTabLabel]',
|
|
45
48
|
}]
|
|
46
49
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
50
|
+
/**
|
|
51
|
+
* Lazy load the embedded template for a tab content.
|
|
52
|
+
*/
|
|
47
53
|
export class TabContentDirective {
|
|
48
54
|
constructor(template) {
|
|
49
55
|
this.template = template;
|
|
@@ -57,7 +63,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
57
63
|
selector: '[auiTabContent]',
|
|
58
64
|
}]
|
|
59
65
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
66
|
+
/** Used to project additional template from host to the tab header. */
|
|
60
67
|
export class TabHeaderAddonDirective extends CdkPortal {
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/no-useless-constructor
|
|
61
69
|
constructor(templateRef, viewContainerRef) {
|
|
62
70
|
super(templateRef, viewContainerRef);
|
|
63
71
|
}
|
|
@@ -70,10 +78,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
70
78
|
selector: '[auiTabHeaderAddon]',
|
|
71
79
|
}]
|
|
72
80
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
81
|
+
/**
|
|
82
|
+
* Used in the `aui-tab-group` view to display tab labels.
|
|
83
|
+
*/
|
|
73
84
|
export class TabLabelWrapperDirective {
|
|
74
85
|
constructor(elementRef) {
|
|
75
86
|
this.elementRef = elementRef;
|
|
76
87
|
}
|
|
88
|
+
/** Whether or not the tab is disabled */
|
|
77
89
|
get disabled() {
|
|
78
90
|
return this._disabled;
|
|
79
91
|
}
|
|
@@ -86,6 +98,7 @@ export class TabLabelWrapperDirective {
|
|
|
86
98
|
getOffsetWidth() {
|
|
87
99
|
return this.elementRef.nativeElement.offsetWidth;
|
|
88
100
|
}
|
|
101
|
+
/** Sets focus on the wrapper element */
|
|
89
102
|
focus() {
|
|
90
103
|
this.elementRef.nativeElement.focus();
|
|
91
104
|
}
|
|
@@ -105,6 +118,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
105
118
|
type: Input
|
|
106
119
|
}] } });
|
|
107
120
|
export class TabTitleDirective extends CdkPortal {
|
|
121
|
+
// eslint-disable-next-line @typescript-eslint/no-useless-constructor
|
|
108
122
|
constructor(templateRef, viewContainerRef) {
|
|
109
123
|
super(templateRef, viewContainerRef);
|
|
110
124
|
}
|
|
@@ -117,12 +131,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
117
131
|
selector: '[auiTabTitle]',
|
|
118
132
|
}]
|
|
119
133
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
134
|
+
/**
|
|
135
|
+
* The portal host directive for the contents of the tab.
|
|
136
|
+
*/
|
|
120
137
|
export class TabBodyPortalDirective extends CdkPortalOutlet {
|
|
121
138
|
constructor(componentFactoryResolver, viewContainerRef, _host) {
|
|
122
139
|
super(componentFactoryResolver, viewContainerRef);
|
|
123
140
|
this._host = _host;
|
|
124
141
|
this._hostSubscription = Subscription.EMPTY;
|
|
125
142
|
}
|
|
143
|
+
/** Set initial visibility or set up subscription for changing visibility. */
|
|
126
144
|
ngOnInit() {
|
|
127
145
|
super.ngOnInit();
|
|
128
146
|
this._hostSubscription = this._host.content$.subscribe(content => {
|
|
@@ -144,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
144
162
|
selector: '[auiTabBodyHost]',
|
|
145
163
|
}]
|
|
146
164
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: TabBodyComponent }]; } });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJvZHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RhYnMvdGFiLWJvZHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3RhYnMvdGFiLWJvZHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEdBRWhCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsU0FBUyxFQUVULEtBQUssRUFJTCxTQUFTLEVBRVQsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFTN0MsTUFBTSxPQUFPLGdCQUFnQjtJQVA3QjtRQVVFLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBaUIsSUFBSSxDQUFDLENBQUM7S0FzQnREO0lBZkMsSUFDSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUF1QjtRQUNqQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFO1lBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7OzZHQXhCVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQixtSUFNaEIsZUFBZSw4RENwQzVCLGtLQVFBLDBERGlKYSxzQkFBc0I7MkZBM0h0QixnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0UsY0FB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Q2pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNwQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDZjtZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsV0FBVztRQUNsQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQzs7bUhBM0JVLHNCQUFzQiwwRkFTUCxnQkFBZ0I7dUdBVC9CLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCO2dJQVUyQixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDZGtQb3J0YWwsXG4gIENka1BvcnRhbE91dGxldCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgY29lcmNlQXR0ckJvb2xlYW4gfSBmcm9tICcuLi91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10YWItYm9keScsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItYm9keS5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgVGFiQm9keUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2NvbnRlbnQ6IFRlbXBsYXRlUG9ydGFsO1xuXG4gIGNvbnRlbnQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUZW1wbGF0ZVBvcnRhbD4obnVsbCk7XG5cbiAgLyoqIFRoZSBwb3J0YWwgaG9zdCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUgdGFiIGJvZHkgY29udGVudCB3aWxsIGJlIGxvYWRlZC4gKi9cbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIF9wb3J0YWxPdXRsZXQ6IENka1BvcnRhbE91dGxldDtcblxuICAvKiogVGhlIHRhYiBib2R5IGNvbnRlbnQgdG8gZGlzcGxheS4gKi9cbiAgQElucHV0KClcbiAgZ2V0IGNvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQ7XG4gIH1cblxuICBzZXQgY29udGVudChjb250ZW50OiBUZW1wbGF0ZVBvcnRhbCkge1xuICAgIGlmICh0aGlzLl9jb250ZW50ICE9PSBjb250ZW50KSB7XG4gICAgICB0aGlzLmNvbnRlbnQkLm5leHQoY29udGVudCk7XG4gICAgfVxuICAgIHRoaXMuX2NvbnRlbnQgPSBjb250ZW50O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5jb250ZW50JC5jb21wbGV0ZSgpO1xuICB9XG59XG5cbi8qKiBVc2VkIHRvIGZsYWcgdGFiIGxhYmVscyBmb3IgdXNlIHdpdGggdGhlIHBvcnRhbCBkaXJlY3RpdmUgKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJMYWJlbF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJMYWJlbERpcmVjdGl2ZSBleHRlbmRzIENka1BvcnRhbCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlbGVzcy1jb25zdHJ1Y3RvclxuICBjb25zdHJ1Y3RvcihcbiAgICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHtcbiAgICBzdXBlcih0ZW1wbGF0ZVJlZiwgdmlld0NvbnRhaW5lclJlZik7XG4gIH1cbn1cblxuLyoqXG4gKiBMYXp5IGxvYWQgdGhlIGVtYmVkZGVkIHRlbXBsYXRlIGZvciBhIHRhYiBjb250ZW50LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpVGFiQ29udGVudF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJDb250ZW50RGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7fVxufVxuXG4vKiogVXNlZCB0byBwcm9qZWN0IGFkZGl0aW9uYWwgdGVtcGxhdGUgZnJvbSBob3N0IHRvIHRoZSB0YWIgaGVhZGVyLiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRhYkhlYWRlckFkZG9uXScsXG59KVxuZXhwb3J0IGNsYXNzIFRhYkhlYWRlckFkZG9uRGlyZWN0aXZlIGV4dGVuZHMgQ2RrUG9ydGFsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11c2VsZXNzLWNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICkge1xuICAgIHN1cGVyKHRlbXBsYXRlUmVmLCB2aWV3Q29udGFpbmVyUmVmKTtcbiAgfVxufVxuXG4vKipcbiAqIFVzZWQgaW4gdGhlIGBhdWktdGFiLWdyb3VwYCB2aWV3IHRvIGRpc3BsYXkgdGFiIGxhYmVscy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRhYkxhYmVsV3JhcHBlcl0nLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5hdWktdGFiLWxhYmVsXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmF1aS10YWItbGFiZWwtLWRpc2FibGVkXSc6ICchIWRpc2FibGVkJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVGFiTGFiZWxXcmFwcGVyRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgLyoqIFdoZXRoZXIgb3Igbm90IHRoZSB0YWIgaXMgZGlzYWJsZWQgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQXR0ckJvb2xlYW4odmFsdWUpO1xuICB9XG5cbiAgZ2V0T2Zmc2V0TGVmdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICB9XG5cbiAgZ2V0T2Zmc2V0V2lkdGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gIH1cblxuICAvKiogU2V0cyBmb2N1cyBvbiB0aGUgd3JhcHBlciBlbGVtZW50ICovXG4gIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHt9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJUaXRsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJUaXRsZURpcmVjdGl2ZSBleHRlbmRzIENka1BvcnRhbCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlbGVzcy1jb25zdHJ1Y3RvclxuICBjb25zdHJ1Y3RvcihcbiAgICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHtcbiAgICBzdXBlcih0ZW1wbGF0ZVJlZiwgdmlld0NvbnRhaW5lclJlZik7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgcG9ydGFsIGhvc3QgZGlyZWN0aXZlIGZvciB0aGUgY29udGVudHMgb2YgdGhlIHRhYi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRhYkJvZHlIb3N0XScsXG59KVxuZXhwb3J0IGNsYXNzIFRhYkJvZHlQb3J0YWxEaXJlY3RpdmVcbiAgZXh0ZW5kcyBDZGtQb3J0YWxPdXRsZXRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICBwcml2YXRlIF9ob3N0U3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaG9zdDogVGFiQm9keUNvbXBvbmVudCxcbiAgKSB7XG4gICAgc3VwZXIoY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCB2aWV3Q29udGFpbmVyUmVmKTtcbiAgfVxuXG4gIC8qKiBTZXQgaW5pdGlhbCB2aXNpYmlsaXR5IG9yIHNldCB1cCBzdWJzY3JpcHRpb24gZm9yIGNoYW5naW5nIHZpc2liaWxpdHkuICovXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5faG9zdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2hvc3QuY29udGVudCQuc3Vic2NyaWJlKGNvbnRlbnQgPT4ge1xuICAgICAgaWYgKHRoaXMuaGFzQXR0YWNoZWQpIHtcbiAgICAgICAgdGhpcy5kZXRhY2goKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYXR0YWNoKGNvbnRlbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5faG9zdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXVpLXRhYi1ib2R5XCI+XG4gIDxkaXZcbiAgICAjY29udGVudFxuICAgIGNsYXNzPVwiYXVpLXRhYi1ib2R5X19jb250ZW50XCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBhdWlUYWJCb2R5SG9zdD48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJvZHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RhYnMvdGFiLWJvZHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3RhYnMvdGFiLWJvZHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEdBRWhCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsU0FBUyxFQUVULEtBQUssRUFJTCxTQUFTLEVBRVQsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFTN0MsTUFBTSxPQUFPLGdCQUFnQjtJQVA3QjtRQVVFLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBaUIsSUFBSSxDQUFDLENBQUM7S0FzQnREO0lBaEJDLHVDQUF1QztJQUN2QyxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQXVCO1FBQ2pDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0I7UUFDRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7NkdBeEJVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLG1JQU1oQixlQUFlLDhEQ3BDNUIsa0tBUUEsMEREaUphLHNCQUFzQjsyRkEzSHRCLGdCQUFnQjtrQkFQNUIs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Z0JBQWdCLENBQUMsQ0FBQztRQUZqQyxVQUFLLEdBQUwsS0FBSyxDQUFrQjtRQUxsQyxzQkFBaUIsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO0lBUS9DLENBQUM7SUFFRCw2RUFBNkU7SUFDcEUsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQy9ELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2Y7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLFdBQVc7UUFDbEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7O21IQTNCVSxzQkFBc0IsMEZBU1AsZ0JBQWdCO3VHQVQvQixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFIbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3QjtnSUFVMkIsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2RrUG9ydGFsLFxuICBDZGtQb3J0YWxPdXRsZXQsXG4gIFRlbXBsYXRlUG9ydGFsLFxufSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGNvZXJjZUF0dHJCb29sZWFuIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGFiLWJvZHknLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLWJvZHkuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFRhYkJvZHlDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9jb250ZW50OiBUZW1wbGF0ZVBvcnRhbDtcblxuICBjb250ZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGVtcGxhdGVQb3J0YWw+KG51bGwpO1xuXG4gIC8qKiBUaGUgcG9ydGFsIGhvc3QgaW5zaWRlIG9mIHRoaXMgY29udGFpbmVyIGludG8gd2hpY2ggdGhlIHRhYiBib2R5IGNvbnRlbnQgd2lsbCBiZSBsb2FkZWQuICovXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBfcG9ydGFsT3V0bGV0OiBDZGtQb3J0YWxPdXRsZXQ7XG5cbiAgLyoqIFRoZSB0YWIgYm9keSBjb250ZW50IHRvIGRpc3BsYXkuICovXG4gIEBJbnB1dCgpXG4gIGdldCBjb250ZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9jb250ZW50O1xuICB9XG5cbiAgc2V0IGNvbnRlbnQoY29udGVudDogVGVtcGxhdGVQb3J0YWwpIHtcbiAgICBpZiAodGhpcy5fY29udGVudCAhPT0gY29udGVudCkge1xuICAgICAgdGhpcy5jb250ZW50JC5uZXh0KGNvbnRlbnQpO1xuICAgIH1cbiAgICB0aGlzLl9jb250ZW50ID0gY29udGVudDtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY29udGVudCQuY29tcGxldGUoKTtcbiAgfVxufVxuXG4vKiogVXNlZCB0byBmbGFnIHRhYiBsYWJlbHMgZm9yIHVzZSB3aXRoIHRoZSBwb3J0YWwgZGlyZWN0aXZlICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpVGFiTGFiZWxdJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFiTGFiZWxEaXJlY3RpdmUgZXh0ZW5kcyBDZGtQb3J0YWwge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZWxlc3MtY29uc3RydWN0b3JcbiAgY29uc3RydWN0b3IoXG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gICAgc3VwZXIodGVtcGxhdGVSZWYsIHZpZXdDb250YWluZXJSZWYpO1xuICB9XG59XG5cbi8qKlxuICogTGF6eSBsb2FkIHRoZSBlbWJlZGRlZCB0ZW1wbGF0ZSBmb3IgYSB0YWIgY29udGVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRhYkNvbnRlbnRdJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFiQ29udGVudERpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge31cbn1cblxuLyoqIFVzZWQgdG8gcHJvamVjdCBhZGRpdGlvbmFsIHRlbXBsYXRlIGZyb20gaG9zdCB0byB0aGUgdGFiIGhlYWRlci4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJIZWFkZXJBZGRvbl0nLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJIZWFkZXJBZGRvbkRpcmVjdGl2ZSBleHRlbmRzIENka1BvcnRhbCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlbGVzcy1jb25zdHJ1Y3RvclxuICBjb25zdHJ1Y3RvcihcbiAgICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHtcbiAgICBzdXBlcih0ZW1wbGF0ZVJlZiwgdmlld0NvbnRhaW5lclJlZik7XG4gIH1cbn1cblxuLyoqXG4gKiBVc2VkIGluIHRoZSBgYXVpLXRhYi1ncm91cGAgdmlldyB0byBkaXNwbGF5IHRhYiBsYWJlbHMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJMYWJlbFdyYXBwZXJdJyxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuYXVpLXRhYi1sYWJlbF0nOiAndHJ1ZScsXG4gICAgJ1tjbGFzcy5hdWktdGFiLWxhYmVsLS1kaXNhYmxlZF0nOiAnISFkaXNhYmxlZCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFRhYkxhYmVsV3JhcHBlckRpcmVjdGl2ZSB7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuO1xuXG4gIC8qKiBXaGV0aGVyIG9yIG5vdCB0aGUgdGFiIGlzIGRpc2FibGVkICAqL1xuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUF0dHJCb29sZWFuKHZhbHVlKTtcbiAgfVxuXG4gIGdldE9mZnNldExlZnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgfVxuXG4gIGdldE9mZnNldFdpZHRoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuICB9XG5cbiAgLyoqIFNldHMgZm9jdXMgb24gdGhlIHdyYXBwZXIgZWxlbWVudCAqL1xuICBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpVGFiVGl0bGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFiVGl0bGVEaXJlY3RpdmUgZXh0ZW5kcyBDZGtQb3J0YWwge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZWxlc3MtY29uc3RydWN0b3JcbiAgY29uc3RydWN0b3IoXG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gICAgc3VwZXIodGVtcGxhdGVSZWYsIHZpZXdDb250YWluZXJSZWYpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIHBvcnRhbCBob3N0IGRpcmVjdGl2ZSBmb3IgdGhlIGNvbnRlbnRzIG9mIHRoZSB0YWIuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJCb2R5SG9zdF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJCb2R5UG9ydGFsRGlyZWN0aXZlXG4gIGV4dGVuZHMgQ2RrUG9ydGFsT3V0bGV0XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSBfaG9zdFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2hvc3Q6IFRhYkJvZHlDb21wb25lbnQsXG4gICkge1xuICAgIHN1cGVyKGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgdmlld0NvbnRhaW5lclJlZik7XG4gIH1cblxuICAvKiogU2V0IGluaXRpYWwgdmlzaWJpbGl0eSBvciBzZXQgdXAgc3Vic2NyaXB0aW9uIGZvciBjaGFuZ2luZyB2aXNpYmlsaXR5LiAqL1xuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuX2hvc3RTdWJzY3JpcHRpb24gPSB0aGlzLl9ob3N0LmNvbnRlbnQkLnN1YnNjcmliZShjb250ZW50ID0+IHtcbiAgICAgIGlmICh0aGlzLmhhc0F0dGFjaGVkKSB7XG4gICAgICAgIHRoaXMuZGV0YWNoKCk7XG4gICAgICB9XG4gICAgICB0aGlzLmF0dGFjaChjb250ZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2hvc3RTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF1aS10YWItYm9keVwiPlxuICA8ZGl2XG4gICAgI2NvbnRlbnRcbiAgICBjbGFzcz1cImF1aS10YWItYm9keV9fY29udGVudFwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgYXVpVGFiQm9keUhvc3Q+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -9,6 +9,9 @@ export class TabContextService {
|
|
|
9
9
|
? combineLatest([_parent.active$, this.active$$]).pipe(map(([a, b]) => a && b))
|
|
10
10
|
: this.active$$).pipe(distinctUntilChanged());
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Whether the tab is currently active.
|
|
14
|
+
*/
|
|
12
15
|
get isActive() {
|
|
13
16
|
return this.active$$.value;
|
|
14
17
|
}
|
|
@@ -25,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
25
28
|
}, {
|
|
26
29
|
type: SkipSelf
|
|
27
30
|
}] }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRleHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJzL3RhYi1jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFDTCxlQUFlLEVBRWYsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7O0FBR2QsTUFBTSxPQUFPLGlCQUFpQjtJQWdCNUIsWUFHVyxPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQWxCcEIsYUFBUSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBb0JyRCxJQUFJLENBQUMsT0FBTyxHQUFHLENBQ2IsT0FBTztZQUNMLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDeEI7WUFDSCxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FDbEIsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUF6QkQ7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFpQjtRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMvQixDQUFDOzs4R0FaVSxpQkFBaUIsa0JBbUJSLGlCQUFpQjtrSEFuQjFCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVOzBEQW9CVyxpQkFBaUI7MEJBRmxDLFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbiAgY29tYmluZUxhdGVzdCxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCxcbn0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUYWJDb250ZXh0U2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgdGFiIGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqL1xuICBnZXQgaXNBY3RpdmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlJCQudmFsdWU7XG4gIH1cblxuICBzZXQgaXNBY3RpdmUoaXNBY3RpdmU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmFjdGl2ZSQkLm5leHQoaXNBY3RpdmUpO1xuICB9XG5cbiAgcmVhZG9ubHkgYWN0aXZlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBTa2lwU2VsZigpXG4gICAgcmVhZG9ubHkgX3BhcmVudDogVGFiQ29udGV4dFNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuYWN0aXZlJCA9IChcbiAgICAgIF9wYXJlbnRcbiAgICAgICAgPyBjb21iaW5lTGF0ZXN0KFtfcGFyZW50LmFjdGl2ZSQsIHRoaXMuYWN0aXZlJCRdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbYSwgYl0pID0+IGEgJiYgYiksXG4gICAgICAgICAgKVxuICAgICAgICA6IHRoaXMuYWN0aXZlJCRcbiAgICApLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable no-prototype-builtins */
|
|
1
2
|
import { ChangeDetectionStrategy, Component, ContentChild, ContentChildren, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
2
3
|
import { Subject, Subscription, merge } from 'rxjs';
|
|
3
4
|
import { buildBem, coerceNumber } from '../utils';
|
|
@@ -12,27 +13,37 @@ import * as i3 from "./tab-body.component";
|
|
|
12
13
|
import * as i4 from "@angular/common";
|
|
13
14
|
import * as i5 from "@angular/cdk/portal";
|
|
14
15
|
import * as i6 from "@angular/cdk/a11y";
|
|
16
|
+
/** A simple change event emitted on focus or selection changes. */
|
|
15
17
|
export class TabChangeEvent {
|
|
16
18
|
}
|
|
17
19
|
export class TabGroupComponent {
|
|
18
20
|
constructor(_changeDetectorRef) {
|
|
19
21
|
this._changeDetectorRef = _changeDetectorRef;
|
|
20
22
|
this.bem = buildBem('aui-tab-group');
|
|
23
|
+
/** The tab index that should be selected after the content has been checked. */
|
|
21
24
|
this._indexToSelect = 0;
|
|
25
|
+
/** Subscription to tabs being added/removed. */
|
|
22
26
|
this._tabsSubscription = Subscription.EMPTY;
|
|
27
|
+
/** Subscription to changes in the tab labels. */
|
|
23
28
|
this._tabLabelSubscription = Subscription.EMPTY;
|
|
24
29
|
this._selectedIndex = null;
|
|
25
30
|
this._tab = null;
|
|
26
31
|
this._type = TabType.Line;
|
|
27
32
|
this._size = TabSize.Medium;
|
|
33
|
+
/** Emits whenever the type changes */
|
|
28
34
|
this._typeChange = new Subject();
|
|
35
|
+
/** Emits whenever the size changes */
|
|
29
36
|
this._sizeChange = new Subject();
|
|
37
|
+
/** Output to enable support for two-way binding on `[(selectedIndex)]` */
|
|
30
38
|
this.selectedIndexChange = new EventEmitter();
|
|
31
39
|
this.tabChange = new EventEmitter();
|
|
40
|
+
/** Event emitted when the tab selection has changed. */
|
|
32
41
|
this.selectedTabChange = new EventEmitter(true);
|
|
42
|
+
/** Event emitted when focus has changed within a tab group. */
|
|
33
43
|
this.focusChange = new EventEmitter();
|
|
34
44
|
this.activatedTabs = [];
|
|
35
45
|
}
|
|
46
|
+
/** The index of the active tab. */
|
|
36
47
|
get selectedIndex() {
|
|
37
48
|
return this._selectedIndex;
|
|
38
49
|
}
|
|
@@ -92,20 +103,34 @@ export class TabGroupComponent {
|
|
|
92
103
|
this._sizeChange.next();
|
|
93
104
|
}
|
|
94
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* After the content is checked, this component knows what tabs have been defined
|
|
108
|
+
* and what the selected index should be. This is where we can know exactly what position
|
|
109
|
+
* each tab should be in according to the new selected index.
|
|
110
|
+
*/
|
|
95
111
|
ngAfterContentChecked() {
|
|
112
|
+
// Don't clamp the `indexToSelect` immediately in the setter because it can happen that
|
|
113
|
+
// the amount of tabs changes before the actual change detection runs.
|
|
96
114
|
const indexToSelect = (this._indexToSelect = this._clampTabIndex(this._indexToSelect));
|
|
115
|
+
// If there is a change in selected index, emit a change event. Should not trigger if
|
|
116
|
+
// the selected index has not yet been initialized.
|
|
97
117
|
if (this._selectedIndex !== indexToSelect && this._selectedIndex != null) {
|
|
98
118
|
this._changeActivatedTabs();
|
|
99
119
|
const tabChangeEvent = this._createChangeEvent(indexToSelect);
|
|
100
120
|
this.selectedTabChange.emit(tabChangeEvent);
|
|
121
|
+
// Emitting this value after change detection has run
|
|
122
|
+
// since the checked content may contain this variable'
|
|
101
123
|
Promise.resolve().then(() => {
|
|
102
124
|
this.selectedIndexChange.emit(indexToSelect);
|
|
103
125
|
this.tabChange.emit(this._tabs.get(indexToSelect).name);
|
|
104
126
|
});
|
|
105
127
|
}
|
|
128
|
+
// Setup the position for each tab and optionally setup an origin on the next selected tab.
|
|
106
129
|
this._tabs.forEach((tab, index) => {
|
|
107
130
|
tab.position = index - indexToSelect;
|
|
108
131
|
tab.tabContext.isActive = index === indexToSelect;
|
|
132
|
+
// If there is already a selected tab, then set up an origin for the next selected tab
|
|
133
|
+
// if it doesn't have one already.
|
|
109
134
|
if (this._selectedIndex != null && tab.position === 0 && !tab.origin) {
|
|
110
135
|
tab.origin = indexToSelect - this._selectedIndex;
|
|
111
136
|
}
|
|
@@ -125,15 +150,22 @@ export class TabGroupComponent {
|
|
|
125
150
|
}
|
|
126
151
|
this._changeActivatedTabs();
|
|
127
152
|
this._subscribeToTabLabels();
|
|
153
|
+
// Subscribe to changes in the amount of tabs, in order to be
|
|
154
|
+
// able to re-render the content as new tabs are added or removed.
|
|
128
155
|
this._tabsSubscription = this._tabs.changes.subscribe(() => {
|
|
129
156
|
const tabs = this._tabs.toArray();
|
|
130
157
|
if (this._lazy) {
|
|
131
158
|
this.activatedTabs = this.activatedTabs.filter(tab => tabs.includes(tab));
|
|
132
159
|
}
|
|
133
160
|
const indexToSelect = this._clampTabIndex(this._indexToSelect);
|
|
161
|
+
// Maintain the previously-selected tab if a new tab is added or removed and there is no
|
|
162
|
+
// explicit change that selects a different tab.
|
|
134
163
|
if (indexToSelect === this._selectedIndex) {
|
|
135
164
|
for (const [i, tab] of tabs.entries()) {
|
|
136
165
|
if (tab.tabContext.isActive) {
|
|
166
|
+
// Assign both to the `_indexToSelect` and `_selectedIndex` so we don't fire a changed
|
|
167
|
+
// event, otherwise the consumer may end up in an infinite loop in some edge cases like
|
|
168
|
+
// adding a tab within the `selectedIndexChange` event.
|
|
137
169
|
this._indexToSelect = this._selectedIndex = i;
|
|
138
170
|
break;
|
|
139
171
|
}
|
|
@@ -150,6 +182,7 @@ export class TabGroupComponent {
|
|
|
150
182
|
this._typeChange.complete();
|
|
151
183
|
this._sizeChange.complete();
|
|
152
184
|
}
|
|
185
|
+
/** Handle click events, setting new selected index if appropriate. */
|
|
153
186
|
_handleClick(tab, idx) {
|
|
154
187
|
if (!tab.disabled) {
|
|
155
188
|
this.selectedIndex = this._tabHeader.focusIndex = idx;
|
|
@@ -158,6 +191,7 @@ export class TabGroupComponent {
|
|
|
158
191
|
_focusChanged(index) {
|
|
159
192
|
this.focusChange.emit(this._createChangeEvent(index));
|
|
160
193
|
}
|
|
194
|
+
/** Re-aligns the ink bar to the selected tab element. */
|
|
161
195
|
realignActiveIndicator() {
|
|
162
196
|
if (this._tabHeader) {
|
|
163
197
|
this._tabHeader._alignActiveIndicatorToSelectedTab();
|
|
@@ -175,7 +209,11 @@ export class TabGroupComponent {
|
|
|
175
209
|
this.activatedTabs.push(tab);
|
|
176
210
|
}
|
|
177
211
|
}
|
|
212
|
+
/** Clamps the given index to the bounds of 0 and the tabs length. */
|
|
178
213
|
_clampTabIndex(index) {
|
|
214
|
+
// Note the `|| 0`, which ensures that values like NaN can't get through
|
|
215
|
+
// and which would otherwise throw the component into an infinite loop
|
|
216
|
+
// (since Math.max(NaN, 0) === NaN).
|
|
179
217
|
return Math.min(this._tabs.length - 1, Math.max(index || 0, 0));
|
|
180
218
|
}
|
|
181
219
|
_findIndexByTab(name) {
|
|
@@ -189,6 +227,12 @@ export class TabGroupComponent {
|
|
|
189
227
|
}
|
|
190
228
|
return event;
|
|
191
229
|
}
|
|
230
|
+
/**
|
|
231
|
+
* Subscribes to changes in the tab labels. This is needed, because the @Input for the label is
|
|
232
|
+
* on the Tab component, whereas the data binding is inside the TabGroup. In order for the
|
|
233
|
+
* binding to be updated, we need to subscribe to changes in it and trigger change detection
|
|
234
|
+
* manually.
|
|
235
|
+
*/
|
|
192
236
|
_subscribeToTabLabels() {
|
|
193
237
|
if (this._tabLabelSubscription) {
|
|
194
238
|
this._tabLabelSubscription.unsubscribe();
|
|
@@ -198,6 +242,7 @@ export class TabGroupComponent {
|
|
|
198
242
|
this._changeDetectorRef.markForCheck();
|
|
199
243
|
});
|
|
200
244
|
}
|
|
245
|
+
/** Retrieves the tabindex for the tab. */
|
|
201
246
|
_getTabIndex(tab, idx) {
|
|
202
247
|
if (tab.disabled) {
|
|
203
248
|
return null;
|
|
@@ -243,4 +288,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
243
288
|
}], focusChange: [{
|
|
244
289
|
type: Output
|
|
245
290
|
}] } });
|
|
246
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJzL3RhYi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvdGFicy90YWItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFJTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwRCxPQUFPLEVBQU8sUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV2RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNsQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7QUFHaEQsTUFBTSxPQUFPLGNBQWM7Q0FLMUI7QUFXRCxNQUFNLE9BQU8saUJBQWlCO0lBeUg1QixZQUE2QixrQkFBcUM7UUFBckMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQXRIbEUsUUFBRyxHQUFRLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQWU3QixtQkFBYyxHQUFrQixDQUFDLENBQUM7UUFHbEMsc0JBQWlCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUd2QywwQkFBcUIsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBRTNDLG1CQUFjLEdBQWtCLElBQUksQ0FB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O3VCQUFDLFlBQVk7Z0JBSTdCLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSXhELFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSWhELFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBOEI5QyxhQUFhO3NCQURoQixLQUFLO2dCQVdGLEdBQUc7c0JBRE4sS0FBSztnQkFhRixJQUFJO3NCQURQLEtBQUs7Z0JBVU4sS0FBSztzQkFESixLQUFLO2dCQUlGLElBQUk7c0JBRFAsS0FBSztnQkFhRixJQUFJO3NCQURQLEtBQUs7Z0JBbUJHLG1CQUFtQjtzQkFEM0IsTUFBTTtnQkFJRSxTQUFTO3NCQURqQixNQUFNO2dCQUtFLGlCQUFpQjtzQkFEekIsTUFBTTtnQkFLRSxXQUFXO3NCQURuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcHJvdG90eXBlLWJ1aWx0aW5zICovXG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCZW0sIGJ1aWxkQmVtLCBjb2VyY2VOdW1iZXIgfSBmcm9tICcuLi91dGlscyc7XG5cbmltcG9ydCB7XG4gIFRhYkhlYWRlckFkZG9uRGlyZWN0aXZlLFxuICBUYWJUaXRsZURpcmVjdGl2ZSxcbn0gZnJvbSAnLi90YWItYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi90YWItaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJDb21wb25lbnQgfSBmcm9tICcuL3RhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiU2l6ZSwgVGFiVHlwZSB9IGZyb20gJy4vdGFicy50eXBlcyc7XG5cbi8qKiBBIHNpbXBsZSBjaGFuZ2UgZXZlbnQgZW1pdHRlZCBvbiBmb2N1cyBvciBzZWxlY3Rpb24gY2hhbmdlcy4gKi9cbmV4cG9ydCBjbGFzcyBUYWJDaGFuZ2VFdmVudCB7XG4gIC8qKiBJbmRleCBvZiB0aGUgY3VycmVudGx5LXNlbGVjdGVkIHRhYi4gKi9cbiAgaW5kZXg6IG51bWJlcjtcbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudGx5LXNlbGVjdGVkIHRhYi4gKi9cbiAgdGFiOiBUYWJDb21wb25lbnQ7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10YWItZ3JvdXAnLFxuICBleHBvcnRBczogJ2F1aVRhYkdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYi1ncm91cC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFRhYkdyb3VwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRDaGVja2VkLCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3lcbntcbiAgYmVtOiBCZW0gPSBidWlsZEJlbSgnYXVpLXRhYi1ncm91cCcpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oVGFiQ29tcG9uZW50KVxuICBfdGFiczogUXVlcnlMaXN0PFRhYkNvbXBvbmVudD47XG5cbiAgQENvbnRlbnRDaGlsZChUYWJIZWFkZXJBZGRvbkRpcmVjdGl2ZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIF9oZWFkZXJBZGRvbjogVGFiSGVhZGVyQWRkb25EaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZChUYWJIZWFkZXJDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBfdGFiSGVhZGVyOiBUYWJIZWFkZXJDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChUYWJUaXRsZURpcmVjdGl2ZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIF90YWJUaXRsZTogVGFiVGl0bGVEaXJlY3RpdmU7XG5cbiAgLyoqIFRoZSB0YWIgaW5kZXggdGhhdCBzaG91bGQgYmUgc2VsZWN0ZWQgYWZ0ZXIgdGhlIGNvbnRlbnQgaGFzIGJlZW4gY2hlY2tlZC4gKi9cbiAgcHJpdmF0ZSBfaW5kZXhUb1NlbGVjdDogbnVtYmVyIHwgbnVsbCA9IDA7XG5cbiAgLyoqIFN1YnNjcmlwdGlvbiB0byB0YWJzIGJlaW5nIGFkZGVkL3JlbW92ZWQuICovXG4gIHByaXZhdGUgX3RhYnNTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgLyoqIFN1YnNjcmlwdGlvbiB0byBjaGFuZ2VzIGluIHRoZSB0YWIgbGFiZWxzLiAqL1xuICBwcml2YXRlIF90YWJMYWJlbFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBwcml2YXRlIF9zZWxlY3RlZEluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdGFiOiBzdHJpbmcgPSBudWxsO1xuICBwcml2YXRlIF90eXBlOiBUYWJUeXBlID0gVGFiVHlwZS5MaW5lO1xuICBwcml2YXRlIF9zaXplOiBUYWJTaXplID0gVGFiU2l6ZS5NZWRpdW07XG5cbiAgLyoqIHRydWUgbGF6eSBtb2RlIGZvciB0ZW1wbGF0ZSByZWYgY2hpbGRyZW4gKi9cbiAgcHJpdmF0ZSBfbGF6eTogYm9vbGVhbjtcblxuICBwcml2YXRlIF9wcmV2aW91c0hlYWRlckFkZG9uOiBUYWJIZWFkZXJBZGRvbkRpcmVjdGl2ZTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIHR5cGUgY2hhbmdlcyAqL1xuICByZWFkb25seSBfdHlwZUNoYW5nZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBzaXplIGNoYW5nZXMgKi9cbiAgcmVhZG9ubHkgX3NpemVDaGFuZ2UgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBUaGUgaW5kZXggb2YgdGhlIGFjdGl2ZSB0YWIuICovXG4gIEBJbnB1dCgpXG4gIGdldCBzZWxlY3RlZEluZGV4KCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEluZGV4O1xuICB9XG5cbiAgc2V0IHNlbGVjdGVkSW5kZXgodmFsdWU6IG51bWJlciB8IG51bGwpIHtcbiAgICB0aGlzLl9pbmRleFRvU2VsZWN0ID0gY29lcmNlTnVtYmVyKHZhbHVlLCBudWxsKTtcbiAgICB0aGlzLl9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgdGFiKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RhYjtcbiAgfVxuXG4gIHNldCB0YWIodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3RhYiA9IHZhbHVlO1xuICAgIGlmICh0aGlzLl90YWJzKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSB0aGlzLl9maW5kSW5kZXhCeVRhYih2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IHR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBzZXQgdHlwZSh0eXBlOiBUYWJUeXBlKSB7XG4gICAgdGhpcy5fdHlwZSA9IHR5cGU7XG4gIH1cblxuICBASW5wdXQoKVxuICB0aXRsZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KClcbiAgZ2V0IHNpemUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cblxuICBzZXQgc2l6ZSh2YWwpIHtcbiAgICBpZiAoIXZhbCB8fCB0aGlzLl9zaXplID09PSB2YWwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fc2l6ZSA9IHZhbDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBsYXp5KCkge1xuICAgIHJldHVybiB0aGlzLl9sYXp5O1xuICB9XG5cbiAgc2V0IGxhenkobGF6eTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9sYXp5ID09PSBsYXp5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2xhenkgPSBsYXp5O1xuICAgIGlmIChsYXp5KSB7XG4gICAgICB0aGlzLl9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWN0aXZhdGVkVGFicy5sZW5ndGggPSAwO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBPdXRwdXQgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIHR3by13YXkgYmluZGluZyBvbiBgWyhzZWxlY3RlZEluZGV4KV1gICovXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBzZWxlY3RlZEluZGV4Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IHRhYkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHRhYiBzZWxlY3Rpb24gaGFzIGNoYW5nZWQuICovXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBzZWxlY3RlZFRhYkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VGFiQ2hhbmdlRXZlbnQ+KHRydWUpO1xuXG4gIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gZm9jdXMgaGFzIGNoYW5nZWQgd2l0aGluIGEgdGFiIGdyb3VwLiAqL1xuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgZm9jdXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUYWJDaGFuZ2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPFRhYkNoYW5nZUV2ZW50PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBhY3RpdmF0ZWRUYWJzOiBUYWJDb21wb25lbnRbXSA9IFtdO1xuXG4gIGdldCBhY3RpdmVUYWIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RhYnMubGVuZ3RoID4gMCAmJiB0aGlzLnNlbGVjdGVkSW5kZXggIT09IG51bGxcbiAgICAgID8gdGhpcy5fdGFicy50b0FycmF5KClbdGhpcy5zZWxlY3RlZEluZGV4XVxuICAgICAgOiBudWxsO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCd0eXBlJykpIHtcbiAgICAgIHRoaXMuX3R5cGVDaGFuZ2UubmV4dCgpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdzaXplJykpIHtcbiAgICAgIHRoaXMuX3NpemVDaGFuZ2UubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZnRlciB0aGUgY29udGVudCBpcyBjaGVja2VkLCB0aGlzIGNvbXBvbmVudCBrbm93cyB3aGF0IHRhYnMgaGF2ZSBiZWVuIGRlZmluZWRcbiAgICogYW5kIHdoYXQgdGhlIHNlbGVjdGVkIGluZGV4IHNob3VsZCBiZS4gVGhpcyBpcyB3aGVyZSB3ZSBjYW4ga25vdyBleGFjdGx5IHdoYXQgcG9zaXRpb25cbiAgICogZWFjaCB0YWIgc2hvdWxkIGJlIGluIGFjY29yZGluZyB0byB0aGUgbmV3IHNlbGVjdGVkIGluZGV4LlxuICAgKi9cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgIC8vIERvbid0IGNsYW1wIHRoZSBgaW5kZXhUb1NlbGVjdGAgaW1tZWRpYXRlbHkgaW4gdGhlIHNldHRlciBiZWNhdXNlIGl0IGNhbiBoYXBwZW4gdGhhdFxuICAgIC8vIHRoZSBhbW91bnQgb2YgdGFicyBjaGFuZ2VzIGJlZm9yZSB0aGUgYWN0dWFsIGNoYW5nZSBkZXRlY3Rpb24gcnVucy5cbiAgICBjb25zdCBpbmRleFRvU2VsZWN0ID0gKHRoaXMuX2luZGV4VG9TZWxlY3QgPSB0aGlzLl9jbGFtcFRhYkluZGV4KFxuICAgICAgdGhpcy5faW5kZXhUb1NlbGVjdCxcbiAgICApKTtcblxuICAgIC8vIElmIHRoZXJlIGlzIGEgY2hhbmdlIGluIHNlbGVjdGVkIGluZGV4LCBlbWl0IGEgY2hhbmdlIGV2ZW50LiBTaG91bGQgbm90IHRyaWdnZXIgaWZcbiAgICAvLyB0aGUgc2VsZWN0ZWQgaW5kZXggaGFzIG5vdCB5ZXQgYmVlbiBpbml0aWFsaXplZC5cbiAgICBpZiAodGhpcy5fc2VsZWN0ZWRJbmRleCAhPT0gaW5kZXhUb1NlbGVjdCAmJiB0aGlzLl9zZWxlY3RlZEluZGV4ICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX2NoYW5nZUFjdGl2YXRlZFRhYnMoKTtcbiAgICAgIGNvbnN0IHRhYkNoYW5nZUV2ZW50ID0gdGhpcy5fY3JlYXRlQ2hhbmdlRXZlbnQoaW5kZXhUb1NlbGVjdCk7XG4gICAgICB0aGlzLnNlbGVjdGVkVGFiQ2hhbmdlLmVtaXQodGFiQ2hhbmdlRXZlbnQpO1xuICAgICAgLy8gRW1pdHRpbmcgdGhpcyB2YWx1ZSBhZnRlciBjaGFuZ2UgZGV0ZWN0aW9uIGhhcyBydW5cbiAgICAgIC8vIHNpbmNlIHRoZSBjaGVja2VkIGNvbnRlbnQgbWF5IGNvbnRhaW4gdGhpcyB2YXJpYWJsZSdcbiAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXhDaGFuZ2UuZW1pdChpbmRleFRvU2VsZWN0KTtcbiAgICAgICAgdGhpcy50YWJDaGFuZ2UuZW1pdCh0aGlzLl90YWJzLmdldChpbmRleFRvU2VsZWN0KS5uYW1lKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFNldHVwIHRoZSBwb3NpdGlvbiBmb3IgZWFjaCB0YWIgYW5kIG9wdGlvbmFsbHkgc2V0dXAgYW4gb3JpZ2luIG9uIHRoZSBuZXh0IHNlbGVjdGVkIHRhYi5cbiAgICB0aGlzLl90YWJzLmZvckVhY2goKHRhYjogVGFiQ29tcG9uZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICB0YWIucG9zaXRpb24gPSBpbmRleCAtIGluZGV4VG9TZWxlY3Q7XG4gICAgICB0YWIudGFiQ29udGV4dC5pc0FjdGl2ZSA9IGluZGV4ID09PSBpbmRleFRvU2VsZWN0O1xuICAgICAgLy8gSWYgdGhlcmUgaXMgYWxyZWFkeSBhIHNlbGVjdGVkIHRhYiwgdGhlbiBzZXQgdXAgYW4gb3JpZ2luIGZvciB0aGUgbmV4dCBzZWxlY3RlZCB0YWJcbiAgICAgIC8vIGlmIGl0IGRvZXNuJ3QgaGF2ZSBvbmUgYWxyZWFkeS5cbiAgICAgIGlmICh0aGlzLl9zZWxlY3RlZEluZGV4ICE9IG51bGwgJiYgdGFiLnBvc2l0aW9uID09PSAwICYmICF0YWIub3JpZ2luKSB7XG4gICAgICAgIHRhYi5vcmlnaW4gPSBpbmRleFRvU2VsZWN0IC0gdGhpcy5fc2VsZWN0ZWRJbmRleDtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmICh0aGlzLl9zZWxlY3RlZEluZGV4ICE9PSBpbmRleFRvU2VsZWN0KSB7XG4gICAgICB0aGlzLl9zZWxlY3RlZEluZGV4ID0gaW5kZXhUb1NlbGVjdDtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wcmV2aW91c0hlYWRlckFkZG9uICE9PSB0aGlzLl9oZWFkZXJBZGRvbikge1xuICAgICAgdGhpcy5fcHJldmlvdXNIZWFkZXJBZGRvbiA9IHRoaXMuX2hlYWRlckFkZG9uO1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIGlmICh0aGlzLnRhYikge1xuICAgICAgdGhpcy5faW5kZXhUb1NlbGVjdCA9IHRoaXMuX2ZpbmRJbmRleEJ5VGFiKHRoaXMudGFiKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCk7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9UYWJMYWJlbHMoKTtcbiAgICAvLyBTdWJzY3JpYmUgdG8gY2hhbmdlcyBpbiB0aGUgYW1vdW50IG9mIHRhYnMsIGluIG9yZGVyIHRvIGJlXG4gICAgLy8gYWJsZSB0byByZS1yZW5kZXIgdGhlIGNvbnRlbnQgYXMgbmV3IHRhYnMgYXJlIGFkZGVkIG9yIHJlbW92ZWQuXG4gICAgdGhpcy5fdGFic1N1YnNjcmlwdGlvbiA9IHRoaXMuX3RhYnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgY29uc3QgdGFicyA9IHRoaXMuX3RhYnMudG9BcnJheSgpO1xuICAgICAgaWYgKHRoaXMuX2xhenkpIHtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZWRUYWJzID0gdGhpcy5hY3RpdmF0ZWRUYWJzLmZpbHRlcih0YWIgPT5cbiAgICAgICAgICB0YWJzLmluY2x1ZGVzKHRhYiksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCBpbmRleFRvU2VsZWN0ID0gdGhpcy5fY2xhbXBUYWJJbmRleCh0aGlzLl9pbmRleFRvU2VsZWN0KTtcbiAgICAgIC8vIE1haW50YWluIHRoZSBwcmV2aW91c2x5LXNlbGVjdGVkIHRhYiBpZiBhIG5ldyB0YWIgaXMgYWRkZWQgb3IgcmVtb3ZlZCBhbmQgdGhlcmUgaXMgbm9cbiAgICAgIC8vIGV4cGxpY2l0IGNoYW5nZSB0aGF0IHNlbGVjdHMgYSBkaWZmZXJlbnQgdGFiLlxuICAgICAgaWYgKGluZGV4VG9TZWxlY3QgPT09IHRoaXMuX3NlbGVjdGVkSW5kZXgpIHtcbiAgICAgICAgZm9yIChjb25zdCBbaSwgdGFiXSBvZiB0YWJzLmVudHJpZXMoKSkge1xuICAgICAgICAgIGlmICh0YWIudGFiQ29udGV4dC5pc0FjdGl2ZSkge1xuICAgICAgICAgICAgLy8gQXNzaWduIGJvdGggdG8gdGhlIGBfaW5kZXhUb1NlbGVjdGAgYW5kIGBfc2VsZWN0ZWRJbmRleGAgc28gd2UgZG9uJ3QgZmlyZSBhIGNoYW5nZWRcbiAgICAgICAgICAgIC8vIGV2ZW50LCBvdGhlcndpc2UgdGhlIGNvbnN1bWVyIG1heSBlbmQgdXAgaW4gYW4gaW5maW5pdGUgbG9vcCBpbiBzb21lIGVkZ2UgY2FzZXMgbGlrZVxuICAgICAgICAgICAgLy8gYWRkaW5nIGEgdGFiIHdpdGhpbiB0aGUgYHNlbGVjdGVkSW5kZXhDaGFuZ2VgIGV2ZW50LlxuICAgICAgICAgICAgdGhpcy5faW5kZXhUb1NlbGVjdCA9IHRoaXMuX3NlbGVjdGVkSW5kZXggPSBpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLl9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCk7XG4gICAgICB0aGlzLl9zdWJzY3JpYmVUb1RhYkxhYmVscygpO1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl90YWJzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fdGFiTGFiZWxTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuX3R5cGVDaGFuZ2UuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zaXplQ2hhbmdlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKiogSGFuZGxlIGNsaWNrIGV2ZW50cywgc2V0dGluZyBuZXcgc2VsZWN0ZWQgaW5kZXggaWYgYXBwcm9wcmlhdGUuICovXG4gIF9oYW5kbGVDbGljayh0YWI6IFRhYkNvbXBvbmVudCwgaWR4OiBudW1iZXIpIHtcbiAgICBpZiAoIXRhYi5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gdGhpcy5fdGFiSGVhZGVyLmZvY3VzSW5kZXggPSBpZHg7XG4gICAgfVxuICB9XG5cbiAgX2ZvY3VzQ2hhbmdlZChpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5mb2N1c0NoYW5nZS5lbWl0KHRoaXMuX2NyZWF0ZUNoYW5nZUV2ZW50KGluZGV4KSk7XG4gIH1cblxuICAvKiogUmUtYWxpZ25zIHRoZSBpbmsgYmFyIHRvIHRoZSBzZWxlY3RlZCB0YWIgZWxlbWVudC4gKi9cbiAgcmVhbGlnbkFjdGl2ZUluZGljYXRvcigpIHtcbiAgICBpZiAodGhpcy5fdGFiSGVhZGVyKSB7XG4gICAgICB0aGlzLl90YWJIZWFkZXIuX2FsaWduQWN0aXZlSW5kaWNhdG9yVG9TZWxlY3RlZFRhYigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NoYW5nZUFjdGl2YXRlZFRhYnMoKSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuX2xhenkgfHxcbiAgICAgICF0aGlzLl90YWJzIHx8XG4gICAgICB0aGlzLl9pbmRleFRvU2VsZWN0IDwgMCB8fFxuICAgICAgdGhpcy5faW5kZXhUb1NlbGVjdCA+PSB0aGlzLl90YWJzLmxlbmd0aFxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB0YWIgPSB0aGlzLl90YWJzLmZpbmQoKF8sIGluZGV4KSA9PiBpbmRleCA9PT0gdGhpcy5faW5kZXhUb1NlbGVjdCk7XG4gICAgaWYgKHRhYiAmJiAhdGhpcy5hY3RpdmF0ZWRUYWJzLmluY2x1ZGVzKHRhYikpIHtcbiAgICAgIHRoaXMuYWN0aXZhdGVkVGFicy5wdXNoKHRhYik7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsYW1wcyB0aGUgZ2l2ZW4gaW5kZXggdG8gdGhlIGJvdW5kcyBvZiAwIGFuZCB0aGUgdGFicyBsZW5ndGguICovXG4gIHByaXZhdGUgX2NsYW1wVGFiSW5kZXgoaW5kZXg6IG51bWJlciB8IG51bGwpOiBudW1iZXIge1xuICAgIC8vIE5vdGUgdGhlIGB8fCAwYCwgd2hpY2ggZW5zdXJlcyB0aGF0IHZhbHVlcyBsaWtlIE5hTiBjYW4ndCBnZXQgdGhyb3VnaFxuICAgIC8vIGFuZCB3aGljaCB3b3VsZCBvdGhlcndpc2UgdGhyb3cgdGhlIGNvbXBvbmVudCBpbnRvIGFuIGluZmluaXRlIGxvb3BcbiAgICAvLyAoc2luY2UgTWF0aC5tYXgoTmFOLCAwKSA9PT0gTmFOKS5cbiAgICByZXR1cm4gTWF0aC5taW4odGhpcy5fdGFicy5sZW5ndGggLSAxLCBNYXRoLm1heChpbmRleCB8fCAwLCAwKSk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kSW5kZXhCeVRhYihuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICB0aGlzLl90YWJzLnRvQXJyYXkoKS5maW5kSW5kZXgodGFiID0+IHRhYi5uYW1lID09PSBuYW1lKSxcbiAgICAgIDAsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZUNoYW5nZUV2ZW50KGluZGV4OiBudW1iZXIpOiBUYWJDaGFuZ2VFdmVudCB7XG4gICAgY29uc3QgZXZlbnQgPSBuZXcgVGFiQ2hhbmdlRXZlbnQoKTtcbiAgICBldmVudC5pbmRleCA9IGluZGV4O1xuICAgIGlmICh0aGlzLl90YWJzPy5sZW5ndGggPiAwKSB7XG4gICAgICBldmVudC50YWIgPSB0aGlzLl90YWJzLnRvQXJyYXkoKVtpbmRleF07XG4gICAgfVxuICAgIHJldHVybiBldmVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJzY3JpYmVzIHRvIGNoYW5nZXMgaW4gdGhlIHRhYiBsYWJlbHMuIFRoaXMgaXMgbmVlZGVkLCBiZWNhdXNlIHRoZSBASW5wdXQgZm9yIHRoZSBsYWJlbCBpc1xuICAgKiBvbiB0aGUgVGFiIGNvbXBvbmVudCwgd2hlcmVhcyB0aGUgZGF0YSBiaW5kaW5nIGlzIGluc2lkZSB0aGUgVGFiR3JvdXAuIEluIG9yZGVyIGZvciB0aGVcbiAgICogYmluZGluZyB0byBiZSB1cGRhdGVkLCB3ZSBuZWVkIHRvIHN1YnNjcmliZSB0byBjaGFuZ2VzIGluIGl0IGFuZCB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb25cbiAgICogbWFudWFsbHkuXG4gICAqL1xuICBwcml2YXRlIF9zdWJzY3JpYmVUb1RhYkxhYmVscygpIHtcbiAgICBpZiAodGhpcy5fdGFiTGFiZWxTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuX3RhYkxhYmVsU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuX3RhYkxhYmVsU3Vic2NyaXB0aW9uID0gbWVyZ2UoXG4gICAgICAuLi50aGlzLl90YWJzLm1hcCh0YWIgPT4gdGFiLl9zdGF0ZUNoYW5nZXMpLFxuICAgICAgdGhpcy5fdHlwZUNoYW5nZSxcbiAgICAgIHRoaXMuX3NpemVDaGFuZ2UsXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZWFsaWduQWN0aXZlSW5kaWNhdG9yKCk7XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBSZXRyaWV2ZXMgdGhlIHRhYmluZGV4IGZvciB0aGUgdGFiLiAqL1xuICBfZ2V0VGFiSW5kZXgodGFiOiBUYWJDb21wb25lbnQsIGlkeDogbnVtYmVyKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgaWYgKHRhYi5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSW5kZXggPT09IGlkeCA/IDAgOiAtMTtcbiAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJiZW0uYmxvY2soKVwiPlxuICA8YXVpLXRhYi1oZWFkZXJcbiAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZEluZGV4XCJcbiAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICAoaW5kZXhGb2N1c2VkKT1cIl9mb2N1c0NoYW5nZWQoJGV2ZW50KVwiXG4gICAgKHNlbGVjdEZvY3VzZWRJbmRleCk9XCJzZWxlY3RlZEluZGV4ID0gJGV2ZW50XCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJfdGFiVGl0bGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKmF1aVRhYlRpdGxlPlxuICAgICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfdGFiVGl0bGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdlxuICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIF90YWJzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIGF1aVRhYkxhYmVsV3JhcHBlclxuICAgICAgY2RrTW9uaXRvckVsZW1lbnRGb2N1c1xuICAgICAgW2NsYXNzLmlzQWN0aXZlXT1cInNlbGVjdGVkSW5kZXggPT09IGlcIlxuICAgICAgW2NsYXNzLmNsb3NlYWJsZV09XCJ0YWIuY2xvc2VhYmxlICYmICF0YWIuZGlzYWJsZWRcIlxuICAgICAgW2Rpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiXG4gICAgICAoY2xpY2spPVwiX2hhbmRsZUNsaWNrKHRhYiwgaSlcIlxuICAgICAgW3RpdGxlXT1cInRhYi50ZXh0TGFiZWxcIlxuICAgICAgW2F0dHIudGFiSW5kZXhdPVwiX2dldFRhYkluZGV4KHRhYiwgaSlcIlxuICAgICAgW2F0dHIuYXJpYS1wb3NpbnNldF09XCJpICsgMVwiXG4gICAgICBbYXR0ci5hcmlhLXNldHNpemVdPVwiX3RhYnMubGVuZ3RoXCJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGFiLnRleHRMYWJlbFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImF1aS10YWItbGFiZWxfX2NvbnRlbnRcIj5cbiAgICAgICAgPCEtLSBJZiB0aGVyZSBpcyBhIGxhYmVsIHRlbXBsYXRlLCB1c2UgaXQuIC0tPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwidGFiLnRlbXBsYXRlTGFiZWxcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJ0YWIudGVtcGxhdGVMYWJlbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwhLS0gSWYgdGhlcmUgaXMgbm90IGEgbGFiZWwgdGVtcGxhdGUsIGZhbGwgYmFjayB0byB0aGUgdGV4dCBsYWJlbC4gLS0+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhdGFiLnRlbXBsYXRlTGFiZWxcIj5cbiAgICAgICAgICB7eyB0YWIudGV4dExhYmVsIH19XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGF1aS1pY29uXG4gICAgICAgICpuZ0lmPVwidGFiLmNsb3NlYWJsZSAmJiAhdGFiLmRpc2FibGVkXCJcbiAgICAgICAgY2xhc3M9XCJhdWktdGFiLWxhYmVsX19jbG9zZVwiXG4gICAgICAgIGljb249XCJjbG9zZV9zbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJ0YWIuY2xvc2UuZW1pdCgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2hlYWRlckFkZG9uXCI+XG4gICAgICA8bmctY29udGFpbmVyICphdWlUYWJIZWFkZXJBZGRvbj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX2hlYWRlckFkZG9uXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2F1aS10YWItaGVhZGVyPlxuXG4gIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdib2R5LXdyYXBwZXInKVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYXp5XCI+XG4gICAgICA8YXVpLXRhYi1ib2R5XG4gICAgICAgIHJvbGU9XCJ0YWJwYW5lbFwiXG4gICAgICAgICpuZ0Zvcj1cImxldCB0YWIgb2YgYWN0aXZhdGVkVGFic1wiXG4gICAgICAgIFtjb250ZW50XT1cInRhYi5jb250ZW50XCJcbiAgICAgICAgW2hpZGRlbl09XCJ0YWIgIT09IGFjdGl2ZVRhYlwiXG4gICAgICA+PC9hdWktdGFiLWJvZHk+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGF1aS10YWItYm9keVxuICAgICAgcm9sZT1cInRhYnBhbmVsXCJcbiAgICAgICpuZ0lmPVwiIWxhenkgJiYgYWN0aXZlVGFiXCJcbiAgICAgIFtjb250ZW50XT1cImFjdGl2ZVRhYi5jb250ZW50XCJcbiAgICA+PC9hdWktdGFiLWJvZHk+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
291
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJzL3RhYi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvdGFicy90YWItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMENBQTBDO0FBQzFDLE9BQU8sRUFHTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBSU4sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEQsT0FBTyxFQUFPLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFdkQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsR0FDbEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7O0FBRWhELG1FQUFtRTtBQUNuRSxNQUFNLE9BQU8sY0FBYztDQUsxQjtBQVdELE1BQU0sT0FBTyxpQkFBaUI7SUF5SDVCLFlBQTZCLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBdEhsRSxRQUFHLEdBQVEsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBY3JDLGdGQUFnRjtRQUN4RSxtQkFBYyxHQUFrQixDQUFDLENBQUM7UUFFMUMsZ0RBQWdEO1FBQ3hDLHNCQUFpQixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFFL0MsaURBQWlEO1FBQ3pDLDBCQUFxQixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFFM0MsbUJBQWMsR0FBa0IsSUFBSSxDQUFDO1FBQ3JDLFNBQUksR0FBVyxJQUFJLENBQUM7UUFDcEIsVUFBSyxHQUFZLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDOUIsVUFBSyxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFPeEMsc0NBQXNDO1FBQzdCLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUUzQyxzQ0FBc0M7UUFDN0IsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBa0UzQywwRUFBMEU7UUFFakUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUdqRCxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVoRCx3REFBd0Q7UUFFL0Msc0JBQWlCLEdBQUcsSUFBSSxZQUFZLENBQWlCLElBQUksQ0FBQyxDQUFDO1FBRXBFLCtEQUErRDtRQUV0RCxnQkFBVyxHQUFpQyxJQUFJLFlBQVksRUFBa0IsQ0FBQztRQUl4RixrQkFBYSxHQUFtQixFQUFFLENBQUM7SUFGa0MsQ0FBQztJQS9FdEUsbUNBQW1DO0lBQ25DLElBQ0ksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxhQUFhLENBQUMsS0FBb0I7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUNJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksR0FBRyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBYTtRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBS0QsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxHQUFHO1FBQ1YsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLEdBQUcsRUFBRTtZQUM5QixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLElBQUksQ0FBQyxJQUFhO1FBQ3BCLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFDdkIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxJQUFJLEVBQUU7WUFDUixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztTQUM3QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQXFCRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLElBQUk7WUFDekQsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUMxQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ1gsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUN6QjtRQUVELElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxxQkFBcUI7UUFDbkIsdUZBQXVGO1FBQ3ZGLHNFQUFzRTtRQUN0RSxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FDOUQsSUFBSSxDQUFDLGNBQWMsQ0FDcEIsQ0FBQyxDQUFDO1FBRUgscUZBQXFGO1FBQ3JGLG1EQUFtRDtRQUNuRCxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssYUFBYSxJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxFQUFFO1lBQ3hFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzVCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzVDLHFEQUFxRDtZQUNyRCx1REFBdUQ7WUFDdkQsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCwyRkFBMkY7UUFDM0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFpQixFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQ3RELEdBQUcsQ0FBQyxRQUFRLEdBQUcsS0FBSyxHQUFHLGFBQWEsQ0FBQztZQUNyQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxLQUFLLEtBQUssYUFBYSxDQUFDO1lBQ2xELHNGQUFzRjtZQUN0RixrQ0FBa0M7WUFDbEMsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3BFLEdBQUcsQ0FBQyxNQUFNLEdBQUcsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7YUFDbEQ7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxhQUFhLEVBQUU7WUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7WUFDcEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3hDO1FBRUQsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUM5QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdEQ7UUFFRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3Qiw2REFBNkQ7UUFDN0Qsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNkLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FDbkIsQ0FBQzthQUNIO1lBQ0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDL0Qsd0ZBQXdGO1lBQ3hGLGdEQUFnRDtZQUNoRCxJQUFJLGFBQWEsS0FBSyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN6QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO29CQUNyQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFO3dCQUMzQixzRkFBc0Y7d0JBQ3RGLHVGQUF1Rjt3QkFDdkYsdURBQXVEO3dCQUN2RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO3dCQUM5QyxNQUFNO3FCQUNQO2lCQUNGO2FBQ0Y7WUFDRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFekMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxzRUFBc0U7SUFDdEUsWUFBWSxDQUFDLEdBQWlCLEVBQUUsR0FBVztRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQseURBQXlEO0lBQ3pELHNCQUFzQjtRQUNwQixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1NBQ3REO0lBQ0gsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUNFLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDWCxDQUFDLElBQUksQ0FBQyxLQUFLO1lBQ1gsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQ3hDO1lBQ0EsT0FBTztTQUNSO1FBQ0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3pFLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQscUVBQXFFO0lBQzdELGNBQWMsQ0FBQyxLQUFvQjtRQUN6Qyx3RUFBd0U7UUFDeEUsc0VBQXNFO1FBQ3RFLG9DQUFvQztRQUNwQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUN4RCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUFhO1FBQ3RDLE1BQU0sS0FBSyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFDbkMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDMUIsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3pDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzFDO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FDaEMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFDM0MsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxZQUFZLENBQUMsR0FBaUIsRUFBRSxHQUFXO1FBQ3pDLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNoQixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxJQUFJLENBQUMsYUFBYSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QyxDQUFDOzs4R0E1VFUsaUJBQWlCO2tHQUFqQixpQkFBaUIsc1dBUWQsdUJBQXVCLDRFQU12QixpQkFBaUIsMkRBVGQsWUFBWSx5RUFNbEIsa0JBQWtCLGdHQzVEL0IsK3hFQXNFQTsyRkRyQmEsaUJBQWlCO2tCQVQ3QixTQUFTOytCQUNFLGVBQWUsWUFDZixhQUFhLGlCQUdSLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sdUJBQzFCLEtBQUs7d0dBUTFCLEtBQUs7c0JBREosZUFBZTt1QkFBQyxZQUFZO2dCQUk3QixZQUFZO3NCQURYLFlBQVk7dUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUl4RCxVQUFVO3NCQURULFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUloRCxTQUFTO3NCQURSLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQThCOUMsYUFBYTtzQkFEaEIsS0FBSztnQkFXRixHQUFHO3NCQUROLEtBQUs7Z0JBYUYsSUFBSTtzQkFEUCxLQUFLO2dCQVVOLEtBQUs7c0JBREosS0FBSztnQkFJRixJQUFJO3NCQURQLEtBQUs7Z0JBYUYsSUFBSTtzQkFEUCxLQUFLO2dCQW1CRyxtQkFBbUI7c0JBRDNCLE1BQU07Z0JBSUUsU0FBUztzQkFEakIsTUFBTTtnQkFLRSxpQkFBaUI7c0JBRHpCLE1BQU07Z0JBS0UsV0FBVztzQkFEbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXByb3RvdHlwZS1idWlsdGlucyAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgbWVyZ2UgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmVtLCBidWlsZEJlbSwgY29lcmNlTnVtYmVyIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQge1xuICBUYWJIZWFkZXJBZGRvbkRpcmVjdGl2ZSxcbiAgVGFiVGl0bGVEaXJlY3RpdmUsXG59IGZyb20gJy4vdGFiLWJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vdGFiLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiQ29tcG9uZW50IH0gZnJvbSAnLi90YWIuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYlNpemUsIFRhYlR5cGUgfSBmcm9tICcuL3RhYnMudHlwZXMnO1xuXG4vKiogQSBzaW1wbGUgY2hhbmdlIGV2ZW50IGVtaXR0ZWQgb24gZm9jdXMgb3Igc2VsZWN0aW9uIGNoYW5nZXMuICovXG5leHBvcnQgY2xhc3MgVGFiQ2hhbmdlRXZlbnQge1xuICAvKiogSW5kZXggb2YgdGhlIGN1cnJlbnRseS1zZWxlY3RlZCB0YWIuICovXG4gIGluZGV4OiBudW1iZXI7XG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGN1cnJlbnRseS1zZWxlY3RlZCB0YWIuICovXG4gIHRhYjogVGFiQ29tcG9uZW50O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGFiLWdyb3VwJyxcbiAgZXhwb3J0QXM6ICdhdWlUYWJHcm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWItZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJHcm91cENvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50Q2hlY2tlZCwgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95XG57XG4gIGJlbTogQmVtID0gYnVpbGRCZW0oJ2F1aS10YWItZ3JvdXAnKTtcblxuICBAQ29udGVudENoaWxkcmVuKFRhYkNvbXBvbmVudClcbiAgX3RhYnM6IFF1ZXJ5TGlzdDxUYWJDb21wb25lbnQ+O1xuXG4gIEBDb250ZW50Q2hpbGQoVGFiSGVhZGVyQWRkb25EaXJlY3RpdmUsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBfaGVhZGVyQWRkb246IFRhYkhlYWRlckFkZG9uRGlyZWN0aXZlO1xuXG4gIEBWaWV3Q2hpbGQoVGFiSGVhZGVyQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgX3RhYkhlYWRlcjogVGFiSGVhZGVyQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoVGFiVGl0bGVEaXJlY3RpdmUsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBfdGFiVGl0bGU6IFRhYlRpdGxlRGlyZWN0aXZlO1xuXG4gIC8qKiBUaGUgdGFiIGluZGV4IHRoYXQgc2hvdWxkIGJlIHNlbGVjdGVkIGFmdGVyIHRoZSBjb250ZW50IGhhcyBiZWVuIGNoZWNrZWQuICovXG4gIHByaXZhdGUgX2luZGV4VG9TZWxlY3Q6IG51bWJlciB8IG51bGwgPSAwO1xuXG4gIC8qKiBTdWJzY3JpcHRpb24gdG8gdGFicyBiZWluZyBhZGRlZC9yZW1vdmVkLiAqL1xuICBwcml2YXRlIF90YWJzU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIC8qKiBTdWJzY3JpcHRpb24gdG8gY2hhbmdlcyBpbiB0aGUgdGFiIGxhYmVscy4gKi9cbiAgcHJpdmF0ZSBfdGFiTGFiZWxTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRJbmRleDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RhYjogc3RyaW5nID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHlwZTogVGFiVHlwZSA9IFRhYlR5cGUuTGluZTtcbiAgcHJpdmF0ZSBfc2l6ZTogVGFiU2l6ZSA9IFRhYlNpemUuTWVkaXVtO1xuXG4gIC8qKiB0cnVlIGxhenkgbW9kZSBmb3IgdGVtcGxhdGUgcmVmIGNoaWxkcmVuICovXG4gIHByaXZhdGUgX2xhenk6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSBfcHJldmlvdXNIZWFkZXJBZGRvbjogVGFiSGVhZGVyQWRkb25EaXJlY3RpdmU7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSB0eXBlIGNoYW5nZXMgKi9cbiAgcmVhZG9ubHkgX3R5cGVDaGFuZ2UgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgc2l6ZSBjaGFuZ2VzICovXG4gIHJlYWRvbmx5IF9zaXplQ2hhbmdlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKiogVGhlIGluZGV4IG9mIHRoZSBhY3RpdmUgdGFiLiAqL1xuICBASW5wdXQoKVxuICBnZXQgc2VsZWN0ZWRJbmRleCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRJbmRleDtcbiAgfVxuXG4gIHNldCBzZWxlY3RlZEluZGV4KHZhbHVlOiBudW1iZXIgfCBudWxsKSB7XG4gICAgdGhpcy5faW5kZXhUb1NlbGVjdCA9IGNvZXJjZU51bWJlcih2YWx1ZSwgbnVsbCk7XG4gICAgdGhpcy5fY2hhbmdlQWN0aXZhdGVkVGFicygpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IHRhYigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90YWI7XG4gIH1cblxuICBzZXQgdGFiKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl90YWIgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5fdGFicykge1xuICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gdGhpcy5fZmluZEluZGV4QnlUYWIodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCB0eXBlKCkge1xuICAgIHJldHVybiB0aGlzLl90eXBlO1xuICB9XG5cbiAgc2V0IHR5cGUodHlwZTogVGFiVHlwZSkge1xuICAgIHRoaXMuX3R5cGUgPSB0eXBlO1xuICB9XG5cbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpXG4gIGdldCBzaXplKCkge1xuICAgIHJldHVybiB0aGlzLl9zaXplO1xuICB9XG5cbiAgc2V0IHNpemUodmFsKSB7XG4gICAgaWYgKCF2YWwgfHwgdGhpcy5fc2l6ZSA9PT0gdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3NpemUgPSB2YWw7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgbGF6eSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF6eTtcbiAgfVxuXG4gIHNldCBsYXp5KGxhenk6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5fbGF6eSA9PT0gbGF6eSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9sYXp5ID0gbGF6eTtcbiAgICBpZiAobGF6eSkge1xuICAgICAgdGhpcy5fY2hhbmdlQWN0aXZhdGVkVGFicygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFjdGl2YXRlZFRhYnMubGVuZ3RoID0gMDtcbiAgICB9XG4gIH1cblxuICAvKiogT3V0cHV0IHRvIGVuYWJsZSBzdXBwb3J0IGZvciB0d28td2F5IGJpbmRpbmcgb24gYFsoc2VsZWN0ZWRJbmRleCldYCAqL1xuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgc2VsZWN0ZWRJbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSB0YWJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSB0YWIgc2VsZWN0aW9uIGhhcyBjaGFuZ2VkLiAqL1xuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgc2VsZWN0ZWRUYWJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRhYkNoYW5nZUV2ZW50Pih0cnVlKTtcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIGZvY3VzIGhhcyBjaGFuZ2VkIHdpdGhpbiBhIHRhYiBncm91cC4gKi9cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGZvY3VzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8VGFiQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJDaGFuZ2VFdmVudD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgYWN0aXZhdGVkVGFiczogVGFiQ29tcG9uZW50W10gPSBbXTtcblxuICBnZXQgYWN0aXZlVGFiKCkge1xuICAgIHJldHVybiB0aGlzLl90YWJzLmxlbmd0aCA+IDAgJiYgdGhpcy5zZWxlY3RlZEluZGV4ICE9PSBudWxsXG4gICAgICA/IHRoaXMuX3RhYnMudG9BcnJheSgpW3RoaXMuc2VsZWN0ZWRJbmRleF1cbiAgICAgIDogbnVsbDtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgndHlwZScpKSB7XG4gICAgICB0aGlzLl90eXBlQ2hhbmdlLm5leHQoKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgnc2l6ZScpKSB7XG4gICAgICB0aGlzLl9zaXplQ2hhbmdlLm5leHQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWZ0ZXIgdGhlIGNvbnRlbnQgaXMgY2hlY2tlZCwgdGhpcyBjb21wb25lbnQga25vd3Mgd2hhdCB0YWJzIGhhdmUgYmVlbiBkZWZpbmVkXG4gICAqIGFuZCB3aGF0IHRoZSBzZWxlY3RlZCBpbmRleCBzaG91bGQgYmUuIFRoaXMgaXMgd2hlcmUgd2UgY2FuIGtub3cgZXhhY3RseSB3aGF0IHBvc2l0aW9uXG4gICAqIGVhY2ggdGFiIHNob3VsZCBiZSBpbiBhY2NvcmRpbmcgdG8gdGhlIG5ldyBzZWxlY3RlZCBpbmRleC5cbiAgICovXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAvLyBEb24ndCBjbGFtcCB0aGUgYGluZGV4VG9TZWxlY3RgIGltbWVkaWF0ZWx5IGluIHRoZSBzZXR0ZXIgYmVjYXVzZSBpdCBjYW4gaGFwcGVuIHRoYXRcbiAgICAvLyB0aGUgYW1vdW50IG9mIHRhYnMgY2hhbmdlcyBiZWZvcmUgdGhlIGFjdHVhbCBjaGFuZ2UgZGV0ZWN0aW9uIHJ1bnMuXG4gICAgY29uc3QgaW5kZXhUb1NlbGVjdCA9ICh0aGlzLl9pbmRleFRvU2VsZWN0ID0gdGhpcy5fY2xhbXBUYWJJbmRleChcbiAgICAgIHRoaXMuX2luZGV4VG9TZWxlY3QsXG4gICAgKSk7XG5cbiAgICAvLyBJZiB0aGVyZSBpcyBhIGNoYW5nZSBpbiBzZWxlY3RlZCBpbmRleCwgZW1pdCBhIGNoYW5nZSBldmVudC4gU2hvdWxkIG5vdCB0cmlnZ2VyIGlmXG4gICAgLy8gdGhlIHNlbGVjdGVkIGluZGV4IGhhcyBub3QgeWV0IGJlZW4gaW5pdGlhbGl6ZWQuXG4gICAgaWYgKHRoaXMuX3NlbGVjdGVkSW5kZXggIT09IGluZGV4VG9TZWxlY3QgJiYgdGhpcy5fc2VsZWN0ZWRJbmRleCAhPSBudWxsKSB7XG4gICAgICB0aGlzLl9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCk7XG4gICAgICBjb25zdCB0YWJDaGFuZ2VFdmVudCA9IHRoaXMuX2NyZWF0ZUNoYW5nZUV2ZW50KGluZGV4VG9TZWxlY3QpO1xuICAgICAgdGhpcy5zZWxlY3RlZFRhYkNoYW5nZS5lbWl0KHRhYkNoYW5nZUV2ZW50KTtcbiAgICAgIC8vIEVtaXR0aW5nIHRoaXMgdmFsdWUgYWZ0ZXIgY2hhbmdlIGRldGVjdGlvbiBoYXMgcnVuXG4gICAgICAvLyBzaW5jZSB0aGUgY2hlY2tlZCBjb250ZW50IG1heSBjb250YWluIHRoaXMgdmFyaWFibGUnXG4gICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4Q2hhbmdlLmVtaXQoaW5kZXhUb1NlbGVjdCk7XG4gICAgICAgIHRoaXMudGFiQ2hhbmdlLmVtaXQodGhpcy5fdGFicy5nZXQoaW5kZXhUb1NlbGVjdCkubmFtZSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBTZXR1cCB0aGUgcG9zaXRpb24gZm9yIGVhY2ggdGFiIGFuZCBvcHRpb25hbGx5IHNldHVwIGFuIG9yaWdpbiBvbiB0aGUgbmV4dCBzZWxlY3RlZCB0YWIuXG4gICAgdGhpcy5fdGFicy5mb3JFYWNoKCh0YWI6IFRhYkNvbXBvbmVudCwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgdGFiLnBvc2l0aW9uID0gaW5kZXggLSBpbmRleFRvU2VsZWN0O1xuICAgICAgdGFiLnRhYkNvbnRleHQuaXNBY3RpdmUgPSBpbmRleCA9PT0gaW5kZXhUb1NlbGVjdDtcbiAgICAgIC8vIElmIHRoZXJlIGlzIGFscmVhZHkgYSBzZWxlY3RlZCB0YWIsIHRoZW4gc2V0IHVwIGFuIG9yaWdpbiBmb3IgdGhlIG5leHQgc2VsZWN0ZWQgdGFiXG4gICAgICAvLyBpZiBpdCBkb2Vzbid0IGhhdmUgb25lIGFscmVhZHkuXG4gICAgICBpZiAodGhpcy5fc2VsZWN0ZWRJbmRleCAhPSBudWxsICYmIHRhYi5wb3NpdGlvbiA9PT0gMCAmJiAhdGFiLm9yaWdpbikge1xuICAgICAgICB0YWIub3JpZ2luID0gaW5kZXhUb1NlbGVjdCAtIHRoaXMuX3NlbGVjdGVkSW5kZXg7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5fc2VsZWN0ZWRJbmRleCAhPT0gaW5kZXhUb1NlbGVjdCkge1xuICAgICAgdGhpcy5fc2VsZWN0ZWRJbmRleCA9IGluZGV4VG9TZWxlY3Q7XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcHJldmlvdXNIZWFkZXJBZGRvbiAhPT0gdGhpcy5faGVhZGVyQWRkb24pIHtcbiAgICAgIHRoaXMuX3ByZXZpb3VzSGVhZGVyQWRkb24gPSB0aGlzLl9oZWFkZXJBZGRvbjtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAodGhpcy50YWIpIHtcbiAgICAgIHRoaXMuX2luZGV4VG9TZWxlY3QgPSB0aGlzLl9maW5kSW5kZXhCeVRhYih0aGlzLnRhYik7XG4gICAgfVxuXG4gICAgdGhpcy5fY2hhbmdlQWN0aXZhdGVkVGFicygpO1xuICAgIHRoaXMuX3N1YnNjcmliZVRvVGFiTGFiZWxzKCk7XG4gICAgLy8gU3Vic2NyaWJlIHRvIGNoYW5nZXMgaW4gdGhlIGFtb3VudCBvZiB0YWJzLCBpbiBvcmRlciB0byBiZVxuICAgIC8vIGFibGUgdG8gcmUtcmVuZGVyIHRoZSBjb250ZW50IGFzIG5ldyB0YWJzIGFyZSBhZGRlZCBvciByZW1vdmVkLlxuICAgIHRoaXMuX3RhYnNTdWJzY3JpcHRpb24gPSB0aGlzLl90YWJzLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGNvbnN0IHRhYnMgPSB0aGlzLl90YWJzLnRvQXJyYXkoKTtcbiAgICAgIGlmICh0aGlzLl9sYXp5KSB7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVkVGFicyA9IHRoaXMuYWN0aXZhdGVkVGFicy5maWx0ZXIodGFiID0+XG4gICAgICAgICAgdGFicy5pbmNsdWRlcyh0YWIpLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgaW5kZXhUb1NlbGVjdCA9IHRoaXMuX2NsYW1wVGFiSW5kZXgodGhpcy5faW5kZXhUb1NlbGVjdCk7XG4gICAgICAvLyBNYWludGFpbiB0aGUgcHJldmlvdXNseS1zZWxlY3RlZCB0YWIgaWYgYSBuZXcgdGFiIGlzIGFkZGVkIG9yIHJlbW92ZWQgYW5kIHRoZXJlIGlzIG5vXG4gICAgICAvLyBleHBsaWNpdCBjaGFuZ2UgdGhhdCBzZWxlY3RzIGEgZGlmZmVyZW50IHRhYi5cbiAgICAgIGlmIChpbmRleFRvU2VsZWN0ID09PSB0aGlzLl9zZWxlY3RlZEluZGV4KSB7XG4gICAgICAgIGZvciAoY29uc3QgW2ksIHRhYl0gb2YgdGFicy5lbnRyaWVzKCkpIHtcbiAgICAgICAgICBpZiAodGFiLnRhYkNvbnRleHQuaXNBY3RpdmUpIHtcbiAgICAgICAgICAgIC8vIEFzc2lnbiBib3RoIHRvIHRoZSBgX2luZGV4VG9TZWxlY3RgIGFuZCBgX3NlbGVjdGVkSW5kZXhgIHNvIHdlIGRvbid0IGZpcmUgYSBjaGFuZ2VkXG4gICAgICAgICAgICAvLyBldmVudCwgb3RoZXJ3aXNlIHRoZSBjb25zdW1lciBtYXkgZW5kIHVwIGluIGFuIGluZmluaXRlIGxvb3AgaW4gc29tZSBlZGdlIGNhc2VzIGxpa2VcbiAgICAgICAgICAgIC8vIGFkZGluZyBhIHRhYiB3aXRoaW4gdGhlIGBzZWxlY3RlZEluZGV4Q2hhbmdlYCBldmVudC5cbiAgICAgICAgICAgIHRoaXMuX2luZGV4VG9TZWxlY3QgPSB0aGlzLl9zZWxlY3RlZEluZGV4ID0gaTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5fY2hhbmdlQWN0aXZhdGVkVGFicygpO1xuICAgICAgdGhpcy5fc3Vic2NyaWJlVG9UYWJMYWJlbHMoKTtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fdGFic1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3RhYkxhYmVsU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cbiAgICB0aGlzLl90eXBlQ2hhbmdlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fc2l6ZUNoYW5nZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqIEhhbmRsZSBjbGljayBldmVudHMsIHNldHRpbmcgbmV3IHNlbGVjdGVkIGluZGV4IGlmIGFwcHJvcHJpYXRlLiAqL1xuICBfaGFuZGxlQ2xpY2sodGFiOiBUYWJDb21wb25lbnQsIGlkeDogbnVtYmVyKSB7XG4gICAgaWYgKCF0YWIuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuX3RhYkhlYWRlci5mb2N1c0luZGV4ID0gaWR4O1xuICAgIH1cbiAgfVxuXG4gIF9mb2N1c0NoYW5nZWQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuZm9jdXNDaGFuZ2UuZW1pdCh0aGlzLl9jcmVhdGVDaGFuZ2VFdmVudChpbmRleCkpO1xuICB9XG5cbiAgLyoqIFJlLWFsaWducyB0aGUgaW5rIGJhciB0byB0aGUgc2VsZWN0ZWQgdGFiIGVsZW1lbnQuICovXG4gIHJlYWxpZ25BY3RpdmVJbmRpY2F0b3IoKSB7XG4gICAgaWYgKHRoaXMuX3RhYkhlYWRlcikge1xuICAgICAgdGhpcy5fdGFiSGVhZGVyLl9hbGlnbkFjdGl2ZUluZGljYXRvclRvU2VsZWN0ZWRUYWIoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGFuZ2VBY3RpdmF0ZWRUYWJzKCkge1xuICAgIGlmIChcbiAgICAgICF0aGlzLl9sYXp5IHx8XG4gICAgICAhdGhpcy5fdGFicyB8fFxuICAgICAgdGhpcy5faW5kZXhUb1NlbGVjdCA8IDAgfHxcbiAgICAgIHRoaXMuX2luZGV4VG9TZWxlY3QgPj0gdGhpcy5fdGFicy5sZW5ndGhcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdGFiID0gdGhpcy5fdGFicy5maW5kKChfLCBpbmRleCkgPT4gaW5kZXggPT09IHRoaXMuX2luZGV4VG9TZWxlY3QpO1xuICAgIGlmICh0YWIgJiYgIXRoaXMuYWN0aXZhdGVkVGFicy5pbmNsdWRlcyh0YWIpKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlZFRhYnMucHVzaCh0YWIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDbGFtcHMgdGhlIGdpdmVuIGluZGV4IHRvIHRoZSBib3VuZHMgb2YgMCBhbmQgdGhlIHRhYnMgbGVuZ3RoLiAqL1xuICBwcml2YXRlIF9jbGFtcFRhYkluZGV4KGluZGV4OiBudW1iZXIgfCBudWxsKTogbnVtYmVyIHtcbiAgICAvLyBOb3RlIHRoZSBgfHwgMGAsIHdoaWNoIGVuc3VyZXMgdGhhdCB2YWx1ZXMgbGlrZSBOYU4gY2FuJ3QgZ2V0IHRocm91Z2hcbiAgICAvLyBhbmQgd2hpY2ggd291bGQgb3RoZXJ3aXNlIHRocm93IHRoZSBjb21wb25lbnQgaW50byBhbiBpbmZpbml0ZSBsb29wXG4gICAgLy8gKHNpbmNlIE1hdGgubWF4KE5hTiwgMCkgPT09IE5hTikuXG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuX3RhYnMubGVuZ3RoIC0gMSwgTWF0aC5tYXgoaW5kZXggfHwgMCwgMCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZEluZGV4QnlUYWIobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIE1hdGgubWF4KFxuICAgICAgdGhpcy5fdGFicy50b0FycmF5KCkuZmluZEluZGV4KHRhYiA9PiB0YWIubmFtZSA9PT0gbmFtZSksXG4gICAgICAwLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDaGFuZ2VFdmVudChpbmRleDogbnVtYmVyKTogVGFiQ2hhbmdlRXZlbnQge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IFRhYkNoYW5nZUV2ZW50KCk7XG4gICAgZXZlbnQuaW5kZXggPSBpbmRleDtcbiAgICBpZiAodGhpcy5fdGFicz8ubGVuZ3RoID4gMCkge1xuICAgICAgZXZlbnQudGFiID0gdGhpcy5fdGFicy50b0FycmF5KClbaW5kZXhdO1xuICAgIH1cbiAgICByZXR1cm4gZXZlbnQ7XG4gIH1cblxuICAvKipcbiAgICogU3Vic2NyaWJlcyB0byBjaGFuZ2VzIGluIHRoZSB0YWIgbGFiZWxzLiBUaGlzIGlzIG5lZWRlZCwgYmVjYXVzZSB0aGUgQElucHV0IGZvciB0aGUgbGFiZWwgaXNcbiAgICogb24gdGhlIFRhYiBjb21wb25lbnQsIHdoZXJlYXMgdGhlIGRhdGEgYmluZGluZyBpcyBpbnNpZGUgdGhlIFRhYkdyb3VwLiBJbiBvcmRlciBmb3IgdGhlXG4gICAqIGJpbmRpbmcgdG8gYmUgdXBkYXRlZCwgd2UgbmVlZCB0byBzdWJzY3JpYmUgdG8gY2hhbmdlcyBpbiBpdCBhbmQgdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uXG4gICAqIG1hbnVhbGx5LlxuICAgKi9cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9UYWJMYWJlbHMoKSB7XG4gICAgaWYgKHRoaXMuX3RhYkxhYmVsU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLl90YWJMYWJlbFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLl90YWJMYWJlbFN1YnNjcmlwdGlvbiA9IG1lcmdlKFxuICAgICAgLi4udGhpcy5fdGFicy5tYXAodGFiID0+IHRhYi5fc3RhdGVDaGFuZ2VzKSxcbiAgICAgIHRoaXMuX3R5cGVDaGFuZ2UsXG4gICAgICB0aGlzLl9zaXplQ2hhbmdlLFxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVhbGlnbkFjdGl2ZUluZGljYXRvcigpO1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogUmV0cmlldmVzIHRoZSB0YWJpbmRleCBmb3IgdGhlIHRhYi4gKi9cbiAgX2dldFRhYkluZGV4KHRhYjogVGFiQ29tcG9uZW50LCBpZHg6IG51bWJlcik6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh0YWIuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEluZGV4ID09PSBpZHggPyAwIDogLTE7XG4gIH1cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwiYmVtLmJsb2NrKClcIj5cbiAgPGF1aS10YWItaGVhZGVyXG4gICAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRJbmRleFwiXG4gICAgW3R5cGVdPVwidHlwZVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgKGluZGV4Rm9jdXNlZCk9XCJfZm9jdXNDaGFuZ2VkKCRldmVudClcIlxuICAgIChzZWxlY3RGb2N1c2VkSW5kZXgpPVwic2VsZWN0ZWRJbmRleCA9ICRldmVudFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX3RhYlRpdGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyICphdWlUYWJUaXRsZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX3RhYlRpdGxlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxkaXZcbiAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiBfdGFiczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBhdWlUYWJMYWJlbFdyYXBwZXJcbiAgICAgIGNka01vbml0b3JFbGVtZW50Rm9jdXNcbiAgICAgIFtjbGFzcy5pc0FjdGl2ZV09XCJzZWxlY3RlZEluZGV4ID09PSBpXCJcbiAgICAgIFtjbGFzcy5jbG9zZWFibGVdPVwidGFiLmNsb3NlYWJsZSAmJiAhdGFiLmRpc2FibGVkXCJcbiAgICAgIFtkaXNhYmxlZF09XCJ0YWIuZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cIl9oYW5kbGVDbGljayh0YWIsIGkpXCJcbiAgICAgIFt0aXRsZV09XCJ0YWIudGV4dExhYmVsXCJcbiAgICAgIFthdHRyLnRhYkluZGV4XT1cIl9nZXRUYWJJbmRleCh0YWIsIGkpXCJcbiAgICAgIFthdHRyLmFyaWEtcG9zaW5zZXRdPVwiaSArIDFcIlxuICAgICAgW2F0dHIuYXJpYS1zZXRzaXplXT1cIl90YWJzLmxlbmd0aFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRhYi50ZXh0TGFiZWxcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJhdWktdGFiLWxhYmVsX19jb250ZW50XCI+XG4gICAgICAgIDwhLS0gSWYgdGhlcmUgaXMgYSBsYWJlbCB0ZW1wbGF0ZSwgdXNlIGl0LiAtLT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInRhYi50ZW1wbGF0ZUxhYmVsXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwidGFiLnRlbXBsYXRlTGFiZWxcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8IS0tIElmIHRoZXJlIGlzIG5vdCBhIGxhYmVsIHRlbXBsYXRlLCBmYWxsIGJhY2sgdG8gdGhlIHRleHQgbGFiZWwuIC0tPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIXRhYi50ZW1wbGF0ZUxhYmVsXCI+XG4gICAgICAgICAge3sgdGFiLnRleHRMYWJlbCB9fVxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICAqbmdJZj1cInRhYi5jbG9zZWFibGUgJiYgIXRhYi5kaXNhYmxlZFwiXG4gICAgICAgIGNsYXNzPVwiYXVpLXRhYi1sYWJlbF9fY2xvc2VcIlxuICAgICAgICBpY29uPVwiY2xvc2Vfc21hbGxcIlxuICAgICAgICAoY2xpY2spPVwidGFiLmNsb3NlLmVtaXQoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9oZWFkZXJBZGRvblwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqYXVpVGFiSGVhZGVyQWRkb24+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9oZWFkZXJBZGRvblwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9hdWktdGFiLWhlYWRlcj5cblxuICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnYm9keS13cmFwcGVyJylcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGF6eVwiPlxuICAgICAgPGF1aS10YWItYm9keVxuICAgICAgICByb2xlPVwidGFicGFuZWxcIlxuICAgICAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIGFjdGl2YXRlZFRhYnNcIlxuICAgICAgICBbY29udGVudF09XCJ0YWIuY29udGVudFwiXG4gICAgICAgIFtoaWRkZW5dPVwidGFiICE9PSBhY3RpdmVUYWJcIlxuICAgICAgPjwvYXVpLXRhYi1ib2R5PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxhdWktdGFiLWJvZHlcbiAgICAgIHJvbGU9XCJ0YWJwYW5lbFwiXG4gICAgICAqbmdJZj1cIiFsYXp5ICYmIGFjdGl2ZVRhYlwiXG4gICAgICBbY29udGVudF09XCJhY3RpdmVUYWIuY29udGVudFwiXG4gICAgPjwvYXVpLXRhYi1ib2R5PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -10,6 +10,11 @@ export class TabHeaderActiveIndicatorComponent {
|
|
|
10
10
|
this.type = TabType.Line;
|
|
11
11
|
this.bem = buildBem('aui-tab-header-active-indicator');
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Calculates the styles from the provided element in order to align the indicator to that element.
|
|
15
|
+
* Shows the indicator if previously set as hidden.
|
|
16
|
+
* @param element
|
|
17
|
+
*/
|
|
13
18
|
alignToElement(element) {
|
|
14
19
|
if (typeof requestAnimationFrame !== 'undefined') {
|
|
15
20
|
this._ngZone.runOutsideAngular(() => {
|
|
@@ -20,6 +25,10 @@ export class TabHeaderActiveIndicatorComponent {
|
|
|
20
25
|
this._setStyles(element);
|
|
21
26
|
}
|
|
22
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Sets the proper styles to the element.
|
|
30
|
+
* @param element
|
|
31
|
+
*/
|
|
23
32
|
_setStyles(element) {
|
|
24
33
|
const positions = this._getElementPosition(element);
|
|
25
34
|
const nativeEl = this._elementRef.nativeElement;
|
|
@@ -41,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
41
50
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { type: [{
|
|
42
51
|
type: Input
|
|
43
52
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWhlYWRlci1hY3RpdmUtaW5kaWNhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJzL3RhYi1oZWFkZXItYWN0aXZlLWluZGljYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvdGFicy90YWItaGVhZGVyLWFjdGl2ZS1pbmRpY2F0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsS0FBSyxFQUVMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQU8sUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQVN2QyxNQUFNLE9BQU8saUNBQWlDO0lBTTVDLFlBQ21CLFdBQW9DLEVBQ3BDLE9BQWU7UUFEZixnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDcEMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQU5sQyxTQUFJLEdBQVksT0FBTyxDQUFDLElBQUksQ0FBQztRQUU3QixRQUFHLEdBQVEsUUFBUSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFLcEQsQ0FBQztJQUVKOzs7O09BSUc7SUFDSCxjQUFjLENBQUMsT0FBb0I7UUFDakMsSUFBSSxPQUFPLHFCQUFxQixLQUFLLFdBQVcsRUFBRTtZQUNoRCxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtnQkFDbEMscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3hELENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssVUFBVSxDQUFDLE9BQW9CO1FBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUNoRCxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ3JDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDekMsQ0FBQztJQUVPLG1CQUFtQixDQUFDLE9BQW9CO1FBQzlDLE9BQU87WUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHO1lBQ3RELEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUc7U0FDekQsQ0FBQztJQUNKLENBQUM7OzhIQTFDVSxpQ0FBaUM7a0hBQWpDLGlDQUFpQyxpR0NwQjlDLDZDQUNBOzJGRG1CYSxpQ0FBaUM7a0JBUDdDLFNBQVM7K0JBQ0UsaUNBQWlDLGlCQUU1QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLHVCQUMxQixLQUFLO3NIQUkxQixJQUFJO3NCQURILEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlbSwgYnVpbGRCZW0gfSBmcm9tICcuLi91dGlscyc7XG5cbmltcG9ydCB7IFRhYlR5cGUgfSBmcm9tICcuL3RhYnMudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGFiLWhlYWRlci1hY3RpdmUtaW5kaWNhdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1oZWFkZXItYWN0aXZlLWluZGljYXRvci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgVGFiSGVhZGVyQWN0aXZlSW5kaWNhdG9yQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgdHlwZTogVGFiVHlwZSA9IFRhYlR5cGUuTGluZTtcblxuICBiZW06IEJlbSA9IGJ1aWxkQmVtKCdhdWktdGFiLWhlYWRlci1hY3RpdmUtaW5kaWNhdG9yJyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsXG4gICkge31cblxuICAvKipcbiAgICogQ2FsY3VsYXRlcyB0aGUgc3R5bGVzIGZyb20gdGhlIHByb3ZpZGVkIGVsZW1lbnQgaW4gb3JkZXIgdG8gYWxpZ24gdGhlIGluZGljYXRvciB0byB0aGF0IGVsZW1lbnQuXG4gICAqIFNob3dzIHRoZSBpbmRpY2F0b3IgaWYgcHJldmlvdXNseSBzZXQgYXMgaGlkZGVuLlxuICAgKiBAcGFyYW0gZWxlbWVudFxuICAgKi9cbiAgYWxpZ25Ub0VsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB0aGlzLl9zZXRTdHlsZXMoZWxlbWVudCkpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3NldFN0eWxlcyhlbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcHJvcGVyIHN0eWxlcyB0byB0aGUgZWxlbWVudC5cbiAgICogQHBhcmFtIGVsZW1lbnRcbiAgICovXG4gIHByaXZhdGUgX3NldFN0eWxlcyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgIGNvbnN0IHBvc2l0aW9ucyA9IHRoaXMuX2dldEVsZW1lbnRQb3NpdGlvbihlbGVtZW50KTtcbiAgICBjb25zdCBuYXRpdmVFbCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBuYXRpdmVFbC5zdHlsZS5sZWZ0ID0gcG9zaXRpb25zLmxlZnQ7XG4gICAgbmF0aXZlRWwuc3R5bGUud2lkdGggPSBwb3NpdGlvbnMud2lkdGg7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50UG9zaXRpb24oZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbGVmdDogZWxlbWVudCA/IChlbGVtZW50Lm9mZnNldExlZnQgfHwgMCkgKyAncHgnIDogJzAnLFxuICAgICAgd2lkdGg6IGVsZW1lbnQgPyAoZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAwKSArICdweCcgOiAnMCcsXG4gICAgfTtcbiAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJiZW0uYmxvY2sodHlwZSlcIj48L2Rpdj5cbiJdfQ==
|