@taiga-ui/core 3.46.0 → 3.47.0-canary.2d7569f
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/bundles/taiga-ui-core-components-dialog.umd.js +1 -1
- package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +14 -5
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-root.umd.js +33 -37
- package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js +5 -4
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-scrollbar.umd.js +16 -13
- package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-svg.umd.js +7 -3
- package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-dropdown.umd.js +13 -5
- package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-hint.umd.js +8 -4
- package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
- package/bundles/taiga-ui-core-tokens.umd.js +2 -2
- package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
- package/components/primitive-textfield/primitive-textfield.component.d.ts +1 -0
- package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +3 -1
- package/components/root/root.module.d.ts +1 -2
- package/components/scroll-controls/scroll-controls.module.d.ts +1 -0
- package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
- package/components/scrollbar/scrollbar.module.d.ts +1 -1
- package/components/svg/svg-options.d.ts +1 -1
- package/components/svg/svg.component.d.ts +3 -2
- package/constants/cache-basting-payload.d.ts +1 -1
- package/directives/dropdown/dropdown-hover.directive.d.ts +3 -2
- package/directives/dropdown/dropdown.component.d.ts +2 -3
- package/directives/hint/hint-describe.directive.d.ts +5 -3
- package/esm2015/components/dialog/dialog.component.js +2 -2
- package/esm2015/components/primitive-textfield/primitive-textfield.component.js +8 -3
- package/esm2015/components/primitive-textfield/textfield/textfield.component.js +1 -1
- package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +10 -6
- package/esm2015/components/root/root.component.js +7 -8
- package/esm2015/components/root/root.module.js +2 -6
- package/esm2015/components/scroll-controls/scroll-controls.component.js +3 -3
- package/esm2015/components/scroll-controls/scroll-controls.module.js +2 -1
- package/esm2015/components/scroll-controls/scrollbar.directive.js +3 -3
- package/esm2015/components/scrollbar/scroll-ref.directive.js +4 -2
- package/esm2015/components/scrollbar/scrollbar.component.js +5 -5
- package/esm2015/components/scrollbar/scrollbar.module.js +2 -2
- package/esm2015/components/svg/svg-options.js +1 -1
- package/esm2015/components/svg/svg.component.js +9 -5
- package/esm2015/directives/dropdown/dropdown-hover.directive.js +15 -4
- package/esm2015/directives/dropdown/dropdown.component.js +1 -4
- package/esm2015/directives/hint/hint-describe.directive.js +11 -7
- package/esm2015/tokens/common-icon.js +1 -1
- package/esm2015/tokens/scroll-ref.js +4 -6
- package/fesm2015/taiga-ui-core-components-dialog.js +1 -1
- package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js +16 -7
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-root.js +7 -12
- package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-scroll-controls.js +3 -2
- package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-scrollbar.js +6 -5
- package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-svg.js +8 -4
- package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-dropdown.js +13 -5
- package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-hint.js +10 -6
- package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
- package/fesm2015/taiga-ui-core-tokens.js +4 -4
- package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
- package/package.json +4 -4
- package/styles/mixins/mixins.less +2 -2
- package/styles/mixins/textfield.less +2 -1
- package/styles/taiga-ui-theme.less +0 -1
- package/tokens/common-icon.d.ts +1 -1
- package/tokens/scroll-ref.d.ts +2 -3
- package/styles/theme/dialog.less +0 -13
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DOCUMENT } from '@angular/common';
|
|
2
2
|
import { Directive, ElementRef, Inject, Input, NgZone, Renderer2, Self, } from '@angular/core';
|
|
3
3
|
import { ANIMATION_FRAME } from '@ng-web-apis/common';
|
|
4
|
-
import { POLLING_TIME, TuiDestroyService, tuiPreventDefault, tuiScrollFrom, tuiStopPropagation, tuiTypedFromEvent, tuiZonefree, } from '@taiga-ui/cdk';
|
|
5
|
-
import { TUI_ELEMENT_REF
|
|
4
|
+
import { POLLING_TIME, TUI_SCROLL_REF, TuiDestroyService, tuiPreventDefault, tuiScrollFrom, tuiStopPropagation, tuiTypedFromEvent, tuiZonefree, } from '@taiga-ui/cdk';
|
|
5
|
+
import { TUI_ELEMENT_REF } from '@taiga-ui/core/tokens';
|
|
6
6
|
import { merge } from 'rxjs';
|
|
7
7
|
import { map, switchMap, takeUntil, throttleTime } from 'rxjs/operators';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -132,4 +132,4 @@ function getOffsetVertical({ clientY }, { top, height }) {
|
|
|
132
132
|
function getOffsetHorizontal({ clientX }, { left, width }) {
|
|
133
133
|
return (clientX - left) / width;
|
|
134
134
|
}
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGwtY29udHJvbHMvc2Nyb2xsYmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUNILFlBQVksRUFDWixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXRFLE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFFdkUsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0FBTXJCLE1BQU0sT0FBTyxxQkFBcUI7SUFJOUIsWUFDb0IsSUFBWSxFQUNULFFBQW1CLEVBQ0gsUUFBMEIsRUFDcEMsZUFBbUMsRUFDbEIsT0FBZ0MsRUFDakMsU0FBa0MsRUFDeEMsR0FBYSxFQUNYLEVBQTJCO1FBSHRCLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQXlCO1FBQ3hDLFFBQUcsR0FBSCxHQUFHLENBQVU7UUFDWCxPQUFFLEdBQUYsRUFBRSxDQUF5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QUMsR0FBRyxLQUFLLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBQT0xMSU5HX1RJTUUsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpUHJldmVudERlZmF1bHQsXG4gICAgdHVpU2Nyb2xsRnJvbSxcbiAgICB0dWlTdG9wUHJvcGFnYXRpb24sXG4gICAgdHVpVHlwZWRGcm9tRXZlbnQsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfRUxFTUVOVF9SRUYsIFRVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlPcmllbnRhdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHttZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRocm90dGxlVGltZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBNSU5fV0lEVEggPSAyNDtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpU2Nyb2xsYmFyXScsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxiYXJEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgdHVpU2Nyb2xsYmFyOiBUdWlPcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIHpvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUVUlfRUxFTUVOVF9SRUYpIHByaXZhdGUgcmVhZG9ubHkgd3JhcHBlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1NDUk9MTF9SRUYpIHByaXZhdGUgcmVhZG9ubHkgY29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge1xuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLmVsO1xuICAgICAgICBjb25zdCBtb3VzZWRvd24kID0gdHVpVHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpO1xuICAgICAgICBjb25zdCBtb3VzZW1vdmUkID0gdHVpVHlwZWRGcm9tRXZlbnQodGhpcy5kb2MsICdtb3VzZW1vdmUnKTtcbiAgICAgICAgY29uc3QgbW91c2V1cCQgPSB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ21vdXNldXAnKTtcbiAgICAgICAgY29uc3QgbW91c2Vkb3duV3JhcHBlciQgPSB0dWlUeXBlZEZyb21FdmVudChcbiAgICAgICAgICAgIHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgJ21vdXNlZG93bicsXG4gICAgICAgICk7XG5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICBtb3VzZWRvd25XcmFwcGVyJC5waXBlKFxuICAgICAgICAgICAgICAgIHR1aVByZXZlbnREZWZhdWx0KCksXG4gICAgICAgICAgICAgICAgbWFwKGV2ZW50ID0+IHRoaXMuZ2V0U2Nyb2xsZWQoZXZlbnQsIDAuNSwgMC41KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbW91c2Vkb3duJC5waXBlKFxuICAgICAgICAgICAgICAgIHR1aVByZXZlbnREZWZhdWx0KCksXG4gICAgICAgICAgICAgICAgdHVpU3RvcFByb3BhZ2F0aW9uKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjdCA9IG5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsID0gZ2V0T2Zmc2V0VmVydGljYWwoZXZlbnQsIHJlY3QpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBob3Jpem9udGFsID0gZ2V0T2Zmc2V0SG9yaXpvbnRhbChldmVudCwgcmVjdCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG1vdXNlbW92ZSQucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcChldmVudCA9PiB0aGlzLmdldFNjcm9sbGVkKGV2ZW50LCB2ZXJ0aWNhbCwgaG9yaXpvbnRhbCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKG1vdXNldXAkKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKHpvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3Njcm9sbFRvcCwgc2Nyb2xsTGVmdF0pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50LCAnc2Nyb2xsVG9wJywgc2Nyb2xsVG9wKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnQsICdzY3JvbGxMZWZ0Jywgc2Nyb2xsTGVmdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICBhbmltYXRpb25GcmFtZSQucGlwZSh0aHJvdHRsZVRpbWUoUE9MTElOR19USU1FKSksXG4gICAgICAgICAgICB0dWlTY3JvbGxGcm9tKHRoaXMuZWxlbWVudCksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKHpvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICd0b3AnLCBgJHt0aGlzLnRodW1iICogMTAwfSVgKTtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUobmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke3RoaXMudmlldyAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUobmF0aXZlRWxlbWVudCwgJ2xlZnQnLCBgJHt0aGlzLnRodW1iICogMTAwfSVgKTtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUobmF0aXZlRWxlbWVudCwgJ3dpZHRoJywgYCR7dGhpcy52aWV3ICogMTAwfSVgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBzY3JvbGxlZCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBzY3JvbGxUb3AsXG4gICAgICAgICAgICBzY3JvbGxIZWlnaHQsXG4gICAgICAgICAgICBjbGllbnRIZWlnaHQsXG4gICAgICAgICAgICBzY3JvbGxMZWZ0LFxuICAgICAgICAgICAgc2Nyb2xsV2lkdGgsXG4gICAgICAgICAgICBjbGllbnRXaWR0aCxcbiAgICAgICAgfSA9IHRoaXMuZWxlbWVudDtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCdcbiAgICAgICAgICAgID8gc2Nyb2xsVG9wIC8gKHNjcm9sbEhlaWdodCAtIGNsaWVudEhlaWdodClcbiAgICAgICAgICAgIDogc2Nyb2xsTGVmdCAvIChzY3JvbGxXaWR0aCAtIGNsaWVudFdpZHRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBjb21wZW5zYXRpb24oKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRXaWR0aCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICgoY2xpZW50SGVpZ2h0ICogY2xpZW50SGVpZ2h0KSAvIHNjcm9sbEhlaWdodCA+IE1JTl9XSURUSCAmJlxuICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnKSB8fFxuICAgICAgICAgICAgKChjbGllbnRXaWR0aCAqIGNsaWVudFdpZHRoKSAvIHNjcm9sbFdpZHRoID4gTUlOX1dJRFRIICYmXG4gICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICdob3Jpem9udGFsJylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNSU5fV0lEVEggLyBjbGllbnRIZWlnaHRcbiAgICAgICAgICAgIDogTUlOX1dJRFRIIC8gY2xpZW50V2lkdGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdGh1bWIoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgY29tcGVuc2F0aW9uID0gdGhpcy5jb21wZW5zYXRpb24gfHwgdGhpcy52aWV3O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnNjcm9sbGVkICogKDEgLSBjb21wZW5zYXRpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHZpZXcoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRXaWR0aCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNYXRoLmNlaWwoKGNsaWVudEhlaWdodCAvIHNjcm9sbEhlaWdodCkgKiAxMDApIC8gMTAwXG4gICAgICAgICAgICA6IE1hdGguY2VpbCgoY2xpZW50V2lkdGggLyBzY3JvbGxXaWR0aCkgKiAxMDApIC8gMTAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGVsZW1lbnQoKTogRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsZWQoXG4gICAgICAgIHtjbGllbnRZLCBjbGllbnRYfTogTW91c2VFdmVudCxcbiAgICAgICAgb2Zmc2V0VmVydGljYWw6IG51bWJlcixcbiAgICAgICAgb2Zmc2V0SG9yaXpvbnRhbDogbnVtYmVyLFxuICAgICk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aH0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHt0b3AsIGxlZnQsIHdpZHRoLCBoZWlnaHR9ID1cbiAgICAgICAgICAgIHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGNvbnN0IG1heFRvcCA9IHRoaXMuZWxlbWVudC5zY3JvbGxIZWlnaHQgLSBoZWlnaHQ7XG4gICAgICAgIGNvbnN0IG1heExlZnQgPSB0aGlzLmVsZW1lbnQuc2Nyb2xsV2lkdGggLSB3aWR0aDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsZWRUb3AgPVxuICAgICAgICAgICAgKGNsaWVudFkgLSB0b3AgLSBvZmZzZXRIZWlnaHQgKiBvZmZzZXRWZXJ0aWNhbCkgLyAoaGVpZ2h0IC0gb2Zmc2V0SGVpZ2h0KTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsZWRMZWZ0ID1cbiAgICAgICAgICAgIChjbGllbnRYIC0gbGVmdCAtIG9mZnNldFdpZHRoICogb2Zmc2V0SG9yaXpvbnRhbCkgLyAod2lkdGggLSBvZmZzZXRXaWR0aCk7XG5cbiAgICAgICAgcmV0dXJuIFttYXhUb3AgKiBzY3JvbGxlZFRvcCwgbWF4TGVmdCAqIHNjcm9sbGVkTGVmdF07XG4gICAgfVxufVxuXG5mdW5jdGlvbiBnZXRPZmZzZXRWZXJ0aWNhbCh7Y2xpZW50WX06IE1vdXNlRXZlbnQsIHt0b3AsIGhlaWdodH06IENsaWVudFJlY3QpOiBudW1iZXIge1xuICAgIHJldHVybiAoY2xpZW50WSAtIHRvcCkgLyBoZWlnaHQ7XG59XG5cbmZ1bmN0aW9uIGdldE9mZnNldEhvcml6b250YWwoe2NsaWVudFh9OiBNb3VzZUV2ZW50LCB7bGVmdCwgd2lkdGh9OiBDbGllbnRSZWN0KTogbnVtYmVyIHtcbiAgICByZXR1cm4gKGNsaWVudFggLSBsZWZ0KSAvIHdpZHRoO1xufVxuIl19
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGwtY29udHJvbHMvc2Nyb2xsYmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUNILFlBQVksRUFDWixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXRELE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFFdkUsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0FBTXJCLE1BQU0sT0FBTyxxQkFBcUI7SUFJOUIsWUFDb0IsSUFBWSxFQUNULFFBQW1CLEVBQ0gsUUFBMEIsRUFDcEMsZUFBbUMsRUFDbEIsT0FBZ0MsRUFDakMsU0FBa0MsRUFDeEMsR0FBYSxFQUNYLEVBQTJCO1FBSHRCLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQXlCO1FBQ3hDLFFBQUcsR0FBSCxHQUFHLENBQVU7UUFDWCxPQUFFLEdBQUYsRUFBRSxDQUF5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QUMsR0FBRyxLQUFLLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBQT0xMSU5HX1RJTUUsXG4gICAgVFVJX1NDUk9MTF9SRUYsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpUHJldmVudERlZmF1bHQsXG4gICAgdHVpU2Nyb2xsRnJvbSxcbiAgICB0dWlTdG9wUHJvcGFnYXRpb24sXG4gICAgdHVpVHlwZWRGcm9tRXZlbnQsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfRUxFTUVOVF9SRUZ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aU9yaWVudGF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge21lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IE1JTl9XSURUSCA9IDI0O1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlTY3JvbGxiYXJdJyxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVNjcm9sbGJhckRpcmVjdGl2ZSB7XG4gICAgQElucHV0KClcbiAgICB0dWlTY3JvbGxiYXI6IFR1aU9yaWVudGF0aW9uID0gJ3ZlcnRpY2FsJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgem9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KFJlbmRlcmVyMikgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICAgICBASW5qZWN0KFRVSV9FTEVNRU5UX1JFRikgcHJpdmF0ZSByZWFkb25seSB3cmFwcGVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUVUlfU0NST0xMX1JFRikgcHJpdmF0ZSByZWFkb25seSBjb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZWw7XG4gICAgICAgIGNvbnN0IG1vdXNlZG93biQgPSB0dWlUeXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCAnbW91c2Vkb3duJyk7XG4gICAgICAgIGNvbnN0IG1vdXNlbW92ZSQgPSB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ21vdXNlbW92ZScpO1xuICAgICAgICBjb25zdCBtb3VzZXVwJCA9IHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jLCAnbW91c2V1cCcpO1xuICAgICAgICBjb25zdCBtb3VzZWRvd25XcmFwcGVyJCA9IHR1aVR5cGVkRnJvbUV2ZW50KFxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnbW91c2Vkb3duJyxcbiAgICAgICAgKTtcblxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIG1vdXNlZG93bldyYXBwZXIkLnBpcGUoXG4gICAgICAgICAgICAgICAgdHVpUHJldmVudERlZmF1bHQoKSxcbiAgICAgICAgICAgICAgICBtYXAoZXZlbnQgPT4gdGhpcy5nZXRTY3JvbGxlZChldmVudCwgMC41LCAwLjUpKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBtb3VzZWRvd24kLnBpcGUoXG4gICAgICAgICAgICAgICAgdHVpUHJldmVudERlZmF1bHQoKSxcbiAgICAgICAgICAgICAgICB0dWlTdG9wUHJvcGFnYXRpb24oKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWN0ID0gbmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdmVydGljYWwgPSBnZXRPZmZzZXRWZXJ0aWNhbChldmVudCwgcmVjdCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGhvcml6b250YWwgPSBnZXRPZmZzZXRIb3Jpem9udGFsKGV2ZW50LCByZWN0KTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbW91c2Vtb3ZlJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKGV2ZW50ID0+IHRoaXMuZ2V0U2Nyb2xsZWQoZXZlbnQsIHZlcnRpY2FsLCBob3Jpem9udGFsKSksXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwobW91c2V1cCQpLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUoem9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbc2Nyb2xsVG9wLCBzY3JvbGxMZWZ0XSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnQsICdzY3JvbGxUb3AnLCBzY3JvbGxUb3ApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudCwgJ3Njcm9sbExlZnQnLCBzY3JvbGxMZWZ0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lJC5waXBlKHRocm90dGxlVGltZShQT0xMSU5HX1RJTUUpKSxcbiAgICAgICAgICAgIHR1aVNjcm9sbEZyb20odGhpcy5lbGVtZW50KSxcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUoem9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUobmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke3RoaXMudGh1bWIgKiAxMDB9JWApO1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgYCR7dGhpcy52aWV3ICogMTAwfSVgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAnbGVmdCcsIGAke3RoaXMudGh1bWIgKiAxMDB9JWApO1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt0aGlzLnZpZXcgKiAxMDB9JWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHNjcm9sbGVkKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIHNjcm9sbFRvcCxcbiAgICAgICAgICAgIHNjcm9sbEhlaWdodCxcbiAgICAgICAgICAgIGNsaWVudEhlaWdodCxcbiAgICAgICAgICAgIHNjcm9sbExlZnQsXG4gICAgICAgICAgICBzY3JvbGxXaWR0aCxcbiAgICAgICAgICAgIGNsaWVudFdpZHRoLFxuICAgICAgICB9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBzY3JvbGxUb3AgLyAoc2Nyb2xsSGVpZ2h0IC0gY2xpZW50SGVpZ2h0KVxuICAgICAgICAgICAgOiBzY3JvbGxMZWZ0IC8gKHNjcm9sbFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXBlbnNhdGlvbigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPSB0aGlzLmVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgKChjbGllbnRIZWlnaHQgKiBjbGllbnRIZWlnaHQpIC8gc2Nyb2xsSGVpZ2h0ID4gTUlOX1dJRFRIICYmXG4gICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcpIHx8XG4gICAgICAgICAgICAoKGNsaWVudFdpZHRoICogY2xpZW50V2lkdGgpIC8gc2Nyb2xsV2lkdGggPiBNSU5fV0lEVEggJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ2hvcml6b250YWwnKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnXG4gICAgICAgICAgICA/IE1JTl9XSURUSCAvIGNsaWVudEhlaWdodFxuICAgICAgICAgICAgOiBNSU5fV0lEVEggLyBjbGllbnRXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCB0aHVtYigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjb21wZW5zYXRpb24gPSB0aGlzLmNvbXBlbnNhdGlvbiB8fCB0aGlzLnZpZXc7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc2Nyb2xsZWQgKiAoMSAtIGNvbXBlbnNhdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdmlldygpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPSB0aGlzLmVsZW1lbnQ7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnXG4gICAgICAgICAgICA/IE1hdGguY2VpbCgoY2xpZW50SGVpZ2h0IC8gc2Nyb2xsSGVpZ2h0KSAqIDEwMCkgLyAxMDBcbiAgICAgICAgICAgIDogTWF0aC5jZWlsKChjbGllbnRXaWR0aCAvIHNjcm9sbFdpZHRoKSAqIDEwMCkgLyAxMDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZWxlbWVudCgpOiBFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTY3JvbGxlZChcbiAgICAgICAge2NsaWVudFksIGNsaWVudFh9OiBNb3VzZUV2ZW50LFxuICAgICAgICBvZmZzZXRWZXJ0aWNhbDogbnVtYmVyLFxuICAgICAgICBvZmZzZXRIb3Jpem9udGFsOiBudW1iZXIsXG4gICAgKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIGNvbnN0IHtvZmZzZXRIZWlnaHQsIG9mZnNldFdpZHRofSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPVxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgY29uc3QgbWF4VG9wID0gdGhpcy5lbGVtZW50LnNjcm9sbEhlaWdodCAtIGhlaWdodDtcbiAgICAgICAgY29uc3QgbWF4TGVmdCA9IHRoaXMuZWxlbWVudC5zY3JvbGxXaWR0aCAtIHdpZHRoO1xuICAgICAgICBjb25zdCBzY3JvbGxlZFRvcCA9XG4gICAgICAgICAgICAoY2xpZW50WSAtIHRvcCAtIG9mZnNldEhlaWdodCAqIG9mZnNldFZlcnRpY2FsKSAvIChoZWlnaHQgLSBvZmZzZXRIZWlnaHQpO1xuICAgICAgICBjb25zdCBzY3JvbGxlZExlZnQgPVxuICAgICAgICAgICAgKGNsaWVudFggLSBsZWZ0IC0gb2Zmc2V0V2lkdGggKiBvZmZzZXRIb3Jpem9udGFsKSAvICh3aWR0aCAtIG9mZnNldFdpZHRoKTtcblxuICAgICAgICByZXR1cm4gW21heFRvcCAqIHNjcm9sbGVkVG9wLCBtYXhMZWZ0ICogc2Nyb2xsZWRMZWZ0XTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldE9mZnNldFZlcnRpY2FsKHtjbGllbnRZfTogTW91c2VFdmVudCwge3RvcCwgaGVpZ2h0fTogQ2xpZW50UmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChjbGllbnRZIC0gdG9wKSAvIGhlaWdodDtcbn1cblxuZnVuY3Rpb24gZ2V0T2Zmc2V0SG9yaXpvbnRhbCh7Y2xpZW50WH06IE1vdXNlRXZlbnQsIHtsZWZ0LCB3aWR0aH06IENsaWVudFJlY3QpOiBudW1iZXIge1xuICAgIHJldHVybiAoY2xpZW50WCAtIGxlZnQpIC8gd2lkdGg7XG59XG4iXX0=
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { Directive, ElementRef } from '@angular/core';
|
|
2
|
-
import { TUI_SCROLL_REF } from '@taiga-ui/
|
|
2
|
+
import { TUI_SCROLL_REF } from '@taiga-ui/cdk';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/** @deprecated import from `@taiga-ui/cdk` instead */
|
|
4
5
|
export const SCROLL_REF_SELECTOR = '[tuiScrollRef]';
|
|
6
|
+
/** @deprecated import from `@taiga-ui/cdk` instead */
|
|
5
7
|
export class TuiScrollRefDirective {
|
|
6
8
|
}
|
|
7
9
|
TuiScrollRefDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -23,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23
25
|
],
|
|
24
26
|
}]
|
|
25
27
|
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXJlZi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc2Nyb2xsYmFyL3Njcm9sbC1yZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBRTdDLHNEQUFzRDtBQUN0RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUVwRCxzREFBc0Q7QUFVdEQsTUFBTSxPQUFPLHFCQUFxQjs7bUhBQXJCLHFCQUFxQjt1R0FBckIscUJBQXFCLHlDQVBuQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGNBQWM7WUFDdkIsV0FBVyxFQUFFLFVBQVU7U0FDMUI7S0FDSjs0RkFFUSxxQkFBcUI7a0JBVGpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixXQUFXLEVBQUUsVUFBVTt5QkFDMUI7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIGBAdGFpZ2EtdWkvY2RrYCBpbnN0ZWFkICovXG5leHBvcnQgY29uc3QgU0NST0xMX1JFRl9TRUxFQ1RPUiA9ICdbdHVpU2Nyb2xsUmVmXSc7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBgQHRhaWdhLXVpL2Nka2AgaW5zdGVhZCAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IFNDUk9MTF9SRUZfU0VMRUNUT1IsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9TQ1JPTExfUkVGLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IEVsZW1lbnRSZWYsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU2Nyb2xsUmVmRGlyZWN0aXZlIHt9XG4iXX0=
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, HostListener, Inject, Input, } from '@angular/core';
|
|
2
2
|
import { CSS as CSS_TOKEN, USER_AGENT } from '@ng-web-apis/common';
|
|
3
|
-
import { TUI_IS_IOS, tuiGetElementOffset, tuiIsFirefox, } from '@taiga-ui/cdk';
|
|
3
|
+
import { TUI_IS_IOS, TUI_SCROLL_REF, tuiGetElementOffset, tuiIsFirefox, } from '@taiga-ui/cdk';
|
|
4
4
|
import { TUI_SCROLL_INTO_VIEW, TUI_SCROLLABLE } from '@taiga-ui/core/constants';
|
|
5
|
-
import { TUI_SCROLL_REF } from '@taiga-ui/core/tokens';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@taiga-ui/
|
|
6
|
+
import * as i1 from "@taiga-ui/cdk";
|
|
8
7
|
import * as i2 from "@angular/common";
|
|
8
|
+
// TODO: Remove all legacy code in 4.0
|
|
9
9
|
export class TuiScrollbarComponent {
|
|
10
10
|
constructor(cssRef, el, userAgent, isIos) {
|
|
11
11
|
this.cssRef = cssRef;
|
|
@@ -51,7 +51,7 @@ TuiScrollbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
51
51
|
deps: [TuiScrollbarComponent],
|
|
52
52
|
useFactory: ({ browserScrollRef, }) => browserScrollRef,
|
|
53
53
|
},
|
|
54
|
-
], ngImport: i0, template: "<tui-scroll-controls
|
|
54
|
+
], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"showScrollbars\"\n class=\"t-bars\"\n></tui-scroll-controls>\n<div class=\"t-content\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{z-index:0;position:relative;display:flex;overflow:auto}:host:not(._legacy){scrollbar-width:none;-ms-overflow-style:none}:host:not(._legacy)::-webkit-scrollbar,:host:not(._legacy)::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}:host._legacy{overflow:overlay}@media all and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm){:host._legacy::-webkit-scrollbar,:host._legacy::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:.375rem solid transparent}:host._legacy::-webkit-scrollbar{background-color:transparent}:host._legacy::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}:host._legacy::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}:host._legacy::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}.t-content{position:relative;z-index:0;flex:1;flex-basis:auto;width:100%;height:-webkit-max-content;height:max-content}.t-bars{color:var(--tui-text-01)}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
55
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiScrollbarComponent, decorators: [{
|
|
56
56
|
type: Component,
|
|
57
57
|
args: [{
|
|
@@ -91,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
91
91
|
type: HostListener,
|
|
92
92
|
args: [`${TUI_SCROLL_INTO_VIEW}.stop`, ['$event.detail']]
|
|
93
93
|
}] } });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsR0FBRyxJQUFJLFNBQVMsRUFBRSxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQ0gsVUFBVSxFQUNWLGNBQWMsRUFDZCxtQkFBbUIsRUFFbkIsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUU5RSxzQ0FBc0M7QUFnQnRDLE1BQU0sT0FBTyxxQkFBcUI7SUFhOUIsWUFFcUIsTUFBK0MsRUFDM0IsRUFBMkIsRUFDM0IsU0FBaUIsRUFDakIsS0FBYztRQUhsQyxXQUFNLEdBQU4sTUFBTSxDQUF5QztRQUMzQixPQUFFLEdBQUYsRUFBRSxDQUF5QjtRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQVM7UUFqQi9DLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFVCxhQUFRLEdBQ3JCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQztZQUMzQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUN6QixDQUFDLElBQUksQ0FB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QkFEYixZQUFZO3VCQUFDLEdBQUcsb0JBQW9CLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NTUyBhcyBDU1NfVE9LRU4sIFVTRVJfQUdFTlR9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBUVUlfSVNfSU9TLFxuICAgIFRVSV9TQ1JPTExfUkVGLFxuICAgIHR1aUdldEVsZW1lbnRPZmZzZXQsXG4gICAgVHVpSW5qZWN0aW9uVG9rZW5UeXBlLFxuICAgIHR1aUlzRmlyZWZveCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9TQ1JPTExfSU5UT19WSUVXLCBUVUlfU0NST0xMQUJMRX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcblxuLy8gVE9ETzogUmVtb3ZlIGFsbCBsZWdhY3kgY29kZSBpbiA0LjBcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXNjcm9sbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Njcm9sbGJhci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zY3JvbGxiYXIuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfU0NST0xMX1JFRixcbiAgICAgICAgICAgIGRlcHM6IFtUdWlTY3JvbGxiYXJDb21wb25lbnRdLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKHtcbiAgICAgICAgICAgICAgICBicm93c2VyU2Nyb2xsUmVmLFxuICAgICAgICAgICAgfTogVHVpU2Nyb2xsYmFyQ29tcG9uZW50KTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gPT4gYnJvd3NlclNjcm9sbFJlZixcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxiYXJDb21wb25lbnQge1xuICAgIHByaXZhdGUgZGVsZWdhdGVkID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzTGVnYWN5OiBib29sZWFuID1cbiAgICAgICAgIXRoaXMuY3NzUmVmLnN1cHBvcnRzKCdwb3NpdGlvbicsICdzdGlja3knKSB8fFxuICAgICAgICAodHVpSXNGaXJlZm94KHRoaXMudXNlckFnZW50KSAmJlxuICAgICAgICAgICAgIXRoaXMuY3NzUmVmLnN1cHBvcnRzKCdzY3JvbGxiYXItd2lkdGgnLCAnbm9uZScpKTtcblxuICAgIEBJbnB1dCgpXG4gICAgaGlkZGVuID0gZmFsc2U7XG5cbiAgICByZWFkb25seSBicm93c2VyU2Nyb2xsUmVmID0gbmV3IEVsZW1lbnRSZWYodGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENTU19UT0tFTilcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjc3NSZWY6IFR1aUluamVjdGlvblRva2VuVHlwZTx0eXBlb2YgQ1NTX1RPS0VOPixcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChVU0VSX0FHRU5UKSBwcml2YXRlIHJlYWRvbmx5IHVzZXJBZ2VudDogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHByaXZhdGUgcmVhZG9ubHkgaXNJb3M6IGJvb2xlYW4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IHNob3dTY3JvbGxiYXJzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGlkZGVuICYmICF0aGlzLmlzSW9zICYmICghdGhpcy5pc0xlZ2FjeSB8fCB0aGlzLmRlbGVnYXRlZCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbGVnYWN5JylcbiAgICBnZXQgc2hvd05hdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNMZWdhY3kgJiYgIXRoaXMuaGlkZGVuICYmICF0aGlzLmRlbGVnYXRlZDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGAke1RVSV9TQ1JPTExBQkxFfS5zdG9wYCwgWyckZXZlbnQuZGV0YWlsJ10pXG4gICAgb25TY3JvbGxhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVsZWdhdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5icm93c2VyU2Nyb2xsUmVmLm5hdGl2ZUVsZW1lbnQgPSBlbGVtZW50O1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYCR7VFVJX1NDUk9MTF9JTlRPX1ZJRVd9LnN0b3BgLCBbJyRldmVudC5kZXRhaWwnXSlcbiAgICBzY3JvbGxJbnRvVmlldyhkZXRhaWw6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRlbGVnYXRlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5icm93c2VyU2Nyb2xsUmVmO1xuICAgICAgICBjb25zdCB7b2Zmc2V0VG9wLCBvZmZzZXRMZWZ0fSA9IHR1aUdldEVsZW1lbnRPZmZzZXQobmF0aXZlRWxlbWVudCwgZGV0YWlsKTtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgY2xpZW50V2lkdGh9ID0gbmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge29mZnNldEhlaWdodCwgb2Zmc2V0V2lkdGh9ID0gZGV0YWlsO1xuICAgICAgICBjb25zdCBzY3JvbGxUb3AgPSBvZmZzZXRUb3AgKyBvZmZzZXRIZWlnaHQgLyAyIC0gY2xpZW50SGVpZ2h0IC8gMjtcbiAgICAgICAgY29uc3Qgc2Nyb2xsTGVmdCA9IG9mZnNldExlZnQgKyBvZmZzZXRXaWR0aCAvIDIgLSBjbGllbnRXaWR0aCAvIDI7XG5cbiAgICAgICAgLy8gPy4gZm9yIG91ciBjbGllbnRzIG9uIFdpbmRvd3MgWFAgYW5kIENocm9tZSA0OVxuICAgICAgICBuYXRpdmVFbGVtZW50LnNjcm9sbFRvPy4oc2Nyb2xsTGVmdCwgc2Nyb2xsVG9wKTtcbiAgICB9XG59XG4iLCI8dHVpLXNjcm9sbC1jb250cm9sc1xuICAgICpuZ0lmPVwic2hvd1Njcm9sbGJhcnNcIlxuICAgIGNsYXNzPVwidC1iYXJzXCJcbj48L3R1aS1zY3JvbGwtY29udHJvbHM+XG48ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
|
-
import { TuiScrollControlsModule } from '@taiga-ui/
|
|
3
|
+
import { TuiScrollControlsModule } from '@taiga-ui/cdk';
|
|
4
4
|
import { TuiScrollRefDirective } from './scroll-ref.directive';
|
|
5
5
|
import { TuiScrollableDirective } from './scrollable.directive';
|
|
6
6
|
import { TuiScrollbarComponent } from './scrollbar.component';
|
|
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
18
18
|
exports: [TuiScrollbarComponent, TuiScrollRefDirective, TuiScrollableDirective],
|
|
19
19
|
}]
|
|
20
20
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7O0FBTzVELE1BQU0sT0FBTyxrQkFBa0I7O2dIQUFsQixrQkFBa0I7aUhBQWxCLGtCQUFrQixpQkFIWixxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsYUFEekUsWUFBWSxFQUFFLHVCQUF1QixhQUVyQyxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0I7aUhBRXJFLGtCQUFrQixZQUpsQixDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQzs0RkFJdkMsa0JBQWtCO2tCQUw5QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQztvQkFDaEQsWUFBWSxFQUFFLENBQUMscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLENBQUM7b0JBQ3BGLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixDQUFDO2lCQUNsRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVNjcm9sbENvbnRyb2xzTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHtUdWlTY3JvbGxSZWZEaXJlY3RpdmV9IGZyb20gJy4vc2Nyb2xsLXJlZi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlTY3JvbGxhYmxlRGlyZWN0aXZlfSBmcm9tICcuL3Njcm9sbGFibGUuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpU2Nyb2xsYmFyQ29tcG9uZW50fSBmcm9tICcuL3Njcm9sbGJhci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aVNjcm9sbENvbnRyb2xzTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlTY3JvbGxiYXJDb21wb25lbnQsIFR1aVNjcm9sbFJlZkRpcmVjdGl2ZSwgVHVpU2Nyb2xsYWJsZURpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW1R1aVNjcm9sbGJhckNvbXBvbmVudCwgVHVpU2Nyb2xsUmVmRGlyZWN0aXZlLCBUdWlTY3JvbGxhYmxlRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU2Nyb2xsYmFyTW9kdWxlIHt9XG4iXX0=
|
|
@@ -57,4 +57,4 @@ export const tuiSvgOptionsProvider = options => ({
|
|
|
57
57
|
});
|
|
58
58
|
},
|
|
59
59
|
});
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3ZnL3N2Zy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxNQUFNLEVBQ04sY0FBYyxFQUNkLFFBQVEsRUFFUixRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHlCQUF5QixFQUV6QixXQUFXLEVBR1gsNkJBQTZCLEdBQ2hDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsY0FBYyxFQUNkLGVBQWUsRUFDZix5QkFBeUIsRUFDekIscUJBQXFCLEdBQ3hCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQWV4RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBa0I7SUFDbEQsVUFBVSxFQUFFLHVCQUF1QjtJQUNuQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsdUJBQXVCLENBQUM7SUFDbEQsWUFBWSxFQUFFLFFBQVE7SUFDdEIsZ0JBQWdCLEVBQUUsNkJBQTZCO0lBQy9DLFVBQVUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNkLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUMsT0FBTyxPQUFPO1lBQ1YsQ0FBQyxDQUFDLEdBQUcsT0FBTyx1Q0FBdUMsT0FBTywwQkFBMEI7WUFDcEYsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNiLENBQUM7Q0FDSixDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcseUJBQXlCLENBQWdCLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDM0UsVUFBVSxFQUFFLE1BQU0sQ0FBQyxlQUFlLENBQUM7SUFDbkMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUM7SUFDNUIsVUFBVSxFQUFFLHVCQUF1QixDQUFDLFVBQVU7SUFDOUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQztJQUMzQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMseUJBQXlCLENBQUM7Q0FDdEQsQ0FBQyxDQUFDLENBQUM7QUFFSixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FDdEQsNEJBQTRCLENBQy9CLENBQUM7QUFFRixNQUFNLFVBQVUscUJBQXFCLENBQUMsV0FBcUM7SUFDdkUsT0FBTztRQUNILE9BQU8sRUFBRSx3QkFBd0I7UUFDakMsUUFBUSxFQUFFLFdBQVc7UUFDckIsS0FBSyxFQUFFLElBQUk7S0FDZCxDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUlYLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQixPQUFPLEVBQUUsZUFBZTtJQUN4QixJQUFJLEVBQUU7UUFDRixDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsSUFBSSxRQUFRLEVBQUUsRUFBRSxlQUFlLENBQUM7UUFDakQsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLGVBQWUsQ0FBQztRQUNqQyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsY0FBYyxDQUFDO1FBQ2hDLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxxQkFBcUIsQ0FBQztRQUN2QyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUseUJBQXlCLENBQUM7S0FDOUM7SUFDRCxVQUFVLEVBQUUsQ0FDUixRQUE4QixFQUM5QixVQUF5QixFQUN6QixJQUFrQyxFQUNsQyxZQUFrRCxFQUNsRCxnQkFBMEQsRUFDN0MsRUFBRTs7UUFBQyxPQUFBLENBQUM7WUFDakIsVUFBVSxFQUNOLE1BQUEsTUFBQSxNQUFBLE9BQU8sQ0FBQyxVQUFVLG1DQUNsQixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsVUFBVSxtQ0FDcEIsVUFBVSxtQ0FDVix1QkFBdUIsQ0FBQyxVQUFVO1lBQ3RDLElBQUksRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDM0IsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxNQUFBLE1BQUEsTUFBQSxPQUFPLENBQUMsSUFBSSxtQ0FBSSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsSUFBSSxtQ0FBSSxJQUFJLG1DQUFJLHVCQUF1QixDQUFDLElBQUk7WUFDNUUsVUFBVSxFQUNOLE1BQUEsTUFBQSxPQUFPLENBQUMsVUFBVSxtQ0FDbEIsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFVBQVUsbUNBQ3BCLHVCQUF1QixDQUFDLFVBQVU7WUFDdEMsWUFBWSxFQUNSLE1BQUEsTUFBQSxNQUFBLE9BQU8sQ0FBQyxZQUFZLG1DQUNwQixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsWUFBWSxtQ0FDdEIsWUFBWSxtQ0FDWix1QkFBdUIsQ0FBQyxZQUFZO1lBQ3hDLGdCQUFnQixFQUNaLE1BQUEsTUFBQSxNQUFBLE9BQU8sQ0FBQyxnQkFBZ0IsbUNBQ3hCLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxnQkFBZ0IsbUNBQzFCLGdCQUFnQixtQ0FDaEIsdUJBQXVCLENBQUMsZ0JBQWdCO1NBQy9DLENBQUMsQ0FBQTtLQUFBO0NBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBGYWN0b3J5UHJvdmlkZXIsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIE9wdGlvbmFsLFxuICAgIFByb3ZpZGVyLFxuICAgIFNraXBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgdHVpQ3JlYXRlVG9rZW5Gcm9tRmFjdG9yeSxcbiAgICBUdWlIYW5kbGVyLFxuICAgIHR1aUlzU3RyaW5nLFxuICAgIFR1aVNhZmVIdG1sLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG4gICAgdHVpU3ZnTGluZWFyR3JhZGllbnRQcm9jZXNzb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUVUlfREVGQVVMVF9JQ09OU19QTEFDRSxcbiAgICBUVUlfSUNPTlNfUEFUSCxcbiAgICBUVUlfSUNPTlNfUExBQ0UsXG4gICAgVFVJX1NWR19DT05URU5UX1BST0NFU1NPUixcbiAgICBUVUlfU1ZHX1NSQ19QUk9DRVNTT1IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUljb25zUGF0aEZhY3Rvcnl9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7aWRlbnRpdHl9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1RVSV9ERVBSRUNBVEVEX0lDT05TfSBmcm9tICcuL2RlcHJlY2F0ZWQtaWNvbnMnO1xuXG4vLyBUT0RPOiBSZWZhY3RvciBpdCBhbGwgaW4gNC4wIGFuZCByZW1vdmUgZGVwcmVjYXRlZCBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGhhY2tzXG5leHBvcnQgaW50ZXJmYWNlIFR1aVN2Z09wdGlvbnMge1xuICAgIHJlYWRvbmx5IGNvbnRlbnRQcm9jZXNzb3I6IFR1aUhhbmRsZXI8VHVpU2FmZUh0bWwsIFR1aVNhZmVIdG1sPjtcbiAgICByZWFkb25seSBkZXByZWNhdGVkOiBUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz47XG4gICAgcmVhZG9ubHkgaWNvbnNQbGFjZTogc3RyaW5nO1xuICAgIHJlYWRvbmx5IHBhdGg6IChuYW1lOiBzdHJpbmcsIGJhc2VIcmVmPzogc3RyaW5nKSA9PiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgc3JjUHJvY2Vzc29yOiBUdWlIYW5kbGVyPFR1aVNhZmVIdG1sLCBUdWlTYWZlSHRtbD47XG59XG5cbmV4cG9ydCB0eXBlIFR1aVN2Z0ludGVyY2VwdG9ySGFuZGxlciA9XG4gICAgfCAoKHNyYzogVHVpU2FmZUh0bWwsIG9wdGlvbnM6IFR1aVN2Z09wdGlvbnMpID0+IFR1aVNhZmVIdG1sKVxuICAgIHwgKChzcmM6IFR1aVNhZmVIdG1sKSA9PiBUdWlTYWZlSHRtbCk7XG5cbmV4cG9ydCBjb25zdCBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUzogVHVpU3ZnT3B0aW9ucyA9IHtcbiAgICBpY29uc1BsYWNlOiBUVUlfREVGQVVMVF9JQ09OU19QTEFDRSxcbiAgICBwYXRoOiB0dWlJY29uc1BhdGhGYWN0b3J5KFRVSV9ERUZBVUxUX0lDT05TX1BMQUNFKSxcbiAgICBzcmNQcm9jZXNzb3I6IGlkZW50aXR5LFxuICAgIGNvbnRlbnRQcm9jZXNzb3I6IHR1aVN2Z0xpbmVhckdyYWRpZW50UHJvY2Vzc29yLFxuICAgIGRlcHJlY2F0ZWQ6IHNyYyA9PiB7XG4gICAgICAgIGNvbnN0IG9sZEljb24gPSBzcmMucmVwbGFjZShgTGFyZ2VgLCBgYCkucmVwbGFjZShgT3V0bGluZWAsIGBgKTtcbiAgICAgICAgY29uc3QgbmV3SWNvbiA9IFRVSV9ERVBSRUNBVEVEX0lDT05TW29sZEljb25dO1xuXG4gICAgICAgIHJldHVybiBuZXdJY29uXG4gICAgICAgICAgICA/IGAke29sZEljb259LyhMYXJnZXxPdXRsaW5lKSBpcyBkZXByZWNhdGVkLCB1c2UgJHtuZXdJY29ufS8oTGFyZ2V8T3V0bGluZSkgaW5zdGVhZGBcbiAgICAgICAgICAgIDogYGA7XG4gICAgfSxcbn07XG5cbi8qKlxuICogU1ZHIGNvbXBvbmVudCBvcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfU1ZHX09QVElPTlMgPSB0dWlDcmVhdGVUb2tlbkZyb21GYWN0b3J5PFR1aVN2Z09wdGlvbnM+KCgpID0+ICh7XG4gICAgaWNvbnNQbGFjZTogaW5qZWN0KFRVSV9JQ09OU19QTEFDRSksXG4gICAgcGF0aDogaW5qZWN0KFRVSV9JQ09OU19QQVRIKSxcbiAgICBkZXByZWNhdGVkOiBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5kZXByZWNhdGVkLFxuICAgIHNyY1Byb2Nlc3NvcjogaW5qZWN0KFRVSV9TVkdfU1JDX1BST0NFU1NPUiksXG4gICAgY29udGVudFByb2Nlc3NvcjogaW5qZWN0KFRVSV9TVkdfQ09OVEVOVF9QUk9DRVNTT1IpLFxufSkpO1xuXG5leHBvcnQgY29uc3QgVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTID0gbmV3IEluamVjdGlvblRva2VuPFR1aVN2Z0ludGVyY2VwdG9ySGFuZGxlcj4oXG4gICAgYFtUVUlfU1ZHX1NSQ19JTlRFUkNFUFRPUlNdYCxcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlTdmdTcmNJbnRlcmNlcHRvcnMoaW50ZXJjZXB0b3I6IFR1aVN2Z0ludGVyY2VwdG9ySGFuZGxlcik6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBUVUlfU1ZHX1NSQ19JTlRFUkNFUFRPUlMsXG4gICAgICAgIHVzZVZhbHVlOiBpbnRlcmNlcHRvcixcbiAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IHR1aVN2Z09wdGlvbnNQcm92aWRlcjogKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8T21pdDxUdWlTdmdPcHRpb25zLCAncGF0aCc+PiAmIHtcbiAgICAgICAgcGF0aD86IFR1aVN2Z09wdGlvbnNbJ3BhdGgnXSB8IHN0cmluZztcbiAgICB9LFxuKSA9PiBGYWN0b3J5UHJvdmlkZXIgPSBvcHRpb25zID0+ICh7XG4gICAgcHJvdmlkZTogVFVJX1NWR19PUFRJT05TLFxuICAgIGRlcHM6IFtcbiAgICAgICAgW25ldyBTa2lwU2VsZigpLCBuZXcgT3B0aW9uYWwoKSwgVFVJX1NWR19PUFRJT05TXSxcbiAgICAgICAgW25ldyBPcHRpb25hbCgpLCBUVUlfSUNPTlNfUExBQ0VdLFxuICAgICAgICBbbmV3IE9wdGlvbmFsKCksIFRVSV9JQ09OU19QQVRIXSxcbiAgICAgICAgW25ldyBPcHRpb25hbCgpLCBUVUlfU1ZHX1NSQ19QUk9DRVNTT1JdLFxuICAgICAgICBbbmV3IE9wdGlvbmFsKCksIFRVSV9TVkdfQ09OVEVOVF9QUk9DRVNTT1JdLFxuICAgIF0sXG4gICAgdXNlRmFjdG9yeTogKFxuICAgICAgICBmYWxsYmFjazogVHVpU3ZnT3B0aW9ucyB8IG51bGwsXG4gICAgICAgIGljb25zUGxhY2U6IHN0cmluZyB8IG51bGwsXG4gICAgICAgIHBhdGg6IFR1aVN2Z09wdGlvbnNbJ3BhdGgnXSB8IG51bGwsXG4gICAgICAgIHNyY1Byb2Nlc3NvcjogVHVpU3ZnT3B0aW9uc1snc3JjUHJvY2Vzc29yJ10gfCBudWxsLFxuICAgICAgICBjb250ZW50UHJvY2Vzc29yOiBUdWlTdmdPcHRpb25zWydjb250ZW50UHJvY2Vzc29yJ10gfCBudWxsLFxuICAgICk6IFR1aVN2Z09wdGlvbnMgPT4gKHtcbiAgICAgICAgaWNvbnNQbGFjZTpcbiAgICAgICAgICAgIG9wdGlvbnMuaWNvbnNQbGFjZSA/P1xuICAgICAgICAgICAgZmFsbGJhY2s/Lmljb25zUGxhY2UgPz9cbiAgICAgICAgICAgIGljb25zUGxhY2UgPz9cbiAgICAgICAgICAgIFRVSV9TVkdfREVGQVVMVF9PUFRJT05TLmljb25zUGxhY2UsXG4gICAgICAgIHBhdGg6IHR1aUlzU3RyaW5nKG9wdGlvbnMucGF0aClcbiAgICAgICAgICAgID8gdHVpSWNvbnNQYXRoRmFjdG9yeShvcHRpb25zLnBhdGgpXG4gICAgICAgICAgICA6IG9wdGlvbnMucGF0aCA/PyBmYWxsYmFjaz8ucGF0aCA/PyBwYXRoID8/IFRVSV9TVkdfREVGQVVMVF9PUFRJT05TLnBhdGgsXG4gICAgICAgIGRlcHJlY2F0ZWQ6XG4gICAgICAgICAgICBvcHRpb25zLmRlcHJlY2F0ZWQgPz9cbiAgICAgICAgICAgIGZhbGxiYWNrPy5kZXByZWNhdGVkID8/XG4gICAgICAgICAgICBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5kZXByZWNhdGVkLFxuICAgICAgICBzcmNQcm9jZXNzb3I6XG4gICAgICAgICAgICBvcHRpb25zLnNyY1Byb2Nlc3NvciA/P1xuICAgICAgICAgICAgZmFsbGJhY2s/LnNyY1Byb2Nlc3NvciA/P1xuICAgICAgICAgICAgc3JjUHJvY2Vzc29yID8/XG4gICAgICAgICAgICBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5zcmNQcm9jZXNzb3IsXG4gICAgICAgIGNvbnRlbnRQcm9jZXNzb3I6XG4gICAgICAgICAgICBvcHRpb25zLmNvbnRlbnRQcm9jZXNzb3IgPz9cbiAgICAgICAgICAgIGZhbGxiYWNrPy5jb250ZW50UHJvY2Vzc29yID8/XG4gICAgICAgICAgICBjb250ZW50UHJvY2Vzc29yID8/XG4gICAgICAgICAgICBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5jb250ZW50UHJvY2Vzc29yLFxuICAgIH0pLFxufSk7XG4iXX0=
|
|
@@ -3,7 +3,7 @@ import { DOCUMENT } from '@angular/common';
|
|
|
3
3
|
import { ChangeDetectionStrategy, Component, ElementRef, Inject, Input, Optional, SecurityContext, } from '@angular/core';
|
|
4
4
|
import { DomSanitizer } from '@angular/platform-browser';
|
|
5
5
|
import { WINDOW } from '@ng-web-apis/common';
|
|
6
|
-
import { tuiAssert, tuiGetDocumentOrShadowRoot, tuiIsString, tuiPure, TuiStaticRequestService, } from '@taiga-ui/cdk';
|
|
6
|
+
import { TUI_BASE_HREF, tuiAssert, tuiGetDocumentOrShadowRoot, tuiIsString, tuiPure, TuiStaticRequestService, } from '@taiga-ui/cdk';
|
|
7
7
|
import { TUI_CACHE_BUSTING_PAYLOAD, TUI_ICON_ERROR } from '@taiga-ui/core/constants';
|
|
8
8
|
import { TuiSvgService } from '@taiga-ui/core/services';
|
|
9
9
|
import { TUI_SANITIZER } from '@taiga-ui/core/tokens';
|
|
@@ -21,7 +21,7 @@ const MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';
|
|
|
21
21
|
const FAILED_EXTERNAL_ICON = 'Failed to load external SVG';
|
|
22
22
|
// TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent
|
|
23
23
|
export class TuiSvgComponent {
|
|
24
|
-
constructor(doc, win, options, srcInterceptors, tuiSanitizer, svgService, staticRequestService, sanitizer, el) {
|
|
24
|
+
constructor(doc, win, options, srcInterceptors, tuiSanitizer, svgService, staticRequestService, sanitizer, el, baseHref) {
|
|
25
25
|
this.doc = doc;
|
|
26
26
|
this.win = win;
|
|
27
27
|
this.options = options;
|
|
@@ -31,6 +31,7 @@ export class TuiSvgComponent {
|
|
|
31
31
|
this.staticRequestService = staticRequestService;
|
|
32
32
|
this.sanitizer = sanitizer;
|
|
33
33
|
this.el = el;
|
|
34
|
+
this.baseHref = baseHref;
|
|
34
35
|
this.src$ = new ReplaySubject(1);
|
|
35
36
|
this.icon = '';
|
|
36
37
|
this.innerHTML$ = this.src$.pipe(switchMap(() => {
|
|
@@ -102,7 +103,7 @@ export class TuiSvgComponent {
|
|
|
102
103
|
this.el.nativeElement.dispatchEvent(event);
|
|
103
104
|
}
|
|
104
105
|
resolveName(name, iconsPath) {
|
|
105
|
-
return iconsPath(name);
|
|
106
|
+
return iconsPath(name, this.baseHref);
|
|
106
107
|
}
|
|
107
108
|
getSafeHtml(src) {
|
|
108
109
|
return this.isSrc ? this.sanitize(src) : this.process(src);
|
|
@@ -129,7 +130,7 @@ export class TuiSvgComponent {
|
|
|
129
130
|
}), map(response => this.sanitize(response.replace('<svg', '<svg focusable="false"'))));
|
|
130
131
|
}
|
|
131
132
|
}
|
|
132
|
-
TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_SVG_OPTIONS }, { token: TUI_SVG_SRC_INTERCEPTORS, optional: true }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
133
|
+
TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_SVG_OPTIONS }, { token: TUI_SVG_SRC_INTERCEPTORS, optional: true }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }, { token: TUI_BASE_HREF }], target: i0.ɵɵFactoryTarget.Component });
|
|
133
134
|
TuiSvgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSvgComponent, selector: "tui-svg", inputs: { src: "src" }, ngImport: i0, template: "<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n focusable=\"false\"\n height=\"100%\"\n version=\"1.1\"\n width=\"100%\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-svg\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n", styles: [":host{display:inline-flex;vertical-align:middle;flex-shrink:0;align-items:center;justify-content:center;line-height:0;height:1.5rem;width:1.5rem;fill:transparent;stroke:transparent;font-size:1rem}.t-src{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.t-svg{overflow:visible}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
134
135
|
__decorate([
|
|
135
136
|
tuiPure
|
|
@@ -173,7 +174,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
173
174
|
}] }, { type: i0.ElementRef, decorators: [{
|
|
174
175
|
type: Inject,
|
|
175
176
|
args: [ElementRef]
|
|
177
|
+
}] }, { type: undefined, decorators: [{
|
|
178
|
+
type: Inject,
|
|
179
|
+
args: [TUI_BASE_HREF]
|
|
176
180
|
}] }]; }, propDecorators: { src: [{
|
|
177
181
|
type: Input
|
|
178
182
|
}], resolveName: [] } });
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxTQUFTLEVBQ1QsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxPQUFPLEVBRVAsdUJBQXVCLEdBRTFCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx5QkFBeUIsRUFBRSxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUVuRixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBYSxFQUFFLEVBQUUsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRSxPQUFPLEVBQ0gsZUFBZSxFQUNmLHdCQUF3QixHQUczQixNQUFNLGVBQWUsQ0FB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TixDQUFDOzs2R0F0S1EsZUFBZSxrQkFPWixRQUFRLGFBQ1IsTUFBTSxhQUNOLGVBQWUsYUFFZix3QkFBd0IsNkJBR3hCLGFBQWEsNkJBRWIsYUFBYSxhQUNiLHVCQUF1QixhQUV2QixZQUFZLGFBQ1osVUFBVTtpR0FwQmIsZUFBZSx1RUNoRDVCLHNvQkFxQkE7QUR1Skk7SUFEQyxPQUFPO2tEQUdQOzRGQTlIUSxlQUFlO2tCQU4zQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxTQUFTO29CQUNuQixXQUFXLEVBQUUscUJBQXFCO29CQUNsQyxTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzBEQVErQyxRQUFROzBCQUEvQyxNQUFNOzJCQUFDLFFBQVE7OEJBQ3NCLE1BQU07MEJBQTNDLE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxlQUFlOzswQkFDdEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUUvQixRQUFROzswQkFDUixNQUFNOzJCQUFDLGFBQWE7OzBCQUVwQixNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBRTlCLE1BQU07MkJBQUMsWUFBWTs7MEJBQ25CLE1BQU07MkJBQUMsVUFBVTs0Q0FpQmxCLEdBQUc7c0JBRE4sS0FBSztnQkF3RkUsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBTYW5pdGl6ZXIsXG4gICAgU2VjdXJpdHlDb250ZXh0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlSHRtbH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIHR1aUFzc2VydCxcbiAgICB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdCxcbiAgICB0dWlJc1N0cmluZyxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVNhZmVIdG1sLFxuICAgIFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQ0FDSEVfQlVTVElOR19QQVlMT0FELCBUVUlfSUNPTl9FUlJPUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpSWNvbkVycm9yfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpU3ZnU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfU0FOSVRJWkVSfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlJc1ByZXN1bWVkSFRNTFN0cmluZ30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge09ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y2F0Y2hFcnJvciwgbWFwLCBzdGFydFdpdGgsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9TVkdfT1BUSU9OUyxcbiAgICBUVUlfU1ZHX1NSQ19JTlRFUkNFUFRPUlMsXG4gICAgVHVpU3ZnSW50ZXJjZXB0b3JIYW5kbGVyLFxuICAgIFR1aVN2Z09wdGlvbnMsXG59IGZyb20gJy4vc3ZnLW9wdGlvbnMnO1xuXG5jb25zdCBVTkRFRklORURfTkFNRURfSUNPTiA9ICdBdHRlbXB0ZWQgdG8gdXNlIHVuZGVmaW5lZCBuYW1lZCBpY29uJztcbmNvbnN0IE1JU1NJTkdfRVhURVJOQUxfSUNPTiA9ICdFeHRlcm5hbCBpY29uIGlzIG1pc3Npbmcgb24gdGhlIGdpdmVuIFVSTCc7XG5jb25zdCBGQUlMRURfRVhURVJOQUxfSUNPTiA9ICdGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCBTVkcnO1xuXG4vLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdG8gQ0RLIGFsb25nIHdpdGggU3ZnU2VydmljZSBhbmQgU3ZnRGVmc0hvc3RDb21wb25lbnRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXN2ZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N2Zy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdmcuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdmdDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3JjJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHZvaWQ+KDEpO1xuICAgIHByaXZhdGUgaWNvbjogVHVpU2FmZUh0bWwgPSAnJztcblxuICAgIHJlYWRvbmx5IGlubmVySFRNTCQ6IE9ic2VydmFibGU8U2FmZUh0bWw+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jOiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX1NWR19PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aVN2Z09wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNyY0ludGVyY2VwdG9yczogcmVhZG9ubHkgVHVpU3ZnSW50ZXJjZXB0b3JIYW5kbGVyW10gfCBudWxsLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TQU5JVElaRVIpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHVpU2FuaXRpemVyOiBTYW5pdGl6ZXIgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFR1aVN2Z1NlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgc3ZnU2VydmljZTogVHVpU3ZnU2VydmljZSxcbiAgICAgICAgQEluamVjdChUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzdGF0aWNSZXF1ZXN0U2VydmljZTogVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8RWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaW5uZXJIVE1MJCA9IHRoaXMuc3JjJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc0V4dGVybmFsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuZ2V0RXh0ZXJuYWxJY29uKHRoaXMuaWNvbilcbiAgICAgICAgICAgICAgICAgICAgICAgIDogb2YodGhpcy5nZXRTYWZlSHRtbCh0aGlzLmljb24pKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5pY29uKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzcmMoc3JjOiBUdWlTYWZlSHRtbCB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgZGVwcmVjYXRlZCA9IHRoaXMub3B0aW9ucy5kZXByZWNhdGVkKFN0cmluZyhzcmMpKTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydCghZGVwcmVjYXRlZCwgZGVwcmVjYXRlZCk7XG5cbiAgICAgICAgdGhpcy5pY29uID0gKHRoaXMuc3JjSW50ZXJjZXB0b3JzID8/IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgICAobmV3U3JjLCBpbnRlcmNlcHRvcjogVHVpU3ZnSW50ZXJjZXB0b3JIYW5kbGVyKSA9PlxuICAgICAgICAgICAgICAgIGludGVyY2VwdG9yKG5ld1NyYywgdGhpcy5vcHRpb25zKSxcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5zcmNQcm9jZXNzb3Ioc3JjIHx8ICcnKSxcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLnNyYyQubmV4dCgpO1xuICAgIH1cblxuICAgIGdldCBzcmMoKTogVHVpU2FmZUh0bWwge1xuICAgICAgICByZXR1cm4gdGhpcy5pY29uO1xuICAgIH1cblxuICAgIGdldCB1c2UoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHR1aUlzU3RyaW5nKHRoaXMuaWNvbikpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmljb24uaW5jbHVkZXMoJy5zdmcjJylcbiAgICAgICAgICAgICAgICA/IHRoaXMuaWNvblxuICAgICAgICAgICAgICAgIDogdGhpcy5yZXNvbHZlTmFtZSh0aGlzLmljb24sIHRoaXMub3B0aW9ucy5wYXRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBnZXQgaXNJbm5lckhUTUwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhdHVpSXNTdHJpbmcodGhpcy5pY29uKSB8fFxuICAgICAgICAgICAgdGhpcy5pc1NyYyB8fFxuICAgICAgICAgICAgdGhpcy5pc0V4dGVybmFsIHx8XG4gICAgICAgICAgICAodGhpcy5pc05hbWUgJiYgdGhpcy5pc1NoYWRvd0RPTSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1NoYWRvd0RPTSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUdldERvY3VtZW50T3JTaGFkb3dSb290KHRoaXMuZWwubmF0aXZlRWxlbWVudCkgIT09IHRoaXMuZG9jO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzVXNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy51c2UucmVwbGFjZShUVUlfQ0FDSEVfQlVTVElOR19QQVlMT0FELCAnJykuaW5jbHVkZXMoJy5zdmcjJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNFeHRlcm5hbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNVcmwgfHwgdGhpcy5pc0Nyb3NzRG9tYWluO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzVXJsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdHVpSXNTdHJpbmcodGhpcy5pY29uKSAmJlxuICAgICAgICAgICAgdGhpcy5pY29uLnJlcGxhY2UoVFVJX0NBQ0hFX0JVU1RJTkdfUEFZTE9BRCwgJycpLmVuZHNXaXRoKCcuc3ZnJylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1NyYygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKHRoaXMuaWNvbikgJiYgdHVpSXNQcmVzdW1lZEhUTUxTdHJpbmcodGhpcy5pY29uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc05hbWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5pc1VybCAmJiAhdGhpcy5pc1VzZSAmJiAhdGhpcy5pc1NyYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc0Nyb3NzRG9tYWluKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB7dXNlLCBpc1VzZSwgd2lufSA9IHRoaXM7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGlzVXNlICYmIHVzZS5zdGFydHNXaXRoKCdodHRwJykgJiYgISF3aW4ub3JpZ2luICYmICF1c2Uuc3RhcnRzV2l0aCh3aW4ub3JpZ2luKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uRXJyb3IobWVzc2FnZTogc3RyaW5nID0gTUlTU0lOR19FWFRFUk5BTF9JQ09OKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtpY29ufSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50PFR1aUljb25FcnJvcj4oVFVJX0lDT05fRVJST1IsIHtcbiAgICAgICAgICAgIGJ1YmJsZXM6IHRydWUsXG4gICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIGljb246IGljb24gYXMgc3RyaW5nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoZmFsc2UsIG1lc3NhZ2UsIGljb24pO1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIHJlc29sdmVOYW1lKG5hbWU6IHN0cmluZywgaWNvbnNQYXRoOiBUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz4pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gaWNvbnNQYXRoKG5hbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2FmZUh0bWwoc3JjOiBzdHJpbmcpOiBTYWZlSHRtbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzU3JjID8gdGhpcy5zYW5pdGl6ZShzcmMpIDogdGhpcy5wcm9jZXNzKHNyYyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzKHNyYzogc3RyaW5nKTogU2FmZUh0bWwge1xuICAgICAgICBjb25zdCBpY29uID0gdGhpcy5zdmdTZXJ2aWNlLmdldE9yaWdpbmFsKHNyYyk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOYW1lICYmICFpY29uICYmICEhc3JjKSB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IoVU5ERUZJTkVEX05BTUVEX0lDT04pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRW1wdHkgbGluZSBmb3IgaW5uZXJIVE1MIHdoZW4gaWNvbiBpcyBzaG93biB0aHJvdWdoIFVTRSB0YWdcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzU2hhZG93RE9NIHx8ICF0aGlzLmlzTmFtZSA/ICcnIDogdGhpcy5zYW5pdGl6ZShpY29uIHx8ICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNhbml0aXplKHNyYzogVHVpU2FmZUh0bWwpOiBUdWlTYWZlSHRtbCB7XG4gICAgICAgIHNyYyA9IHRoaXMub3B0aW9ucy5jb250ZW50UHJvY2Vzc29yKHNyYyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHVpU2FuaXRpemVyICYmIHR1aUlzU3RyaW5nKHNyYylcbiAgICAgICAgICAgID8gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoXG4gICAgICAgICAgICAgICAgICB0aGlzLnR1aVNhbml0aXplci5zYW5pdGl6ZShTZWN1cml0eUNvbnRleHQuSFRNTCwgc3JjKSB8fCAnJyxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBzcmM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFeHRlcm5hbEljb24oc3JjOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNhZmVIdG1sPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IHNyYy5pbmNsdWRlcygnLnN2ZycpID8gc3JjIDogdGhpcy51c2U7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGljUmVxdWVzdFNlcnZpY2UucmVxdWVzdCh1cmwpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IoRkFJTEVEX0VYVEVSTkFMX0lDT04pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCcnKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zYW5pdGl6ZShyZXNwb25zZS5yZXBsYWNlKCc8c3ZnJywgJzxzdmcgZm9jdXNhYmxlPVwiZmFsc2VcIicpKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqdHVpTGV0PVwiaW5uZXJIVE1MJCB8IGFzeW5jIGFzIGlubmVySFRNTFwiPlxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJpc0lubmVySFRNTDsgZWxzZSB1c2VUZW1wbGF0ZVwiXG4gICAgICAgIGNsYXNzPVwidC1zcmNcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImlubmVySFRNTFwiXG4gICAgPjwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSAjdXNlVGVtcGxhdGU+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXN2Z1wiXG4gICAgICAgICAgICAoZXJyb3IpPVwib25FcnJvcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHVzZSBbYXR0ci54bGluazpocmVmXT1cInVzZVwiPjwvdXNlPlxuICAgICAgICA8L3N2Zz5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxhQUFhLEVBQ2IsU0FBUyxFQUNULDBCQUEwQixFQUMxQixXQUFXLEVBQ1gsT0FBTyxFQUVQLHVCQUF1QixHQUMxQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMseUJBQXlCLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFbkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUNILGVBQWUsRUFDZix3QkFBd0IsR0FHM0IsTUFB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QyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSx3QkFBd0IsQ0FBQyxDQUFDLENBQ3BFLENBQ0osQ0FBQztJQUNOLENBQUM7OzZHQXZLUSxlQUFlLGtCQU9aLFFBQVEsYUFDUixNQUFNLGFBQ04sZUFBZSxhQUVmLHdCQUF3Qiw2QkFHeEIsYUFBYSw2QkFFYixhQUFhLGFBQ2IsdUJBQXVCLGFBRXZCLFlBQVksYUFDWixVQUFVLGFBQ1YsYUFBYTtpR0FyQmhCLGVBQWUsdUVDaEQ1Qixzb0JBcUJBO0FEd0pJO0lBREMsT0FBTztrREFHUDs0RkEvSFEsZUFBZTtrQkFOM0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsU0FBUztvQkFDbkIsV0FBVyxFQUFFLHFCQUFxQjtvQkFDbEMsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQy9CLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDswREFRK0MsUUFBUTswQkFBL0MsTUFBTTsyQkFBQyxRQUFROzhCQUNzQixNQUFNOzBCQUEzQyxNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsd0JBQXdCOzswQkFFL0IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxhQUFhOzswQkFFcEIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLGFBQWE7NENBaUJyQixHQUFHO3NCQUROLEtBQUs7Z0JBd0ZFLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2FuaXRpemVyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBUVUlfQkFTRV9IUkVGLFxuICAgIHR1aUFzc2VydCxcbiAgICB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdCxcbiAgICB0dWlJc1N0cmluZyxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVNhZmVIdG1sLFxuICAgIFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX0NBQ0hFX0JVU1RJTkdfUEFZTE9BRCwgVFVJX0lDT05fRVJST1J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUljb25FcnJvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aVN2Z1NlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX1NBTklUSVpFUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7dHVpSXNQcmVzdW1lZEhUTUxTdHJpbmd9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBUVUlfU1ZHX09QVElPTlMsXG4gICAgVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTLFxuICAgIFR1aVN2Z0ludGVyY2VwdG9ySGFuZGxlcixcbiAgICBUdWlTdmdPcHRpb25zLFxufSBmcm9tICcuL3N2Zy1vcHRpb25zJztcblxuY29uc3QgVU5ERUZJTkVEX05BTUVEX0lDT04gPSAnQXR0ZW1wdGVkIHRvIHVzZSB1bmRlZmluZWQgbmFtZWQgaWNvbic7XG5jb25zdCBNSVNTSU5HX0VYVEVSTkFMX0lDT04gPSAnRXh0ZXJuYWwgaWNvbiBpcyBtaXNzaW5nIG9uIHRoZSBnaXZlbiBVUkwnO1xuY29uc3QgRkFJTEVEX0VYVEVSTkFMX0lDT04gPSAnRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgU1ZHJztcblxuLy8gVE9ETzogQ29uc2lkZXIgbW92aW5nIHRvIENESyBhbG9uZyB3aXRoIFN2Z1NlcnZpY2UgYW5kIFN2Z0RlZnNIb3N0Q29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1zdmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zdmcudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3ZnLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU3ZnQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNyYyQgPSBuZXcgUmVwbGF5U3ViamVjdDx2b2lkPigxKTtcbiAgICBwcml2YXRlIGljb246IFR1aVNhZmVIdG1sID0gJyc7XG5cbiAgICByZWFkb25seSBpbm5lckhUTUwkOiBPYnNlcnZhYmxlPFNhZmVIdG1sPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFRVSV9TVkdfT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlTdmdPcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TVkdfU1JDX0lOVEVSQ0VQVE9SUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzcmNJbnRlcmNlcHRvcnM6IHJlYWRvbmx5IFR1aVN2Z0ludGVyY2VwdG9ySGFuZGxlcltdIHwgbnVsbCxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUVUlfU0FOSVRJWkVSKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHR1aVNhbml0aXplcjogU2FuaXRpemVyIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUdWlTdmdTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IHN2Z1NlcnZpY2U6IFR1aVN2Z1NlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdGljUmVxdWVzdFNlcnZpY2U6IFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KERvbVNhbml0aXplcikgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFRVSV9CQVNFX0hSRUYpIHByaXZhdGUgcmVhZG9ubHkgYmFzZUhyZWY6IHN0cmluZyxcbiAgICApIHtcbiAgICAgICAgdGhpcy5pbm5lckhUTUwkID0gdGhpcy5zcmMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0dWlJc1N0cmluZyh0aGlzLmljb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzRXh0ZXJuYWxcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5nZXRFeHRlcm5hbEljb24odGhpcy5pY29uKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBvZih0aGlzLmdldFNhZmVIdG1sKHRoaXMuaWNvbikpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBvZih0aGlzLmljb24pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNyYyhzcmM6IFR1aVNhZmVIdG1sIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBkZXByZWNhdGVkID0gdGhpcy5vcHRpb25zLmRlcHJlY2F0ZWQoU3RyaW5nKHNyYykpO1xuXG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KCFkZXByZWNhdGVkLCBkZXByZWNhdGVkKTtcblxuICAgICAgICB0aGlzLmljb24gPSAodGhpcy5zcmNJbnRlcmNlcHRvcnMgPz8gW10pLnJlZHVjZShcbiAgICAgICAgICAgIChuZXdTcmMsIGludGVyY2VwdG9yOiBUdWlTdmdJbnRlcmNlcHRvckhhbmRsZXIpID0+XG4gICAgICAgICAgICAgICAgaW50ZXJjZXB0b3IobmV3U3JjLCB0aGlzLm9wdGlvbnMpLFxuICAgICAgICAgICAgdGhpcy5vcHRpb25zLnNyY1Byb2Nlc3NvcihzcmMgfHwgJycpLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuc3JjJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgZ2V0IHNyYygpOiBUdWlTYWZlSHRtbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmljb247XG4gICAgfVxuXG4gICAgZ2V0IHVzZSgpOiBzdHJpbmcge1xuICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaWNvbi5pbmNsdWRlcygnLnN2ZyMnKVxuICAgICAgICAgICAgICAgID8gdGhpcy5pY29uXG4gICAgICAgICAgICAgICAgOiB0aGlzLnJlc29sdmVOYW1lKHRoaXMuaWNvbiwgdGhpcy5vcHRpb25zLnBhdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGdldCBpc0lubmVySFRNTCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0dWlJc1N0cmluZyh0aGlzLmljb24pIHx8XG4gICAgICAgICAgICB0aGlzLmlzU3JjIHx8XG4gICAgICAgICAgICB0aGlzLmlzRXh0ZXJuYWwgfHxcbiAgICAgICAgICAgICh0aGlzLmlzTmFtZSAmJiB0aGlzLmlzU2hhZG93RE9NKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU2hhZG93RE9NKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QodGhpcy5lbC5uYXRpdmVFbGVtZW50KSAhPT0gdGhpcy5kb2M7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVc2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnVzZS5yZXBsYWNlKFRVSV9DQUNIRV9CVVNUSU5HX1BBWUxPQUQsICcnKS5pbmNsdWRlcygnLnN2ZyMnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc0V4dGVybmFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1VybCB8fCB0aGlzLmlzQ3Jvc3NEb21haW47XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVcmwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0dWlJc1N0cmluZyh0aGlzLmljb24pICYmXG4gICAgICAgICAgICB0aGlzLmljb24ucmVwbGFjZShUVUlfQ0FDSEVfQlVTVElOR19QQVlMT0FELCAnJykuZW5kc1dpdGgoJy5zdmcnKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU3JjKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNTdHJpbmcodGhpcy5pY29uKSAmJiB0dWlJc1ByZXN1bWVkSFRNTFN0cmluZyh0aGlzLmljb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzTmFtZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzVXJsICYmICF0aGlzLmlzVXNlICYmICF0aGlzLmlzU3JjO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzQ3Jvc3NEb21haW4oKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHt1c2UsIGlzVXNlLCB3aW59ID0gdGhpcztcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgaXNVc2UgJiYgdXNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSAmJiAhIXdpbi5vcmlnaW4gJiYgIXVzZS5zdGFydHNXaXRoKHdpbi5vcmlnaW4pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25FcnJvcihtZXNzYWdlOiBzdHJpbmcgPSBNSVNTSU5HX0VYVEVSTkFMX0lDT04pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2ljb259ID0gdGhpcztcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQ8VHVpSWNvbkVycm9yPihUVUlfSUNPTl9FUlJPUiwge1xuICAgICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgaWNvbjogaWNvbiBhcyBzdHJpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChmYWxzZSwgbWVzc2FnZSwgaWNvbik7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgcmVzb2x2ZU5hbWUobmFtZTogc3RyaW5nLCBpY29uc1BhdGg6IFR1aVN2Z09wdGlvbnNbJ3BhdGgnXSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpY29uc1BhdGgobmFtZSwgdGhpcy5iYXNlSHJlZik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTYWZlSHRtbChzcmM6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNTcmMgPyB0aGlzLnNhbml0aXplKHNyYykgOiB0aGlzLnByb2Nlc3Moc3JjKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3Moc3JjOiBzdHJpbmcpOiBTYWZlSHRtbCB7XG4gICAgICAgIGNvbnN0IGljb24gPSB0aGlzLnN2Z1NlcnZpY2UuZ2V0T3JpZ2luYWwoc3JjKTtcblxuICAgICAgICBpZiAodGhpcy5pc05hbWUgJiYgIWljb24gJiYgISFzcmMpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvcihVTkRFRklORURfTkFNRURfSUNPTik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbXB0eSBsaW5lIGZvciBpbm5lckhUTUwgd2hlbiBpY29uIGlzIHNob3duIHRocm91Z2ggVVNFIHRhZ1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNTaGFkb3dET00gfHwgIXRoaXMuaXNOYW1lID8gJycgOiB0aGlzLnNhbml0aXplKGljb24gfHwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FuaXRpemUoc3JjOiBUdWlTYWZlSHRtbCk6IFR1aVNhZmVIdG1sIHtcbiAgICAgICAgc3JjID0gdGhpcy5vcHRpb25zLmNvbnRlbnRQcm9jZXNzb3Ioc3JjKTtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTYW5pdGl6ZXIgJiYgdHVpSXNTdHJpbmcoc3JjKVxuICAgICAgICAgICAgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChcbiAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBzcmMpIHx8ICcnLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICA6IHNyYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEV4dGVybmFsSWNvbihzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICAgICAgY29uc3QgdXJsID0gc3JjLmluY2x1ZGVzKCcuc3ZnJykgPyBzcmMgOiB0aGlzLnVzZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0aWNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KHVybCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihGQUlMRURfRVhURVJOQUxfSUNPTik7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoJycpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnNhbml0aXplKHJlc3BvbnNlLnJlcGxhY2UoJzxzdmcnLCAnPHN2ZyBmb2N1c2FibGU9XCJmYWxzZVwiJykpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0dWlMZXQ9XCJpbm5lckhUTUwkIHwgYXN5bmMgYXMgaW5uZXJIVE1MXCI+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlzSW5uZXJIVE1MOyBlbHNlIHVzZVRlbXBsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXNyY1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaW5uZXJIVE1MXCJcbiAgICA+PC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICN1c2VUZW1wbGF0ZT5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICBjbGFzcz1cInQtc3ZnXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJvbkVycm9yKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwidXNlXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive, Inject, Input } from '@angular/core';
|
|
1
|
+
import { Directive, Inject, Input, Optional, SkipSelf } from '@angular/core';
|
|
2
2
|
import { TuiHoveredService } from '@taiga-ui/cdk';
|
|
3
3
|
import { tuiAsDriver, TuiDriver } from '@taiga-ui/core/abstract';
|
|
4
4
|
import { merge, of, Subject } from 'rxjs';
|
|
@@ -7,10 +7,11 @@ import { TUI_DROPDOWN_HOVER_OPTIONS, } from './dropdown-hover.options';
|
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "rxjs";
|
|
9
9
|
export class TuiDropdownHoverDirective extends TuiDriver {
|
|
10
|
-
constructor(hovered$, options) {
|
|
10
|
+
constructor(hovered$, options, parentHover) {
|
|
11
11
|
super(subscriber => this.stream$.subscribe(subscriber));
|
|
12
12
|
this.hovered$ = hovered$;
|
|
13
13
|
this.options = options;
|
|
14
|
+
this.parentHover = parentHover;
|
|
14
15
|
this.toggle$ = new Subject();
|
|
15
16
|
this.stream$ = merge(this.toggle$, this.hovered$).pipe(switchMap(visible => of(visible).pipe(delay(visible ? this.showDelay : this.hideDelay))), tap(visible => {
|
|
16
17
|
this.hovered = visible;
|
|
@@ -21,10 +22,13 @@ export class TuiDropdownHoverDirective extends TuiDriver {
|
|
|
21
22
|
this.type = 'dropdown';
|
|
22
23
|
}
|
|
23
24
|
toggle(visible) {
|
|
25
|
+
if (this.parentHover) {
|
|
26
|
+
this.parentHover.toggle(visible);
|
|
27
|
+
}
|
|
24
28
|
this.toggle$.next(visible);
|
|
25
29
|
}
|
|
26
30
|
}
|
|
27
|
-
TuiDropdownHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDropdownHoverDirective, deps: [{ token: TuiHoveredService }, { token: TUI_DROPDOWN_HOVER_OPTIONS }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
+
TuiDropdownHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDropdownHoverDirective, deps: [{ token: TuiHoveredService }, { token: TUI_DROPDOWN_HOVER_OPTIONS }, { token: TuiDropdownHoverDirective, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
28
32
|
TuiDropdownHoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiDropdownHoverDirective, selector: "[tuiDropdownHover]:not(ng-container)", inputs: { showDelay: ["tuiDropdownShowDelay", "showDelay"], hideDelay: ["tuiDropdownHideDelay", "hideDelay"] }, providers: [tuiAsDriver(TuiDropdownHoverDirective), TuiHoveredService], usesInheritance: true, ngImport: i0 });
|
|
29
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDropdownHoverDirective, decorators: [{
|
|
30
34
|
type: Directive,
|
|
@@ -38,6 +42,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
38
42
|
}] }, { type: undefined, decorators: [{
|
|
39
43
|
type: Inject,
|
|
40
44
|
args: [TUI_DROPDOWN_HOVER_OPTIONS]
|
|
45
|
+
}] }, { type: TuiDropdownHoverDirective, decorators: [{
|
|
46
|
+
type: SkipSelf
|
|
47
|
+
}, {
|
|
48
|
+
type: Optional
|
|
49
|
+
}, {
|
|
50
|
+
type: Inject,
|
|
51
|
+
args: [TuiDropdownHoverDirective]
|
|
41
52
|
}] }]; }, propDecorators: { showDelay: [{
|
|
42
53
|
type: Input,
|
|
43
54
|
args: ['tuiDropdownShowDelay']
|
|
@@ -45,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
45
56
|
type: Input,
|
|
46
57
|
args: ['tuiDropdownHideDelay']
|
|
47
58
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taG92ZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLWhvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxTQUFTLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVELE9BQU8sRUFDSCwwQkFBMEIsR0FFN0IsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBTWxDLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxTQUFTO0lBc0JwRCxZQUNnRCxRQUE2QixFQUV4RCxPQUFnQyxFQUloQyxXQUE2QztRQUU5RCxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBUlosYUFBUSxHQUFSLFFBQVEsQ0FBcUI7UUFFeEQsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFJaEMsZ0JBQVcsR0FBWCxXQUFXLENBQWtDO1FBNUJqRCxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNqQyxZQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDOUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQ2hCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQ3JFLEVBQ0QsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDM0IsQ0FBQyxDQUFDLEVBQ0YsS0FBSyxFQUFFLENBQ1YsQ0FBQztRQUdGLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUduQyxjQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFFbkMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVQLFNBQUksR0FBRyxVQUFVLENBQUM7SUFZM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFnQjtRQUNuQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDcEM7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixDQUFDOzt1SEF4Q1EseUJBQXlCLGtCQXVCdEIsaUJBQWlCLGFBQ2pCLDBCQUEwQixhQUkxQix5QkFBeUI7MkdBNUI1Qix5QkFBeUIsK0tBRnZCLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDLEVBQUUsaUJBQWlCLENBQUM7NEZBRTdELHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0NBQXNDO29CQUNoRCxTQUFTLEVBQUUsQ0FBQyxXQUFXLDJCQUEyQixFQUFFLGlCQUFpQixDQUFDO2lCQUN6RTs7MEJBd0JRLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQywwQkFBMEI7OEJBS0oseUJBQXlCOzBCQUh0RCxRQUFROzswQkFDUixRQUFROzswQkFDUixNQUFNOzJCQUFDLHlCQUF5Qjs0Q0FmckMsU0FBUztzQkFEUixLQUFLO3VCQUFDLHNCQUFzQjtnQkFJN0IsU0FBUztzQkFEUixLQUFLO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbmplY3QsIElucHV0LCBPcHRpb25hbCwgU2tpcFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlIb3ZlcmVkU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aUFzRHJpdmVyLCBUdWlEcml2ZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7bWVyZ2UsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVsYXksIHNoYXJlLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9EUk9QRE9XTl9IT1ZFUl9PUFRJT05TLFxuICAgIFR1aURyb3Bkb3duSG92ZXJPcHRpb25zLFxufSBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLm9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlEcm9wZG93bkhvdmVyXTpub3QobmctY29udGFpbmVyKScsXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNEcml2ZXIoVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSksIFR1aUhvdmVyZWRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSBleHRlbmRzIFR1aURyaXZlciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2dnbGUkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbSQgPSBtZXJnZSh0aGlzLnRvZ2dsZSQsIHRoaXMuaG92ZXJlZCQpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCh2aXNpYmxlID0+XG4gICAgICAgICAgICBvZih2aXNpYmxlKS5waXBlKGRlbGF5KHZpc2libGUgPyB0aGlzLnNob3dEZWxheSA6IHRoaXMuaGlkZURlbGF5KSksXG4gICAgICAgICksXG4gICAgICAgIHRhcCh2aXNpYmxlID0+IHtcbiAgICAgICAgICAgIHRoaXMuaG92ZXJlZCA9IHZpc2libGU7XG4gICAgICAgIH0pLFxuICAgICAgICBzaGFyZSgpLFxuICAgICk7XG5cbiAgICBASW5wdXQoJ3R1aURyb3Bkb3duU2hvd0RlbGF5JylcbiAgICBzaG93RGVsYXkgPSB0aGlzLm9wdGlvbnMuc2hvd0RlbGF5O1xuXG4gICAgQElucHV0KCd0dWlEcm9wZG93bkhpZGVEZWxheScpXG4gICAgaGlkZURlbGF5ID0gdGhpcy5vcHRpb25zLmhpZGVEZWxheTtcblxuICAgIGhvdmVyZWQgPSBmYWxzZTtcblxuICAgIHJlYWRvbmx5IHR5cGUgPSAnZHJvcGRvd24nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSG92ZXJlZFNlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgaG92ZXJlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX0hPVkVSX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpRHJvcGRvd25Ib3Zlck9wdGlvbnMsXG4gICAgICAgIEBTa2lwU2VsZigpXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRIb3ZlcjogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKHN1YnNjcmliZXIgPT4gdGhpcy5zdHJlYW0kLnN1YnNjcmliZShzdWJzY3JpYmVyKSk7XG4gICAgfVxuXG4gICAgdG9nZ2xlKHZpc2libGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50SG92ZXIpIHtcbiAgICAgICAgICAgIHRoaXMucGFyZW50SG92ZXIudG9nZ2xlKHZpc2libGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50b2dnbGUkLm5leHQodmlzaWJsZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -44,9 +44,6 @@ export class TuiDropdownComponent {
|
|
|
44
44
|
});
|
|
45
45
|
this.updateWidth(this.accessor.getClientRect().width);
|
|
46
46
|
}
|
|
47
|
-
ngOnDestroy() {
|
|
48
|
-
this.onHoveredChange(false);
|
|
49
|
-
}
|
|
50
47
|
onHoveredChange(hovered) {
|
|
51
48
|
if (this.hoverDirective) {
|
|
52
49
|
this.hoverDirective.toggle(hovered);
|
|
@@ -178,4 +175,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
178
175
|
type: Inject,
|
|
179
176
|
args: [TuiDropdownHoverDirective]
|
|
180
177
|
}] }]; } });
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBRU4sUUFBUSxFQUNSLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxFQUNILDhCQUE4QixFQUM5QixpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3RCLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLGVBQWUsRUFDZixrQkFBa0IsR0FDckIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLHdCQUF3QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixFQUFFLFFBQVEsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR3RFLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFDLG9CQUFvQixFQUFxQixN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ICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aUdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgdHVpUHgsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICB0dWlQb3NpdGlvbkFjY2Vzc29yRm9yLFxuICAgIFR1aVJlY3RBY2Nlc3NvcixcbiAgICB0dWlSZWN0QWNjZXNzb3JGb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpRHJvcGRvd25BbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtNT0RFX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9wcm92aWRlcnMnO1xuaW1wb3J0IHtUdWlQb3NpdGlvblNlcnZpY2UsIFR1aVZpc3VhbFZpZXdwb3J0U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlMsIFRVSV9NT0RFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlCcmlnaHRuZXNzLCBUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlfSBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1RVSV9EUk9QRE9XTl9PUFRJT05TLCBUdWlEcm9wZG93bk9wdGlvbnN9IGZyb20gJy4vZHJvcGRvd24tb3B0aW9ucy5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjpcbiAqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gc2hvdyB0ZW1wbGF0ZSBpbiBhIHBvcnRhbFxuICogdXNpbmcgZGVmYXVsdCBzdHlsZSBvZiB3aGl0ZSByb3VuZGVkIGJveCB3aXRoIGEgc2hhZG93XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24udGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24uc3R5bGUubGVzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgVHVpUG9zaXRpb25TZXJ2aWNlLFxuICAgICAgICB0dWlQb3NpdGlvbkFjY2Vzc29yRm9yKCdkcm9wZG93bicpLFxuICAgICAgICB0dWlSZWN0QWNjZXNzb3JGb3IoJ2Ryb3Bkb3duJywgVHVpRHJvcGRvd25EaXJlY3RpdmUpLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG4gICAgYW5pbWF0aW9uczogW3R1aURyb3Bkb3duQW5pbWF0aW9uXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbQHR1aURyb3Bkb3duQW5pbWF0aW9uXSc6ICdhbmltYXRpb24nLFxuICAgICAgICAnW2F0dHIuZGF0YS1hcHBlYXJhbmNlXSc6ICdvcHRpb25zLmFwcGVhcmFuY2UnLFxuICAgICAgICAnKCQuZGF0YS1tb2RlLmF0dHIpJzogJ21vZGUkJyxcbiAgICB9LFxuICAgIC8vIEBiYWQgVE9ETzogT25QdXNoXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aVZpc3VhbFZpZXdwb3J0U2VydmljZSkgdmlzdWFsVmlld3BvcnRTZXJ2aWNlOiBUdWlWaXN1YWxWaWV3cG9ydFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVHVpUG9zaXRpb25TZXJ2aWNlKSBwb3NpdGlvbiQ6IE9ic2VydmFibGU8VHVpUG9pbnQ+LFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KFR1aURyb3Bkb3duRGlyZWN0aXZlKSByZWFkb25seSBkaXJlY3RpdmU6IFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05fT1BUSU9OUykgcmVhZG9ubHkgYW5pbWF0aW9uOiBBbmltYXRpb25PcHRpb25zLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBob3N0OiBBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoVHVpUmVjdEFjY2Vzc29yKSBwcml2YXRlIHJlYWRvbmx5IGFjY2Vzc29yOiBUdWlSZWN0QWNjZXNzb3IsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX09QVElPTlMpIHJlYWRvbmx5IG9wdGlvbnM6IFR1aURyb3Bkb3duT3B0aW9ucyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhvdmVyRGlyZWN0aXZlOiBUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgcG9zaXRpb24kXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocG9pbnQgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmUucG9zaXRpb24gPT09ICdmaXhlZCdcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdmlzdWFsVmlld3BvcnRTZXJ2aWNlLmNvcnJlY3QocG9pbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHBvaW50LFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFt0b3AsIGxlZnRdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGUodG9wLCBsZWZ0KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudXBkYXRlV2lkdGgodGhpcy5hY2Nlc3Nvci5nZXRDbGllbnRSZWN0KCkud2lkdGgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uSG92ZXJlZENoYW5nZShmYWxzZSk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkQ2hhbmdlKGhvdmVyZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaG92ZXJEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuaG92ZXJEaXJlY3RpdmUudG9nZ2xlKGhvdmVyZWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ub3BGb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3ZlRm9jdXNPdXRzaWRlKHRydWUpO1xuICAgIH1cblxuICAgIG9uQm90dG9tRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW92ZUZvY3VzT3V0c2lkZShmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGUodG9wOiBudW1iZXIsIGxlZnQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCB7cmlnaHR9ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7bWF4SGVpZ2h0LCBvZmZzZXR9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICBjb25zdCB7aW5uZXJIZWlnaHR9ID0gdGhpcy53aW47XG4gICAgICAgIGNvbnN0IHtjbGllbnRSZWN0fSA9IHRoaXMuaG9zdDtcbiAgICAgICAgY29uc3Qge3Bvc2l0aW9ufSA9IHRoaXMuZGlyZWN0aXZlO1xuICAgICAgICBjb25zdCByZWN0ID0gdGhpcy5hY2Nlc3Nvci5nZXRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IG9mZnNldFggPSBwb3NpdGlvbiA9PT0gJ2ZpeGVkJyA/IDAgOiAtY2xpZW50UmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCBvZmZzZXRZID0gcG9zaXRpb24gPT09ICdmaXhlZCcgPyAwIDogLWNsaWVudFJlY3QudG9wO1xuXG4gICAgICAgIHRvcCArPSBvZmZzZXRZO1xuICAgICAgICBsZWZ0ICs9IG9mZnNldFg7XG5cbiAgICAgICAgY29uc3QgaXNJbnRlcnNlY3RpbmcgPVxuICAgICAgICAgICAgbGVmdCA8IHJlY3QucmlnaHQgJiYgcmlnaHQgPiByZWN0LmxlZnQgJiYgdG9wIDwgb2Zmc2V0WSArIDIgKiBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZSA9IGlzSW50ZXJzZWN0aW5nXG4gICAgICAgICAgICA/IHJlY3QudG9wIC0gMiAqIG9mZnNldFxuICAgICAgICAgICAgOiBvZmZzZXRZICsgaW5uZXJIZWlnaHQgLSB0b3AgLSBvZmZzZXQ7XG5cbiAgICAgICAgc3R5bGUucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICAgICAgc3R5bGUudG9wID0gdHVpUHgoTWF0aC5tYXgodG9wLCBvZmZzZXRZICsgb2Zmc2V0KSk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSB0dWlQeChsZWZ0KTtcbiAgICAgICAgc3R5bGUubWF4SGVpZ2h0ID0gdHVpUHgoTWF0aC5taW4obWF4SGVpZ2h0LCBhdmFpbGFibGUpKTtcbiAgICAgICAgc3R5bGUud2lkdGggPSAnJztcbiAgICAgICAgc3R5bGUubWluV2lkdGggPSAnJztcblxuICAgICAgICB0aGlzLnVwZGF0ZVdpZHRoKHJlY3Qud2lkdGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlV2lkdGgod2lkdGg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLmxpbWl0V2lkdGgpIHtcbiAgICAgICAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgICAgICAgICAgc3R5bGUubWluV2lkdGggPSB0dWlQeCh3aWR0aCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdmaXhlZCc6XG4gICAgICAgICAgICAgICAgc3R5bGUud2lkdGggPSB0dWlQeCh3aWR0aCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdhdXRvJzpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbW92ZUZvY3VzT3V0c2lkZShwcmV2aW91czogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLmRpcmVjdGl2ZS5lbDtcbiAgICAgICAgY29uc3Qge293bmVyRG9jdW1lbnR9ID0gbmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qgcm9vdCA9IG93bmVyRG9jdW1lbnQgPyBvd25lckRvY3VtZW50LmJvZHkgOiBuYXRpdmVFbGVtZW50O1xuICAgICAgICBsZXQgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogbmF0aXZlRWxlbWVudCwgcm9vdCwgcHJldmlvdXN9KTtcblxuICAgICAgICB3aGlsZSAoZm9jdXNhYmxlICE9PSBudWxsICYmIG5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZm9jdXNhYmxlKSkge1xuICAgICAgICAgICAgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogZm9jdXNhYmxlLCByb290LCBwcmV2aW91c30pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9jdXNhYmxlPy5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjx0dWktc2Nyb2xsYmFyXG4gICAgI2FjdGl2ZVpvbmU9XCJ0dWlBY3RpdmVab25lXCJcbiAgICB0dWlBY3RpdmVab25lXG4gICAgdHVpT3ZlcnNjcm9sbD1cImFsbFwiXG4gICAgY2xhc3M9XCJ0LXNjcm9sbFwiXG4gICAgKHR1aUhvdmVyZWRDaGFuZ2UpPVwib25Ib3ZlcmVkQ2hhbmdlKCRldmVudClcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uVG9wRm9jdXMoKVwiXG4gICAgPjwvZGl2PlxuICAgIDxkaXZcbiAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImRpcmVjdGl2ZS5jb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGFjdGl2ZVpvbmV9XCJcbiAgICAgICAgY2xhc3M9XCJ0LXByaW1pdGl2ZVwiXG4gICAgPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAoZm9jdXMpPVwib25Cb3R0b21Gb2N1cygpXCJcbiAgICA+PC9kaXY+XG48L3R1aS1zY3JvbGxiYXI+XG4iXX0=
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUNSLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxFQUNILDhCQUE4QixFQUM5QixpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3RCLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLGVBQWUsRUFDZixrQkFBa0IsR0FDckIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLHdCQUF3QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixFQUFFLFFBQVEsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR3RFLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFDLG9CQUFvQixFQUFxQixN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QkFBb0IsQ0FBQzs0RkFVekIsb0JBQW9CO2tCQXJCaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsV0FBVyxFQUFFLDBCQUEwQjtvQkFDdkMsU0FBUyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3BDLFNBQVMsRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsc0JBQXNCLENBQUMsVUFBVSxDQUFDO3dCQUNsQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsb0JBQW9CLENBQUM7d0JBQ3BELGFBQWE7cUJBQ2hCO29CQUNELFVBQVUsRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNsQyxJQUFJLEVBQUU7d0JBQ0YseUJBQXlCLEVBQUUsV0FBVzt3QkFDdEMsd0JBQXdCLEVBQUUsb0JBQW9CO3dCQUM5QyxvQkFBb0IsRUFBRSxPQUFPO3FCQUNoQztvQkFDRCxvQkFBb0I7b0JBQ3BCLHFGQUFxRjtvQkFDckYsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE9BQU87aUJBQ25EOzswQkFHUSxNQUFNOzJCQUFDLHdCQUF3Qjs7MEJBQy9CLE1BQU07MkJBQUMsa0JBQWtCOzswQkFDekIsSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUNoQyxNQUFNOzJCQUFDLG9CQUFvQjs7MEJBQzNCLE1BQU07MkJBQUMscUJBQXFCOzswQkFDNUIsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyw4QkFBOEI7OzBCQUVyQyxNQUFNOzJCQUFDLGVBQWU7OEJBQ2UsTUFBTTswQkFBM0MsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsb0JBQW9COzswQkFDM0IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLFxuICAgIHR1aVB4LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgdHVpUG9zaXRpb25BY2Nlc3NvckZvcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG4gICAgdHVpUmVjdEFjY2Vzc29yRm9yLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQge3R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7TU9ERV9QUk9WSURFUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvcHJvdmlkZXJzJztcbmltcG9ydCB7VHVpUG9zaXRpb25TZXJ2aWNlLCBUdWlWaXN1YWxWaWV3cG9ydFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TLCBUVUlfTU9ERX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpQnJpZ2h0bmVzcywgVHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpRHJvcGRvd25EaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24uZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi1ob3Zlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfRFJPUERPV05fT1BUSU9OUywgVHVpRHJvcGRvd25PcHRpb25zfSBmcm9tICcuL2Ryb3Bkb3duLW9wdGlvbnMuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb246XG4gKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIHNob3cgdGVtcGxhdGUgaW4gYSBwb3J0YWxcbiAqIHVzaW5nIGRlZmF1bHQgc3R5bGUgb2Ygd2hpdGUgcm91bmRlZCBib3ggd2l0aCBhIHNoYWRvd1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLnN0eWxlLmxlc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIFR1aVBvc2l0aW9uU2VydmljZSxcbiAgICAgICAgdHVpUG9zaXRpb25BY2Nlc3NvckZvcignZHJvcGRvd24nKSxcbiAgICAgICAgdHVpUmVjdEFjY2Vzc29yRm9yKCdkcm9wZG93bicsIFR1aURyb3Bkb3duRGlyZWN0aXZlKSxcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlEcm9wZG93bkFuaW1hdGlvbl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW0B0dWlEcm9wZG93bkFuaW1hdGlvbl0nOiAnYW5pbWF0aW9uJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtYXBwZWFyYW5jZV0nOiAnb3B0aW9ucy5hcHBlYXJhbmNlJyxcbiAgICAgICAgJygkLmRhdGEtbW9kZS5hdHRyKSc6ICdtb2RlJCcsXG4gICAgfSxcbiAgICAvLyBAYmFkIFRPRE86IE9uUHVzaFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvcHJlZmVyLW9uLXB1c2gtY29tcG9uZW50LWNoYW5nZS1kZXRlY3Rpb25cbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlWaXN1YWxWaWV3cG9ydFNlcnZpY2UpIHZpc3VhbFZpZXdwb3J0U2VydmljZTogVHVpVmlzdWFsVmlld3BvcnRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFR1aVBvc2l0aW9uU2VydmljZSkgcG9zaXRpb24kOiBPYnNlcnZhYmxlPFR1aVBvaW50PixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSkgcmVhZG9ubHkgZGlyZWN0aXZlOiBUdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpIHJlYWRvbmx5IGFuaW1hdGlvbjogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaG9zdDogQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgICAgICBASW5qZWN0KFR1aVJlY3RBY2Nlc3NvcikgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3NvcjogVHVpUmVjdEFjY2Vzc29yLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW46IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfTU9ERSkgcmVhZG9ubHkgbW9kZSQ6IE9ic2VydmFibGU8VHVpQnJpZ2h0bmVzcyB8IG51bGw+LFxuICAgICAgICBASW5qZWN0KFRVSV9EUk9QRE9XTl9PUFRJT05TKSByZWFkb25seSBvcHRpb25zOiBUdWlEcm9wZG93bk9wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBob3ZlckRpcmVjdGl2ZTogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHBvc2l0aW9uJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHBvaW50ID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLnBvc2l0aW9uID09PSAnZml4ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHZpc3VhbFZpZXdwb3J0U2VydmljZS5jb3JyZWN0KHBvaW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBwb2ludCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbdG9wLCBsZWZ0XSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKHRvcCwgbGVmdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVdpZHRoKHRoaXMuYWNjZXNzb3IuZ2V0Q2xpZW50UmVjdCgpLndpZHRoKTtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWRDaGFuZ2UoaG92ZXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ob3ZlckRpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5ob3ZlckRpcmVjdGl2ZS50b2dnbGUoaG92ZXJlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblRvcEZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgb25Cb3R0b21Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3ZlRm9jdXNPdXRzaWRlKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZSh0b3A6IG51bWJlciwgbGVmdDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtyaWdodH0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHttYXhIZWlnaHQsIG9mZnNldH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHtpbm5lckhlaWdodH0gPSB0aGlzLndpbjtcbiAgICAgICAgY29uc3Qge2NsaWVudFJlY3R9ID0gdGhpcy5ob3N0O1xuICAgICAgICBjb25zdCB7cG9zaXRpb259ID0gdGhpcy5kaXJlY3RpdmU7XG4gICAgICAgIGNvbnN0IHJlY3QgPSB0aGlzLmFjY2Vzc29yLmdldENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0WCA9IHBvc2l0aW9uID09PSAnZml4ZWQnID8gMCA6IC1jbGllbnRSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldFkgPSBwb3NpdGlvbiA9PT0gJ2ZpeGVkJyA/IDAgOiAtY2xpZW50UmVjdC50b3A7XG5cbiAgICAgICAgdG9wICs9IG9mZnNldFk7XG4gICAgICAgIGxlZnQgKz0gb2Zmc2V0WDtcblxuICAgICAgICBjb25zdCBpc0ludGVyc2VjdGluZyA9XG4gICAgICAgICAgICBsZWZ0IDwgcmVjdC5yaWdodCAmJiByaWdodCA+IHJlY3QubGVmdCAmJiB0b3AgPCBvZmZzZXRZICsgMiAqIG9mZnNldDtcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlID0gaXNJbnRlcnNlY3RpbmdcbiAgICAgICAgICAgID8gcmVjdC50b3AgLSAyICogb2Zmc2V0XG4gICAgICAgICAgICA6IG9mZnNldFkgKyBpbm5lckhlaWdodCAtIHRvcCAtIG9mZnNldDtcblxuICAgICAgICBzdHlsZS5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICBzdHlsZS50b3AgPSB0dWlQeChNYXRoLm1heCh0b3AsIG9mZnNldFkgKyBvZmZzZXQpKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHR1aVB4KGxlZnQpO1xuICAgICAgICBzdHlsZS5tYXhIZWlnaHQgPSB0dWlQeChNYXRoLm1pbihtYXhIZWlnaHQsIGF2YWlsYWJsZSkpO1xuICAgICAgICBzdHlsZS53aWR0aCA9ICcnO1xuICAgICAgICBzdHlsZS5taW5XaWR0aCA9ICcnO1xuXG4gICAgICAgIHRoaXMudXBkYXRlV2lkdGgocmVjdC53aWR0aCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVXaWR0aCh3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgc3dpdGNoICh0aGlzLm9wdGlvbnMubGltaXRXaWR0aCkge1xuICAgICAgICAgICAgY2FzZSAnbWluJzpcbiAgICAgICAgICAgICAgICBzdHlsZS5taW5XaWR0aCA9IHR1aVB4KHdpZHRoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2ZpeGVkJzpcbiAgICAgICAgICAgICAgICBzdHlsZS53aWR0aCA9IHR1aVB4KHdpZHRoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2F1dG8nOlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb3ZlRm9jdXNPdXRzaWRlKHByZXZpb3VzOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZGlyZWN0aXZlLmVsO1xuICAgICAgICBjb25zdCB7b3duZXJEb2N1bWVudH0gPSBuYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCByb290ID0gb3duZXJEb2N1bWVudCA/IG93bmVyRG9jdW1lbnQuYm9keSA6IG5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGxldCBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtpbml0aWFsOiBuYXRpdmVFbGVtZW50LCByb290LCBwcmV2aW91c30pO1xuXG4gICAgICAgIHdoaWxlIChmb2N1c2FibGUgIT09IG51bGwgJiYgbmF0aXZlRWxlbWVudC5jb250YWlucyhmb2N1c2FibGUpKSB7XG4gICAgICAgICAgICBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtpbml0aWFsOiBmb2N1c2FibGUsIHJvb3QsIHByZXZpb3VzfSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb2N1c2FibGU/LmZvY3VzKCk7XG4gICAgfVxufVxuIiwiPHR1aS1zY3JvbGxiYXJcbiAgICAjYWN0aXZlWm9uZT1cInR1aUFjdGl2ZVpvbmVcIlxuICAgIHR1aUFjdGl2ZVpvbmVcbiAgICB0dWlPdmVyc2Nyb2xsPVwiYWxsXCJcbiAgICBjbGFzcz1cInQtc2Nyb2xsXCJcbiAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkhvdmVyZWRDaGFuZ2UoJGV2ZW50KVwiXG4+XG4gICAgPGRpdlxuICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAoZm9jdXMpPVwib25Ub3BGb2N1cygpXCJcbiAgICA+PC9kaXY+XG4gICAgPGRpdlxuICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiZGlyZWN0aXZlLmNvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogeyRpbXBsaWNpdDogYWN0aXZlWm9uZX1cIlxuICAgICAgICBjbGFzcz1cInQtcHJpbWl0aXZlXCJcbiAgICA+XG4gICAgICAgIHt7IHRleHQgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgIChmb2N1cyk9XCJvbkJvdHRvbUZvY3VzKClcIlxuICAgID48L2Rpdj5cbjwvdHVpLXNjcm9sbGJhcj5cbiJdfQ==
|