@taiga-ui/core 3.23.1 → 3.24.0
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-alert.umd.js +6 -6
- package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-button.umd.js +4 -4
- package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.js +7 -7
- package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-dialog.umd.js +18 -11
- package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-expand.umd.js +3 -3
- package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +5 -5
- package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-link.umd.js +4 -4
- package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-loader.umd.js +6 -6
- package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-notification.umd.js +8 -2
- package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +8 -8
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-root.umd.js +3 -11
- package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js +14 -14
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-scrollbar.umd.js +7 -7
- package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-svg.umd.js +10 -13
- package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-dropdown.umd.js +26 -30
- package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-hint.umd.js +17 -19
- package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +4 -4
- package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +2 -2
- package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
- package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +3 -3
- package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
- package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +4 -4
- package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
- package/bundles/taiga-ui-core-pipes-format-phone.umd.js +2 -1
- package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
- package/bundles/taiga-ui-core-providers.umd.js +2 -2
- package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
- package/bundles/taiga-ui-core-services.umd.js +11 -10
- package/bundles/taiga-ui-core-services.umd.js.map +1 -1
- package/bundles/taiga-ui-core-tokens.umd.js +13 -9
- package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-dom.umd.js +2 -2
- package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mask.umd.js +8 -9
- package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mobile.umd.js +2 -2
- package/bundles/taiga-ui-core-utils-mobile.umd.js.map +1 -1
- package/components/alert/alert.component.d.ts +2 -2
- package/components/alert/alert.service.d.ts +1 -1
- package/components/button/button.component.d.ts +2 -2
- package/components/data-list/data-list.component.d.ts +2 -2
- package/components/data-list/option/option.component.d.ts +2 -2
- package/components/dialog/dialog-close.service.d.ts +4 -4
- package/components/dialog/dialog.component.d.ts +1 -0
- package/components/dialog/dialog.service.d.ts +1 -1
- package/components/expand/expand.component.d.ts +2 -2
- package/components/hosted-dropdown/hosted-dropdown.component.d.ts +2 -2
- package/components/link/link.component.d.ts +2 -2
- package/components/loader/loader.component.d.ts +3 -3
- package/components/notification/notification.component.d.ts +2 -1
- package/components/primitive-textfield/primitive-textfield.component.d.ts +2 -2
- package/components/primitive-textfield/textfield/textfield.component.d.ts +2 -2
- package/components/root/root.component.d.ts +1 -3
- package/components/scroll-controls/scroll-controls.component.d.ts +2 -2
- package/components/scroll-controls/scrollbar.directive.d.ts +4 -4
- package/components/scrollbar/scrollable.directive.d.ts +2 -2
- package/components/scrollbar/scrollbar.component.d.ts +2 -2
- package/components/svg/svg.component.d.ts +4 -4
- package/directives/dropdown/dropdown-selection.directive.d.ts +4 -4
- package/directives/dropdown/dropdown.component.d.ts +3 -3
- package/directives/dropdown/dropdown.directive.d.ts +3 -3
- package/directives/hint/hint-describe.directive.d.ts +3 -3
- package/directives/hint/hint-hover.directive.d.ts +2 -2
- package/directives/hint/hint.component.d.ts +2 -2
- package/directives/hint/hint.directive.d.ts +3 -3
- package/directives/scroll-into-view/scroll-into-view.directive.d.ts +2 -2
- package/esm2015/components/alert/alert.component.js +7 -7
- package/esm2015/components/button/button.component.js +5 -5
- package/esm2015/components/data-list/data-list.component.js +5 -5
- package/esm2015/components/data-list/option/option.component.js +4 -4
- package/esm2015/components/dialog/dialog-close.service.js +10 -10
- package/esm2015/components/dialog/dialog.component.js +6 -3
- package/esm2015/components/expand/expand.component.js +4 -4
- package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +6 -6
- package/esm2015/components/link/link.component.js +5 -5
- package/esm2015/components/loader/loader.component.js +7 -7
- package/esm2015/components/notification/notification.component.js +9 -3
- package/esm2015/components/primitive-textfield/primitive-textfield.component.js +4 -4
- package/esm2015/components/primitive-textfield/textfield/textfield.component.js +6 -6
- package/esm2015/components/root/root.component.js +7 -15
- package/esm2015/components/scroll-controls/scroll-controls.component.js +5 -5
- package/esm2015/components/scroll-controls/scrollbar.directive.js +11 -11
- package/esm2015/components/scrollbar/scrollable.directive.js +5 -5
- package/esm2015/components/scrollbar/scrollbar.component.js +4 -4
- package/esm2015/components/svg/svg.component.js +11 -14
- package/esm2015/directives/dropdown/dropdown-selection.directive.js +15 -17
- package/esm2015/directives/dropdown/dropdown.component.js +9 -9
- package/esm2015/directives/dropdown/dropdown.directive.js +5 -7
- package/esm2015/directives/hint/hint-describe.directive.js +7 -8
- package/esm2015/directives/hint/hint-hover.directive.js +3 -3
- package/esm2015/directives/hint/hint.component.js +7 -8
- package/esm2015/directives/hint/hint.directive.js +4 -4
- package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +5 -5
- package/esm2015/directives/textfield-controller/textfield-controller.provider.js +3 -3
- package/esm2015/interfaces/data-list-host.js +1 -1
- package/esm2015/interfaces/portal-item.js +1 -1
- package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +4 -4
- package/esm2015/pipes/calendar-sheet/utils.js +5 -5
- package/esm2015/pipes/format-phone/format-phone.pipe.js +3 -2
- package/esm2015/providers/watched-controller-provider-factory.js +3 -3
- package/esm2015/services/breakpoint.service.js +5 -5
- package/esm2015/services/night-theme.service.js +3 -3
- package/esm2015/services/router-link-active.service.js +2 -1
- package/esm2015/services/svg.service.js +2 -2
- package/esm2015/services/visual-viewport.service.js +5 -5
- package/esm2015/tokens/assert-enabled.js +5 -1
- package/esm2015/tokens/is-mobile-resolution.js +3 -3
- package/esm2015/tokens/selection-stream.js +3 -3
- package/esm2015/tokens/viewport.js +6 -6
- package/esm2015/utils/dom/get-screen-width.js +3 -3
- package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +3 -4
- package/esm2015/utils/mask/create-correction-mask.js +3 -2
- package/esm2015/utils/mask/create-number-mask.js +5 -6
- package/esm2015/utils/mobile/is-mobile.js +3 -3
- package/fesm2015/taiga-ui-core-components-alert.js +6 -6
- package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-button.js +4 -4
- package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-data-list.js +7 -7
- package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-dialog.js +14 -11
- package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-expand.js +3 -3
- package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +5 -5
- package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-link.js +4 -4
- package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-loader.js +6 -6
- package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-notification.js +8 -2
- package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js +8 -8
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-root.js +6 -14
- package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-scroll-controls.js +14 -14
- package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-scrollbar.js +7 -7
- package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-svg.js +10 -13
- package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-dropdown.js +26 -30
- package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-hint.js +17 -19
- package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +4 -4
- package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-textfield-controller.js +2 -2
- package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
- package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +3 -3
- package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
- package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +4 -4
- package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
- package/fesm2015/taiga-ui-core-pipes-format-phone.js +2 -1
- package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
- package/fesm2015/taiga-ui-core-providers.js +2 -2
- package/fesm2015/taiga-ui-core-providers.js.map +1 -1
- package/fesm2015/taiga-ui-core-services.js +12 -11
- package/fesm2015/taiga-ui-core-services.js.map +1 -1
- package/fesm2015/taiga-ui-core-tokens.js +13 -9
- package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-dom.js +2 -2
- package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-mask.js +8 -9
- package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-mobile.js +2 -2
- package/fesm2015/taiga-ui-core-utils-mobile.js.map +1 -1
- package/interfaces/data-list-host.d.ts +2 -1
- package/interfaces/portal-item.d.ts +1 -1
- package/internal/svg-defs-host/svg-defs-host.component.d.ts +2 -2
- package/package.json +4 -4
- package/providers/watched-controller-provider-factory.d.ts +1 -1
- package/services/breakpoint.service.d.ts +1 -1
- package/services/night-theme.service.d.ts +1 -1
- package/services/visual-viewport.service.d.ts +2 -2
- package/tokens/assert-enabled.d.ts +4 -0
- package/utils/dom/get-screen-width.d.ts +1 -1
- package/utils/mobile/is-mobile.d.ts +1 -1
|
@@ -2,13 +2,13 @@ import { Directive, ElementRef, Inject } from '@angular/core';
|
|
|
2
2
|
import { TUI_SCROLLABLE } from '@taiga-ui/core/constants';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class TuiScrollableDirective {
|
|
5
|
-
constructor(
|
|
6
|
-
this.
|
|
5
|
+
constructor(el) {
|
|
6
|
+
this.el = el;
|
|
7
7
|
}
|
|
8
8
|
ngOnInit() {
|
|
9
|
-
this.
|
|
9
|
+
this.el.nativeElement.dispatchEvent(new CustomEvent(TUI_SCROLLABLE, {
|
|
10
10
|
bubbles: true,
|
|
11
|
-
detail: this.
|
|
11
|
+
detail: this.el.nativeElement,
|
|
12
12
|
}));
|
|
13
13
|
}
|
|
14
14
|
}
|
|
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23
23
|
type: Inject,
|
|
24
24
|
args: [ElementRef]
|
|
25
25
|
}] }]; } });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc2Nyb2xsYmFyL3Njcm9sbGFibGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7O0FBS3hELE1BQU0sT0FBTyxzQkFBc0I7SUFDL0IsWUFBaUQsRUFBMkI7UUFBM0IsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7SUFBRyxDQUFDO0lBRWhGLFFBQVE7UUFDSixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQy9CLElBQUksV0FBVyxDQUFDLGNBQWMsRUFBRTtZQUM1QixPQUFPLEVBQUUsSUFBSTtZQUNiLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWE7U0FDaEMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDOztvSEFWUSxzQkFBc0Isa0JBQ1gsVUFBVTt3R0FEckIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtpQkFDOUI7OzBCQUVnQixNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUVUlfU0NST0xMQUJMRX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpU2Nyb2xsYWJsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxhYmxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KFRVSV9TQ1JPTExBQkxFLCB7XG4gICAgICAgICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMuZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -8,9 +8,9 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "@taiga-ui/core/components/scroll-controls";
|
|
9
9
|
import * as i2 from "@angular/common";
|
|
10
10
|
export class TuiScrollbarComponent {
|
|
11
|
-
constructor(cssRef,
|
|
11
|
+
constructor(cssRef, el, userAgent, isIos) {
|
|
12
12
|
this.cssRef = cssRef;
|
|
13
|
-
this.
|
|
13
|
+
this.el = el;
|
|
14
14
|
this.userAgent = userAgent;
|
|
15
15
|
this.isIos = isIos;
|
|
16
16
|
this.delegated = false;
|
|
@@ -18,7 +18,7 @@ export class TuiScrollbarComponent {
|
|
|
18
18
|
(tuiIsFirefox(this.userAgent) &&
|
|
19
19
|
!this.cssRef.supports('scrollbar-width', 'none'));
|
|
20
20
|
this.hidden = false;
|
|
21
|
-
this.browserScrollRef = new ElementRef(this.
|
|
21
|
+
this.browserScrollRef = new ElementRef(this.el.nativeElement);
|
|
22
22
|
}
|
|
23
23
|
get showScrollbars() {
|
|
24
24
|
return !this.hidden && !this.isIos && (!this.isLegacy || this.delegated);
|
|
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
95
95
|
type: HostListener,
|
|
96
96
|
args: [`${TUI_SCROLL_INTO_VIEW}.stop`, ['$event.detail']]
|
|
97
97
|
}] } });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLEdBQUcsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILFVBQVUsRUFDVixjQUFjLEVBQ2QsbUJBQW1CLEVBRW5CLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7O0FBaUJyRCxNQUFNLE9BQU8scUJBQXFCO0lBYzlCLFlBRXFCLE1BQStDLEVBQzNCLEVBQTJCLEVBQzNCLFNBQWlCLEVBQ2pCLEtBQWM7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBeUM7UUFDM0IsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFDM0IsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFTO1FBbEIvQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRVQsYUFBUSxHQUNyQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7WUFDM0MsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFD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QUFZO3VCQUFDLEdBQUcsY0FBYyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBT3pELGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxHQUFHLG9CQUFvQixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDU1MgYXMgQ1NTX1RPS0VOLCBVU0VSX0FHRU5UfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgVFVJX0lTX0lPUyxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlHZXRFbGVtZW50T2Zmc2V0LFxuICAgIFR1aUluamVjdGlvblRva2VuVHlwZSxcbiAgICB0dWlJc0ZpcmVmb3gsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfU0NST0xMX0lOVE9fVklFVywgVFVJX1NDUk9MTEFCTEV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1zY3JvbGxiYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zY3JvbGxiYXIudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2Nyb2xsYmFyLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1NDUk9MTF9SRUYsXG4gICAgICAgICAgICBkZXBzOiBbVHVpU2Nyb2xsYmFyQ29tcG9uZW50XSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6ICh7XG4gICAgICAgICAgICAgICAgYnJvd3NlclNjcm9sbFJlZixcbiAgICAgICAgICAgIH06IFR1aVNjcm9sbGJhckNvbXBvbmVudCk6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0+IGJyb3dzZXJTY3JvbGxSZWYsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGRlbGVnYXRlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0xlZ2FjeTogYm9vbGVhbiA9XG4gICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cygncG9zaXRpb24nLCAnc3RpY2t5JykgfHxcbiAgICAgICAgKHR1aUlzRmlyZWZveCh0aGlzLnVzZXJBZ2VudCkgJiZcbiAgICAgICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cygnc2Nyb2xsYmFyLXdpZHRoJywgJ25vbmUnKSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGlkZGVuID0gZmFsc2U7XG5cbiAgICByZWFkb25seSBicm93c2VyU2Nyb2xsUmVmID0gbmV3IEVsZW1lbnRSZWYodGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENTU19UT0tFTilcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjc3NSZWY6IFR1aUluamVjdGlvblRva2VuVHlwZTx0eXBlb2YgQ1NTX1RPS0VOPixcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChVU0VSX0FHRU5UKSBwcml2YXRlIHJlYWRvbmx5IHVzZXJBZ2VudDogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHByaXZhdGUgcmVhZG9ubHkgaXNJb3M6IGJvb2xlYW4sXG4gICAgKSB7fVxuXG4gICAgZ2V0IHNob3dTY3JvbGxiYXJzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGlkZGVuICYmICF0aGlzLmlzSW9zICYmICghdGhpcy5pc0xlZ2FjeSB8fCB0aGlzLmRlbGVnYXRlZCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbGVnYWN5JylcbiAgICBnZXQgc2hvd05hdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNMZWdhY3kgJiYgIXRoaXMuaGlkZGVuICYmICF0aGlzLmRlbGVnYXRlZDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGAke1RVSV9TQ1JPTExBQkxFfS5zdG9wYCwgWyckZXZlbnQuZGV0YWlsJ10pXG4gICAgb25TY3JvbGxhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVsZWdhdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5icm93c2VyU2Nyb2xsUmVmLm5hdGl2ZUVsZW1lbnQgPSBlbGVtZW50O1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYCR7VFVJX1NDUk9MTF9JTlRPX1ZJRVd9LnN0b3BgLCBbJyRldmVudC5kZXRhaWwnXSlcbiAgICBzY3JvbGxJbnRvVmlldyhkZXRhaWw6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRlbGVnYXRlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5icm93c2VyU2Nyb2xsUmVmO1xuICAgICAgICBjb25zdCB7b2Zmc2V0VG9wLCBvZmZzZXRMZWZ0fSA9IHR1aUdldEVsZW1lbnRPZmZzZXQobmF0aXZlRWxlbWVudCwgZGV0YWlsKTtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgY2xpZW50V2lkdGh9ID0gbmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge29mZnNldEhlaWdodCwgb2Zmc2V0V2lkdGh9ID0gZGV0YWlsO1xuICAgICAgICBjb25zdCBzY3JvbGxUb3AgPSBvZmZzZXRUb3AgKyBvZmZzZXRIZWlnaHQgLyAyIC0gY2xpZW50SGVpZ2h0IC8gMjtcbiAgICAgICAgY29uc3Qgc2Nyb2xsTGVmdCA9IG9mZnNldExlZnQgKyBvZmZzZXRXaWR0aCAvIDIgLSBjbGllbnRXaWR0aCAvIDI7XG5cbiAgICAgICAgLy8gPy4gZm9yIG91ciBjbGllbnRzIG9uIFdpbmRvd3MgWFAgYW5kIENocm9tZSA0OVxuICAgICAgICBuYXRpdmVFbGVtZW50LnNjcm9sbFRvPy4oc2Nyb2xsTGVmdCwgc2Nyb2xsVG9wKTtcbiAgICB9XG59XG4iLCI8dHVpLXNjcm9sbC1jb250cm9scyAqbmdJZj1cInNob3dTY3JvbGxiYXJzXCI+PC90dWktc2Nyb2xsLWNvbnRyb2xzPlxuPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
|
@@ -21,15 +21,15 @@ 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(
|
|
25
|
-
this.
|
|
26
|
-
this.
|
|
24
|
+
constructor(doc, win, options, tuiSanitizer, svgService, staticRequestService, sanitizer, el) {
|
|
25
|
+
this.doc = doc;
|
|
26
|
+
this.win = win;
|
|
27
27
|
this.options = options;
|
|
28
28
|
this.tuiSanitizer = tuiSanitizer;
|
|
29
29
|
this.svgService = svgService;
|
|
30
30
|
this.staticRequestService = staticRequestService;
|
|
31
31
|
this.sanitizer = sanitizer;
|
|
32
|
-
this.
|
|
32
|
+
this.el = el;
|
|
33
33
|
this.src$ = new ReplaySubject(1);
|
|
34
34
|
this.icon = '';
|
|
35
35
|
this.innerHTML$ = this.src$.pipe(switchMap(() => {
|
|
@@ -43,7 +43,7 @@ export class TuiSvgComponent {
|
|
|
43
43
|
}
|
|
44
44
|
set src(src) {
|
|
45
45
|
const deprecated = this.options.deprecated(String(src));
|
|
46
|
-
tuiAssert.assert(!deprecated, deprecated);
|
|
46
|
+
ngDevMode && tuiAssert.assert(!deprecated, deprecated);
|
|
47
47
|
this.icon = this.options.srcProcessor(src);
|
|
48
48
|
this.src$.next();
|
|
49
49
|
}
|
|
@@ -65,7 +65,7 @@ export class TuiSvgComponent {
|
|
|
65
65
|
(this.isName && this.isShadowDOM));
|
|
66
66
|
}
|
|
67
67
|
get isShadowDOM() {
|
|
68
|
-
return
|
|
68
|
+
return tuiGetDocumentOrShadowRoot(this.el.nativeElement) !== this.doc;
|
|
69
69
|
}
|
|
70
70
|
get isUse() {
|
|
71
71
|
return this.use.includes('.svg#');
|
|
@@ -83,11 +83,8 @@ export class TuiSvgComponent {
|
|
|
83
83
|
return !this.isUrl && !this.isUse && !this.isSrc;
|
|
84
84
|
}
|
|
85
85
|
get isCrossDomain() {
|
|
86
|
-
const { use, isUse,
|
|
87
|
-
return (isUse &&
|
|
88
|
-
use.startsWith('http') &&
|
|
89
|
-
!!windowRef.origin &&
|
|
90
|
-
!use.startsWith(windowRef.origin));
|
|
86
|
+
const { use, isUse, win } = this;
|
|
87
|
+
return (isUse && use.startsWith('http') && !!win.origin && !use.startsWith(win.origin));
|
|
91
88
|
}
|
|
92
89
|
onError(message = MISSING_EXTERNAL_ICON) {
|
|
93
90
|
const { icon } = this;
|
|
@@ -98,8 +95,8 @@ export class TuiSvgComponent {
|
|
|
98
95
|
icon: icon,
|
|
99
96
|
},
|
|
100
97
|
});
|
|
101
|
-
tuiAssert.assert(false, message, icon);
|
|
102
|
-
this.
|
|
98
|
+
ngDevMode && tuiAssert.assert(false, message, icon);
|
|
99
|
+
this.el.nativeElement.dispatchEvent(event);
|
|
103
100
|
}
|
|
104
101
|
resolveName(name, iconsPath) {
|
|
105
102
|
return iconsPath(name);
|
|
@@ -174,4 +171,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
174
171
|
}] }]; }, propDecorators: { src: [{
|
|
175
172
|
type: Input
|
|
176
173
|
}], resolveName: [] } });
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxTQUFTLEVBQ1QsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLHVCQUF1QixHQUUxQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFDLGVBQWUsRUFBZ0IsTUFBTSxlQUFlLENBQUM7Ozs7OztBQUU3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QkFDL0IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzBEQVF1RCxRQUFROzBCQUF2RCxNQUFNOzJCQUFDLFFBQVE7OEJBQzRCLE1BQU07MEJBQWpELE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxlQUFlOzswQkFDdEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxhQUFhOzswQkFFcEIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFVBQVU7NENBa0JsQixHQUFHO3NCQUZOLEtBQUs7Z0JBcUZFLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2FuaXRpemVyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc3NlcnQsXG4gICAgdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlSZXF1aXJlZFNldHRlcixcbiAgICBUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSxcbiAgICBUdWlTdHJpbmdIYW5kbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX0lDT05fRVJST1J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUljb25FcnJvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aVN2Z1NlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX1NBTklUSVpFUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7dHVpSXNQcmVzdW1lZEhUTUxTdHJpbmd9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfU1ZHX09QVElPTlMsIFR1aVN2Z09wdGlvbnN9IGZyb20gJy4vc3ZnLW9wdGlvbnMnO1xuXG5jb25zdCBVTkRFRklORURfTkFNRURfSUNPTiA9ICdBdHRlbXB0ZWQgdG8gdXNlIHVuZGVmaW5lZCBuYW1lZCBpY29uJztcbmNvbnN0IE1JU1NJTkdfRVhURVJOQUxfSUNPTiA9ICdFeHRlcm5hbCBpY29uIGlzIG1pc3Npbmcgb24gdGhlIGdpdmVuIFVSTCc7XG5jb25zdCBGQUlMRURfRVhURVJOQUxfSUNPTiA9ICdGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCBTVkcnO1xuXG4vLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdG8gQ0RLIGFsb25nIHdpdGggU3ZnU2VydmljZSBhbmQgU3ZnRGVmc0hvc3RDb21wb25lbnRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXN2ZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N2Zy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdmcuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdmdDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3JjJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHZvaWQ+KDEpO1xuICAgIHByaXZhdGUgaWNvbjogU2FmZUh0bWwgfCBzdHJpbmcgPSAnJztcblxuICAgIHJlYWRvbmx5IGlubmVySFRNTCQ6IE9ic2VydmFibGU8U2FmZUh0bWw+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRSZWY6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfU1ZHX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpU3ZnT3B0aW9ucyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUVUlfU0FOSVRJWkVSKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHR1aVNhbml0aXplcjogU2FuaXRpemVyIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUdWlTdmdTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IHN2Z1NlcnZpY2U6IFR1aVN2Z1NlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdGljUmVxdWVzdFNlcnZpY2U6IFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KERvbVNhbml0aXplcikgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8RWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaW5uZXJIVE1MJCA9IHRoaXMuc3JjJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc0V4dGVybmFsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuZ2V0RXh0ZXJuYWxJY29uKHRoaXMuaWNvbilcbiAgICAgICAgICAgICAgICAgICAgICAgIDogb2YodGhpcy5nZXRTYWZlSHRtbCh0aGlzLmljb24pKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5pY29uKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlSZXF1aXJlZFNldHRlcigpXG4gICAgc2V0IHNyYyhzcmM6IFNhZmVIdG1sIHwgc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGRlcHJlY2F0ZWQgPSB0aGlzLm9wdGlvbnMuZGVwcmVjYXRlZChTdHJpbmcoc3JjKSk7XG5cbiAgICAgICAgdHVpQXNzZXJ0LmFzc2VydCghZGVwcmVjYXRlZCwgZGVwcmVjYXRlZCk7XG4gICAgICAgIHRoaXMuaWNvbiA9IHRoaXMub3B0aW9ucy5zcmNQcm9jZXNzb3Ioc3JjKTtcbiAgICAgICAgdGhpcy5zcmMkLm5leHQoKTtcbiAgICB9XG5cbiAgICBnZXQgc3JjKCk6IFNhZmVIdG1sIHwgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaWNvbjtcbiAgICB9XG5cbiAgICBnZXQgdXNlKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0dWlJc1N0cmluZyh0aGlzLmljb24pKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pY29uLmluY2x1ZGVzKCcuc3ZnIycpXG4gICAgICAgICAgICAgICAgPyB0aGlzLmljb25cbiAgICAgICAgICAgICAgICA6IHRoaXMucmVzb2x2ZU5hbWUodGhpcy5pY29uLCB0aGlzLm9wdGlvbnMucGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgZ2V0IGlzSW5uZXJIVE1MKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXR1aUlzU3RyaW5nKHRoaXMuaWNvbikgfHxcbiAgICAgICAgICAgIHRoaXMuaXNTcmMgfHxcbiAgICAgICAgICAgIHRoaXMuaXNFeHRlcm5hbCB8fFxuICAgICAgICAgICAgKHRoaXMuaXNOYW1lICYmIHRoaXMuaXNTaGFkb3dET00pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTaGFkb3dET00oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkgIT09IHRoaXMuZG9jdW1lbnRSZWZcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1VzZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlLmluY2x1ZGVzKCcuc3ZnIycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzRXh0ZXJuYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVXJsIHx8IHRoaXMuaXNDcm9zc0RvbWFpbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1VybCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKHRoaXMuaWNvbikgJiYgdGhpcy5pY29uLmVuZHNXaXRoKCcuc3ZnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTcmMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh0aGlzLmljb24pICYmIHR1aUlzUHJlc3VtZWRIVE1MU3RyaW5nKHRoaXMuaWNvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNOYW1lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNVcmwgJiYgIXRoaXMuaXNVc2UgJiYgIXRoaXMuaXNTcmM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNDcm9zc0RvbWFpbigpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3VzZSwgaXNVc2UsIHdpbmRvd1JlZn0gPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc1VzZSAmJlxuICAgICAgICAgICAgdXNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSAmJlxuICAgICAgICAgICAgISF3aW5kb3dSZWYub3JpZ2luICYmXG4gICAgICAgICAgICAhdXNlLnN0YXJ0c1dpdGgod2luZG93UmVmLm9yaWdpbilcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvbkVycm9yKG1lc3NhZ2U6IHN0cmluZyA9IE1JU1NJTkdfRVhURVJOQUxfSUNPTik6IHZvaWQge1xuICAgICAgICBjb25zdCB7aWNvbn0gPSB0aGlzO1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudDxUdWlJY29uRXJyb3I+KFRVSV9JQ09OX0VSUk9SLCB7XG4gICAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICBpY29uOiBpY29uIGFzIHN0cmluZyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHR1aUFzc2VydC5hc3NlcnQoZmFsc2UsIG1lc3NhZ2UsIGljb24pO1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgcmVzb2x2ZU5hbWUobmFtZTogc3RyaW5nLCBpY29uc1BhdGg6IFR1aVN0cmluZ0hhbmRsZXI8c3RyaW5nPik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpY29uc1BhdGgobmFtZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTYWZlSHRtbChzcmM6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNTcmMgPyB0aGlzLnNhbml0aXplKHNyYykgOiB0aGlzLnByb2Nlc3Moc3JjKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3Moc3JjOiBzdHJpbmcpOiBTYWZlSHRtbCB7XG4gICAgICAgIGNvbnN0IGljb24gPSB0aGlzLnN2Z1NlcnZpY2UuZ2V0T3JpZ2luYWwoc3JjKTtcblxuICAgICAgICBpZiAodGhpcy5pc05hbWUgJiYgIWljb24gJiYgISFzcmMpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvcihVTkRFRklORURfTkFNRURfSUNPTik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbXB0eSBsaW5lIGZvciBpbm5lckhUTUwgd2hlbiBpY29uIGlzIHNob3duIHRocm91Z2ggVVNFIHRhZ1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNTaGFkb3dET00gfHwgIXRoaXMuaXNOYW1lID8gJycgOiB0aGlzLnNhbml0aXplKGljb24gfHwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FuaXRpemUoc3JjOiBTYWZlSHRtbCB8IHN0cmluZyk6IFNhZmVIdG1sIHwgc3RyaW5nIHtcbiAgICAgICAgc3JjID0gdGhpcy5vcHRpb25zLmNvbnRlbnRQcm9jZXNzb3Ioc3JjKTtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTYW5pdGl6ZXIgJiYgdHVpSXNTdHJpbmcoc3JjKVxuICAgICAgICAgICAgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChcbiAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBzcmMpIHx8ICcnLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICA6IHNyYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEV4dGVybmFsSWNvbihzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICAgICAgY29uc3QgdXJsID0gc3JjLmluY2x1ZGVzKCcuc3ZnJykgPyBzcmMgOiB0aGlzLnVzZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0aWNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KHVybCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihGQUlMRURfRVhURVJOQUxfSUNPTik7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoJycpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnNhbml0aXplKHJlc3BvbnNlLnJlcGxhY2UoJzxzdmcnLCAnPHN2ZyBmb2N1c2FibGU9XCJmYWxzZVwiJykpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0dWlMZXQ9XCJpbm5lckhUTUwkIHwgYXN5bmMgYXMgaW5uZXJIVE1MXCI+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlzSW5uZXJIVE1MOyBlbHNlIHVzZVRlbXBsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXNyY1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaW5uZXJIVE1MXCJcbiAgICA+PC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICN1c2VUZW1wbGF0ZT5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtc3ZnXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJvbkVycm9yKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwidXNlXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxTQUFTLEVBQ1QsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLHVCQUF1QixHQUUxQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFDLGVBQWUsRUFBZ0IsTUFBTSxlQUFlLENBQUM7Ozs7OztBQUU3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QztvQkFDL0IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzBEQVErQyxRQUFROzBCQUEvQyxNQUFNOzJCQUFDLFFBQVE7OEJBQ3NCLE1BQU07MEJBQTNDLE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxlQUFlOzswQkFDdEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxhQUFhOzswQkFFcEIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFVBQVU7NENBa0JsQixHQUFHO3NCQUZOLEtBQUs7Z0JBZ0ZFLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2FuaXRpemVyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc3NlcnQsXG4gICAgdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlSZXF1aXJlZFNldHRlcixcbiAgICBUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSxcbiAgICBUdWlTdHJpbmdIYW5kbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX0lDT05fRVJST1J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUljb25FcnJvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aVN2Z1NlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX1NBTklUSVpFUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7dHVpSXNQcmVzdW1lZEhUTUxTdHJpbmd9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfU1ZHX09QVElPTlMsIFR1aVN2Z09wdGlvbnN9IGZyb20gJy4vc3ZnLW9wdGlvbnMnO1xuXG5jb25zdCBVTkRFRklORURfTkFNRURfSUNPTiA9ICdBdHRlbXB0ZWQgdG8gdXNlIHVuZGVmaW5lZCBuYW1lZCBpY29uJztcbmNvbnN0IE1JU1NJTkdfRVhURVJOQUxfSUNPTiA9ICdFeHRlcm5hbCBpY29uIGlzIG1pc3Npbmcgb24gdGhlIGdpdmVuIFVSTCc7XG5jb25zdCBGQUlMRURfRVhURVJOQUxfSUNPTiA9ICdGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCBTVkcnO1xuXG4vLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdG8gQ0RLIGFsb25nIHdpdGggU3ZnU2VydmljZSBhbmQgU3ZnRGVmc0hvc3RDb21wb25lbnRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXN2ZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N2Zy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdmcuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdmdDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3JjJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHZvaWQ+KDEpO1xuICAgIHByaXZhdGUgaWNvbjogU2FmZUh0bWwgfCBzdHJpbmcgPSAnJztcblxuICAgIHJlYWRvbmx5IGlubmVySFRNTCQ6IE9ic2VydmFibGU8U2FmZUh0bWw+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jOiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX1NWR19PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aVN2Z09wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVFVJX1NBTklUSVpFUilcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0dWlTYW5pdGl6ZXI6IFNhbml0aXplciB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVHVpU3ZnU2VydmljZSkgcHJpdmF0ZSByZWFkb25seSBzdmdTZXJ2aWNlOiBUdWlTdmdTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXRpY1JlcXVlc3RTZXJ2aWNlOiBUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSxcbiAgICAgICAgQEluamVjdChEb21TYW5pdGl6ZXIpIHByaXZhdGUgcmVhZG9ubHkgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxFbGVtZW50PixcbiAgICApIHtcbiAgICAgICAgdGhpcy5pbm5lckhUTUwkID0gdGhpcy5zcmMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0dWlJc1N0cmluZyh0aGlzLmljb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzRXh0ZXJuYWxcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5nZXRFeHRlcm5hbEljb24odGhpcy5pY29uKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBvZih0aGlzLmdldFNhZmVIdG1sKHRoaXMuaWNvbikpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBvZih0aGlzLmljb24pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aVJlcXVpcmVkU2V0dGVyKClcbiAgICBzZXQgc3JjKHNyYzogU2FmZUh0bWwgfCBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZGVwcmVjYXRlZCA9IHRoaXMub3B0aW9ucy5kZXByZWNhdGVkKFN0cmluZyhzcmMpKTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydCghZGVwcmVjYXRlZCwgZGVwcmVjYXRlZCk7XG4gICAgICAgIHRoaXMuaWNvbiA9IHRoaXMub3B0aW9ucy5zcmNQcm9jZXNzb3Ioc3JjKTtcbiAgICAgICAgdGhpcy5zcmMkLm5leHQoKTtcbiAgICB9XG5cbiAgICBnZXQgc3JjKCk6IFNhZmVIdG1sIHwgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaWNvbjtcbiAgICB9XG5cbiAgICBnZXQgdXNlKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0dWlJc1N0cmluZyh0aGlzLmljb24pKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pY29uLmluY2x1ZGVzKCcuc3ZnIycpXG4gICAgICAgICAgICAgICAgPyB0aGlzLmljb25cbiAgICAgICAgICAgICAgICA6IHRoaXMucmVzb2x2ZU5hbWUodGhpcy5pY29uLCB0aGlzLm9wdGlvbnMucGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgZ2V0IGlzSW5uZXJIVE1MKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXR1aUlzU3RyaW5nKHRoaXMuaWNvbikgfHxcbiAgICAgICAgICAgIHRoaXMuaXNTcmMgfHxcbiAgICAgICAgICAgIHRoaXMuaXNFeHRlcm5hbCB8fFxuICAgICAgICAgICAgKHRoaXMuaXNOYW1lICYmIHRoaXMuaXNTaGFkb3dET00pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTaGFkb3dET00oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpICE9PSB0aGlzLmRvYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1VzZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlLmluY2x1ZGVzKCcuc3ZnIycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzRXh0ZXJuYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVXJsIHx8IHRoaXMuaXNDcm9zc0RvbWFpbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1VybCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKHRoaXMuaWNvbikgJiYgdGhpcy5pY29uLmVuZHNXaXRoKCcuc3ZnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTcmMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh0aGlzLmljb24pICYmIHR1aUlzUHJlc3VtZWRIVE1MU3RyaW5nKHRoaXMuaWNvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNOYW1lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNVcmwgJiYgIXRoaXMuaXNVc2UgJiYgIXRoaXMuaXNTcmM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNDcm9zc0RvbWFpbigpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3VzZSwgaXNVc2UsIHdpbn0gPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc1VzZSAmJiB1c2Uuc3RhcnRzV2l0aCgnaHR0cCcpICYmICEhd2luLm9yaWdpbiAmJiAhdXNlLnN0YXJ0c1dpdGgod2luLm9yaWdpbilcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvbkVycm9yKG1lc3NhZ2U6IHN0cmluZyA9IE1JU1NJTkdfRVhURVJOQUxfSUNPTik6IHZvaWQge1xuICAgICAgICBjb25zdCB7aWNvbn0gPSB0aGlzO1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudDxUdWlJY29uRXJyb3I+KFRVSV9JQ09OX0VSUk9SLCB7XG4gICAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICBpY29uOiBpY29uIGFzIHN0cmluZyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KGZhbHNlLCBtZXNzYWdlLCBpY29uKTtcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSByZXNvbHZlTmFtZShuYW1lOiBzdHJpbmcsIGljb25zUGF0aDogVHVpU3RyaW5nSGFuZGxlcjxzdHJpbmc+KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGljb25zUGF0aChuYW1lKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNhZmVIdG1sKHNyYzogc3RyaW5nKTogU2FmZUh0bWwge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1NyYyA/IHRoaXMuc2FuaXRpemUoc3JjKSA6IHRoaXMucHJvY2VzcyhzcmMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2VzcyhzcmM6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgY29uc3QgaWNvbiA9IHRoaXMuc3ZnU2VydmljZS5nZXRPcmlnaW5hbChzcmMpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTmFtZSAmJiAhaWNvbiAmJiAhIXNyYykge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yKFVOREVGSU5FRF9OQU1FRF9JQ09OKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVtcHR5IGxpbmUgZm9yIGlubmVySFRNTCB3aGVuIGljb24gaXMgc2hvd24gdGhyb3VnaCBVU0UgdGFnXG4gICAgICAgIHJldHVybiAhdGhpcy5pc1NoYWRvd0RPTSB8fCAhdGhpcy5pc05hbWUgPyAnJyA6IHRoaXMuc2FuaXRpemUoaWNvbiB8fCAnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZShzcmM6IFNhZmVIdG1sIHwgc3RyaW5nKTogU2FmZUh0bWwgfCBzdHJpbmcge1xuICAgICAgICBzcmMgPSB0aGlzLm9wdGlvbnMuY29udGVudFByb2Nlc3NvcihzcmMpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNhbml0aXplciAmJiB0dWlJc1N0cmluZyhzcmMpXG4gICAgICAgICAgICA/IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKFxuICAgICAgICAgICAgICAgICAgdGhpcy50dWlTYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHNyYykgfHwgJycsXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIDogc3JjO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RXh0ZXJuYWxJY29uKHNyYzogc3RyaW5nKTogT2JzZXJ2YWJsZTxTYWZlSHRtbD4ge1xuICAgICAgICBjb25zdCB1cmwgPSBzcmMuaW5jbHVkZXMoJy5zdmcnKSA/IHNyYyA6IHRoaXMudXNlO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRpY1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QodXJsKS5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yKEZBSUxFRF9FWFRFUk5BTF9JQ09OKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBvZignJyk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1hcChyZXNwb25zZSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc2FuaXRpemUocmVzcG9uc2UucmVwbGFjZSgnPHN2ZycsICc8c3ZnIGZvY3VzYWJsZT1cImZhbHNlXCInKSksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnR1aUxldD1cImlubmVySFRNTCQgfCBhc3luYyBhcyBpbm5lckhUTUxcIj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiaXNJbm5lckhUTUw7IGVsc2UgdXNlVGVtcGxhdGVcIlxuICAgICAgICBjbGFzcz1cInQtc3JjXCJcbiAgICAgICAgW2lubmVySFRNTF09XCJpbm5lckhUTUxcIlxuICAgID48L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI3VzZVRlbXBsYXRlPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1zdmdcIlxuICAgICAgICAgICAgKGVycm9yKT1cIm9uRXJyb3IoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx1c2UgW2F0dHIueGxpbms6aHJlZl09XCJ1c2VcIj48L3VzZT5cbiAgICAgICAgPC9zdmc+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -12,20 +12,20 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
import * as i1 from "rxjs";
|
|
13
13
|
import * as i2 from "./dropdown.directive";
|
|
14
14
|
export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
15
|
-
constructor(range,
|
|
15
|
+
constructor(range, doc, selection$, el, vcr, dropdown) {
|
|
16
16
|
super(subscriber => this.stream$.subscribe(subscriber));
|
|
17
17
|
this.range = range;
|
|
18
|
-
this.
|
|
18
|
+
this.doc = doc;
|
|
19
19
|
this.selection$ = selection$;
|
|
20
|
-
this.
|
|
21
|
-
this.
|
|
20
|
+
this.el = el;
|
|
21
|
+
this.vcr = vcr;
|
|
22
22
|
this.dropdown = dropdown;
|
|
23
23
|
this.handler$ = new BehaviorSubject(ALWAYS_TRUE_HANDLER);
|
|
24
24
|
this.stream$ = combineLatest([
|
|
25
25
|
this.handler$,
|
|
26
26
|
this.selection$.pipe(map(() => this.getRange()), distinctUntilChanged()),
|
|
27
27
|
]).pipe(map(([handler, range]) => {
|
|
28
|
-
const contained = this.
|
|
28
|
+
const contained = this.el.nativeElement.contains(range.commonAncestorContainer);
|
|
29
29
|
this.range =
|
|
30
30
|
contained && tuiIsTextNode(range.commonAncestorContainer)
|
|
31
31
|
? range
|
|
@@ -59,14 +59,13 @@ export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
|
59
59
|
}
|
|
60
60
|
ngOnDestroy() {
|
|
61
61
|
if (this.ghost) {
|
|
62
|
-
this.
|
|
62
|
+
this.vcr.element.nativeElement.removeChild(this.ghost);
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
getRange() {
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
if (active && tuiIsTextfield(active) && nativeElement.contains(active)) {
|
|
66
|
+
const active = tuiGetNativeFocused(this.doc);
|
|
67
|
+
const selection = this.doc.getSelection();
|
|
68
|
+
if (active && tuiIsTextfield(active) && this.el.nativeElement.contains(active)) {
|
|
70
69
|
return this.veryVerySadInputFix(active);
|
|
71
70
|
}
|
|
72
71
|
return (selection === null || selection === void 0 ? void 0 : selection.rangeCount) ? selection.getRangeAt(0) : this.range;
|
|
@@ -83,7 +82,7 @@ export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
|
83
82
|
*/
|
|
84
83
|
inDropdown(range) {
|
|
85
84
|
const { startContainer, endContainer } = range;
|
|
86
|
-
const { nativeElement } = this.
|
|
85
|
+
const { nativeElement } = this.el;
|
|
87
86
|
const inDropdown = this.boxContains(range.commonAncestorContainer);
|
|
88
87
|
const hostToDropdown = this.boxContains(endContainer) && nativeElement.contains(startContainer);
|
|
89
88
|
const dropdownToHost = this.boxContains(startContainer) && nativeElement.contains(endContainer);
|
|
@@ -93,8 +92,8 @@ export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
|
93
92
|
const { ghost = this.initGhost(element) } = this;
|
|
94
93
|
const { top, left, width, height } = element.getBoundingClientRect();
|
|
95
94
|
const { selectionStart, selectionEnd, value } = element;
|
|
96
|
-
const range = this.
|
|
97
|
-
const hostRect = this.
|
|
95
|
+
const range = this.doc.createRange();
|
|
96
|
+
const hostRect = this.el.nativeElement.getBoundingClientRect();
|
|
98
97
|
ghost.style.top = tuiPx(top - hostRect.top);
|
|
99
98
|
ghost.style.left = tuiPx(left - hostRect.left);
|
|
100
99
|
ghost.style.width = tuiPx(width);
|
|
@@ -108,8 +107,7 @@ export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
|
108
107
|
* Create an invisible DIV styled exactly like input/textarea element inside directive
|
|
109
108
|
*/
|
|
110
109
|
initGhost(element) {
|
|
111
|
-
const ghost = this.
|
|
112
|
-
const { nativeElement } = this.viewContainerRef.element;
|
|
110
|
+
const ghost = this.doc.createElement('div');
|
|
113
111
|
const { font, letterSpacing, textTransform, padding } = getComputedStyle(element);
|
|
114
112
|
ghost.style.position = 'absolute';
|
|
115
113
|
ghost.style.pointerEvents = 'none';
|
|
@@ -119,7 +117,7 @@ export class TuiDropdownSelectionDirective extends TuiDriver {
|
|
|
119
117
|
ghost.style.letterSpacing = letterSpacing;
|
|
120
118
|
ghost.style.textTransform = textTransform;
|
|
121
119
|
ghost.style.padding = padding;
|
|
122
|
-
nativeElement.appendChild(ghost);
|
|
120
|
+
this.vcr.element.nativeElement.appendChild(ghost);
|
|
123
121
|
this.ghost = ghost;
|
|
124
122
|
return ghost;
|
|
125
123
|
}
|
|
@@ -165,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
165
163
|
}], tuiDropdownSelection: [{
|
|
166
164
|
type: Input
|
|
167
165
|
}] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tc2VsZWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi1zZWxlY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxnQkFBZ0IsR0FDbkIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixZQUFZLEVBQ1osV0FBVyxFQUNYLGNBQWMsRUFDZCxhQUFhLEVBQ2IsS0FBSyxHQUNSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLFNBQVMsR0FFWixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUNoRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFTMUQsTUFBTSxPQUFPLDZCQUNULFNBQVEsU0FBUztJQTJDakIsWUFDK0IsS0FBWSxFQUNKLFdBQXFCLEVBQ1QsVUFBK0IsRUFDekMsVUFBbUMsRUFDN0IsZ0JBQWtDLEVBQzlCLFFBQThCO1FB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MUMsaUJBQWlCLENBQUMsNkJBQTZCLENBQUM7S0FDbkQ7QUFtQ0Q7SUFEQyxjQUFjLEVBQUU7K0RBQ29DOzRGQWpDNUMsNkJBQTZCO2tCQVB6QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQ0FBcUM7b0JBQy9DLFNBQVMsRUFBRTt3QkFDUCxXQUFXLCtCQUErQjt3QkFDMUMsaUJBQWlCLCtCQUErQjtxQkFDbkQ7aUJBQ0o7MERBOEN5QyxLQUFLOzBCQUF0QyxNQUFNOzJCQUFDLFNBQVM7OEJBQytCLFFBQVE7MEJBQXZELE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLGdCQUFnQjs7MEJBQ3ZCLE1BQU07MkJBQUMsb0JBQW9COzRDQWpCaEMsUUFBUTtzQkFGUCxLQUFLO3VCQUFDLDhCQUE4QjtnQkFLakMsb0JBQW9CO3NCQUR2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX1RSVUVfSEFORExFUixcbiAgICBDSEFSX05PX0JSRUFLX1NQQUNFLFxuICAgIENIQVJfWkVST19XSURUSF9TUEFDRSxcbiAgICBFTVBUWV9DTElFTlRfUkVDVCxcbiAgICBUVUlfUkFOR0UsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgdHVpR2V0TmF0aXZlRm9jdXNlZCxcbiAgICB0dWlJc0VsZW1lbnQsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgdHVpSXNUZXh0ZmllbGQsXG4gICAgdHVpSXNUZXh0Tm9kZSxcbiAgICB0dWlQeCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIHR1aUFzRHJpdmVyLFxuICAgIHR1aUFzUmVjdEFjY2Vzc29yLFxuICAgIFR1aURyaXZlcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7VFVJX1NFTEVDVElPTl9TVFJFQU19IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUdldFdvcmRSYW5nZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpRHJvcGRvd25EaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpRHJvcGRvd25dW3R1aURyb3Bkb3duU2VsZWN0aW9uXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzRHJpdmVyKFR1aURyb3Bkb3duU2VsZWN0aW9uRGlyZWN0aXZlKSxcbiAgICAgICAgdHVpQXNSZWN0QWNjZXNzb3IoVHVpRHJvcGRvd25TZWxlY3Rpb25EaXJlY3RpdmUpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duU2VsZWN0aW9uRGlyZWN0aXZlXG4gICAgZXh0ZW5kcyBUdWlEcml2ZXJcbiAgICBpbXBsZW1lbnRzIFR1aVJlY3RBY2Nlc3NvciwgT25EZXN0cm95XG57XG4gICAgcHJpdmF0ZSByZWFkb25seSBoYW5kbGVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VHVpQm9vbGVhbkhhbmRsZXI8UmFuZ2U+PihcbiAgICAgICAgQUxXQVlTX1RSVUVfSEFORExFUixcbiAgICApO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdHJlYW0kID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuaGFuZGxlciQsXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uJC5waXBlKFxuICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMuZ2V0UmFuZ2UoKSksXG4gICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICApLFxuICAgIF0pLnBpcGUoXG4gICAgICAgIG1hcCgoW2hhbmRsZXIsIHJhbmdlXSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udGFpbmVkID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoXG4gICAgICAgICAgICAgICAgcmFuZ2UuY29tbW9uQW5jZXN0b3JDb250YWluZXIsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLnJhbmdlID1cbiAgICAgICAgICAgICAgICBjb250YWluZWQgJiYgdHVpSXNUZXh0Tm9kZShyYW5nZS5jb21tb25BbmNlc3RvckNvbnRhaW5lcilcbiAgICAgICAgICAgICAgICAgICAgPyByYW5nZVxuICAgICAgICAgICAgICAgICAgICA6IHRoaXMucmFuZ2U7XG5cbiAgICAgICAgICAgIHJldHVybiAoY29udGFpbmVkICYmIGhhbmRsZXIodGhpcy5yYW5nZSkpIHx8IHRoaXMuaW5Ecm9wZG93bihyYW5nZSk7XG4gICAgICAgIH0pLFxuICAgICk7XG5cbiAgICBwcml2YXRlIGdob3N0PzogSFRNTEVsZW1lbnQ7XG5cbiAgICBASW5wdXQoJ3R1aURyb3Bkb3duU2VsZWN0aW9uUG9zaXRpb24nKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcG9zaXRpb246ICdzZWxlY3Rpb24nIHwgJ3RhZycgfCAnd29yZCcgPSAnc2VsZWN0aW9uJztcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHR1aURyb3Bkb3duU2VsZWN0aW9uKHZpc2libGU6IFR1aUJvb2xlYW5IYW5kbGVyPFJhbmdlPiB8IHN0cmluZykge1xuICAgICAgICBpZiAoIXR1aUlzU3RyaW5nKHZpc2libGUpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZXIkLm5leHQodmlzaWJsZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWFkb25seSB0eXBlID0gJ2Ryb3Bkb3duJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9SQU5HRSkgcHJpdmF0ZSByYW5nZTogUmFuZ2UsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRSZWY6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KFRVSV9TRUxFQ1RJT05fU1RSRUFNKSBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbiQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChWaWV3Q29udGFpbmVyUmVmKSBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd246IFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICkge1xuICAgICAgICBzdXBlcihzdWJzY3JpYmVyID0+IHRoaXMuc3RyZWFtJC5zdWJzY3JpYmUoc3Vic2NyaWJlcikpO1xuICAgIH1cblxuICAgIGdldENsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5wb3NpdGlvbikge1xuICAgICAgICAgICAgY2FzZSAndGFnJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtjb21tb25BbmNlc3RvckNvbnRhaW5lcn0gPSB0aGlzLnJhbmdlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0dWlJc0VsZW1lbnQoY29tbW9uQW5jZXN0b3JDb250YWluZXIpXG4gICAgICAgICAgICAgICAgICAgID8gY29tbW9uQW5jZXN0b3JDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgOiBjb21tb25BbmNlc3RvckNvbnRhaW5lci5wYXJlbnROb2RlO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQgJiYgdHVpSXNFbGVtZW50KGVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgID8gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICAgICAgICAgICAgICA6IEVNUFRZX0NMSUVOVF9SRUNUO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnd29yZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHR1aUdldFdvcmRSYW5nZSh0aGlzLnJhbmdlKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmFuZ2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZ2hvc3QpIHtcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5naG9zdCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJhbmdlKCk6IFJhbmdlIHtcbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5lbGVtZW50UmVmO1xuICAgICAgICBjb25zdCBhY3RpdmUgPSB0dWlHZXROYXRpdmVGb2N1c2VkKHRoaXMuZG9jdW1lbnRSZWYpO1xuICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSB0aGlzLmRvY3VtZW50UmVmLmdldFNlbGVjdGlvbigpO1xuXG4gICAgICAgIGlmIChhY3RpdmUgJiYgdHVpSXNUZXh0ZmllbGQoYWN0aXZlKSAmJiBuYXRpdmVFbGVtZW50LmNvbnRhaW5zKGFjdGl2ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZlcnlWZXJ5U2FkSW5wdXRGaXgoYWN0aXZlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzZWxlY3Rpb24/LnJhbmdlQ291bnQgPyBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKSA6IHRoaXMucmFuZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgTm9kZSBpcyBpbnNpZGUgZHJvcGRvd25cbiAgICAgKi9cbiAgICBwcml2YXRlIGJveENvbnRhaW5zKG5vZGU6IE5vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5kcm9wZG93bi5kcm9wZG93bkJveFJlZj8ubG9jYXRpb24ubmF0aXZlRWxlbWVudC5jb250YWlucyhub2RlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiBnaXZlbiByYW5nZSBpcyBhdCBsZWFzdCBwYXJ0aWFsbHkgaW5zaWRlIGRyb3Bkb3duXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbkRyb3Bkb3duKHJhbmdlOiBSYW5nZSk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB7c3RhcnRDb250YWluZXIsIGVuZENvbnRhaW5lcn0gPSByYW5nZTtcbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5lbGVtZW50UmVmO1xuICAgICAgICBjb25zdCBpbkRyb3Bkb3duID0gdGhpcy5ib3hDb250YWlucyhyYW5nZS5jb21tb25BbmNlc3RvckNvbnRhaW5lcik7XG4gICAgICAgIGNvbnN0IGhvc3RUb0Ryb3Bkb3duID1cbiAgICAgICAgICAgIHRoaXMuYm94Q29udGFpbnMoZW5kQ29udGFpbmVyKSAmJiBuYXRpdmVFbGVtZW50LmNvbnRhaW5zKHN0YXJ0Q29udGFpbmVyKTtcbiAgICAgICAgY29uc3QgZHJvcGRvd25Ub0hvc3QgPVxuICAgICAgICAgICAgdGhpcy5ib3hDb250YWlucyhzdGFydENvbnRhaW5lcikgJiYgbmF0aXZlRWxlbWVudC5jb250YWlucyhlbmRDb250YWluZXIpO1xuXG4gICAgICAgIHJldHVybiBpbkRyb3Bkb3duIHx8IGhvc3RUb0Ryb3Bkb3duIHx8IGRyb3Bkb3duVG9Ib3N0O1xuICAgIH1cblxuICAgIHByaXZhdGUgdmVyeVZlcnlTYWRJbnB1dEZpeChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCk6IFJhbmdlIHtcbiAgICAgICAgY29uc3Qge2dob3N0ID0gdGhpcy5pbml0R2hvc3QoZWxlbWVudCl9ID0gdGhpcztcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7c2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCwgdmFsdWV9ID0gZWxlbWVudDtcbiAgICAgICAgY29uc3QgcmFuZ2UgPSB0aGlzLmRvY3VtZW50UmVmLmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgZ2hvc3Quc3R5bGUudG9wID0gdHVpUHgodG9wIC0gaG9zdFJlY3QudG9wKTtcbiAgICAgICAgZ2hvc3Quc3R5bGUubGVmdCA9IHR1aVB4KGxlZnQgLSBob3N0UmVjdC5sZWZ0KTtcbiAgICAgICAgZ2hvc3Quc3R5bGUud2lkdGggPSB0dWlQeCh3aWR0aCk7XG4gICAgICAgIGdob3N0LnN0eWxlLmhlaWdodCA9IHR1aVB4KGhlaWdodCk7XG4gICAgICAgIGdob3N0LnRleHRDb250ZW50ID0gQ0hBUl9aRVJPX1dJRFRIX1NQQUNFICsgdmFsdWUgKyBDSEFSX05PX0JSRUFLX1NQQUNFO1xuXG4gICAgICAgIHJhbmdlLnNldFN0YXJ0KGdob3N0LmZpcnN0Q2hpbGQgYXMgTm9kZSwgc2VsZWN0aW9uU3RhcnQgfHwgMCk7XG4gICAgICAgIHJhbmdlLnNldEVuZChnaG9zdC5maXJzdENoaWxkIGFzIE5vZGUsIHNlbGVjdGlvbkVuZCB8fCAwKTtcblxuICAgICAgICByZXR1cm4gcmFuZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGFuIGludmlzaWJsZSBESVYgc3R5bGVkIGV4YWN0bHkgbGlrZSBpbnB1dC90ZXh0YXJlYSBlbGVtZW50IGluc2lkZSBkaXJlY3RpdmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGluaXRHaG9zdChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgZ2hvc3QgPSB0aGlzLmRvY3VtZW50UmVmLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLnZpZXdDb250YWluZXJSZWYuZWxlbWVudDtcbiAgICAgICAgY29uc3Qge2ZvbnQsIGxldHRlclNwYWNpbmcsIHRleHRUcmFuc2Zvcm0sIHBhZGRpbmd9ID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcblxuICAgICAgICBnaG9zdC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgICAgIGdob3N0LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnbm9uZSc7XG4gICAgICAgIGdob3N0LnN0eWxlLm9wYWNpdHkgPSAnMCc7XG4gICAgICAgIGdob3N0LnN0eWxlLndoaXRlU3BhY2UgPSAncHJlLXdyYXAnO1xuICAgICAgICBnaG9zdC5zdHlsZS5mb250ID0gZm9udDtcbiAgICAgICAgZ2hvc3Quc3R5bGUubGV0dGVyU3BhY2luZyA9IGxldHRlclNwYWNpbmc7XG4gICAgICAgIGdob3N0LnN0eWxlLnRleHRUcmFuc2Zvcm0gPSB0ZXh0VHJhbnNmb3JtO1xuICAgICAgICBnaG9zdC5zdHlsZS5wYWRkaW5nID0gcGFkZGluZztcblxuICAgICAgICBuYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGdob3N0KTtcbiAgICAgICAgdGhpcy5naG9zdCA9IGdob3N0O1xuXG4gICAgICAgIHJldHVybiBnaG9zdDtcbiAgICB9XG59XG4iXX0=
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tc2VsZWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi1zZWxlY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxnQkFBZ0IsR0FDbkIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixZQUFZLEVBQ1osV0FBVyxFQUNYLGNBQWMsRUFDZCxhQUFhLEVBQ2IsS0FBSyxHQUNSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLFNBQVMsR0FFWixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUNoRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFTMUQsTUFBTSxPQUFPLDZCQUNULFNBQVEsU0FBUztJQTJDakIsWUFDK0IsS0FBWSxFQUNKLEdBQWEsRUFDRCxVQUErQixFQUN6QyxFQUEyQixFQUNyQixHQUFxQixFQUNqQixRQUE4QjtRQUU3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QjtrQkFQekMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUNBQXFDO29CQUMvQyxTQUFTLEVBQUU7d0JBQ1AsV0FBVywrQkFBK0I7d0JBQzFDLGlCQUFpQiwrQkFBK0I7cUJBQ25EO2lCQUNKOzBEQThDeUMsS0FBSzswQkFBdEMsTUFBTTsyQkFBQyxTQUFTOzhCQUN1QixRQUFROzBCQUEvQyxNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsb0JBQW9COzswQkFDM0IsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUN2QixNQUFNOzJCQUFDLG9CQUFvQjs0Q0FqQmhDLFFBQVE7c0JBRlAsS0FBSzt1QkFBQyw4QkFBOEI7Z0JBS2pDLG9CQUFvQjtzQkFEdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFMV0FZU19UUlVFX0hBTkRMRVIsXG4gICAgQ0hBUl9OT19CUkVBS19TUEFDRSxcbiAgICBDSEFSX1pFUk9fV0lEVEhfU1BBQ0UsXG4gICAgRU1QVFlfQ0xJRU5UX1JFQ1QsXG4gICAgVFVJX1JBTkdFLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIHR1aUdldE5hdGl2ZUZvY3VzZWQsXG4gICAgdHVpSXNFbGVtZW50LFxuICAgIHR1aUlzU3RyaW5nLFxuICAgIHR1aUlzVGV4dGZpZWxkLFxuICAgIHR1aUlzVGV4dE5vZGUsXG4gICAgdHVpUHgsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICB0dWlBc0RyaXZlcixcbiAgICB0dWlBc1JlY3RBY2Nlc3NvcixcbiAgICBUdWlEcml2ZXIsXG4gICAgVHVpUmVjdEFjY2Vzc29yLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQge1RVSV9TRUxFQ1RJT05fU1RSRUFNfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlHZXRXb3JkUmFuZ2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aURyb3Bkb3duRGlyZWN0aXZlfSBmcm9tICcuL2Ryb3Bkb3duLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3R1aURyb3Bkb3duXVt0dWlEcm9wZG93blNlbGVjdGlvbl0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0RyaXZlcihUdWlEcm9wZG93blNlbGVjdGlvbkRpcmVjdGl2ZSksXG4gICAgICAgIHR1aUFzUmVjdEFjY2Vzc29yKFR1aURyb3Bkb3duU2VsZWN0aW9uRGlyZWN0aXZlKSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93blNlbGVjdGlvbkRpcmVjdGl2ZVxuICAgIGV4dGVuZHMgVHVpRHJpdmVyXG4gICAgaW1wbGVtZW50cyBUdWlSZWN0QWNjZXNzb3IsIE9uRGVzdHJveVxue1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGFuZGxlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFR1aUJvb2xlYW5IYW5kbGVyPFJhbmdlPj4oXG4gICAgICAgIEFMV0FZU19UUlVFX0hBTkRMRVIsXG4gICAgKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RyZWFtJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmhhbmRsZXIkLFxuICAgICAgICB0aGlzLnNlbGVjdGlvbiQucGlwZShcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0aGlzLmdldFJhbmdlKCkpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgICBtYXAoKFtoYW5kbGVyLCByYW5nZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lZCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jb250YWlucyhcbiAgICAgICAgICAgICAgICByYW5nZS5jb21tb25BbmNlc3RvckNvbnRhaW5lcixcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHRoaXMucmFuZ2UgPVxuICAgICAgICAgICAgICAgIGNvbnRhaW5lZCAmJiB0dWlJc1RleHROb2RlKHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKVxuICAgICAgICAgICAgICAgICAgICA/IHJhbmdlXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy5yYW5nZTtcblxuICAgICAgICAgICAgcmV0dXJuIChjb250YWluZWQgJiYgaGFuZGxlcih0aGlzLnJhbmdlKSkgfHwgdGhpcy5pbkRyb3Bkb3duKHJhbmdlKTtcbiAgICAgICAgfSksXG4gICAgKTtcblxuICAgIHByaXZhdGUgZ2hvc3Q/OiBIVE1MRWxlbWVudDtcblxuICAgIEBJbnB1dCgndHVpRHJvcGRvd25TZWxlY3Rpb25Qb3NpdGlvbicpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwb3NpdGlvbjogJ3NlbGVjdGlvbicgfCAndGFnJyB8ICd3b3JkJyA9ICdzZWxlY3Rpb24nO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgdHVpRHJvcGRvd25TZWxlY3Rpb24odmlzaWJsZTogVHVpQm9vbGVhbkhhbmRsZXI8UmFuZ2U+IHwgc3RyaW5nKSB7XG4gICAgICAgIGlmICghdHVpSXNTdHJpbmcodmlzaWJsZSkpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlciQubmV4dCh2aXNpYmxlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlYWRvbmx5IHR5cGUgPSAnZHJvcGRvd24nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX1JBTkdFKSBwcml2YXRlIHJhbmdlOiBSYW5nZSxcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KFRVSV9TRUxFQ1RJT05fU1RSRUFNKSBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbiQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVmlld0NvbnRhaW5lclJlZikgcHJpdmF0ZSByZWFkb25seSB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd246IFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICkge1xuICAgICAgICBzdXBlcihzdWJzY3JpYmVyID0+IHRoaXMuc3RyZWFtJC5zdWJzY3JpYmUoc3Vic2NyaWJlcikpO1xuICAgIH1cblxuICAgIGdldENsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5wb3NpdGlvbikge1xuICAgICAgICAgICAgY2FzZSAndGFnJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtjb21tb25BbmNlc3RvckNvbnRhaW5lcn0gPSB0aGlzLnJhbmdlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0dWlJc0VsZW1lbnQoY29tbW9uQW5jZXN0b3JDb250YWluZXIpXG4gICAgICAgICAgICAgICAgICAgID8gY29tbW9uQW5jZXN0b3JDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgOiBjb21tb25BbmNlc3RvckNvbnRhaW5lci5wYXJlbnROb2RlO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQgJiYgdHVpSXNFbGVtZW50KGVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgID8gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICAgICAgICAgICAgICA6IEVNUFRZX0NMSUVOVF9SRUNUO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnd29yZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHR1aUdldFdvcmRSYW5nZSh0aGlzLnJhbmdlKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmFuZ2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZ2hvc3QpIHtcbiAgICAgICAgICAgIHRoaXMudmNyLmVsZW1lbnQubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmdob3N0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UmFuZ2UoKTogUmFuZ2Uge1xuICAgICAgICBjb25zdCBhY3RpdmUgPSB0dWlHZXROYXRpdmVGb2N1c2VkKHRoaXMuZG9jKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gdGhpcy5kb2MuZ2V0U2VsZWN0aW9uKCk7XG5cbiAgICAgICAgaWYgKGFjdGl2ZSAmJiB0dWlJc1RleHRmaWVsZChhY3RpdmUpICYmIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jb250YWlucyhhY3RpdmUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52ZXJ5VmVyeVNhZElucHV0Rml4KGFjdGl2ZSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VsZWN0aW9uPy5yYW5nZUNvdW50ID8gc2VsZWN0aW9uLmdldFJhbmdlQXQoMCkgOiB0aGlzLnJhbmdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIE5vZGUgaXMgaW5zaWRlIGRyb3Bkb3duXG4gICAgICovXG4gICAgcHJpdmF0ZSBib3hDb250YWlucyhub2RlOiBOb2RlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZHJvcGRvd24uZHJvcGRvd25Cb3hSZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMobm9kZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgZ2l2ZW4gcmFuZ2UgaXMgYXQgbGVhc3QgcGFydGlhbGx5IGluc2lkZSBkcm9wZG93blxuICAgICAqL1xuICAgIHByaXZhdGUgaW5Ecm9wZG93bihyYW5nZTogUmFuZ2UpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3N0YXJ0Q29udGFpbmVyLCBlbmRDb250YWluZXJ9ID0gcmFuZ2U7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZWw7XG4gICAgICAgIGNvbnN0IGluRHJvcGRvd24gPSB0aGlzLmJveENvbnRhaW5zKHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKTtcbiAgICAgICAgY29uc3QgaG9zdFRvRHJvcGRvd24gPVxuICAgICAgICAgICAgdGhpcy5ib3hDb250YWlucyhlbmRDb250YWluZXIpICYmIG5hdGl2ZUVsZW1lbnQuY29udGFpbnMoc3RhcnRDb250YWluZXIpO1xuICAgICAgICBjb25zdCBkcm9wZG93blRvSG9zdCA9XG4gICAgICAgICAgICB0aGlzLmJveENvbnRhaW5zKHN0YXJ0Q29udGFpbmVyKSAmJiBuYXRpdmVFbGVtZW50LmNvbnRhaW5zKGVuZENvbnRhaW5lcik7XG5cbiAgICAgICAgcmV0dXJuIGluRHJvcGRvd24gfHwgaG9zdFRvRHJvcGRvd24gfHwgZHJvcGRvd25Ub0hvc3Q7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2ZXJ5VmVyeVNhZElucHV0Rml4KGVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50KTogUmFuZ2Uge1xuICAgICAgICBjb25zdCB7Z2hvc3QgPSB0aGlzLmluaXRHaG9zdChlbGVtZW50KX0gPSB0aGlzO1xuICAgICAgICBjb25zdCB7dG9wLCBsZWZ0LCB3aWR0aCwgaGVpZ2h0fSA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHtzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kLCB2YWx1ZX0gPSBlbGVtZW50O1xuICAgICAgICBjb25zdCByYW5nZSA9IHRoaXMuZG9jLmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGdob3N0LnN0eWxlLnRvcCA9IHR1aVB4KHRvcCAtIGhvc3RSZWN0LnRvcCk7XG4gICAgICAgIGdob3N0LnN0eWxlLmxlZnQgPSB0dWlQeChsZWZ0IC0gaG9zdFJlY3QubGVmdCk7XG4gICAgICAgIGdob3N0LnN0eWxlLndpZHRoID0gdHVpUHgod2lkdGgpO1xuICAgICAgICBnaG9zdC5zdHlsZS5oZWlnaHQgPSB0dWlQeChoZWlnaHQpO1xuICAgICAgICBnaG9zdC50ZXh0Q29udGVudCA9IENIQVJfWkVST19XSURUSF9TUEFDRSArIHZhbHVlICsgQ0hBUl9OT19CUkVBS19TUEFDRTtcblxuICAgICAgICByYW5nZS5zZXRTdGFydChnaG9zdC5maXJzdENoaWxkIGFzIE5vZGUsIHNlbGVjdGlvblN0YXJ0IHx8IDApO1xuICAgICAgICByYW5nZS5zZXRFbmQoZ2hvc3QuZmlyc3RDaGlsZCBhcyBOb2RlLCBzZWxlY3Rpb25FbmQgfHwgMCk7XG5cbiAgICAgICAgcmV0dXJuIHJhbmdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhbiBpbnZpc2libGUgRElWIHN0eWxlZCBleGFjdGx5IGxpa2UgaW5wdXQvdGV4dGFyZWEgZWxlbWVudCBpbnNpZGUgZGlyZWN0aXZlXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0R2hvc3QoZWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IGdob3N0ID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNvbnN0IHtmb250LCBsZXR0ZXJTcGFjaW5nLCB0ZXh0VHJhbnNmb3JtLCBwYWRkaW5nfSA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG5cbiAgICAgICAgZ2hvc3Quc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgICAgICBnaG9zdC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgICAgICBnaG9zdC5zdHlsZS5vcGFjaXR5ID0gJzAnO1xuICAgICAgICBnaG9zdC5zdHlsZS53aGl0ZVNwYWNlID0gJ3ByZS13cmFwJztcbiAgICAgICAgZ2hvc3Quc3R5bGUuZm9udCA9IGZvbnQ7XG4gICAgICAgIGdob3N0LnN0eWxlLmxldHRlclNwYWNpbmcgPSBsZXR0ZXJTcGFjaW5nO1xuICAgICAgICBnaG9zdC5zdHlsZS50ZXh0VHJhbnNmb3JtID0gdGV4dFRyYW5zZm9ybTtcbiAgICAgICAgZ2hvc3Quc3R5bGUucGFkZGluZyA9IHBhZGRpbmc7XG5cbiAgICAgICAgdGhpcy52Y3IuZWxlbWVudC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGdob3N0KTtcbiAgICAgICAgdGhpcy5naG9zdCA9IGdob3N0O1xuXG4gICAgICAgIHJldHVybiBnaG9zdDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -27,12 +27,12 @@ import * as i9 from "@taiga-ui/core/services";
|
|
|
27
27
|
* using default style of white rounded box with a shadow
|
|
28
28
|
*/
|
|
29
29
|
export class TuiDropdownComponent {
|
|
30
|
-
constructor(position$, destroy$, directive,
|
|
30
|
+
constructor(position$, destroy$, directive, el, host, accessor, win, animationOptions, options, hoverDirective, visualViewportService) {
|
|
31
31
|
this.directive = directive;
|
|
32
|
-
this.
|
|
32
|
+
this.el = el;
|
|
33
33
|
this.host = host;
|
|
34
34
|
this.accessor = accessor;
|
|
35
|
-
this.
|
|
35
|
+
this.win = win;
|
|
36
36
|
this.animationOptions = animationOptions;
|
|
37
37
|
this.options = options;
|
|
38
38
|
this.hoverDirective = hoverDirective;
|
|
@@ -61,10 +61,10 @@ export class TuiDropdownComponent {
|
|
|
61
61
|
this.moveFocusOutside(false);
|
|
62
62
|
}
|
|
63
63
|
update(top, left) {
|
|
64
|
-
const { style } = this.
|
|
65
|
-
const { right } = this.
|
|
64
|
+
const { style } = this.el.nativeElement;
|
|
65
|
+
const { right } = this.el.nativeElement.getBoundingClientRect();
|
|
66
66
|
const { maxHeight, offset } = this.options;
|
|
67
|
-
const { innerHeight } = this.
|
|
67
|
+
const { innerHeight } = this.win;
|
|
68
68
|
const { clientRect } = this.host;
|
|
69
69
|
const { position } = this.directive;
|
|
70
70
|
const rect = this.accessor.getClientRect();
|
|
@@ -85,7 +85,7 @@ export class TuiDropdownComponent {
|
|
|
85
85
|
this.updateWidth();
|
|
86
86
|
}
|
|
87
87
|
updateWidth() {
|
|
88
|
-
const { style } = this.
|
|
88
|
+
const { style } = this.el.nativeElement;
|
|
89
89
|
const rect = this.accessor.getClientRect();
|
|
90
90
|
const { limitWidth } = this.options;
|
|
91
91
|
switch (limitWidth) {
|
|
@@ -100,7 +100,7 @@ export class TuiDropdownComponent {
|
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
102
|
moveFocusOutside(previous) {
|
|
103
|
-
const { nativeElement } = this.directive.
|
|
103
|
+
const { nativeElement } = this.directive.el;
|
|
104
104
|
const { ownerDocument } = nativeElement;
|
|
105
105
|
const root = ownerDocument ? ownerDocument.body : nativeElement;
|
|
106
106
|
let focusable = tuiGetClosestFocusable({ initial: nativeElement, root, previous });
|
|
@@ -175,4 +175,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
175
175
|
type: HostBinding,
|
|
176
176
|
args: ['@tuiDropdownAnimation']
|
|
177
177
|
}] } });
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUVOLFFBQVEsRUFDUixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHNCQUFzQixFQUN0QixlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFFLHdCQUF3QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHNUQsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5Qyw0Q0FBNEM7QUFDNUMsMkNBQTJDO0FBQzNDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxvQkFBb0IsRUFBcUIsTUFBTSw4QkFBOEIsQ0FBQzs7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O1FBQ2xDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxvQkFBb0IsQ0FBQztLQUN2RCwwQkNuREwsaXBCQXlCQSw2ekNEMkJnQixDQUFDLG9CQUFvQixDQUFDOzRGQUt6QixvQkFBb0I7a0JBZmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNwQyxTQUFTLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLHNCQUFzQixDQUFDLFVBQVUsQ0FBQzt3QkFDbEMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLG9CQUFvQixDQUFDO3FCQUN2RDtvQkFDRCxVQUFVLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDbEMsb0JBQW9CO29CQUNwQixxRkFBcUY7b0JBQ3JGLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO2lCQUNuRDs7MEJBU1EsTUFBTTsyQkFBQyxrQkFBa0I7OzBCQUN6QixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsb0JBQW9COzswQkFDM0IsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyw4QkFBOEI7OzBCQUVyQyxNQUFNOzJCQUFDLGVBQWU7OEJBQ3FCLE1BQU07MEJBQWpELE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUU1QixNQUFNOzJCQUFDLG9CQUFvQjs7MEJBQzNCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMseUJBQXlCOzswQkFFaEMsTUFBTTsyQkFBQyx3QkFBd0I7NENBcEIzQixpQkFBaUI7c0JBRHpCLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aUdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgdHVpUHgsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICB0dWlQb3NpdGlvbkFjY2Vzc29yRm9yLFxuICAgIFR1aVJlY3RBY2Nlc3NvcixcbiAgICB0dWlSZWN0QWNjZXNzb3JGb3IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpRHJvcGRvd25BbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkFuaW1hdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuaW1wb3J0IHtUdWlQb3NpdGlvblNlcnZpY2UsIFR1aVZpc3VhbFZpZXdwb3J0U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBUT0RPOiBmaW5kIHRoZSBiZXN0IHdheSBmb3IgcHJldmVudCBjeWNsZVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlfSBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1RVSV9EUk9QRE9XTl9PUFRJT05TLCBUdWlEcm9wZG93bk9wdGlvbnN9IGZyb20gJy4vZHJvcGRvd24tb3B0aW9ucy5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjpcbiAqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gc2hvdyB0ZW1wbGF0ZSBpbiBhIHBvcnRhbFxuICogdXNpbmcgZGVmYXVsdCBzdHlsZSBvZiB3aGl0ZSByb3VuZGVkIGJveCB3aXRoIGEgc2hhZG93XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24udGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24uc3R5bGUubGVzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgVHVpUG9zaXRpb25TZXJ2aWNlLFxuICAgICAgICB0dWlQb3NpdGlvbkFjY2Vzc29yRm9yKCdkcm9wZG93bicpLFxuICAgICAgICB0dWlSZWN0QWNjZXNzb3JGb3IoJ2Ryb3Bkb3duJywgVHVpRHJvcGRvd25EaXJlY3RpdmUpLFxuICAgIF0sXG4gICAgYW5pbWF0aW9uczogW3R1aURyb3Bkb3duQW5pbWF0aW9uXSxcbiAgICAvLyBAYmFkIFRPRE86IE9uUHVzaFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvcHJlZmVyLW9uLXB1c2gtY29tcG9uZW50LWNoYW5nZS1kZXRlY3Rpb25cbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlEcm9wZG93bkFuaW1hdGlvbicpXG4gICAgcmVhZG9ubHkgZHJvcGRvd25BbmltYXRpb24gPSB7XG4gICAgICAgIHZhbHVlOiBUdWlEcm9wZG93bkFuaW1hdGlvbi5GYWRlSW5Ub3AsXG4gICAgICAgIC4uLnRoaXMuYW5pbWF0aW9uT3B0aW9ucyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpUG9zaXRpb25TZXJ2aWNlKSBwb3NpdGlvbiQ6IE9ic2VydmFibGU8VHVpUG9pbnQ+LFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KFR1aURyb3Bkb3duRGlyZWN0aXZlKSByZWFkb25seSBkaXJlY3RpdmU6IFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50KVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhvc3Q6IEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChUdWlSZWN0QWNjZXNzb3IpIHByaXZhdGUgcmVhZG9ubHkgYWNjZXNzb3I6IFR1aVJlY3RBY2Nlc3NvcixcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFuaW1hdGlvbk9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoVFVJX0RST1BET1dOX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpRHJvcGRvd25PcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aURyb3Bkb3duSG92ZXJEaXJlY3RpdmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaG92ZXJEaXJlY3RpdmU6IFR1aURyb3Bkb3duSG92ZXJEaXJlY3RpdmUgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFR1aVZpc3VhbFZpZXdwb3J0U2VydmljZSkgdmlzdWFsVmlld3BvcnRTZXJ2aWNlOiBUdWlWaXN1YWxWaWV3cG9ydFNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHBvc2l0aW9uJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHBvaW50ID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLnBvc2l0aW9uID09PSAnZml4ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHZpc3VhbFZpZXdwb3J0U2VydmljZS5jb3JyZWN0KHBvaW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBwb2ludCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbdG9wLCBsZWZ0XSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKHRvcCwgbGVmdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVdpZHRoKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ib3ZlcmVkQ2hhbmdlKGZhbHNlKTtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWRDaGFuZ2UoaG92ZXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ob3ZlckRpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5ob3ZlckRpcmVjdGl2ZS50b2dnbGUoaG92ZXJlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblRvcEZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgb25Cb3R0b21Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3ZlRm9jdXNPdXRzaWRlKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZSh0b3A6IG51bWJlciwgbGVmdDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3JpZ2h0fSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7bWF4SGVpZ2h0LCBvZmZzZXR9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICBjb25zdCB7aW5uZXJIZWlnaHR9ID0gdGhpcy53aW5kb3dSZWY7XG4gICAgICAgIGNvbnN0IHtjbGllbnRSZWN0fSA9IHRoaXMuaG9zdDtcbiAgICAgICAgY29uc3Qge3Bvc2l0aW9ufSA9IHRoaXMuZGlyZWN0aXZlO1xuICAgICAgICBjb25zdCByZWN0ID0gdGhpcy5hY2Nlc3Nvci5nZXRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IG9mZnNldFggPSBwb3NpdGlvbiA9PT0gJ2ZpeGVkJyA/IDAgOiAtY2xpZW50UmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCBvZmZzZXRZID0gcG9zaXRpb24gPT09ICdmaXhlZCcgPyAwIDogLWNsaWVudFJlY3QudG9wO1xuXG4gICAgICAgIHRvcCArPSBvZmZzZXRZO1xuICAgICAgICBsZWZ0ICs9IG9mZnNldFg7XG5cbiAgICAgICAgY29uc3QgaXNJbnRlcnNlY3RpbmcgPVxuICAgICAgICAgICAgbGVmdCA8IHJlY3QucmlnaHQgJiYgcmlnaHQgPiByZWN0LmxlZnQgJiYgdG9wIDwgb2Zmc2V0WSArIDIgKiBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZSA9IGlzSW50ZXJzZWN0aW5nXG4gICAgICAgICAgICA/IHJlY3QudG9wIC0gMiAqIG9mZnNldFxuICAgICAgICAgICAgOiBvZmZzZXRZICsgaW5uZXJIZWlnaHQgLSB0b3AgLSBvZmZzZXQ7XG5cbiAgICAgICAgc3R5bGUucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICAgICAgc3R5bGUudG9wID0gdHVpUHgoTWF0aC5tYXgodG9wLCBvZmZzZXRZICsgb2Zmc2V0KSk7XG4gICAgICAgIHN0eWxlLmxlZnQgPSB0dWlQeChsZWZ0KTtcbiAgICAgICAgc3R5bGUubWF4SGVpZ2h0ID0gdHVpUHgoTWF0aC5taW4obWF4SGVpZ2h0LCBhdmFpbGFibGUpKTtcbiAgICAgICAgc3R5bGUud2lkdGggPSAnJztcbiAgICAgICAgc3R5bGUubWluV2lkdGggPSAnJztcblxuICAgICAgICB0aGlzLnVwZGF0ZVdpZHRoKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVXaWR0aCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCByZWN0ID0gdGhpcy5hY2Nlc3Nvci5nZXRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHtsaW1pdFdpZHRofSA9IHRoaXMub3B0aW9ucztcblxuICAgICAgICBzd2l0Y2ggKGxpbWl0V2lkdGgpIHtcbiAgICAgICAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgICAgICAgICAgc3R5bGUubWluV2lkdGggPSB0dWlQeChyZWN0LndpZHRoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2ZpeGVkJzpcbiAgICAgICAgICAgICAgICBzdHlsZS53aWR0aCA9IHR1aVB4KHJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnYXV0byc6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdmVGb2N1c091dHNpZGUocHJldmlvdXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5kaXJlY3RpdmUuZWxlbWVudFJlZjtcbiAgICAgICAgY29uc3Qge293bmVyRG9jdW1lbnR9ID0gbmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qgcm9vdCA9IG93bmVyRG9jdW1lbnQgPyBvd25lckRvY3VtZW50LmJvZHkgOiBuYXRpdmVFbGVtZW50O1xuICAgICAgICBsZXQgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogbmF0aXZlRWxlbWVudCwgcm9vdCwgcHJldmlvdXN9KTtcblxuICAgICAgICB3aGlsZSAoZm9jdXNhYmxlICE9PSBudWxsICYmIG5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZm9jdXNhYmxlKSkge1xuICAgICAgICAgICAgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogZm9jdXNhYmxlLCByb290LCBwcmV2aW91c30pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9jdXNhYmxlPy5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAjYWN0aXZlWm9uZT1cInR1aUFjdGl2ZVpvbmVcIlxuICAgIHR1aUFjdGl2ZVpvbmVcbiAgICB0dWlPdmVyc2Nyb2xsPVwiYWxsXCJcbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgW3R1aU1vZGVdPVwibnVsbFwiXG4gICAgKHR1aUhvdmVyZWRDaGFuZ2UpPVwib25Ib3ZlcmVkQ2hhbmdlKCRldmVudClcIlxuPlxuICAgIDx0dWktc2Nyb2xsYmFyIGNsYXNzPVwidC1zY3JvbGxcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvblRvcEZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJkaXJlY3RpdmUuY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBhY3RpdmVab25lfVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtcHJpbWl0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvbkJvdHRvbUZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgPC90dWktc2Nyb2xsYmFyPlxuPC9kaXY+XG4iXX0=
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bi9kcm9wZG93bi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUVOLFFBQVEsRUFDUixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHNCQUFzQixFQUN0QixlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFFLHdCQUF3QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHNUQsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5Qyw0Q0FBNEM7QUFDNUMsMkNBQTJDO0FBQzNDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxvQkFBb0IsRUFBcUIsTUFBTSw4QkFBOEIsQ0FBQzs7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UUFDbEMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLG9CQUFvQixDQUFDO0tBQ3ZELDBCQ25ETCxpcEJBeUJBLDZ6Q0QyQmdCLENBQUMsb0JBQW9CLENBQUM7NEZBS3pCLG9CQUFvQjtrQkFmaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsV0FBVyxFQUFFLDBCQUEwQjtvQkFDdkMsU0FBUyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3BDLFNBQVMsRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsc0JBQXNCLENBQUMsVUFBVSxDQUFDO3dCQUNsQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsb0JBQW9CLENBQUM7cUJBQ3ZEO29CQUNELFVBQVUsRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNsQyxvQkFBb0I7b0JBQ3BCLHFGQUFxRjtvQkFDckYsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE9BQU87aUJBQ25EOzswQkFTUSxNQUFNOzJCQUFDLGtCQUFrQjs7MEJBQ3pCLElBQUk7OzBCQUFJLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDaEMsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLDhCQUE4Qjs7MEJBRXJDLE1BQU07MkJBQUMsZUFBZTs4QkFDZSxNQUFNOzBCQUEzQyxNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMscUJBQXFCOzswQkFFNUIsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixRQUFROzswQkFDUixNQUFNOzJCQUFDLHlCQUF5Qjs7MEJBRWhDLE1BQU07MkJBQUMsd0JBQXdCOzRDQXBCM0IsaUJBQWlCO3NCQUR6QixXQUFXO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLFxuICAgIHR1aVB4LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgdHVpUG9zaXRpb25BY2Nlc3NvckZvcixcbiAgICBUdWlSZWN0QWNjZXNzb3IsXG4gICAgdHVpUmVjdEFjY2Vzc29yRm9yLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQge3R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpRHJvcGRvd25BbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7VHVpUG9zaXRpb25TZXJ2aWNlLCBUdWlWaXN1YWxWaWV3cG9ydFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gVE9ETzogZmluZCB0aGUgYmVzdCB3YXkgZm9yIHByZXZlbnQgY3ljbGVcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tY3ljbGVcbmltcG9ydCB7VHVpRHJvcGRvd25EaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24uZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZX0gZnJvbSAnLi9kcm9wZG93bi1ob3Zlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfRFJPUERPV05fT1BUSU9OUywgVHVpRHJvcGRvd25PcHRpb25zfSBmcm9tICcuL2Ryb3Bkb3duLW9wdGlvbnMuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb246XG4gKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIHNob3cgdGVtcGxhdGUgaW4gYSBwb3J0YWxcbiAqIHVzaW5nIGRlZmF1bHQgc3R5bGUgb2Ygd2hpdGUgcm91bmRlZCBib3ggd2l0aCBhIHNoYWRvd1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLnN0eWxlLmxlc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIFR1aVBvc2l0aW9uU2VydmljZSxcbiAgICAgICAgdHVpUG9zaXRpb25BY2Nlc3NvckZvcignZHJvcGRvd24nKSxcbiAgICAgICAgdHVpUmVjdEFjY2Vzc29yRm9yKCdkcm9wZG93bicsIFR1aURyb3Bkb3duRGlyZWN0aXZlKSxcbiAgICBdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlEcm9wZG93bkFuaW1hdGlvbl0sXG4gICAgLy8gQGJhZCBUT0RPOiBPblB1c2hcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3ByZWZlci1vbi1wdXNoLWNvbXBvbmVudC1jaGFuZ2UtZGV0ZWN0aW9uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRHJvcGRvd25BbmltYXRpb24nKVxuICAgIHJlYWRvbmx5IGRyb3Bkb3duQW5pbWF0aW9uID0ge1xuICAgICAgICB2YWx1ZTogVHVpRHJvcGRvd25BbmltYXRpb24uRmFkZUluVG9wLFxuICAgICAgICAuLi50aGlzLmFuaW1hdGlvbk9wdGlvbnMsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aVBvc2l0aW9uU2VydmljZSkgcG9zaXRpb24kOiBPYnNlcnZhYmxlPFR1aVBvaW50PixcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSkgcmVhZG9ubHkgZGlyZWN0aXZlOiBUdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaG9zdDogQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgICAgICBASW5qZWN0KFR1aVJlY3RBY2Nlc3NvcikgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3NvcjogVHVpUmVjdEFjY2Vzc29yLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW46IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uT3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlEcm9wZG93bk9wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBob3ZlckRpcmVjdGl2ZTogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVHVpVmlzdWFsVmlld3BvcnRTZXJ2aWNlKSB2aXN1YWxWaWV3cG9ydFNlcnZpY2U6IFR1aVZpc3VhbFZpZXdwb3J0U2VydmljZSxcbiAgICApIHtcbiAgICAgICAgcG9zaXRpb24kXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocG9pbnQgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmUucG9zaXRpb24gPT09ICdmaXhlZCdcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdmlzdWFsVmlld3BvcnRTZXJ2aWNlLmNvcnJlY3QocG9pbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHBvaW50LFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFt0b3AsIGxlZnRdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGUodG9wLCBsZWZ0KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudXBkYXRlV2lkdGgoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkhvdmVyZWRDaGFuZ2UoZmFsc2UpO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZENoYW5nZShob3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhvdmVyRGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhvdmVyRGlyZWN0aXZlLnRvZ2dsZShob3ZlcmVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVG9wRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW92ZUZvY3VzT3V0c2lkZSh0cnVlKTtcbiAgICB9XG5cbiAgICBvbkJvdHRvbUZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUoZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlKHRvcDogbnVtYmVyLCBsZWZ0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3JpZ2h0fSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge21heEhlaWdodCwgb2Zmc2V0fSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgY29uc3Qge2lubmVySGVpZ2h0fSA9IHRoaXMud2luO1xuICAgICAgICBjb25zdCB7Y2xpZW50UmVjdH0gPSB0aGlzLmhvc3Q7XG4gICAgICAgIGNvbnN0IHtwb3NpdGlvbn0gPSB0aGlzLmRpcmVjdGl2ZTtcbiAgICAgICAgY29uc3QgcmVjdCA9IHRoaXMuYWNjZXNzb3IuZ2V0Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBvZmZzZXRYID0gcG9zaXRpb24gPT09ICdmaXhlZCcgPyAwIDogLWNsaWVudFJlY3QubGVmdDtcbiAgICAgICAgY29uc3Qgb2Zmc2V0WSA9IHBvc2l0aW9uID09PSAnZml4ZWQnID8gMCA6IC1jbGllbnRSZWN0LnRvcDtcblxuICAgICAgICB0b3AgKz0gb2Zmc2V0WTtcbiAgICAgICAgbGVmdCArPSBvZmZzZXRYO1xuXG4gICAgICAgIGNvbnN0IGlzSW50ZXJzZWN0aW5nID1cbiAgICAgICAgICAgIGxlZnQgPCByZWN0LnJpZ2h0ICYmIHJpZ2h0ID4gcmVjdC5sZWZ0ICYmIHRvcCA8IG9mZnNldFkgKyAyICogb2Zmc2V0O1xuICAgICAgICBjb25zdCBhdmFpbGFibGUgPSBpc0ludGVyc2VjdGluZ1xuICAgICAgICAgICAgPyByZWN0LnRvcCAtIDIgKiBvZmZzZXRcbiAgICAgICAgICAgIDogb2Zmc2V0WSArIGlubmVySGVpZ2h0IC0gdG9wIC0gb2Zmc2V0O1xuXG4gICAgICAgIHN0eWxlLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgICAgIHN0eWxlLnRvcCA9IHR1aVB4KE1hdGgubWF4KHRvcCwgb2Zmc2V0WSArIG9mZnNldCkpO1xuICAgICAgICBzdHlsZS5sZWZ0ID0gdHVpUHgobGVmdCk7XG4gICAgICAgIHN0eWxlLm1heEhlaWdodCA9IHR1aVB4KE1hdGgubWluKG1heEhlaWdodCwgYXZhaWxhYmxlKSk7XG4gICAgICAgIHN0eWxlLndpZHRoID0gJyc7XG4gICAgICAgIHN0eWxlLm1pbldpZHRoID0gJyc7XG5cbiAgICAgICAgdGhpcy51cGRhdGVXaWR0aCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlV2lkdGgoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHJlY3QgPSB0aGlzLmFjY2Vzc29yLmdldENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge2xpbWl0V2lkdGh9ID0gdGhpcy5vcHRpb25zO1xuXG4gICAgICAgIHN3aXRjaCAobGltaXRXaWR0aCkge1xuICAgICAgICAgICAgY2FzZSAnbWluJzpcbiAgICAgICAgICAgICAgICBzdHlsZS5taW5XaWR0aCA9IHR1aVB4KHJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnZml4ZWQnOlxuICAgICAgICAgICAgICAgIHN0eWxlLndpZHRoID0gdHVpUHgocmVjdC53aWR0aCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdhdXRvJzpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbW92ZUZvY3VzT3V0c2lkZShwcmV2aW91czogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLmRpcmVjdGl2ZS5lbDtcbiAgICAgICAgY29uc3Qge293bmVyRG9jdW1lbnR9ID0gbmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qgcm9vdCA9IG93bmVyRG9jdW1lbnQgPyBvd25lckRvY3VtZW50LmJvZHkgOiBuYXRpdmVFbGVtZW50O1xuICAgICAgICBsZXQgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogbmF0aXZlRWxlbWVudCwgcm9vdCwgcHJldmlvdXN9KTtcblxuICAgICAgICB3aGlsZSAoZm9jdXNhYmxlICE9PSBudWxsICYmIG5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZm9jdXNhYmxlKSkge1xuICAgICAgICAgICAgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSh7aW5pdGlhbDogZm9jdXNhYmxlLCByb290LCBwcmV2aW91c30pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9jdXNhYmxlPy5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAjYWN0aXZlWm9uZT1cInR1aUFjdGl2ZVpvbmVcIlxuICAgIHR1aUFjdGl2ZVpvbmVcbiAgICB0dWlPdmVyc2Nyb2xsPVwiYWxsXCJcbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgW3R1aU1vZGVdPVwibnVsbFwiXG4gICAgKHR1aUhvdmVyZWRDaGFuZ2UpPVwib25Ib3ZlcmVkQ2hhbmdlKCRldmVudClcIlxuPlxuICAgIDx0dWktc2Nyb2xsYmFyIGNsYXNzPVwidC1zY3JvbGxcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvblRvcEZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJkaXJlY3RpdmUuY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBhY3RpdmVab25lfVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtcHJpbWl0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvbkJvdHRvbUZvY3VzKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgPC90dWktc2Nyb2xsYmFyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -10,8 +10,8 @@ import { TUI_DROPDOWN_COMPONENT } from './dropdown.providers';
|
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
import * as i1 from "@taiga-ui/cdk";
|
|
12
12
|
export class TuiDropdownDirective {
|
|
13
|
-
constructor(
|
|
14
|
-
this.
|
|
13
|
+
constructor(el, hapica, injector, dropdownService) {
|
|
14
|
+
this.el = el;
|
|
15
15
|
this.hapica = hapica;
|
|
16
16
|
this.injector = injector;
|
|
17
17
|
this.dropdownService = dropdownService;
|
|
@@ -21,9 +21,7 @@ export class TuiDropdownDirective {
|
|
|
21
21
|
this.component = new PolymorpheusComponent(this.hapica, this.injector);
|
|
22
22
|
}
|
|
23
23
|
get position() {
|
|
24
|
-
return tuiCheckFixedPosition(this.
|
|
25
|
-
? 'fixed'
|
|
26
|
-
: 'absolute';
|
|
24
|
+
return tuiCheckFixedPosition(this.el.nativeElement) ? 'fixed' : 'absolute';
|
|
27
25
|
}
|
|
28
26
|
ngAfterViewChecked() {
|
|
29
27
|
var _a, _b;
|
|
@@ -39,7 +37,7 @@ export class TuiDropdownDirective {
|
|
|
39
37
|
this.toggle(false);
|
|
40
38
|
}
|
|
41
39
|
getClientRect() {
|
|
42
|
-
return this.
|
|
40
|
+
return this.el.nativeElement.getBoundingClientRect();
|
|
43
41
|
}
|
|
44
42
|
toggle(show) {
|
|
45
43
|
if (show && this.content && !this.dropdownBoxRef) {
|
|
@@ -88,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
88
86
|
type: Input,
|
|
89
87
|
args: ['tuiDropdown']
|
|
90
88
|
}], position: [] } });
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUdILFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFFBQVEsRUFFUixLQUFLLEdBSVIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdILGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsWUFBWSxHQUdmLE1BQU0seUJBQXlCLENBQUM7QUFFakMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHFCQUFxQixFQUFzQixNQUFNLDBCQUEwQixDQUFDO0FBRXBGLDRDQUE0QztBQUM1QywyQ0FBMkM7QUFDM0MsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7OztBQVU1RCxNQUFNLE9BQU8sb0JBQW9CO0lBbUI3QixZQUNpQyxFQUEyQixFQUNQLE1BQXFCLEVBQ25DLFFBQWtCLEVBRXBDLGVBQXlDO1FBSjdCLE9BQUUsR0FBRixFQUFFLENBQXlCO1FBQ1AsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNuQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRXBDLG9CQUFlLEdBQWYsZUFBZSxDQUEwQjtRQWI5RCxZQUFPLEdBQXdFLEVBQUUsQ0FBQztRQUVsRixtQkFBYyxHQUFpQyxJQUFJLENBQUM7UUFFM0MsU0FBSSxHQUFHLFVBQVUsQ0FBQztRQUVsQixjQUFTLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQVF4RSxDQUFDO0lBR0osSUFBSSxRQUFRO1FBQ1IsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUMvRSxDQUFDO0lBRUQsa0JBQWtCOztRQUNkLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkQsTUFBQSxJQUFJLENBQUMsY0FBYywwQ0FBRSxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN0QjtJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQWE7UUFDaEIsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDbEU7YUFBTSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQzlCO0lBQ0wsQ0FBQzs7a0hBMURRLG9CQUFvQixrQkFvQmpCLFVBQVUsYUFDVixzQkFBc0IsYUFDdEIsUUFBUSxhQUNSLHdCQUF3QjtzR0F2QjNCLG9CQUFvQiwyR0FMbEI7UUFDUCxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQztRQUN2QyxZQUFZLENBQUMsb0JBQW9CLENBQUM7S0FDckM7QUFhRDtJQURDLGNBQWMsRUFBRTtxREFDaUU7QUFpQmxGO0lBREMsT0FBTztvREFHUDs0RkE5QlEsb0JBQW9CO2tCQVJoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQ0FBaUM7b0JBQzNDLFFBQVEsRUFBRSxhQUFhO29CQUN2QixTQUFTLEVBQUU7d0JBQ1AsaUJBQWlCLHNCQUFzQjt3QkFDdkMsWUFBWSxzQkFBc0I7cUJBQ3JDO2lCQUNKOzswQkFxQlEsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxzQkFBc0I7OzBCQUM3QixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsd0JBQXdCOzRDQVpwQyxPQUFPO3NCQUZOLEtBQUs7dUJBQUMsYUFBYTtnQkFtQmhCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQ29tcG9uZW50UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJTkpFQ1RPUixcbiAgICBJbmplY3RvcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRHJvcGRvd25Qb3J0YWxTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICB0dWlBc1JlY3RBY2Nlc3NvcixcbiAgICB0dWlBc1ZlaGljbGUsXG4gICAgVHVpUmVjdEFjY2Vzc29yLFxuICAgIFR1aVZlaGljbGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7VHVpUG9ydGFsSXRlbX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge3R1aUNoZWNrRml4ZWRQb3NpdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb21wb25lbnQsIFBvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbi8vIFRPRE86IGZpbmQgdGhlIGJlc3Qgd2F5IGZvciBwcmV2ZW50IGN5Y2xlXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1RVSV9EUk9QRE9XTl9DT01QT05FTlR9IGZyb20gJy4vZHJvcGRvd24ucHJvdmlkZXJzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpRHJvcGRvd25dOm5vdChuZy1jb250YWluZXIpJyxcbiAgICBleHBvcnRBczogJ3R1aURyb3Bkb3duJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNSZWN0QWNjZXNzb3IoVHVpRHJvcGRvd25EaXJlY3RpdmUpLFxuICAgICAgICB0dWlBc1ZlaGljbGUoVHVpRHJvcGRvd25EaXJlY3RpdmUpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duRGlyZWN0aXZlXG4gICAgaW1wbGVtZW50c1xuICAgICAgICBBZnRlclZpZXdDaGVja2VkLFxuICAgICAgICBPbkRlc3Ryb3ksXG4gICAgICAgIE9uQ2hhbmdlcyxcbiAgICAgICAgVHVpUG9ydGFsSXRlbSxcbiAgICAgICAgVHVpUmVjdEFjY2Vzc29yLFxuICAgICAgICBUdWlWZWhpY2xlXG57XG4gICAgQElucHV0KCd0dWlEcm9wZG93bicpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+ID0gJyc7XG5cbiAgICBkcm9wZG93bkJveFJlZjogQ29tcG9uZW50UmVmPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG5cbiAgICByZWFkb25seSB0eXBlID0gJ2Ryb3Bkb3duJztcblxuICAgIHJlYWRvbmx5IGNvbXBvbmVudCA9IG5ldyBQb2x5bW9ycGhldXNDb21wb25lbnQodGhpcy5oYXBpY2EsIHRoaXMuaW5qZWN0b3IpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFRVSV9EUk9QRE9XTl9DT01QT05FTlQpIHByaXZhdGUgcmVhZG9ubHkgaGFwaWNhOiBUeXBlPHVua25vd24+LFxuICAgICAgICBASW5qZWN0KElOSkVDVE9SKSBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93blBvcnRhbFNlcnZpY2UpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25TZXJ2aWNlOiBUdWlEcm9wZG93blBvcnRhbFNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgcG9zaXRpb24oKTogJ2Fic29sdXRlJyB8ICdmaXhlZCcge1xuICAgICAgICByZXR1cm4gdHVpQ2hlY2tGaXhlZFBvc2l0aW9uKHRoaXMuZWwubmF0aXZlRWxlbWVudCkgPyAnZml4ZWQnIDogJ2Fic29sdXRlJztcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZHJvcGRvd25Cb3hSZWY/LmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5kcm9wZG93bkJveFJlZj8uY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLnRvZ2dsZShmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50b2dnbGUoZmFsc2UpO1xuICAgIH1cblxuICAgIGdldENsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgfVxuXG4gICAgdG9nZ2xlKHNob3c6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHNob3cgJiYgdGhpcy5jb250ZW50ICYmICF0aGlzLmRyb3Bkb3duQm94UmVmKSB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duQm94UmVmID0gdGhpcy5kcm9wZG93blNlcnZpY2UuYWRkKHRoaXMuY29tcG9uZW50KTtcbiAgICAgICAgfSBlbHNlIGlmICghc2hvdyAmJiB0aGlzLmRyb3Bkb3duQm94UmVmKSB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duU2VydmljZS5yZW1vdmUodGhpcy5kcm9wZG93bkJveFJlZik7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duQm94UmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|