@taiga-ui/core 3.26.0 → 3.27.0-dev.main-481c805

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.
Files changed (52) hide show
  1. package/bundles/taiga-ui-core-components-button.umd.js +1 -1
  2. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-dialog.umd.js +4 -4
  4. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +1 -1
  6. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-root.umd.js +1 -1
  8. package/bundles/taiga-ui-core-components-svg.umd.js +38 -8
  9. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  10. package/bundles/taiga-ui-core-tokens.umd.js +2 -6
  11. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  12. package/components/dialog/dialog.module.d.ts +1 -1
  13. package/components/svg/svg-options.d.ts +6 -5
  14. package/components/svg/svg.component.d.ts +6 -5
  15. package/constants/cache-basting-payload.d.ts +1 -1
  16. package/esm2015/components/button/button.component.js +1 -1
  17. package/esm2015/components/dialog/dialog.component.js +2 -2
  18. package/esm2015/components/dialog/dialog.module.js +5 -5
  19. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +2 -2
  20. package/esm2015/components/root/root.component.js +1 -1
  21. package/esm2015/components/svg/svg-options.js +27 -6
  22. package/esm2015/components/svg/svg.component.js +12 -5
  23. package/esm2015/mask/text-mask-config.js +1 -1
  24. package/esm2015/mask/text-mask-correction-handler.js +1 -1
  25. package/esm2015/mask/text-mask-list-handler.js +1 -1
  26. package/esm2015/mask/text-mask-list.js +1 -1
  27. package/esm2015/mask/text-mask-options.js +1 -1
  28. package/esm2015/mask/text-mask-pipe-handler.js +1 -1
  29. package/esm2015/mask/text-mask-pipe-result.js +1 -1
  30. package/esm2015/tokens/svg-content-processor.js +2 -4
  31. package/esm2015/tokens/svg-src-processor.js +2 -4
  32. package/fesm2015/taiga-ui-core-components-button.js +1 -1
  33. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  34. package/fesm2015/taiga-ui-core-components-dialog.js +5 -5
  35. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  36. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +1 -1
  37. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  38. package/fesm2015/taiga-ui-core-components-root.js +1 -1
  39. package/fesm2015/taiga-ui-core-components-svg.js +36 -8
  40. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  41. package/fesm2015/taiga-ui-core-tokens.js +2 -6
  42. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  43. package/mask/text-mask-config.d.ts +1 -0
  44. package/mask/text-mask-correction-handler.d.ts +3 -0
  45. package/mask/text-mask-list-handler.d.ts +3 -0
  46. package/mask/text-mask-list.d.ts +1 -0
  47. package/mask/text-mask-options.d.ts +1 -0
  48. package/mask/text-mask-pipe-handler.d.ts +1 -0
  49. package/mask/text-mask-pipe-result.d.ts +1 -0
  50. package/package.json +4 -4
  51. package/tokens/svg-content-processor.d.ts +2 -3
  52. package/tokens/svg-src-processor.d.ts +2 -3
@@ -1,6 +1,6 @@
1
1
  import { ElementRef, Sanitizer } from '@angular/core';
2
2
  import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
3
- import { TuiStaticRequestService } from '@taiga-ui/cdk';
3
+ import { TuiHandler, TuiSafeHtml, TuiStaticRequestService } from '@taiga-ui/cdk';
4
4
  import { TuiSvgService } from '@taiga-ui/core/services';
5
5
  import { Observable } from 'rxjs';
6
6
  import { TuiSvgOptions } from './svg-options';
@@ -9,6 +9,7 @@ export declare class TuiSvgComponent {
9
9
  private readonly doc;
10
10
  private readonly win;
11
11
  private readonly options;
12
+ private readonly srcInterceptors;
12
13
  private readonly tuiSanitizer;
13
14
  private readonly svgService;
14
15
  private readonly staticRequestService;
@@ -17,9 +18,9 @@ export declare class TuiSvgComponent {
17
18
  private readonly src$;
18
19
  private icon;
19
20
  readonly innerHTML$: Observable<SafeHtml>;
20
- constructor(doc: Document, win: Window, options: TuiSvgOptions, tuiSanitizer: Sanitizer | null, svgService: TuiSvgService, staticRequestService: TuiStaticRequestService, sanitizer: DomSanitizer, el: ElementRef<Element>);
21
- set src(src: SafeHtml | string);
22
- get src(): SafeHtml | string;
21
+ constructor(doc: Document, win: Window, options: TuiSvgOptions, srcInterceptors: Array<TuiHandler<TuiSafeHtml, TuiSafeHtml>> | null, tuiSanitizer: Sanitizer | null, svgService: TuiSvgService, staticRequestService: TuiStaticRequestService, sanitizer: DomSanitizer, el: ElementRef<Element>);
22
+ set src(src: TuiSafeHtml);
23
+ get src(): TuiSafeHtml;
23
24
  get use(): string;
24
25
  get isInnerHTML(): boolean;
25
26
  private get isShadowDOM();
@@ -35,6 +36,6 @@ export declare class TuiSvgComponent {
35
36
  private process;
36
37
  private sanitize;
37
38
  private getExternalIcon;
38
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiSvgComponent, [null, null, null, { optional: true; }, null, null, null, null]>;
39
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiSvgComponent, [null, null, null, { optional: true; }, { optional: true; }, null, null, null, null]>;
39
40
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiSvgComponent, "tui-svg", never, { "src": "src"; }, {}, never, never>;
40
41
  }
@@ -1 +1 @@
1
- export declare const TUI_CACHE_BUSTING_PAYLOAD: "?v=3.26.0";
1
+ export declare const TUI_CACHE_BUSTING_PAYLOAD: "?v=3.27.0";
@@ -59,7 +59,7 @@ TuiButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
59
59
  tuiAsFocusableItemAccessor(TuiButtonComponent),
60
60
  TuiDestroyService,
61
61
  TuiFocusVisibleService,
62
- ], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"appearance$ | async\"></ng-container>\n<div\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"computedAppearance\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n>\n <span class=\"t-content\">\n <span\n *ngIf=\"icon\"\n class=\"t-left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"icon as text\"\n class=\"t-icon\"\n [src]=\"text\"\n ></tui-svg>\n </span>\n <ng-content></ng-content>\n <span\n *ngIf=\"iconRight\"\n class=\"t-right\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconRight as text\"\n class=\"t-icon\"\n [src]=\"text\"\n ></tui-svg>\n </span>\n </span>\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"t-loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n ></tui-loader>\n</div>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:inline-block;flex-shrink:0;vertical-align:top;border-radius:var(--tui-radius-m);-webkit-user-select:none;-moz-user-select:none;user-select:none;text-decoration:none;outline:none;color:inherit}:host[data-shape=rounded]{border-radius:6.25rem}:host[data-size=xs]{height:var(--tui-height-xs);font-weight:normal}:host[data-size=xs][data-shape=square],:host[data-size=xs][tuiIconButton]{width:var(--tui-height-xs)}:host[data-size=s]{height:var(--tui-height-s);font-weight:normal}:host[data-size=s][data-shape=square],:host[data-size=s][tuiIconButton]{width:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);font:var(--tui-font-text-m);font-weight:bold}:host[data-size=m][data-shape=square],:host[data-size=m][tuiIconButton]{width:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);font:var(--tui-font-text-m);font-weight:bold}:host[data-size=l][data-shape=square],:host[data-size=l][tuiIconButton]{width:var(--tui-height-l)}:host[data-size=xl]{height:3.75rem;font:var(--tui-font-text-m);font-weight:bold}:host[data-size=xl][data-shape=square],:host[data-size=xl][tuiIconButton]{width:3.75rem}:host[tuiIconButton] .t-left,:host[tuiIconButton] .t-right{margin:0!important}.t-loader{position:absolute;top:0;left:0;width:100%;height:100%;cursor:default}.t-left{margin-right:.5rem}:host[data-size=s] .t-left,:host[data-size=xs] .t-left{margin-right:.25rem}.t-right{margin:0 -.25rem 0 .25rem}:host[data-size=s] .t-right,:host[data-size=xs] .t-right{margin-right:0 -.125rem 0 .125rem}.t-icon{display:flex;max-width:100%;max-height:100%;align-items:center;justify-content:center}.t-left,.t-right{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem}:host[data-size=s] .t-left,:host[data-size=s] .t-right,:host[data-size=xs] .t-left,:host[data-size=xs] .t-right{width:1rem;height:1rem}:host[tuiIconButton][data-appearance=icon][data-size=s] .t-left,:host[tuiIconButton][data-appearance=icon][data-size=s] .t-right{width:1.5rem;height:1.5rem}.t-wrapper{position:relative;z-index:0;box-sizing:border-box;cursor:pointer}:host[data-size=xs] .t-wrapper{padding:0 var(--tui-padding, .375rem)}:host[data-size=xs] .t-wrapper:after{border-width:1px}:host[data-size=s] .t-wrapper{padding:0 var(--tui-padding, .75rem)}:host[data-size=m] .t-wrapper{padding:0 var(--tui-padding, 1.5rem)}:host[data-size=l] .t-wrapper{padding:0 var(--tui-padding, 2.25rem)}:host[data-size=xl] .t-wrapper{padding:0 var(--tui-padding, 2.5rem)}:host[data-shape=square] .t-wrapper,:host[tuiIconButton] .t-wrapper{padding:0}.t-content{display:flex;height:100%;align-items:center;justify-content:center;text-align:center}:host._loading .t-content{opacity:0}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
62
+ ], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"appearance$ | async\"></ng-container>\n<div\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"computedAppearance\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocusVisible\"\n>\n <span class=\"t-content\">\n <span\n *ngIf=\"icon\"\n class=\"t-left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"icon as text\"\n class=\"t-icon\"\n [src]=\"text\"\n ></tui-svg>\n </span>\n <ng-content></ng-content>\n <span\n *ngIf=\"iconRight\"\n class=\"t-right\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconRight as text\"\n class=\"t-icon\"\n [src]=\"text\"\n ></tui-svg>\n </span>\n </span>\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"t-loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n ></tui-loader>\n</div>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:inline-block;flex-shrink:0;vertical-align:top;border-radius:var(--tui-radius-m);-webkit-user-select:none;-moz-user-select:none;user-select:none;text-decoration:none;outline:none;color:inherit}:host[data-shape=rounded]{border-radius:6.25rem}:host[data-size=xs]{height:var(--tui-height-xs);font-weight:normal}:host[data-size=xs][data-shape=square],:host[data-size=xs][tuiIconButton]{width:var(--tui-height-xs)}:host[data-size=s]{height:var(--tui-height-s);font-weight:normal}:host[data-size=s][data-shape=square],:host[data-size=s][tuiIconButton]{width:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);font:var(--tui-font-text-m);font-weight:bold}:host[data-size=m][data-shape=square],:host[data-size=m][tuiIconButton]{width:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);font:var(--tui-font-text-m);font-weight:bold}:host[data-size=l][data-shape=square],:host[data-size=l][tuiIconButton]{width:var(--tui-height-l)}:host[data-size=xl]{height:3.75rem;font:var(--tui-font-text-m);font-weight:bold}:host[data-size=xl][data-shape=square],:host[data-size=xl][tuiIconButton]{width:3.75rem}:host[tuiIconButton]{font-size:0!important}:host[tuiIconButton] .t-left,:host[tuiIconButton] .t-right{margin:0!important}.t-loader{position:absolute;top:0;left:0;width:100%;height:100%;cursor:default}.t-left{margin-right:.5rem}:host[data-size=s] .t-left,:host[data-size=xs] .t-left{margin-right:.25rem}.t-right{margin:0 -.25rem 0 .25rem}:host[data-size=s] .t-right,:host[data-size=xs] .t-right{margin-right:0 -.125rem 0 .125rem}.t-icon{display:flex;max-width:100%;max-height:100%;align-items:center;justify-content:center}.t-left,.t-right{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem}:host[data-size=s] .t-left,:host[data-size=s] .t-right,:host[data-size=xs] .t-left,:host[data-size=xs] .t-right{width:1rem;height:1rem}:host[tuiIconButton][data-appearance=icon][data-size=s] .t-left,:host[tuiIconButton][data-appearance=icon][data-size=s] .t-right{width:1.5rem;height:1.5rem}.t-wrapper{position:relative;z-index:0;box-sizing:border-box;cursor:pointer}:host[data-size=xs] .t-wrapper{padding:0 var(--tui-padding, .375rem)}:host[data-size=xs] .t-wrapper:after{border-width:1px}:host[data-size=s] .t-wrapper{padding:0 var(--tui-padding, .75rem)}:host[data-size=m] .t-wrapper{padding:0 var(--tui-padding, 1.5rem)}:host[data-size=l] .t-wrapper{padding:0 var(--tui-padding, 2.25rem)}:host[data-size=xl] .t-wrapper{padding:0 var(--tui-padding, 2.5rem)}:host[data-shape=square] .t-wrapper,:host[tuiIconButton] .t-wrapper{padding:0}.t-content{display:flex;height:100%;align-items:center;justify-content:center;text-align:center}:host._loading .t-content{opacity:0}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
63
63
  __decorate([
64
64
  tuiDefaultProp()
65
65
  ], TuiButtonComponent.prototype, "appearance", void 0);
@@ -65,7 +65,7 @@ export class TuiDialogComponent {
65
65
  }
66
66
  }
67
67
  TuiDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogComponent, deps: [{ token: TUI_ANIMATIONS_DURATION }, { token: TUI_IS_MOBILE }, { token: POLYMORPHEUS_CONTEXT }, { token: TuiDestroyService, self: true }, { token: TuiDialogCloseService }, { token: TUI_DIALOGS_CLOSE }, { token: TUI_CLOSE_WORD }], target: i0.ɵɵFactoryTarget.Component });
68
- TuiDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiDialogComponent, selector: "tui-dialog", host: { properties: { "attr.data-size": "this.size", "class._centered": "this.header", "@tuiSlideInTop": "this.slideInTop", "@tuiFadeIn": "this.slideInTop" } }, providers: [TuiDestroyService, TuiDialogCloseService], ngImport: i0, template: "<header\n *ngIf=\"header\"\n class=\"t-header\"\n>\n <ng-container *polymorpheusOutlet=\"header as text; context: context\">\n {{ text }}\n </ng-container>\n</header>\n<div class=\"t-content\">\n <h2\n class=\"t-heading\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n type=\"button\"\n tuiButton\n size=\"m\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ $any(context.data)?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n<div\n *ngIf=\"context.closeable\"\n class=\"t-wrapper\"\n>\n <button\n type=\"button\"\n tuiIconButton\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-dialog__close\"\n size=\"s\"\n icon=\"tuiIconCloseLarge\"\n shape=\"rounded\"\n class=\"t-close\"\n [appearance]=\"fullscreen ? 'secondary' : ''\"\n [title]=\"closeWord$ | async\"\n (click)=\"close$.next()\"\n ></button>\n</div>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1rem;border:2.5rem solid transparent}:host:after{position:absolute;top:0;left:0;width:100%;height:100%;box-shadow:0 1.125rem 1.875rem #0000007a;content:\"\";border-radius:inherit;pointer-events:none}:host[data-size=auto]{width:auto}:host[data-size=s]{width:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{margin-bottom:.5rem;font:var(--tui-font-heading-5)}:host[data-size=m]{width:42.5rem}:host[data-size=m] .t-heading{margin-bottom:.75rem;font:var(--tui-font-heading-4)}:host[data-size=l]{width:55rem}:host[data-size=l] .t-heading{margin-bottom:1rem}:host[data-size=fullscreen],:host[data-size=page]{width:100%;min-height:100%;border-radius:0;border:none;background:var(--tui-elevation-01);box-shadow:0 4rem var(--tui-elevation-01)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - (45rem / 2))}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{margin-bottom:1rem}:host[data-size=page] .t-content{padding:0}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-width:100%;width:100%;max-width:100%;border-radius:0;border:none;margin:auto 0 0}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1.5rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{margin-bottom:.5rem;font:var(--tui-font-heading-5)}.t-heading{margin:0;word-wrap:break-word;font:var(--tui-font-heading-3)}.t-heading:empty{display:none}.t-header{display:flex;border-top-left-radius:inherit;border-top-right-radius:inherit;overflow:hidden}:host[data-size=fullscreen] :host-context(tui-root._mobile) .t-header{flex:1}.t-content{border-radius:inherit;padding:2rem;background:var(--tui-elevation-01)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-wrapper{position:-webkit-sticky;position:sticky;top:0;order:-1}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:fixed;top:1.5rem;right:1.5rem;color:var(--tui-base-01)}:host:not([data-size=\"fullscreen\"]):not([data-size=\"page\"]) .t-close{animation:tuiFadeIn var(--tui-duration);background:rgba(104,104,104,.96)}:host:not([data-size=\"fullscreen\"]):not([data-size=\"page\"]) .t-close:hover{background:rgba(159,159,159,.86)}:host:not([data-size=\"fullscreen\"]).ng-animating .t-close{display:none}:host-context(tui-root._mobile) .t-close{position:absolute;top:0;right:0;background:transparent!important;color:var(--tui-base-06)}:host-context(tui-root._mobile) .t-close:hover{color:var(--tui-base-07)}.t-buttons{margin-top:1.25rem;text-align:right}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }], pipes: { "async": i2.AsyncPipe }, animations: [tuiSlideInTop, tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.Default });
68
+ TuiDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiDialogComponent, selector: "tui-dialog", host: { properties: { "attr.data-size": "this.size", "class._centered": "this.header", "@tuiSlideInTop": "this.slideInTop", "@tuiFadeIn": "this.slideInTop" } }, providers: [TuiDestroyService, TuiDialogCloseService], ngImport: i0, template: "<header\n *ngIf=\"header\"\n class=\"t-header\"\n>\n <ng-container *polymorpheusOutlet=\"header as text; context: context\">\n {{ text }}\n </ng-container>\n</header>\n<div class=\"t-content\">\n <h2\n class=\"t-heading\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <!-- TODO: Polymorpheus fix type -->\n <ng-container *polymorpheusOutlet=\"$any(context.content) as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n tuiButton\n tuiAutoFocus\n type=\"button\"\n size=\"m\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ $any(context.data)?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n<div\n *ngIf=\"context.closeable\"\n class=\"t-wrapper\"\n>\n <button\n type=\"button\"\n tuiIconButton\n automation-id=\"tui-dialog__close\"\n size=\"s\"\n icon=\"tuiIconCloseLarge\"\n shape=\"rounded\"\n class=\"t-close\"\n [appearance]=\"fullscreen ? 'secondary' : ''\"\n [title]=\"closeWord$ | async\"\n (click)=\"close$.next()\"\n (mousedown.prevent.silent)=\"(0)\"\n ></button>\n</div>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1rem;border:2.5rem solid transparent}:host:after{position:absolute;top:0;left:0;width:100%;height:100%;box-shadow:0 1.125rem 1.875rem #0000007a;content:\"\";border-radius:inherit;pointer-events:none}:host[data-size=auto]{width:auto}:host[data-size=s]{width:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{margin-bottom:.5rem;font:var(--tui-font-heading-5)}:host[data-size=m]{width:42.5rem}:host[data-size=m] .t-heading{margin-bottom:.75rem;font:var(--tui-font-heading-4)}:host[data-size=l]{width:55rem}:host[data-size=l] .t-heading{margin-bottom:1rem}:host[data-size=fullscreen],:host[data-size=page]{width:100%;min-height:100%;border-radius:0;border:none;background:var(--tui-elevation-01);box-shadow:0 4rem var(--tui-elevation-01)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - (45rem / 2))}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{margin-bottom:1rem}:host[data-size=page] .t-content{padding:0}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-width:100%;width:100%;max-width:100%;border-radius:0;border:none;margin:auto 0 0}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1.5rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{margin-bottom:.5rem;font:var(--tui-font-heading-5)}.t-heading{margin:0;word-wrap:break-word;font:var(--tui-font-heading-3)}.t-heading:empty{display:none}.t-header{display:flex;border-top-left-radius:inherit;border-top-right-radius:inherit;overflow:hidden}:host[data-size=fullscreen] :host-context(tui-root._mobile) .t-header{flex:1}.t-content{border-radius:inherit;padding:2rem;background:var(--tui-elevation-01)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-wrapper{position:-webkit-sticky;position:sticky;top:0;order:-1}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:fixed;top:1.5rem;right:1.5rem;color:var(--tui-base-01)}:host:not([data-size=\"fullscreen\"]):not([data-size=\"page\"]) .t-close{animation:tuiFadeIn var(--tui-duration);background:rgba(104,104,104,.96)}:host:not([data-size=\"fullscreen\"]):not([data-size=\"page\"]) .t-close:hover{background:rgba(159,159,159,.86)}:host:not([data-size=\"fullscreen\"]).ng-animating .t-close{display:none}:host-context(tui-root._mobile) .t-close{position:absolute;top:0;right:0;background:transparent!important;color:var(--tui-base-06)}:host-context(tui-root._mobile) .t-close:hover{color:var(--tui-base-07)}.t-buttons{margin-top:1.25rem;text-align:right}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i4.TuiAutoFocusDirective, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }], pipes: { "async": i2.AsyncPipe }, animations: [tuiSlideInTop, tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.Default });
69
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogComponent, decorators: [{
70
70
  type: Component,
71
71
  args: [{
@@ -117,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
117
117
  function toObservable(valueOrStream) {
118
118
  return isObservable(valueOrStream) ? valueOrStream : of(valueOrStream);
119
119
  }
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsV0FBVyxFQUNYLE1BQU0sRUFDTixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsaUJBQWlCLEdBRXBCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFBQyxvQkFBb0IsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRixPQUFPLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUU3RCxNQUFNLGNBQWMsR0FBRyxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0FBWWxFLE1BQU0sT0FBTyxrQkFBa0I7SUFtQjNCLFlBQ3NELFFBQWdCLEVBQzFCLFFBQWlCLEVBQ2xCLE9BQTBDLEVBQzlD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LE9BQU87b0JBQ2hELFNBQVMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLHFCQUFxQixDQUFDO29CQUNyRCxVQUFVLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDO2lCQUN6Qzs7MEJBcUJRLE1BQU07MkJBQUMsdUJBQXVCOzswQkFDOUIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQUcsSUFBSTs7MEJBQy9CLE1BQU07MkJBQUMscUJBQXFCOzswQkFDNUIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGNBQWM7NENBY3RCLElBQUk7c0JBRFAsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLE1BQU07c0JBRFQsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTzFCLFVBQVU7c0JBRmIsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUM1QixXQUFXO3VCQUFDLFlBQVk7O0FBb0I3QixTQUFTLFlBQVksQ0FBSSxhQUFnQztJQUNyRCxPQUFPLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX1RSVUVfSEFORExFUixcbiAgICBUVUlfSVNfTU9CSUxFLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIFR1aURpYWxvZyxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpU2xpZGVJblRvcH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aUFuaW1hdGlvbk9wdGlvbnMsIFR1aURpYWxvZ09wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19EVVJBVElPTiwgVFVJX0NMT1NFX1dPUkR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURpYWxvZ1NpemV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2lzT2JzZXJ2YWJsZSwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0RJQUxPR1NfQ0xPU0V9IGZyb20gJy4vZGlhbG9nLnRva2Vucyc7XG5pbXBvcnQge1R1aURpYWxvZ0Nsb3NlU2VydmljZX0gZnJvbSAnLi9kaWFsb2ctY2xvc2Uuc2VydmljZSc7XG5cbmNvbnN0IFJFUVVJUkVEX0VSUk9SID0gbmV3IEVycm9yKCdSZXF1aXJlZCBkaWFsb2cgd2FzIGRpc21pc3NlZCcpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2cudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLnN0eWxlLmxlc3MnXSxcbiAgICAvLyBTbyB3ZSBkb24ndCBmb3JjZSBPblB1c2ggb24gZGlhbG9nIGNvbnRlbnRcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3ByZWZlci1vbi1wdXNoLWNvbXBvbmVudC1jaGFuZ2UtZGV0ZWN0aW9uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlLCBUdWlEaWFsb2dDbG9zZVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlTbGlkZUluVG9wLCB0dWlGYWRlSW5dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2dDb21wb25lbnQ8TywgST4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uID0ge1xuICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgc3RhcnQ6ICc0MHB4JyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiB0aGlzLmR1cmF0aW9uLFxuICAgICAgICB9LFxuICAgIH0gYXMgY29uc3Q7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGZ1bGxzY3JlZW5BbmltYXRpb24gPSB7XG4gICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICBzdGFydDogJzEwMHZoJyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiB0aGlzLmR1cmF0aW9uLFxuICAgICAgICB9LFxuICAgIH0gYXMgY29uc3Q7XG5cbiAgICByZWFkb25seSBjbG9zZSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTlNfRFVSQVRJT04pIHByaXZhdGUgcmVhZG9ubHkgZHVyYXRpb246IG51bWJlcixcbiAgICAgICAgQEluamVjdChUVUlfSVNfTU9CSUxFKSBwcml2YXRlIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFBPTFlNT1JQSEVVU19DT05URVhUKSByZWFkb25seSBjb250ZXh0OiBUdWlEaWFsb2c8VHVpRGlhbG9nT3B0aW9uczxJPiwgTz4sXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIEBTZWxmKCkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoVHVpRGlhbG9nQ2xvc2VTZXJ2aWNlKSBkaWFsb2dDbG9zZSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RJQUxPR1NfQ0xPU0UpIGNsb3NlJDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgICAgICAgQEluamVjdChUVUlfQ0xPU0VfV09SRCkgcmVhZG9ubHkgY2xvc2VXb3JkJDogT2JzZXJ2YWJsZTxzdHJpbmc+LFxuICAgICkge1xuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIHRoaXMuY2xvc2UkLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRvT2JzZXJ2YWJsZShjb250ZXh0LmNsb3NlYWJsZSkpKSxcbiAgICAgICAgICAgIGRpYWxvZ0Nsb3NlJC5waXBlKHN3aXRjaE1hcCgoKSA9PiB0b09ic2VydmFibGUoY29udGV4dC5kaXNtaXNzaWJsZSkpKSxcbiAgICAgICAgICAgIGNsb3NlJC5waXBlKG1hcChBTFdBWVNfVFJVRV9IQU5ETEVSKSksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICAgIGdldCBzaXplKCk6IFR1aURpYWxvZ1NpemUge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LnNpemU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fY2VudGVyZWQnKVxuICAgIGdldCBoZWFkZXIoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlEaWFsb2c8VHVpRGlhbG9nT3B0aW9uczxJPiwgTz4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC5oZWFkZXI7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpU2xpZGVJblRvcCcpXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICBnZXQgc2xpZGVJblRvcCgpOiBUdWlBbmltYXRpb25PcHRpb25zIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnVsbHNjcmVlbiB8fCB0aGlzLmlzTW9iaWxlXG4gICAgICAgICAgICA/IHRoaXMuZnVsbHNjcmVlbkFuaW1hdGlvblxuICAgICAgICAgICAgOiB0aGlzLmFuaW1hdGlvbjtcbiAgICB9XG5cbiAgICBnZXQgZnVsbHNjcmVlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzTW9iaWxlICYmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJyB8fCB0aGlzLnNpemUgPT09ICdwYWdlJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGV4dC5yZXF1aXJlZCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0LiRpbXBsaWNpdC5lcnJvcihSRVFVSVJFRF9FUlJPUik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIHRvT2JzZXJ2YWJsZTxUPih2YWx1ZU9yU3RyZWFtOiBPYnNlcnZhYmxlPFQ+IHwgVCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWVPclN0cmVhbSkgPyB2YWx1ZU9yU3RyZWFtIDogb2YodmFsdWVPclN0cmVhbSk7XG59XG4iLCI8aGVhZGVyXG4gICAgKm5nSWY9XCJoZWFkZXJcIlxuICAgIGNsYXNzPVwidC1oZWFkZXJcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImhlYWRlciBhcyB0ZXh0OyBjb250ZXh0OiBjb250ZXh0XCI+XG4gICAgICAgIHt7IHRleHQgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvaGVhZGVyPlxuPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgIDxoMlxuICAgICAgICBjbGFzcz1cInQtaGVhZGluZ1wiXG4gICAgICAgIFtpZF09XCJjb250ZXh0LmlkXCJcbiAgICAgICAgW3RleHRDb250ZW50XT1cImNvbnRleHQubGFiZWxcIlxuICAgID48L2gyPlxuICAgIDxzZWN0aW9uPlxuICAgICAgICA8IS0tIFRPRE86IFBvbHltb3JwaGV1cyBmaXggdHlwZSAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiJGFueShjb250ZXh0LmNvbnRlbnQpIGFzIHRleHQ7IGNvbnRleHQ6IGNvbnRleHRcIj5cbiAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJ0ZXh0XCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC1idXR0b25zXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgJGFueShjb250ZXh0LmRhdGEpPy5idXR0b24gfHwgJ09LJyB9fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvc2VjdGlvbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInQtZmlsbGVyXCI+PC9kaXY+XG48ZGl2XG4gICAgKm5nSWY9XCJjb250ZXh0LmNsb3NlYWJsZVwiXG4gICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIHR1aUljb25CdXR0b25cbiAgICAgICAgdHVpUHJldmVudERlZmF1bHQ9XCJtb3VzZWRvd25cIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWRpYWxvZ19fY2xvc2VcIlxuICAgICAgICBzaXplPVwic1wiXG4gICAgICAgIGljb249XCJ0dWlJY29uQ2xvc2VMYXJnZVwiXG4gICAgICAgIHNoYXBlPVwicm91bmRlZFwiXG4gICAgICAgIGNsYXNzPVwidC1jbG9zZVwiXG4gICAgICAgIFthcHBlYXJhbmNlXT1cImZ1bGxzY3JlZW4gPyAnc2Vjb25kYXJ5JyA6ICcnXCJcbiAgICAgICAgW3RpdGxlXT1cImNsb3NlV29yZCQgfCBhc3luY1wiXG4gICAgICAgIChjbGljayk9XCJjbG9zZSQubmV4dCgpXCJcbiAgICA+PC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsV0FBVyxFQUNYLE1BQU0sRUFDTixJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsaUJBQWlCLEdBRXBCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFBQyxvQkFBb0IsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRixPQUFPLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUU3RCxNQUFNLGNBQWMsR0FBRyxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0FBWWxFLE1BQU0sT0FBTyxrQkFBa0I7SUFtQjNCLFlBQ3NELFFBQWdCLEVBQzFCLFFBQWlCLEVBQ2xCLE9BQTBDLEVBQzlD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LE9BQU87b0JBQ2hELFNBQVMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLHFCQUFxQixDQUFDO29CQUNyRCxVQUFVLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDO2lCQUN6Qzs7MEJBcUJRLE1BQU07MkJBQUMsdUJBQXVCOzswQkFDOUIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQUcsSUFBSTs7MEJBQy9CLE1BQU07MkJBQUMscUJBQXFCOzswQkFDNUIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGNBQWM7NENBY3RCLElBQUk7c0JBRFAsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLE1BQU07c0JBRFQsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTzFCLFVBQVU7c0JBRmIsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUM1QixXQUFXO3VCQUFDLFlBQVk7O0FBb0I3QixTQUFTLFlBQVksQ0FBSSxhQUFnQztJQUNyRCxPQUFPLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX1RSVUVfSEFORExFUixcbiAgICBUVUlfSVNfTU9CSUxFLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIFR1aURpYWxvZyxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpU2xpZGVJblRvcH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aUFuaW1hdGlvbk9wdGlvbnMsIFR1aURpYWxvZ09wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19EVVJBVElPTiwgVFVJX0NMT1NFX1dPUkR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURpYWxvZ1NpemV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2lzT2JzZXJ2YWJsZSwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0RJQUxPR1NfQ0xPU0V9IGZyb20gJy4vZGlhbG9nLnRva2Vucyc7XG5pbXBvcnQge1R1aURpYWxvZ0Nsb3NlU2VydmljZX0gZnJvbSAnLi9kaWFsb2ctY2xvc2Uuc2VydmljZSc7XG5cbmNvbnN0IFJFUVVJUkVEX0VSUk9SID0gbmV3IEVycm9yKCdSZXF1aXJlZCBkaWFsb2cgd2FzIGRpc21pc3NlZCcpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2cudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLnN0eWxlLmxlc3MnXSxcbiAgICAvLyBTbyB3ZSBkb24ndCBmb3JjZSBPblB1c2ggb24gZGlhbG9nIGNvbnRlbnRcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3ByZWZlci1vbi1wdXNoLWNvbXBvbmVudC1jaGFuZ2UtZGV0ZWN0aW9uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlLCBUdWlEaWFsb2dDbG9zZVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlTbGlkZUluVG9wLCB0dWlGYWRlSW5dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2dDb21wb25lbnQ8TywgST4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uID0ge1xuICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgc3RhcnQ6ICc0MHB4JyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiB0aGlzLmR1cmF0aW9uLFxuICAgICAgICB9LFxuICAgIH0gYXMgY29uc3Q7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGZ1bGxzY3JlZW5BbmltYXRpb24gPSB7XG4gICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICBzdGFydDogJzEwMHZoJyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiB0aGlzLmR1cmF0aW9uLFxuICAgICAgICB9LFxuICAgIH0gYXMgY29uc3Q7XG5cbiAgICByZWFkb25seSBjbG9zZSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTlNfRFVSQVRJT04pIHByaXZhdGUgcmVhZG9ubHkgZHVyYXRpb246IG51bWJlcixcbiAgICAgICAgQEluamVjdChUVUlfSVNfTU9CSUxFKSBwcml2YXRlIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFBPTFlNT1JQSEVVU19DT05URVhUKSByZWFkb25seSBjb250ZXh0OiBUdWlEaWFsb2c8VHVpRGlhbG9nT3B0aW9uczxJPiwgTz4sXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIEBTZWxmKCkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoVHVpRGlhbG9nQ2xvc2VTZXJ2aWNlKSBkaWFsb2dDbG9zZSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RJQUxPR1NfQ0xPU0UpIGNsb3NlJDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgICAgICAgQEluamVjdChUVUlfQ0xPU0VfV09SRCkgcmVhZG9ubHkgY2xvc2VXb3JkJDogT2JzZXJ2YWJsZTxzdHJpbmc+LFxuICAgICkge1xuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIHRoaXMuY2xvc2UkLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRvT2JzZXJ2YWJsZShjb250ZXh0LmNsb3NlYWJsZSkpKSxcbiAgICAgICAgICAgIGRpYWxvZ0Nsb3NlJC5waXBlKHN3aXRjaE1hcCgoKSA9PiB0b09ic2VydmFibGUoY29udGV4dC5kaXNtaXNzaWJsZSkpKSxcbiAgICAgICAgICAgIGNsb3NlJC5waXBlKG1hcChBTFdBWVNfVFJVRV9IQU5ETEVSKSksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICAgIGdldCBzaXplKCk6IFR1aURpYWxvZ1NpemUge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LnNpemU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fY2VudGVyZWQnKVxuICAgIGdldCBoZWFkZXIoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlEaWFsb2c8VHVpRGlhbG9nT3B0aW9uczxJPiwgTz4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC5oZWFkZXI7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpU2xpZGVJblRvcCcpXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICBnZXQgc2xpZGVJblRvcCgpOiBUdWlBbmltYXRpb25PcHRpb25zIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnVsbHNjcmVlbiB8fCB0aGlzLmlzTW9iaWxlXG4gICAgICAgICAgICA/IHRoaXMuZnVsbHNjcmVlbkFuaW1hdGlvblxuICAgICAgICAgICAgOiB0aGlzLmFuaW1hdGlvbjtcbiAgICB9XG5cbiAgICBnZXQgZnVsbHNjcmVlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzTW9iaWxlICYmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJyB8fCB0aGlzLnNpemUgPT09ICdwYWdlJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGV4dC5yZXF1aXJlZCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0LiRpbXBsaWNpdC5lcnJvcihSRVFVSVJFRF9FUlJPUik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIHRvT2JzZXJ2YWJsZTxUPih2YWx1ZU9yU3RyZWFtOiBPYnNlcnZhYmxlPFQ+IHwgVCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWVPclN0cmVhbSkgPyB2YWx1ZU9yU3RyZWFtIDogb2YodmFsdWVPclN0cmVhbSk7XG59XG4iLCI8aGVhZGVyXG4gICAgKm5nSWY9XCJoZWFkZXJcIlxuICAgIGNsYXNzPVwidC1oZWFkZXJcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImhlYWRlciBhcyB0ZXh0OyBjb250ZXh0OiBjb250ZXh0XCI+XG4gICAgICAgIHt7IHRleHQgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvaGVhZGVyPlxuPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgIDxoMlxuICAgICAgICBjbGFzcz1cInQtaGVhZGluZ1wiXG4gICAgICAgIFtpZF09XCJjb250ZXh0LmlkXCJcbiAgICAgICAgW3RleHRDb250ZW50XT1cImNvbnRleHQubGFiZWxcIlxuICAgID48L2gyPlxuICAgIDxzZWN0aW9uPlxuICAgICAgICA8IS0tIFRPRE86IFBvbHltb3JwaGV1cyBmaXggdHlwZSAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiJGFueShjb250ZXh0LmNvbnRlbnQpIGFzIHRleHQ7IGNvbnRleHQ6IGNvbnRleHRcIj5cbiAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJ0ZXh0XCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC1idXR0b25zXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgdHVpQXV0b0ZvY3VzXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjb250ZXh0LiRpbXBsaWNpdC5jb21wbGV0ZSgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7ICRhbnkoY29udGV4dC5kYXRhKT8uYnV0dG9uIHx8ICdPSycgfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3NlY3Rpb24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0LWZpbGxlclwiPjwvZGl2PlxuPGRpdlxuICAgICpuZ0lmPVwiY29udGV4dC5jbG9zZWFibGVcIlxuICAgIGNsYXNzPVwidC13cmFwcGVyXCJcbj5cbiAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktZGlhbG9nX19jbG9zZVwiXG4gICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgaWNvbj1cInR1aUljb25DbG9zZUxhcmdlXCJcbiAgICAgICAgc2hhcGU9XCJyb3VuZGVkXCJcbiAgICAgICAgY2xhc3M9XCJ0LWNsb3NlXCJcbiAgICAgICAgW2FwcGVhcmFuY2VdPVwiZnVsbHNjcmVlbiA/ICdzZWNvbmRhcnknIDogJydcIlxuICAgICAgICBbdGl0bGVdPVwiY2xvc2VXb3JkJCB8IGFzeW5jXCJcbiAgICAgICAgKGNsaWNrKT1cImNsb3NlJC5uZXh0KClcIlxuICAgICAgICAobW91c2Vkb3duLnByZXZlbnQuc2lsZW50KT1cIigwKVwiXG4gICAgPjwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
- import { tuiAsDialog, TuiPreventDefaultModule } from '@taiga-ui/cdk';
3
+ import { tuiAsDialog, TuiAutoFocusModule } from '@taiga-ui/cdk';
4
4
  import { TuiButtonModule } from '@taiga-ui/core/components/button';
5
5
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
6
6
  import { TuiDialogComponent } from './dialog.component';
@@ -10,15 +10,15 @@ import * as i0 from "@angular/core";
10
10
  export class TuiDialogModule {
11
11
  }
12
12
  TuiDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- TuiDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, declarations: [TuiDialogComponent, TuiDialogDirective], imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiPreventDefaultModule], exports: [TuiDialogComponent, TuiDialogDirective] });
14
- TuiDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, providers: [tuiAsDialog(TuiDialogService)], imports: [[PolymorpheusModule, TuiButtonModule, CommonModule, TuiPreventDefaultModule]] });
13
+ TuiDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, declarations: [TuiDialogComponent, TuiDialogDirective], imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiAutoFocusModule], exports: [TuiDialogComponent, TuiDialogDirective] });
14
+ TuiDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, providers: [tuiAsDialog(TuiDialogService)], imports: [[PolymorpheusModule, TuiButtonModule, CommonModule, TuiAutoFocusModule]] });
15
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{
18
- imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiPreventDefaultModule],
18
+ imports: [PolymorpheusModule, TuiButtonModule, CommonModule, TuiAutoFocusModule],
19
19
  declarations: [TuiDialogComponent, TuiDialogDirective],
20
20
  exports: [TuiDialogComponent, TuiDialogDirective],
21
21
  providers: [tuiAsDialog(TuiDialogService)],
22
22
  }]
23
23
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLHVCQUF1QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFRbEQsTUFBTSxPQUFPLGVBQWU7OzZHQUFmLGVBQWU7OEdBQWYsZUFBZSxpQkFKVCxrQkFBa0IsRUFBRSxrQkFBa0IsYUFEM0Msa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSx1QkFBdUIsYUFFMUUsa0JBQWtCLEVBQUUsa0JBQWtCOzhHQUd2QyxlQUFlLGFBRmIsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxZQUhqQyxDQUFDLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsdUJBQXVCLENBQUM7NEZBSzVFLGVBQWU7a0JBTjNCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSx1QkFBdUIsQ0FBQztvQkFDckYsWUFBWSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztpQkFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlBc0RpYWxvZywgVHVpUHJldmVudERlZmF1bHRNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlCdXR0b25Nb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aURpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7VHVpRGlhbG9nRGlyZWN0aXZlfSBmcm9tICcuL2RpYWxvZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlEaWFsb2dTZXJ2aWNlfSBmcm9tICcuL2RpYWxvZy5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbUG9seW1vcnBoZXVzTW9kdWxlLCBUdWlCdXR0b25Nb2R1bGUsIENvbW1vbk1vZHVsZSwgVHVpUHJldmVudERlZmF1bHRNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aURpYWxvZ0NvbXBvbmVudCwgVHVpRGlhbG9nRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpRGlhbG9nQ29tcG9uZW50LCBUdWlEaWFsb2dEaXJlY3RpdmVdLFxuICAgIHByb3ZpZGVyczogW3R1aUFzRGlhbG9nKFR1aURpYWxvZ1NlcnZpY2UpXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGlhbG9nTW9kdWxlIHt9XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLGtCQUFrQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFRbEQsTUFBTSxPQUFPLGVBQWU7OzZHQUFmLGVBQWU7OEdBQWYsZUFBZSxpQkFKVCxrQkFBa0IsRUFBRSxrQkFBa0IsYUFEM0Msa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsYUFFckUsa0JBQWtCLEVBQUUsa0JBQWtCOzhHQUd2QyxlQUFlLGFBRmIsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxZQUhqQyxDQUFDLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLENBQUM7NEZBS3ZFLGVBQWU7a0JBTjNCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztvQkFDaEYsWUFBWSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztpQkFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlBc0RpYWxvZywgVHVpQXV0b0ZvY3VzTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpQnV0dG9uTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlEaWFsb2dDb21wb25lbnR9IGZyb20gJy4vZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aURpYWxvZ0RpcmVjdGl2ZX0gZnJvbSAnLi9kaWFsb2cuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpRGlhbG9nU2VydmljZX0gZnJvbSAnLi9kaWFsb2cuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1BvbHltb3JwaGV1c01vZHVsZSwgVHVpQnV0dG9uTW9kdWxlLCBDb21tb25Nb2R1bGUsIFR1aUF1dG9Gb2N1c01vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpRGlhbG9nQ29tcG9uZW50LCBUdWlEaWFsb2dEaXJlY3RpdmVdLFxuICAgIGV4cG9ydHM6IFtUdWlEaWFsb2dDb21wb25lbnQsIFR1aURpYWxvZ0RpcmVjdGl2ZV0sXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNEaWFsb2coVHVpRGlhbG9nU2VydmljZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2dNb2R1bGUge31cbiJdfQ==
@@ -174,7 +174,7 @@ TuiHostedDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
174
174
  deps: [[new Optional(), new Self(), TuiPositionAccessor]],
175
175
  useFactory: (position) => position === null || position === void 0 ? void 0 : position[0],
176
176
  },
177
- ], queries: [{ propertyName: "dropdownHost", first: true, predicate: TuiHostedDropdownConnectorDirective, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true, read: ElementRef }, { propertyName: "dropdownDirective", first: true, predicate: TuiDropdownDirective, descendants: true }, { propertyName: "activeZone", first: true, predicate: TuiActiveZoneDirective, descendants: true }], ngImport: i0, template: "<div\n *tuiLet=\"!!(open$ | async) as isOpen\"\n #activeZone=\"tuiActiveZone\"\n tuiAccessorProxy\n class=\"t-wrapper\"\n [tuiDropdownSided]=\"sided\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownManual]=\"isOpen && canOpen\"\n [tuiObscuredEnabled]=\"isOpen\"\n (tuiObscured)=\"onHostObscured($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <ng-content></ng-content>\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"context\"\n >\n <div\n #wrapper\n (keydown)=\"onKeydown($event)\"\n >\n <ng-container\n *polymorpheusOutlet=\"\n content as text;\n context: {\n $implicit: activeZone,\n close: close\n }\n \"\n >\n {{ text }}\n </ng-container>\n </div>\n <!--This DIV is here to start backwards TreeWalker for focusing last focusable item on ArrowUp-->\n <div></div>\n </ng-template>\n</div>\n", styles: [":host{display:inline-flex}.t-wrapper{border-radius:inherit;height:inherit;flex:1 1 auto;width:100%}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.TuiAccessorProxyDirective, selector: "[tuiAccessorProxy]" }, { type: i3.TuiDropdownPositionSidedDirective, selector: "[tuiDropdownSided]", inputs: ["tuiDropdownSided", "tuiDropdownSidedOffset"] }, { type: i3.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i3.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i1.TuiObscuredDirective, selector: "[tuiObscured]", inputs: ["tuiObscuredEnabled"], outputs: ["tuiObscured"] }, { type: i1.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i4.PolymorpheusTemplate, selector: "ng-template[polymorpheus]", inputs: ["polymorpheus"], exportAs: ["polymorpheus"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
177
+ ], queries: [{ propertyName: "dropdownHost", first: true, predicate: TuiHostedDropdownConnectorDirective, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true, read: ElementRef }, { propertyName: "dropdownDirective", first: true, predicate: TuiDropdownDirective, descendants: true }, { propertyName: "activeZone", first: true, predicate: TuiActiveZoneDirective, descendants: true }], ngImport: i0, template: "<div\n *tuiLet=\"(open$ | async) ?? openChange.value as isOpen\"\n #activeZone=\"tuiActiveZone\"\n tuiAccessorProxy\n class=\"t-wrapper\"\n [tuiDropdownSided]=\"sided\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownManual]=\"isOpen && canOpen\"\n [tuiObscuredEnabled]=\"isOpen\"\n (tuiObscured)=\"onHostObscured($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <ng-content></ng-content>\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"context\"\n >\n <div\n #wrapper\n (keydown)=\"onKeydown($event)\"\n >\n <ng-container\n *polymorpheusOutlet=\"\n content as text;\n context: {\n $implicit: activeZone,\n close: close\n }\n \"\n >\n {{ text }}\n </ng-container>\n </div>\n <!--This DIV is here to start backwards TreeWalker for focusing last focusable item on ArrowUp-->\n <div></div>\n </ng-template>\n</div>\n", styles: [":host{display:inline-flex}.t-wrapper{border-radius:inherit;height:inherit;flex:1 1 auto;width:100%}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.TuiAccessorProxyDirective, selector: "[tuiAccessorProxy]" }, { type: i3.TuiDropdownPositionSidedDirective, selector: "[tuiDropdownSided]", inputs: ["tuiDropdownSided", "tuiDropdownSidedOffset"] }, { type: i3.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i3.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i1.TuiObscuredDirective, selector: "[tuiObscured]", inputs: ["tuiObscuredEnabled"], outputs: ["tuiObscured"] }, { type: i1.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i4.PolymorpheusTemplate, selector: "ng-template[polymorpheus]", inputs: ["polymorpheus"], exportAs: ["polymorpheus"] }, { type: i4.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
178
178
  __decorate([
179
179
  tuiDefaultProp()
180
180
  ], TuiHostedDropdownComponent.prototype, "sided", void 0);
@@ -255,4 +255,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
255
255
  type: HostListener,
256
256
  args: ['keydown.arrowUp', ['$event', 'false']]
257
257
  }] } });
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9ob3N0ZWQtZHJvcGRvd24vaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9ob3N0ZWQtZHJvcGRvd24vaG9zdGVkLWRyb3Bkb3duLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHNCQUFzQixFQUN0QiwwQkFBMEIsRUFFMUIsY0FBYyxFQUVkLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQixvQkFBb0IsRUFDcEIsNEJBQTRCLEdBRS9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIseUJBQXlCLEdBQzVCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTFELE9BQU8s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S0csS0FBSztzQkFEYixNQUFNO3VCQUFDLFlBQVk7Z0JBT1gsYUFBYTtzQkFEckIsTUFBTTtnQkFjSCxJQUFJO3NCQUZQLEtBQUs7Z0JBb0NGLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxnQ0FBZ0M7Z0JBVzdDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBUTFDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBYXhDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRbkQsT0FBTztzQkFGTixZQUFZO3VCQUFDLG1CQUFtQixFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzs7c0JBQ3BELFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLFxuICAgIHR1aUlzRWxlbWVudCxcbiAgICB0dWlJc0VsZW1lbnRFZGl0YWJsZSxcbiAgICB0dWlJc0hUTUxFbGVtZW50LFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHR1aUlzTmF0aXZlS2V5Ym9hcmRGb2N1c2FibGUsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVBvc2l0aW9uQWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7XG4gICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge3R1aUlzRWRpdGluZ0tleX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge3Nob3VsZENhbGx9IGZyb20gJ0B0aW5rb2ZmL25nLWV2ZW50LXBsdWdpbnMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIEVNUFRZLCBtZXJnZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBza2lwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpQWNjZXNzb3JQcm94eURpcmVjdGl2ZX0gZnJvbSAnLi9hY2Nlc3Nvci1wcm94eS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlIb3N0ZWREcm9wZG93bkNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9ob3N0ZWQtZHJvcGRvd24tY29ubmVjdG9yLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpSG9zdGVkRHJvcGRvd25Db250ZXh0XG4gICAgZXh0ZW5kcyBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmU+IHtcbiAgICBjbG9zZSgpOiB2b2lkO1xufVxuXG5mdW5jdGlvbiBzaG91bGRDbG9zZShcbiAgICB0aGlzOiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBldmVudDogRXZlbnQgfCBLZXlib2FyZEV2ZW50LFxuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICAgJ2tleScgaW4gZXZlbnQgJiZcbiAgICAgICAgZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkgPT09ICdlc2NhcGUnICYmXG4gICAgICAgIHRoaXMuY2FuT3BlbiAmJlxuICAgICAgICB0aGlzLm9wZW4gJiZcbiAgICAgICAgIXRoaXMuZHJvcGRvd24/Lm5leHRFbGVtZW50U2libGluZ1xuICAgICk7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmcgKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhvc3RlZC1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2hvc3RlZC1kcm9wZG93bi50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ob3N0ZWQtZHJvcGRvd24uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFR1aUFjY2Vzc29yUHJveHlEaXJlY3RpdmUsXG4gICAgICAgICAgICBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpLCBUdWlQb3NpdGlvbkFjY2Vzc29yXV0sXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiAocG9zaXRpb246IFR1aVBvc2l0aW9uQWNjZXNzb3JbXSB8IG51bGwpID0+IHBvc2l0aW9uPy5bMF0sXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3Ige1xuICAgIEBDb250ZW50Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duSG9zdD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnd3JhcHBlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpRHJvcGRvd25EaXJlY3RpdmUpXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkRpcmVjdGl2ZT86IFR1aURyb3Bkb3duRGlyZWN0aXZlO1xuXG4gICAgLyoqIFRPRE86IHJlbmFtZSBpbiA0LjAgKi9cbiAgICByZWFkb25seSBvcGVuQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgICBAVmlld0NoaWxkKFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUpXG4gICAgcmVhZG9ubHkgYWN0aXZlWm9uZSE6IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmU7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpSG9zdGVkRHJvcGRvd25Db250ZXh0PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzaWRlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNhbk9wZW4gPSB0cnVlO1xuXG4gICAgQE91dHB1dCgnb3BlbkNoYW5nZScpXG4gICAgcmVhZG9ubHkgb3BlbiQgPSBtZXJnZSh0aGlzLm9wZW5DaGFuZ2UsIHRoaXMuaG92ZXIkIHx8IEVNUFRZKS5waXBlKFxuICAgICAgICBza2lwKDEpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBmb2N1c2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgcmVhZG9ubHkgY29udGV4dCE6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhvdmVyJDogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZixcbiAgICApIHt9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IG9wZW4ob3BlbjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLm9wZW5DaGFuZ2UubmV4dChvcGVuKTtcbiAgICB9XG5cbiAgICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3BlbkNoYW5nZS52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRyb3Bkb3duSG9zdD8ubmF0aXZlRWxlbWVudCB8fCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkSG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duSG9zdD8ubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8XG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgZHJvcGRvd24oKTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93bkRpcmVjdGl2ZT8uZHJvcGRvd25Cb3hSZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdHVpSXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSh0aGlzLmhvc3QpXG4gICAgICAgICAgICA/IHRoaXMuaG9zdFxuICAgICAgICAgICAgOiB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtcbiAgICAgICAgICAgICAgICAgIGluaXRpYWw6IHRoaXMuaG9zdCxcbiAgICAgICAgICAgICAgICAgIHJvb3Q6IHRoaXMuZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5faG9zdGVkX2Ryb3Bkb3duX2ZvY3VzZWQnKVxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy5ob3N0KSB8fFxuICAgICAgICAgICAgKHRoaXMub3BlbiAmJlxuICAgICAgICAgICAgICAgICEhdGhpcy53cmFwcGVyICYmXG4gICAgICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC50YXJnZXQnXSlcbiAgICBvbkZvY3VzSW4odGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRIb3N0LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIG9uQ2xpY2sodGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5ob3N0RWRpdGFibGUgJiZcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRIb3N0LmNvbnRhaW5zKHRhcmdldCkgJiZcbiAgICAgICAgICAgICF0aGlzLmhvdmVyJD8uaG92ZXJlZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBzaG91bGRDYWxsKHNob3VsZENsb3NlKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uc2lsZW50JywgWyckZXZlbnQnXSlcbiAgICBvbktleURvd25Fc2MoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50JywgJ3RydWUnXSlcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCcsICdmYWxzZSddKVxuICAgIG9uQXJyb3coZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGRvd246IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0Ryb3Bkb3duKGV2ZW50LCBkb3duKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oe2tleSwgdGFyZ2V0LCBkZWZhdWx0UHJldmVudGVkfTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhZGVmYXVsdFByZXZlbnRlZCAmJlxuICAgICAgICAgICAgdHVpSXNFZGl0aW5nS2V5KGtleSkgJiZcbiAgICAgICAgICAgIHRoaXMuaG9zdEVkaXRhYmxlICYmXG4gICAgICAgICAgICB0dWlJc0hUTUxFbGVtZW50KHRhcmdldCkgJiZcbiAgICAgICAgICAgICF0dWlJc0VsZW1lbnRFZGl0YWJsZSh0YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKCFhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvc3RPYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAob2JzY3VyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlT3BlbihvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghb3BlbiB8fCB0aGlzLmNhbk9wZW4pIHtcbiAgICAgICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWFkb25seSBjbG9zZSA9ICgpOiB2b2lkID0+IHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG5cbiAgICBwcml2YXRlIGdldCBob3N0RWRpdGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc0VsZW1lbnRFZGl0YWJsZSh0aGlzLmNvbXB1dGVkSG9zdCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0Ryb3Bkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBmaXJzdDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFob3N0IHx8XG4gICAgICAgICAgICAhdHVpSXNIVE1MRWxlbWVudChob3N0KSB8fFxuICAgICAgICAgICAgIXR1aUlzRWxlbWVudChldmVudC50YXJnZXQpIHx8XG4gICAgICAgICAgICAhaG9zdC5jb250YWlucyhldmVudC50YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMud3JhcHBlciB8fFxuICAgICAgICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgICAgICAgIXRoaXMuZHJvcGRvd24gfHxcbiAgICAgICAgICAgICF0dWlJc0hUTUxFbGVtZW50KHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU9wZW4odHJ1ZSk7XG5cbiAgICAgICAgICAgIGlmICghdHVpSXNFbGVtZW50RWRpdGFibGUoaG9zdCkpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbml0aWFsID0gZmlyc3RcbiAgICAgICAgICAgID8gdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgICAgICBjb25zdCBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtcbiAgICAgICAgICAgIGluaXRpYWwsXG4gICAgICAgICAgICByb290OiB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIHByZXZpb3VzOiAhZmlyc3QsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghZm9jdXNhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmb2N1c2FibGUuZm9jdXMoKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNIb3N0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNIb3N0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIGlmIChob3N0KSB7XG4gICAgICAgICAgICBob3N0LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzZWRDaGFuZ2UuZW1pdChmb2N1c2VkKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgKnR1aUxldD1cIiEhKG9wZW4kIHwgYXN5bmMpIGFzIGlzT3BlblwiXG4gICAgI2FjdGl2ZVpvbmU9XCJ0dWlBY3RpdmVab25lXCJcbiAgICB0dWlBY2Nlc3NvclByb3h5XG4gICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgIFt0dWlEcm9wZG93blNpZGVkXT1cInNpZGVkXCJcbiAgICBbdHVpRHJvcGRvd25dPVwiZHJvcGRvd25cIlxuICAgIFt0dWlEcm9wZG93bk1hbnVhbF09XCJpc09wZW4gJiYgY2FuT3BlblwiXG4gICAgW3R1aU9ic2N1cmVkRW5hYmxlZF09XCJpc09wZW5cIlxuICAgICh0dWlPYnNjdXJlZCk9XCJvbkhvc3RPYnNjdXJlZCgkZXZlbnQpXCJcbiAgICAodHVpQWN0aXZlWm9uZUNoYW5nZSk9XCJvbkFjdGl2ZVpvbmUoJGV2ZW50KVwiXG4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAjZHJvcGRvd249XCJwb2x5bW9ycGhldXNcIlxuICAgICAgICBbcG9seW1vcnBoZXVzXT1cImNvbnRleHRcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI3dyYXBwZXJcbiAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudCBhcyB0ZXh0O1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGFjdGl2ZVpvbmUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbG9zZTogY2xvc2VcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tVGhpcyBESVYgaXMgaGVyZSB0byBzdGFydCBiYWNrd2FyZHMgVHJlZVdhbGtlciBmb3IgZm9jdXNpbmcgbGFzdCBmb2N1c2FibGUgaXRlbSBvbiBBcnJvd1VwLS0+XG4gICAgICAgIDxkaXY+PC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
258
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9ob3N0ZWQtZHJvcGRvd24vaG9zdGVkLWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9ob3N0ZWQtZHJvcGRvd24vaG9zdGVkLWRyb3Bkb3duLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHNCQUFzQixFQUN0QiwwQkFBMEIsRUFFMUIsY0FBYyxFQUVkLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQixvQkFBb0IsRUFDcEIsNEJBQTRCLEdBRS9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIseUJBQXlCLEdBQzVCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTFELE9BQU8s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S0csS0FBSztzQkFEYixNQUFNO3VCQUFDLFlBQVk7Z0JBT1gsYUFBYTtzQkFEckIsTUFBTTtnQkFjSCxJQUFJO3NCQUZQLEtBQUs7Z0JBb0NGLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxnQ0FBZ0M7Z0JBVzdDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBUTFDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBYXhDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRbkQsT0FBTztzQkFGTixZQUFZO3VCQUFDLG1CQUFtQixFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzs7c0JBQ3BELFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlLFxuICAgIHR1aUlzRWxlbWVudCxcbiAgICB0dWlJc0VsZW1lbnRFZGl0YWJsZSxcbiAgICB0dWlJc0hUTUxFbGVtZW50LFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHR1aUlzTmF0aXZlS2V5Ym9hcmRGb2N1c2FibGUsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVBvc2l0aW9uQWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7XG4gICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge3R1aUlzRWRpdGluZ0tleX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge3Nob3VsZENhbGx9IGZyb20gJ0B0aW5rb2ZmL25nLWV2ZW50LXBsdWdpbnMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIEVNUFRZLCBtZXJnZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBza2lwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpQWNjZXNzb3JQcm94eURpcmVjdGl2ZX0gZnJvbSAnLi9hY2Nlc3Nvci1wcm94eS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlIb3N0ZWREcm9wZG93bkNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9ob3N0ZWQtZHJvcGRvd24tY29ubmVjdG9yLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpSG9zdGVkRHJvcGRvd25Db250ZXh0XG4gICAgZXh0ZW5kcyBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmU+IHtcbiAgICBjbG9zZSgpOiB2b2lkO1xufVxuXG5mdW5jdGlvbiBzaG91bGRDbG9zZShcbiAgICB0aGlzOiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBldmVudDogRXZlbnQgfCBLZXlib2FyZEV2ZW50LFxuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICAgJ2tleScgaW4gZXZlbnQgJiZcbiAgICAgICAgZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkgPT09ICdlc2NhcGUnICYmXG4gICAgICAgIHRoaXMuY2FuT3BlbiAmJlxuICAgICAgICB0aGlzLm9wZW4gJiZcbiAgICAgICAgIXRoaXMuZHJvcGRvd24/Lm5leHRFbGVtZW50U2libGluZ1xuICAgICk7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmcgKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhvc3RlZC1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2hvc3RlZC1kcm9wZG93bi50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ob3N0ZWQtZHJvcGRvd24uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFR1aUFjY2Vzc29yUHJveHlEaXJlY3RpdmUsXG4gICAgICAgICAgICBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpLCBUdWlQb3NpdGlvbkFjY2Vzc29yXV0sXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiAocG9zaXRpb246IFR1aVBvc2l0aW9uQWNjZXNzb3JbXSB8IG51bGwpID0+IHBvc2l0aW9uPy5bMF0sXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3Ige1xuICAgIEBDb250ZW50Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db25uZWN0b3JEaXJlY3RpdmUsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duSG9zdD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnd3JhcHBlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpRHJvcGRvd25EaXJlY3RpdmUpXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkRpcmVjdGl2ZT86IFR1aURyb3Bkb3duRGlyZWN0aXZlO1xuXG4gICAgLyoqIFRPRE86IHJlbmFtZSBpbiA0LjAgKi9cbiAgICByZWFkb25seSBvcGVuQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgICBAVmlld0NoaWxkKFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUpXG4gICAgcmVhZG9ubHkgYWN0aXZlWm9uZSE6IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmU7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpSG9zdGVkRHJvcGRvd25Db250ZXh0PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzaWRlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNhbk9wZW4gPSB0cnVlO1xuXG4gICAgQE91dHB1dCgnb3BlbkNoYW5nZScpXG4gICAgcmVhZG9ubHkgb3BlbiQgPSBtZXJnZSh0aGlzLm9wZW5DaGFuZ2UsIHRoaXMuaG92ZXIkIHx8IEVNUFRZKS5waXBlKFxuICAgICAgICBza2lwKDEpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBmb2N1c2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgcmVhZG9ubHkgY29udGV4dCE6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhvdmVyJDogVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZSB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZixcbiAgICApIHt9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IG9wZW4ob3BlbjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLm9wZW5DaGFuZ2UubmV4dChvcGVuKTtcbiAgICB9XG5cbiAgICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3BlbkNoYW5nZS52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRyb3Bkb3duSG9zdD8ubmF0aXZlRWxlbWVudCB8fCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkSG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duSG9zdD8ubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8XG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgZHJvcGRvd24oKTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93bkRpcmVjdGl2ZT8uZHJvcGRvd25Cb3hSZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdHVpSXNOYXRpdmVLZXlib2FyZEZvY3VzYWJsZSh0aGlzLmhvc3QpXG4gICAgICAgICAgICA/IHRoaXMuaG9zdFxuICAgICAgICAgICAgOiB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtcbiAgICAgICAgICAgICAgICAgIGluaXRpYWw6IHRoaXMuaG9zdCxcbiAgICAgICAgICAgICAgICAgIHJvb3Q6IHRoaXMuZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5faG9zdGVkX2Ryb3Bkb3duX2ZvY3VzZWQnKVxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy5ob3N0KSB8fFxuICAgICAgICAgICAgKHRoaXMub3BlbiAmJlxuICAgICAgICAgICAgICAgICEhdGhpcy53cmFwcGVyICYmXG4gICAgICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC50YXJnZXQnXSlcbiAgICBvbkZvY3VzSW4odGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRIb3N0LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIG9uQ2xpY2sodGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5ob3N0RWRpdGFibGUgJiZcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRIb3N0LmNvbnRhaW5zKHRhcmdldCkgJiZcbiAgICAgICAgICAgICF0aGlzLmhvdmVyJD8uaG92ZXJlZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbighdGhpcy5vcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBzaG91bGRDYWxsKHNob3VsZENsb3NlKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uc2lsZW50JywgWyckZXZlbnQnXSlcbiAgICBvbktleURvd25Fc2MoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50JywgJ3RydWUnXSlcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCcsICdmYWxzZSddKVxuICAgIG9uQXJyb3coZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGRvd246IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0Ryb3Bkb3duKGV2ZW50LCBkb3duKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oe2tleSwgdGFyZ2V0LCBkZWZhdWx0UHJldmVudGVkfTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhZGVmYXVsdFByZXZlbnRlZCAmJlxuICAgICAgICAgICAgdHVpSXNFZGl0aW5nS2V5KGtleSkgJiZcbiAgICAgICAgICAgIHRoaXMuaG9zdEVkaXRhYmxlICYmXG4gICAgICAgICAgICB0dWlJc0hUTUxFbGVtZW50KHRhcmdldCkgJiZcbiAgICAgICAgICAgICF0dWlJc0VsZW1lbnRFZGl0YWJsZSh0YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0hvc3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKCFhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvc3RPYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAob2JzY3VyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlT3BlbihvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghb3BlbiB8fCB0aGlzLmNhbk9wZW4pIHtcbiAgICAgICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWFkb25seSBjbG9zZSA9ICgpOiB2b2lkID0+IHRoaXMudXBkYXRlT3BlbihmYWxzZSk7XG5cbiAgICBwcml2YXRlIGdldCBob3N0RWRpdGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc0VsZW1lbnRFZGl0YWJsZSh0aGlzLmNvbXB1dGVkSG9zdCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0Ryb3Bkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBmaXJzdDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFob3N0IHx8XG4gICAgICAgICAgICAhdHVpSXNIVE1MRWxlbWVudChob3N0KSB8fFxuICAgICAgICAgICAgIXR1aUlzRWxlbWVudChldmVudC50YXJnZXQpIHx8XG4gICAgICAgICAgICAhaG9zdC5jb250YWlucyhldmVudC50YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMud3JhcHBlciB8fFxuICAgICAgICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgICAgICAgIXRoaXMuZHJvcGRvd24gfHxcbiAgICAgICAgICAgICF0dWlJc0hUTUxFbGVtZW50KHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU9wZW4odHJ1ZSk7XG5cbiAgICAgICAgICAgIGlmICghdHVpSXNFbGVtZW50RWRpdGFibGUoaG9zdCkpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbml0aWFsID0gZmlyc3RcbiAgICAgICAgICAgID8gdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgIDogdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgICAgICBjb25zdCBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKHtcbiAgICAgICAgICAgIGluaXRpYWwsXG4gICAgICAgICAgICByb290OiB0aGlzLndyYXBwZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIHByZXZpb3VzOiAhZmlyc3QsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghZm9jdXNhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmb2N1c2FibGUuZm9jdXMoKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNIb3N0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZU9wZW4oZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNIb3N0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIGlmIChob3N0KSB7XG4gICAgICAgICAgICBob3N0LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzZWRDaGFuZ2UuZW1pdChmb2N1c2VkKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgKnR1aUxldD1cIihvcGVuJCB8IGFzeW5jKSA/PyBvcGVuQ2hhbmdlLnZhbHVlIGFzIGlzT3BlblwiXG4gICAgI2FjdGl2ZVpvbmU9XCJ0dWlBY3RpdmVab25lXCJcbiAgICB0dWlBY2Nlc3NvclByb3h5XG4gICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgIFt0dWlEcm9wZG93blNpZGVkXT1cInNpZGVkXCJcbiAgICBbdHVpRHJvcGRvd25dPVwiZHJvcGRvd25cIlxuICAgIFt0dWlEcm9wZG93bk1hbnVhbF09XCJpc09wZW4gJiYgY2FuT3BlblwiXG4gICAgW3R1aU9ic2N1cmVkRW5hYmxlZF09XCJpc09wZW5cIlxuICAgICh0dWlPYnNjdXJlZCk9XCJvbkhvc3RPYnNjdXJlZCgkZXZlbnQpXCJcbiAgICAodHVpQWN0aXZlWm9uZUNoYW5nZSk9XCJvbkFjdGl2ZVpvbmUoJGV2ZW50KVwiXG4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAjZHJvcGRvd249XCJwb2x5bW9ycGhldXNcIlxuICAgICAgICBbcG9seW1vcnBoZXVzXT1cImNvbnRleHRcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI3dyYXBwZXJcbiAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudCBhcyB0ZXh0O1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGFjdGl2ZVpvbmUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbG9zZTogY2xvc2VcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tVGhpcyBESVYgaXMgaGVyZSB0byBzdGFydCBiYWNrd2FyZHMgVHJlZVdhbGtlciBmb3IgZm9jdXNpbmcgbGFzdCBmb2N1c2FibGUgaXRlbSBvbiBBcnJvd1VwLS0+XG4gICAgICAgIDxkaXY+PC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
@@ -25,7 +25,7 @@ export class TuiRootComponent {
25
25
  }
26
26
  }
27
27
  TuiRootComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiRootComponent, deps: [{ token: TUI_ANIMATIONS_DURATION }, { token: TUI_DIALOGS }, { token: TUI_IS_MOBILE }, { token: TUI_IS_MOBILE_RES }, { token: DOCUMENT }, { token: TUI_THEME }], target: i0.ɵɵFactoryTarget.Component });
28
- TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.26.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration" } }, providers: [TUI_IS_MOBILE_RES_PROVIDER], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{position:relative;z-index:0;height:100%}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i3.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i3.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i3.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i4.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
28
+ TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.27.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration" } }, providers: [TUI_IS_MOBILE_RES_PROVIDER], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{position:relative;z-index:0;height:100%}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i3.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i3.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i3.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i4.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiRootComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{
@@ -1,4 +1,4 @@
1
- import { inject, InjectionToken, Optional, SkipSelf } from '@angular/core';
1
+ import { inject, InjectionToken, Optional, SkipSelf, } from '@angular/core';
2
2
  import { tuiIsString, tuiSvgLinearGradientProcessor, } from '@taiga-ui/cdk';
3
3
  import { TUI_ICONS_PATH, TUI_SVG_CONTENT_PROCESSOR, TUI_SVG_SRC_PROCESSOR, } from '@taiga-ui/core/tokens';
4
4
  import { tuiIconsPathFactory } from '@taiga-ui/core/utils';
@@ -27,11 +27,32 @@ export const TUI_SVG_OPTIONS = new InjectionToken(`[TUI_SVG_OPTIONS]`, {
27
27
  contentProcessor: inject(TUI_SVG_CONTENT_PROCESSOR),
28
28
  }),
29
29
  });
30
+ export const TUI_SVG_SRC_INTERCEPTORS = new InjectionToken(`[TUI_SVG_SRC_INTERCEPTORS]`);
31
+ export function tuiSvgSrcInterceptors(interceptor) {
32
+ return {
33
+ provide: TUI_SVG_SRC_INTERCEPTORS,
34
+ useValue: interceptor,
35
+ multi: true,
36
+ };
37
+ }
30
38
  export const tuiSvgOptionsProvider = options => ({
31
39
  provide: TUI_SVG_OPTIONS,
32
- deps: [[new SkipSelf(), new Optional(), TUI_SVG_OPTIONS]],
33
- useFactory: (fallback) => (Object.assign(Object.assign(Object.assign({}, (fallback || TUI_SVG_DEFAULT_OPTIONS)), options), { path: tuiIsString(options.path)
34
- ? tuiIconsPathFactory(options.path)
35
- : options.path || (fallback === null || fallback === void 0 ? void 0 : fallback.path) || TUI_SVG_DEFAULT_OPTIONS.path })),
40
+ deps: [
41
+ [new SkipSelf(), new Optional(), TUI_SVG_OPTIONS],
42
+ [new Optional(), TUI_ICONS_PATH],
43
+ [new Optional(), TUI_SVG_SRC_PROCESSOR],
44
+ [new Optional(), TUI_SVG_CONTENT_PROCESSOR],
45
+ ],
46
+ useFactory: (fallback, path, srcProcessor, contentProcessor) => {
47
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
48
+ return ({
49
+ path: tuiIsString(options.path)
50
+ ? tuiIconsPathFactory(options.path)
51
+ : (_c = (_b = (_a = options.path) !== null && _a !== void 0 ? _a : fallback === null || fallback === void 0 ? void 0 : fallback.path) !== null && _b !== void 0 ? _b : path) !== null && _c !== void 0 ? _c : TUI_SVG_DEFAULT_OPTIONS.path,
52
+ deprecated: (_e = (_d = options.deprecated) !== null && _d !== void 0 ? _d : fallback === null || fallback === void 0 ? void 0 : fallback.deprecated) !== null && _e !== void 0 ? _e : TUI_SVG_DEFAULT_OPTIONS.deprecated,
53
+ srcProcessor: (_h = (_g = (_f = options.srcProcessor) !== null && _f !== void 0 ? _f : fallback === null || fallback === void 0 ? void 0 : fallback.srcProcessor) !== null && _g !== void 0 ? _g : srcProcessor) !== null && _h !== void 0 ? _h : TUI_SVG_DEFAULT_OPTIONS.srcProcessor,
54
+ contentProcessor: (_l = (_k = (_j = options.contentProcessor) !== null && _j !== void 0 ? _j : fallback === null || fallback === void 0 ? void 0 : fallback.contentProcessor) !== null && _k !== void 0 ? _k : contentProcessor) !== null && _l !== void 0 ? _l : TUI_SVG_DEFAULT_OPTIONS.contentProcessor,
55
+ });
56
+ },
36
57
  });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3ZnL3N2Zy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0IsTUFBTSxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFFSCxXQUFXLEVBRVgsNkJBQTZCLEdBQ2hDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxjQUFjLEVBQ2QseUJBQXlCLEVBQ3pCLHFCQUFxQixHQUN4QixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFOUIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFTeEQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQWtCO0lBQ2xELElBQUksRUFBRSxtQkFBbUIsQ0FBQyx1QkFBdUIsQ0FBQztJQUNsRCxZQUFZLEVBQUUsUUFBUTtJQUN0QixnQkFBZ0IsRUFBRSw2QkFBNkI7SUFDL0MsVUFBVSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoRSxNQUFNLE9BQU8sR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5QyxPQUFPLE9BQU87WUFDVixDQUFDLENBQUMsR0FBRyxPQUFPLHVDQUF1QyxPQUFPLDBCQUEwQjtZQUNwRixDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2IsQ0FBQztDQUNKLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FBZ0IsbUJBQW1CLEVBQUU7SUFDbEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDWixJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQztRQUM1QixVQUFVLEVBQUUsdUJBQXVCLENBQUMsVUFBVTtRQUM5QyxZQUFZLEVBQUUsTUFBTSxDQUFDLHFCQUFxQixDQUFDO1FBQzNDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQztLQUN0RCxDQUFDO0NBQ0wsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBSVgsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLE9BQU8sRUFBRSxlQUFlO0lBQ3hCLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3pELFVBQVUsRUFBRSxDQUFDLFFBQThCLEVBQUUsRUFBRSxDQUFDLCtDQUN6QyxDQUFDLFFBQVEsSUFBSSx1QkFBdUIsQ0FBQyxHQUNyQyxPQUFPLEtBQ1YsSUFBSSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQzNCLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQ25DLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFJLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxJQUFJLENBQUEsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLElBQ3RFO0NBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtGYWN0b3J5UHJvdmlkZXIsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsLCBTa2lwU2VsZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NhZmVIdG1sfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gICAgVHVpSGFuZGxlcixcbiAgICB0dWlJc1N0cmluZyxcbiAgICBUdWlTdHJpbmdIYW5kbGVyLFxuICAgIHR1aVN2Z0xpbmVhckdyYWRpZW50UHJvY2Vzc29yLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVFVJX0lDT05TX1BBVEgsXG4gICAgVFVJX1NWR19DT05URU5UX1BST0NFU1NPUixcbiAgICBUVUlfU1ZHX1NSQ19QUk9DRVNTT1IsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUljb25zUGF0aEZhY3Rvcnl9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7aWRlbnRpdHl9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1RVSV9ERVBSRUNBVEVEX0lDT05TfSBmcm9tICcuL2RlcHJlY2F0ZWQtaWNvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR1aVN2Z09wdGlvbnMge1xuICAgIHJlYWRvbmx5IHBhdGg6IFR1aVN0cmluZ0hhbmRsZXI8c3RyaW5nPjtcbiAgICByZWFkb25seSBkZXByZWNhdGVkOiBUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz47XG4gICAgcmVhZG9ubHkgc3JjUHJvY2Vzc29yOiBUdWlIYW5kbGVyPFNhZmVIdG1sIHwgc3RyaW5nLCBTYWZlSHRtbCB8IHN0cmluZz47XG4gICAgcmVhZG9ubHkgY29udGVudFByb2Nlc3NvcjogVHVpSGFuZGxlcjxTYWZlSHRtbCB8IHN0cmluZywgU2FmZUh0bWwgfCBzdHJpbmc+O1xufVxuXG5leHBvcnQgY29uc3QgVFVJX1NWR19ERUZBVUxUX09QVElPTlM6IFR1aVN2Z09wdGlvbnMgPSB7XG4gICAgcGF0aDogdHVpSWNvbnNQYXRoRmFjdG9yeShgYXNzZXRzL3RhaWdhLXVpL2ljb25zYCksXG4gICAgc3JjUHJvY2Vzc29yOiBpZGVudGl0eSxcbiAgICBjb250ZW50UHJvY2Vzc29yOiB0dWlTdmdMaW5lYXJHcmFkaWVudFByb2Nlc3NvcixcbiAgICBkZXByZWNhdGVkOiBzcmMgPT4ge1xuICAgICAgICBjb25zdCBvbGRJY29uID0gc3JjLnJlcGxhY2UoYExhcmdlYCwgYGApLnJlcGxhY2UoYE91dGxpbmVgLCBgYCk7XG4gICAgICAgIGNvbnN0IG5ld0ljb24gPSBUVUlfREVQUkVDQVRFRF9JQ09OU1tvbGRJY29uXTtcblxuICAgICAgICByZXR1cm4gbmV3SWNvblxuICAgICAgICAgICAgPyBgJHtvbGRJY29ufS8oTGFyZ2V8T3V0bGluZSkgaXMgZGVwcmVjYXRlZCwgdXNlICR7bmV3SWNvbn0vKExhcmdlfE91dGxpbmUpIGluc3RlYWRgXG4gICAgICAgICAgICA6IGBgO1xuICAgIH0sXG59O1xuXG4vKipcbiAqIFNWRyBjb21wb25lbnQgb3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgVFVJX1NWR19PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPFR1aVN2Z09wdGlvbnM+KGBbVFVJX1NWR19PUFRJT05TXWAsIHtcbiAgICBmYWN0b3J5OiAoKSA9PiAoe1xuICAgICAgICBwYXRoOiBpbmplY3QoVFVJX0lDT05TX1BBVEgpLFxuICAgICAgICBkZXByZWNhdGVkOiBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5kZXByZWNhdGVkLFxuICAgICAgICBzcmNQcm9jZXNzb3I6IGluamVjdChUVUlfU1ZHX1NSQ19QUk9DRVNTT1IpLFxuICAgICAgICBjb250ZW50UHJvY2Vzc29yOiBpbmplY3QoVFVJX1NWR19DT05URU5UX1BST0NFU1NPUiksXG4gICAgfSksXG59KTtcblxuZXhwb3J0IGNvbnN0IHR1aVN2Z09wdGlvbnNQcm92aWRlcjogKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8T21pdDxUdWlTdmdPcHRpb25zLCAncGF0aCc+PiAmIHtcbiAgICAgICAgcGF0aD86IFR1aVN2Z09wdGlvbnNbJ3BhdGgnXSB8IHN0cmluZztcbiAgICB9LFxuKSA9PiBGYWN0b3J5UHJvdmlkZXIgPSBvcHRpb25zID0+ICh7XG4gICAgcHJvdmlkZTogVFVJX1NWR19PUFRJT05TLFxuICAgIGRlcHM6IFtbbmV3IFNraXBTZWxmKCksIG5ldyBPcHRpb25hbCgpLCBUVUlfU1ZHX09QVElPTlNdXSxcbiAgICB1c2VGYWN0b3J5OiAoZmFsbGJhY2s6IFR1aVN2Z09wdGlvbnMgfCBudWxsKSA9PiAoe1xuICAgICAgICAuLi4oZmFsbGJhY2sgfHwgVFVJX1NWR19ERUZBVUxUX09QVElPTlMpLFxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBwYXRoOiB0dWlJc1N0cmluZyhvcHRpb25zLnBhdGgpXG4gICAgICAgICAgICA/IHR1aUljb25zUGF0aEZhY3Rvcnkob3B0aW9ucy5wYXRoKVxuICAgICAgICAgICAgOiBvcHRpb25zLnBhdGggfHwgZmFsbGJhY2s/LnBhdGggfHwgVFVJX1NWR19ERUZBVUxUX09QVElPTlMucGF0aCxcbiAgICB9KSxcbn0pO1xuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3ZnL3N2Zy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxNQUFNLEVBQ04sY0FBYyxFQUNkLFFBQVEsRUFFUixRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVILFdBQVcsRUFHWCw2QkFBNkIsR0FDaEMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILGNBQWMsRUFDZCx5QkFBeUIsRUFDekIscUJBQXFCLEdBQ3hCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQVN4RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBa0I7SUFDbEQsSUFBSSxFQUFFLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDO0lBQ2xELFlBQVksRUFBRSxRQUFRO0lBQ3RCLGdCQUFnQixFQUFFLDZCQUE2QjtJQUMvQyxVQUFVLEVBQUUsR0FBRyxDQUFDLEVBQUU7UUFDZCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTlDLE9BQU8sT0FBTztZQUNWLENBQUMsQ0FBQyxHQUFHLE9BQU8sdUNBQXVDLE9BQU8sMEJBQTBCO1lBQ3BGLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDYixDQUFDO0NBQ0osQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFnQixtQkFBbUIsRUFBRTtJQUNsRixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNaLElBQUksRUFBRSxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzVCLFVBQVUsRUFBRSx1QkFBdUIsQ0FBQyxVQUFVO1FBQzlDLFlBQVksRUFBRSxNQUFNLENBQUMscUJBQXFCLENBQUM7UUFDM0MsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLHlCQUF5QixDQUFDO0tBQ3RELENBQUM7Q0FDTCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FFeEQsNEJBQTRCLENBQUMsQ0FBQztBQUVoQyxNQUFNLFVBQVUscUJBQXFCLENBQ2pDLFdBQWlEO0lBRWpELE9BQU87UUFDSCxPQUFPLEVBQUUsd0JBQXdCO1FBQ2pDLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLEtBQUssRUFBRSxJQUFJO0tBQ2QsQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FJWCxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsT0FBTyxFQUFFLGVBQWU7SUFDeEIsSUFBSSxFQUFFO1FBQ0YsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLElBQUksUUFBUSxFQUFFLEVBQUUsZUFBZSxDQUFDO1FBQ2pELENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxjQUFjLENBQUM7UUFDaEMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLHFCQUFxQixDQUFDO1FBQ3ZDLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSx5QkFBeUIsQ0FBQztLQUM5QztJQUNELFVBQVUsRUFBRSxDQUNSLFFBQThCLEVBQzlCLElBQWtDLEVBQ2xDLFlBQWtELEVBQ2xELGdCQUEwRCxFQUM3QyxFQUFFOztRQUFDLE9BQUEsQ0FBQztZQUNqQixJQUFJLEVBQUUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQzNCLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUNuQyxDQUFDLENBQUMsTUFBQSxNQUFBLE1BQUEsT0FBTyxDQUFDLElBQUksbUNBQUksUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLElBQUksbUNBQUksSUFBSSxtQ0FBSSx1QkFBdUIsQ0FBQyxJQUFJO1lBQzVFLFVBQVUsRUFDTixNQUFBLE1BQUEsT0FBTyxDQUFDLFVBQVUsbUNBQ2xCLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxVQUFVLG1DQUNwQix1QkFBdUIsQ0FBQyxVQUFVO1lBQ3RDLFlBQVksRUFDUixNQUFBLE1BQUEsTUFBQSxPQUFPLENBQUMsWUFBWSxtQ0FDcEIsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFlBQVksbUNBQ3RCLFlBQVksbUNBQ1osdUJBQXVCLENBQUMsWUFBWTtZQUN4QyxnQkFBZ0IsRUFDWixNQUFBLE1BQUEsTUFBQSxPQUFPLENBQUMsZ0JBQWdCLG1DQUN4QixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsZ0JBQWdCLG1DQUMxQixnQkFBZ0IsbUNBQ2hCLHVCQUF1QixDQUFDLGdCQUFnQjtTQUMvQyxDQUFDLENBQUE7S0FBQTtDQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRmFjdG9yeVByb3ZpZGVyLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBPcHRpb25hbCxcbiAgICBQcm92aWRlcixcbiAgICBTa2lwU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFR1aUhhbmRsZXIsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgVHVpU2FmZUh0bWwsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbiAgICB0dWlTdmdMaW5lYXJHcmFkaWVudFByb2Nlc3Nvcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFRVSV9JQ09OU19QQVRILFxuICAgIFRVSV9TVkdfQ09OVEVOVF9QUk9DRVNTT1IsXG4gICAgVFVJX1NWR19TUkNfUFJPQ0VTU09SLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlJY29uc1BhdGhGYWN0b3J5fSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscyc7XG5pbXBvcnQge2lkZW50aXR5fSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfREVQUkVDQVRFRF9JQ09OU30gZnJvbSAnLi9kZXByZWNhdGVkLWljb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlTdmdPcHRpb25zIHtcbiAgICByZWFkb25seSBwYXRoOiBUdWlTdHJpbmdIYW5kbGVyPHN0cmluZz47XG4gICAgcmVhZG9ubHkgZGVwcmVjYXRlZDogVHVpU3RyaW5nSGFuZGxlcjxzdHJpbmc+O1xuICAgIHJlYWRvbmx5IHNyY1Byb2Nlc3NvcjogVHVpSGFuZGxlcjxUdWlTYWZlSHRtbCwgVHVpU2FmZUh0bWw+O1xuICAgIHJlYWRvbmx5IGNvbnRlbnRQcm9jZXNzb3I6IFR1aUhhbmRsZXI8VHVpU2FmZUh0bWwsIFR1aVNhZmVIdG1sPjtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9TVkdfREVGQVVMVF9PUFRJT05TOiBUdWlTdmdPcHRpb25zID0ge1xuICAgIHBhdGg6IHR1aUljb25zUGF0aEZhY3RvcnkoYGFzc2V0cy90YWlnYS11aS9pY29uc2ApLFxuICAgIHNyY1Byb2Nlc3NvcjogaWRlbnRpdHksXG4gICAgY29udGVudFByb2Nlc3NvcjogdHVpU3ZnTGluZWFyR3JhZGllbnRQcm9jZXNzb3IsXG4gICAgZGVwcmVjYXRlZDogc3JjID0+IHtcbiAgICAgICAgY29uc3Qgb2xkSWNvbiA9IHNyYy5yZXBsYWNlKGBMYXJnZWAsIGBgKS5yZXBsYWNlKGBPdXRsaW5lYCwgYGApO1xuICAgICAgICBjb25zdCBuZXdJY29uID0gVFVJX0RFUFJFQ0FURURfSUNPTlNbb2xkSWNvbl07XG5cbiAgICAgICAgcmV0dXJuIG5ld0ljb25cbiAgICAgICAgICAgID8gYCR7b2xkSWNvbn0vKExhcmdlfE91dGxpbmUpIGlzIGRlcHJlY2F0ZWQsIHVzZSAke25ld0ljb259LyhMYXJnZXxPdXRsaW5lKSBpbnN0ZWFkYFxuICAgICAgICAgICAgOiBgYDtcbiAgICB9LFxufTtcblxuLyoqXG4gKiBTVkcgY29tcG9uZW50IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9TVkdfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUdWlTdmdPcHRpb25zPihgW1RVSV9TVkdfT1BUSU9OU11gLCB7XG4gICAgZmFjdG9yeTogKCkgPT4gKHtcbiAgICAgICAgcGF0aDogaW5qZWN0KFRVSV9JQ09OU19QQVRIKSxcbiAgICAgICAgZGVwcmVjYXRlZDogVFVJX1NWR19ERUZBVUxUX09QVElPTlMuZGVwcmVjYXRlZCxcbiAgICAgICAgc3JjUHJvY2Vzc29yOiBpbmplY3QoVFVJX1NWR19TUkNfUFJPQ0VTU09SKSxcbiAgICAgICAgY29udGVudFByb2Nlc3NvcjogaW5qZWN0KFRVSV9TVkdfQ09OVEVOVF9QUk9DRVNTT1IpLFxuICAgIH0pLFxufSk7XG5cbmV4cG9ydCBjb25zdCBUVUlfU1ZHX1NSQ19JTlRFUkNFUFRPUlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gICAgVHVpSGFuZGxlcjxUdWlTYWZlSHRtbCwgVHVpU2FmZUh0bWw+XG4+KGBbVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTXWApO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpU3ZnU3JjSW50ZXJjZXB0b3JzKFxuICAgIGludGVyY2VwdG9yOiBUdWlIYW5kbGVyPFR1aVNhZmVIdG1sLCBUdWlTYWZlSHRtbD4sXG4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTLFxuICAgICAgICB1c2VWYWx1ZTogaW50ZXJjZXB0b3IsXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCB0dWlTdmdPcHRpb25zUHJvdmlkZXI6IChcbiAgICBvcHRpb25zOiBQYXJ0aWFsPE9taXQ8VHVpU3ZnT3B0aW9ucywgJ3BhdGgnPj4gJiB7XG4gICAgICAgIHBhdGg/OiBUdWlTdmdPcHRpb25zWydwYXRoJ10gfCBzdHJpbmc7XG4gICAgfSxcbikgPT4gRmFjdG9yeVByb3ZpZGVyID0gb3B0aW9ucyA9PiAoe1xuICAgIHByb3ZpZGU6IFRVSV9TVkdfT1BUSU9OUyxcbiAgICBkZXBzOiBbXG4gICAgICAgIFtuZXcgU2tpcFNlbGYoKSwgbmV3IE9wdGlvbmFsKCksIFRVSV9TVkdfT1BUSU9OU10sXG4gICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgVFVJX0lDT05TX1BBVEhdLFxuICAgICAgICBbbmV3IE9wdGlvbmFsKCksIFRVSV9TVkdfU1JDX1BST0NFU1NPUl0sXG4gICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgVFVJX1NWR19DT05URU5UX1BST0NFU1NPUl0sXG4gICAgXSxcbiAgICB1c2VGYWN0b3J5OiAoXG4gICAgICAgIGZhbGxiYWNrOiBUdWlTdmdPcHRpb25zIHwgbnVsbCxcbiAgICAgICAgcGF0aDogVHVpU3ZnT3B0aW9uc1sncGF0aCddIHwgbnVsbCxcbiAgICAgICAgc3JjUHJvY2Vzc29yOiBUdWlTdmdPcHRpb25zWydzcmNQcm9jZXNzb3InXSB8IG51bGwsXG4gICAgICAgIGNvbnRlbnRQcm9jZXNzb3I6IFR1aVN2Z09wdGlvbnNbJ2NvbnRlbnRQcm9jZXNzb3InXSB8IG51bGwsXG4gICAgKTogVHVpU3ZnT3B0aW9ucyA9PiAoe1xuICAgICAgICBwYXRoOiB0dWlJc1N0cmluZyhvcHRpb25zLnBhdGgpXG4gICAgICAgICAgICA/IHR1aUljb25zUGF0aEZhY3Rvcnkob3B0aW9ucy5wYXRoKVxuICAgICAgICAgICAgOiBvcHRpb25zLnBhdGggPz8gZmFsbGJhY2s/LnBhdGggPz8gcGF0aCA/PyBUVUlfU1ZHX0RFRkFVTFRfT1BUSU9OUy5wYXRoLFxuICAgICAgICBkZXByZWNhdGVkOlxuICAgICAgICAgICAgb3B0aW9ucy5kZXByZWNhdGVkID8/XG4gICAgICAgICAgICBmYWxsYmFjaz8uZGVwcmVjYXRlZCA/P1xuICAgICAgICAgICAgVFVJX1NWR19ERUZBVUxUX09QVElPTlMuZGVwcmVjYXRlZCxcbiAgICAgICAgc3JjUHJvY2Vzc29yOlxuICAgICAgICAgICAgb3B0aW9ucy5zcmNQcm9jZXNzb3IgPz9cbiAgICAgICAgICAgIGZhbGxiYWNrPy5zcmNQcm9jZXNzb3IgPz9cbiAgICAgICAgICAgIHNyY1Byb2Nlc3NvciA/P1xuICAgICAgICAgICAgVFVJX1NWR19ERUZBVUxUX09QVElPTlMuc3JjUHJvY2Vzc29yLFxuICAgICAgICBjb250ZW50UHJvY2Vzc29yOlxuICAgICAgICAgICAgb3B0aW9ucy5jb250ZW50UHJvY2Vzc29yID8/XG4gICAgICAgICAgICBmYWxsYmFjaz8uY29udGVudFByb2Nlc3NvciA/P1xuICAgICAgICAgICAgY29udGVudFByb2Nlc3NvciA/P1xuICAgICAgICAgICAgVFVJX1NWR19ERUZBVUxUX09QVElPTlMuY29udGVudFByb2Nlc3NvcixcbiAgICB9KSxcbn0pO1xuIl19
@@ -10,7 +10,7 @@ import { TUI_SANITIZER } from '@taiga-ui/core/tokens';
10
10
  import { tuiIsPresumedHTMLString } from '@taiga-ui/core/utils/miscellaneous';
11
11
  import { of, ReplaySubject } from 'rxjs';
12
12
  import { catchError, map, startWith, switchMap } from 'rxjs/operators';
13
- import { TUI_SVG_OPTIONS } from './svg-options';
13
+ import { TUI_SVG_OPTIONS, TUI_SVG_SRC_INTERCEPTORS } from './svg-options';
14
14
  import * as i0 from "@angular/core";
15
15
  import * as i1 from "@taiga-ui/cdk";
16
16
  import * as i2 from "@angular/common";
@@ -21,10 +21,11 @@ const MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';
21
21
  const FAILED_EXTERNAL_ICON = 'Failed to load external SVG';
22
22
  // TODO: Consider moving to CDK along with SvgService and SvgDefsHostComponent
23
23
  export class TuiSvgComponent {
24
- constructor(doc, win, options, tuiSanitizer, svgService, staticRequestService, sanitizer, el) {
24
+ constructor(doc, win, options, srcInterceptors, tuiSanitizer, svgService, staticRequestService, sanitizer, el) {
25
25
  this.doc = doc;
26
26
  this.win = win;
27
27
  this.options = options;
28
+ this.srcInterceptors = srcInterceptors;
28
29
  this.tuiSanitizer = tuiSanitizer;
29
30
  this.svgService = svgService;
30
31
  this.staticRequestService = staticRequestService;
@@ -42,9 +43,10 @@ export class TuiSvgComponent {
42
43
  }), startWith(''));
43
44
  }
44
45
  set src(src) {
46
+ var _a;
45
47
  const deprecated = this.options.deprecated(String(src));
46
48
  ngDevMode && tuiAssert.assert(!deprecated, deprecated);
47
- this.icon = this.options.srcProcessor(src);
49
+ this.icon = ((_a = this.srcInterceptors) !== null && _a !== void 0 ? _a : []).reduce((newSrc, interceptor) => interceptor(newSrc), this.options.srcProcessor(src));
48
50
  this.src$.next();
49
51
  }
50
52
  get src() {
@@ -126,7 +128,7 @@ export class TuiSvgComponent {
126
128
  }), map(response => this.sanitize(response.replace('<svg', '<svg focusable="false"'))));
127
129
  }
128
130
  }
129
- TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_SVG_OPTIONS }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
131
+ TuiSvgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSvgComponent, deps: [{ token: DOCUMENT }, { token: WINDOW }, { token: TUI_SVG_OPTIONS }, { token: TUI_SVG_SRC_INTERCEPTORS, optional: true }, { token: TUI_SANITIZER, optional: true }, { token: TuiSvgService }, { token: TuiStaticRequestService }, { token: DomSanitizer }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
130
132
  TuiSvgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSvgComponent, selector: "tui-svg", inputs: { src: "src" }, ngImport: i0, template: "<ng-container *tuiLet=\"innerHTML$ | async as innerHTML\">\n <div\n *ngIf=\"isInnerHTML; else useTemplate\"\n class=\"t-src\"\n [innerHTML]=\"innerHTML\"\n ></div>\n <ng-template #useTemplate>\n <svg\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n (error)=\"onError()\"\n >\n <use [attr.xlink:href]=\"use\"></use>\n </svg>\n </ng-template>\n</ng-container>\n", styles: [":host{display:inline-flex;vertical-align:middle;flex-shrink:0;align-items:center;justify-content:center;line-height:0;height:1.5rem;width:1.5rem;fill:transparent;stroke:transparent;font-size:1rem}.t-src{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.t-svg{overflow:visible}\n"], directives: [{ type: i1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
131
133
  __decorate([
132
134
  tuiRequiredSetter()
@@ -151,6 +153,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
151
153
  }] }, { type: undefined, decorators: [{
152
154
  type: Inject,
153
155
  args: [TUI_SVG_OPTIONS]
156
+ }] }, { type: Array, decorators: [{
157
+ type: Optional
158
+ }, {
159
+ type: Inject,
160
+ args: [TUI_SVG_SRC_INTERCEPTORS]
154
161
  }] }, { type: i0.Sanitizer, decorators: [{
155
162
  type: Optional
156
163
  }, {
@@ -171,4 +178,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
171
178
  }] }]; }, propDecorators: { src: [{
172
179
  type: Input
173
180
  }], resolveName: [] } });
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxTQUFTLEVBQ1QsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLHVCQUF1QixHQUUxQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMseUJBQXlCLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFbkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFDLGVBQWUsRUFBZ0IsTUFBTSxlQUFlLENB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V0FBVyxFQUFFLHFCQUFxQjtvQkFDbEMsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQy9CLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDswREFRK0MsUUFBUTswQkFBL0MsTUFBTTsyQkFBQyxRQUFROzhCQUNzQixNQUFNOzBCQUEzQyxNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsYUFBYTs7MEJBRXBCLE1BQU07MkJBQUMsYUFBYTs7MEJBQ3BCLE1BQU07MkJBQUMsdUJBQXVCOzswQkFFOUIsTUFBTTsyQkFBQyxZQUFZOzswQkFDbkIsTUFBTTsyQkFBQyxVQUFVOzRDQWtCbEIsR0FBRztzQkFGTixLQUFLO2dCQWdGRSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNhbml0aXplcixcbiAgICBTZWN1cml0eUNvbnRleHQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVIdG1sfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgdHVpQXNzZXJ0LFxuICAgIHR1aUdldERvY3VtZW50T3JTaGFkb3dSb290LFxuICAgIHR1aUlzU3RyaW5nLFxuICAgIHR1aVB1cmUsXG4gICAgdHVpUmVxdWlyZWRTZXR0ZXIsXG4gICAgVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UsXG4gICAgVHVpU3RyaW5nSGFuZGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9DQUNIRV9CVVNUSU5HX1BBWUxPQUQsIFRVSV9JQ09OX0VSUk9SfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlJY29uRXJyb3J9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlTdmdTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9zZXJ2aWNlcyc7XG5pbXBvcnQge1RVSV9TQU5JVElaRVJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUlzUHJlc3VtZWRIVE1MU3RyaW5nfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX1NWR19PUFRJT05TLCBUdWlTdmdPcHRpb25zfSBmcm9tICcuL3N2Zy1vcHRpb25zJztcblxuY29uc3QgVU5ERUZJTkVEX05BTUVEX0lDT04gPSAnQXR0ZW1wdGVkIHRvIHVzZSB1bmRlZmluZWQgbmFtZWQgaWNvbic7XG5jb25zdCBNSVNTSU5HX0VYVEVSTkFMX0lDT04gPSAnRXh0ZXJuYWwgaWNvbiBpcyBtaXNzaW5nIG9uIHRoZSBnaXZlbiBVUkwnO1xuY29uc3QgRkFJTEVEX0VYVEVSTkFMX0lDT04gPSAnRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgU1ZHJztcblxuLy8gVE9ETzogQ29uc2lkZXIgbW92aW5nIHRvIENESyBhbG9uZyB3aXRoIFN2Z1NlcnZpY2UgYW5kIFN2Z0RlZnNIb3N0Q29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1zdmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zdmcudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3ZnLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU3ZnQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNyYyQgPSBuZXcgUmVwbGF5U3ViamVjdDx2b2lkPigxKTtcbiAgICBwcml2YXRlIGljb246IFNhZmVIdG1sIHwgc3RyaW5nID0gJyc7XG5cbiAgICByZWFkb25seSBpbm5lckhUTUwkOiBPYnNlcnZhYmxlPFNhZmVIdG1sPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFRVSV9TVkdfT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlTdmdPcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TQU5JVElaRVIpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHVpU2FuaXRpemVyOiBTYW5pdGl6ZXIgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFR1aVN2Z1NlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgc3ZnU2VydmljZTogVHVpU3ZnU2VydmljZSxcbiAgICAgICAgQEluamVjdChUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzdGF0aWNSZXF1ZXN0U2VydmljZTogVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8RWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaW5uZXJIVE1MJCA9IHRoaXMuc3JjJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc0V4dGVybmFsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuZ2V0RXh0ZXJuYWxJY29uKHRoaXMuaWNvbilcbiAgICAgICAgICAgICAgICAgICAgICAgIDogb2YodGhpcy5nZXRTYWZlSHRtbCh0aGlzLmljb24pKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5pY29uKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlSZXF1aXJlZFNldHRlcigpXG4gICAgc2V0IHNyYyhzcmM6IFNhZmVIdG1sIHwgc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGRlcHJlY2F0ZWQgPSB0aGlzLm9wdGlvbnMuZGVwcmVjYXRlZChTdHJpbmcoc3JjKSk7XG5cbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoIWRlcHJlY2F0ZWQsIGRlcHJlY2F0ZWQpO1xuICAgICAgICB0aGlzLmljb24gPSB0aGlzLm9wdGlvbnMuc3JjUHJvY2Vzc29yKHNyYyk7XG4gICAgICAgIHRoaXMuc3JjJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgZ2V0IHNyYygpOiBTYWZlSHRtbCB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmljb247XG4gICAgfVxuXG4gICAgZ2V0IHVzZSgpOiBzdHJpbmcge1xuICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaWNvbi5pbmNsdWRlcygnLnN2ZyMnKVxuICAgICAgICAgICAgICAgID8gdGhpcy5pY29uXG4gICAgICAgICAgICAgICAgOiB0aGlzLnJlc29sdmVOYW1lKHRoaXMuaWNvbiwgdGhpcy5vcHRpb25zLnBhdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGdldCBpc0lubmVySFRNTCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0dWlJc1N0cmluZyh0aGlzLmljb24pIHx8XG4gICAgICAgICAgICB0aGlzLmlzU3JjIHx8XG4gICAgICAgICAgICB0aGlzLmlzRXh0ZXJuYWwgfHxcbiAgICAgICAgICAgICh0aGlzLmlzTmFtZSAmJiB0aGlzLmlzU2hhZG93RE9NKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU2hhZG93RE9NKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QodGhpcy5lbC5uYXRpdmVFbGVtZW50KSAhPT0gdGhpcy5kb2M7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVc2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnVzZS5yZXBsYWNlKFRVSV9DQUNIRV9CVVNUSU5HX1BBWUxPQUQsICcnKS5pbmNsdWRlcygnLnN2ZyMnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc0V4dGVybmFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1VybCB8fCB0aGlzLmlzQ3Jvc3NEb21haW47XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVcmwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh0aGlzLmljb24pICYmIHRoaXMuaWNvbi5lbmRzV2l0aCgnLnN2ZycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU3JjKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNTdHJpbmcodGhpcy5pY29uKSAmJiB0dWlJc1ByZXN1bWVkSFRNTFN0cmluZyh0aGlzLmljb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzTmFtZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzVXJsICYmICF0aGlzLmlzVXNlICYmICF0aGlzLmlzU3JjO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzQ3Jvc3NEb21haW4oKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHt1c2UsIGlzVXNlLCB3aW59ID0gdGhpcztcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgaXNVc2UgJiYgdXNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSAmJiAhIXdpbi5vcmlnaW4gJiYgIXVzZS5zdGFydHNXaXRoKHdpbi5vcmlnaW4pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25FcnJvcihtZXNzYWdlOiBzdHJpbmcgPSBNSVNTSU5HX0VYVEVSTkFMX0lDT04pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2ljb259ID0gdGhpcztcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQ8VHVpSWNvbkVycm9yPihUVUlfSUNPTl9FUlJPUiwge1xuICAgICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgaWNvbjogaWNvbiBhcyBzdHJpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChmYWxzZSwgbWVzc2FnZSwgaWNvbik7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgcmVzb2x2ZU5hbWUobmFtZTogc3RyaW5nLCBpY29uc1BhdGg6IFR1aVN0cmluZ0hhbmRsZXI8c3RyaW5nPik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpY29uc1BhdGgobmFtZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTYWZlSHRtbChzcmM6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNTcmMgPyB0aGlzLnNhbml0aXplKHNyYykgOiB0aGlzLnByb2Nlc3Moc3JjKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3Moc3JjOiBzdHJpbmcpOiBTYWZlSHRtbCB7XG4gICAgICAgIGNvbnN0IGljb24gPSB0aGlzLnN2Z1NlcnZpY2UuZ2V0T3JpZ2luYWwoc3JjKTtcblxuICAgICAgICBpZiAodGhpcy5pc05hbWUgJiYgIWljb24gJiYgISFzcmMpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvcihVTkRFRklORURfTkFNRURfSUNPTik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbXB0eSBsaW5lIGZvciBpbm5lckhUTUwgd2hlbiBpY29uIGlzIHNob3duIHRocm91Z2ggVVNFIHRhZ1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNTaGFkb3dET00gfHwgIXRoaXMuaXNOYW1lID8gJycgOiB0aGlzLnNhbml0aXplKGljb24gfHwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FuaXRpemUoc3JjOiBTYWZlSHRtbCB8IHN0cmluZyk6IFNhZmVIdG1sIHwgc3RyaW5nIHtcbiAgICAgICAgc3JjID0gdGhpcy5vcHRpb25zLmNvbnRlbnRQcm9jZXNzb3Ioc3JjKTtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTYW5pdGl6ZXIgJiYgdHVpSXNTdHJpbmcoc3JjKVxuICAgICAgICAgICAgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChcbiAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBzcmMpIHx8ICcnLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICA6IHNyYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEV4dGVybmFsSWNvbihzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICAgICAgY29uc3QgdXJsID0gc3JjLmluY2x1ZGVzKCcuc3ZnJykgPyBzcmMgOiB0aGlzLnVzZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0aWNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KHVybCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihGQUlMRURfRVhURVJOQUxfSUNPTik7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoJycpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnNhbml0aXplKHJlc3BvbnNlLnJlcGxhY2UoJzxzdmcnLCAnPHN2ZyBmb2N1c2FibGU9XCJmYWxzZVwiJykpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0dWlMZXQ9XCJpbm5lckhUTUwkIHwgYXN5bmMgYXMgaW5uZXJIVE1MXCI+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlzSW5uZXJIVE1MOyBlbHNlIHVzZVRlbXBsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXNyY1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaW5uZXJIVE1MXCJcbiAgICA+PC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICN1c2VUZW1wbGF0ZT5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtc3ZnXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJvbkVycm9yKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwidXNlXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zdmcvc3ZnLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBRVIsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxTQUFTLEVBQ1QsMEJBQTBCLEVBRTFCLFdBQVcsRUFDWCxPQUFPLEVBQ1AsaUJBQWlCLEVBRWpCLHVCQUF1QixHQUUxQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMseUJBQXlCLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFbkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFDLGVBQWUsRUFBRSx3QkFBd0IsRUFBZ0Is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LGFBQWEsNkJBRWIsYUFBYSxhQUNiLHVCQUF1QixhQUV2QixZQUFZLGFBQ1osVUFBVTtpR0F0QmIsZUFBZSx1RUM3QzVCLHNvQkFxQkE7QURnRUk7SUFEQyxpQkFBaUIsRUFBRTswQ0FZbkI7QUF3RUQ7SUFEQyxPQUFPO2tEQUdQOzRGQTdIUSxlQUFlO2tCQU4zQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxTQUFTO29CQUNuQixXQUFXLEVBQUUscUJBQXFCO29CQUNsQyxTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzBEQVErQyxRQUFROzBCQUEvQyxNQUFNOzJCQUFDLFFBQVE7OEJBQ3NCLE1BQU07MEJBQTNDLE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxlQUFlOzhCQUdXLEtBQUs7MEJBRnRDLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsd0JBQXdCOzswQkFJL0IsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxhQUFhOzswQkFFcEIsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFVBQVU7NENBa0JsQixHQUFHO3NCQUZOLEtBQUs7Z0JBcUZFLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2FuaXRpemVyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc3NlcnQsXG4gICAgdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QsXG4gICAgVHVpSGFuZGxlcixcbiAgICB0dWlJc1N0cmluZyxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVJlcXVpcmVkU2V0dGVyLFxuICAgIFR1aVNhZmVIdG1sLFxuICAgIFR1aVN0YXRpY1JlcXVlc3RTZXJ2aWNlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQ0FDSEVfQlVTVElOR19QQVlMT0FELCBUVUlfSUNPTl9FUlJPUn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpSWNvbkVycm9yfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpU3ZnU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfU0FOSVRJWkVSfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlJc1ByZXN1bWVkSFRNTFN0cmluZ30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge09ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y2F0Y2hFcnJvciwgbWFwLCBzdGFydFdpdGgsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1RVSV9TVkdfT1BUSU9OUywgVFVJX1NWR19TUkNfSU5URVJDRVBUT1JTLCBUdWlTdmdPcHRpb25zfSBmcm9tICcuL3N2Zy1vcHRpb25zJztcblxuY29uc3QgVU5ERUZJTkVEX05BTUVEX0lDT04gPSAnQXR0ZW1wdGVkIHRvIHVzZSB1bmRlZmluZWQgbmFtZWQgaWNvbic7XG5jb25zdCBNSVNTSU5HX0VYVEVSTkFMX0lDT04gPSAnRXh0ZXJuYWwgaWNvbiBpcyBtaXNzaW5nIG9uIHRoZSBnaXZlbiBVUkwnO1xuY29uc3QgRkFJTEVEX0VYVEVSTkFMX0lDT04gPSAnRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgU1ZHJztcblxuLy8gVE9ETzogQ29uc2lkZXIgbW92aW5nIHRvIENESyBhbG9uZyB3aXRoIFN2Z1NlcnZpY2UgYW5kIFN2Z0RlZnNIb3N0Q29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1zdmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zdmcudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3ZnLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU3ZnQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNyYyQgPSBuZXcgUmVwbGF5U3ViamVjdDx2b2lkPigxKTtcbiAgICBwcml2YXRlIGljb246IFR1aVNhZmVIdG1sID0gJyc7XG5cbiAgICByZWFkb25seSBpbm5lckhUTUwkOiBPYnNlcnZhYmxlPFNhZmVIdG1sPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbjogV2luZG93LFxuICAgICAgICBASW5qZWN0KFRVSV9TVkdfT1BUSU9OUykgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlTdmdPcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TVkdfU1JDX0lOVEVSQ0VQVE9SUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzcmNJbnRlcmNlcHRvcnM6IEFycmF5PFxuICAgICAgICAgICAgVHVpSGFuZGxlcjxUdWlTYWZlSHRtbCwgVHVpU2FmZUh0bWw+XG4gICAgICAgID4gfCBudWxsLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TQU5JVElaRVIpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHVpU2FuaXRpemVyOiBTYW5pdGl6ZXIgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFR1aVN2Z1NlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgc3ZnU2VydmljZTogVHVpU3ZnU2VydmljZSxcbiAgICAgICAgQEluamVjdChUdWlTdGF0aWNSZXF1ZXN0U2VydmljZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzdGF0aWNSZXF1ZXN0U2VydmljZTogVHVpU3RhdGljUmVxdWVzdFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8RWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaW5uZXJIVE1MJCA9IHRoaXMuc3JjJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc0V4dGVybmFsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuZ2V0RXh0ZXJuYWxJY29uKHRoaXMuaWNvbilcbiAgICAgICAgICAgICAgICAgICAgICAgIDogb2YodGhpcy5nZXRTYWZlSHRtbCh0aGlzLmljb24pKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5pY29uKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlSZXF1aXJlZFNldHRlcigpXG4gICAgc2V0IHNyYyhzcmM6IFR1aVNhZmVIdG1sKSB7XG4gICAgICAgIGNvbnN0IGRlcHJlY2F0ZWQgPSB0aGlzLm9wdGlvbnMuZGVwcmVjYXRlZChTdHJpbmcoc3JjKSk7XG5cbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoIWRlcHJlY2F0ZWQsIGRlcHJlY2F0ZWQpO1xuXG4gICAgICAgIHRoaXMuaWNvbiA9ICh0aGlzLnNyY0ludGVyY2VwdG9ycyA/PyBbXSkucmVkdWNlKFxuICAgICAgICAgICAgKG5ld1NyYzogVHVpU2FmZUh0bWwsIGludGVyY2VwdG9yKSA9PiBpbnRlcmNlcHRvcihuZXdTcmMpLFxuICAgICAgICAgICAgdGhpcy5vcHRpb25zLnNyY1Byb2Nlc3NvcihzcmMpLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuc3JjJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgZ2V0IHNyYygpOiBUdWlTYWZlSHRtbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmljb247XG4gICAgfVxuXG4gICAgZ2V0IHVzZSgpOiBzdHJpbmcge1xuICAgICAgICBpZiAodHVpSXNTdHJpbmcodGhpcy5pY29uKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaWNvbi5pbmNsdWRlcygnLnN2ZyMnKVxuICAgICAgICAgICAgICAgID8gdGhpcy5pY29uXG4gICAgICAgICAgICAgICAgOiB0aGlzLnJlc29sdmVOYW1lKHRoaXMuaWNvbiwgdGhpcy5vcHRpb25zLnBhdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGdldCBpc0lubmVySFRNTCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0dWlJc1N0cmluZyh0aGlzLmljb24pIHx8XG4gICAgICAgICAgICB0aGlzLmlzU3JjIHx8XG4gICAgICAgICAgICB0aGlzLmlzRXh0ZXJuYWwgfHxcbiAgICAgICAgICAgICh0aGlzLmlzTmFtZSAmJiB0aGlzLmlzU2hhZG93RE9NKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU2hhZG93RE9NKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpR2V0RG9jdW1lbnRPclNoYWRvd1Jvb3QodGhpcy5lbC5uYXRpdmVFbGVtZW50KSAhPT0gdGhpcy5kb2M7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVc2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnVzZS5yZXBsYWNlKFRVSV9DQUNIRV9CVVNUSU5HX1BBWUxPQUQsICcnKS5pbmNsdWRlcygnLnN2ZyMnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc0V4dGVybmFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1VybCB8fCB0aGlzLmlzQ3Jvc3NEb21haW47XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNVcmwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh0aGlzLmljb24pICYmIHRoaXMuaWNvbi5lbmRzV2l0aCgnLnN2ZycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzU3JjKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNTdHJpbmcodGhpcy5pY29uKSAmJiB0dWlJc1ByZXN1bWVkSFRNTFN0cmluZyh0aGlzLmljb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzTmFtZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzVXJsICYmICF0aGlzLmlzVXNlICYmICF0aGlzLmlzU3JjO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzQ3Jvc3NEb21haW4oKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHt1c2UsIGlzVXNlLCB3aW59ID0gdGhpcztcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgaXNVc2UgJiYgdXNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSAmJiAhIXdpbi5vcmlnaW4gJiYgIXVzZS5zdGFydHNXaXRoKHdpbi5vcmlnaW4pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25FcnJvcihtZXNzYWdlOiBzdHJpbmcgPSBNSVNTSU5HX0VYVEVSTkFMX0lDT04pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2ljb259ID0gdGhpcztcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQ8VHVpSWNvbkVycm9yPihUVUlfSUNPTl9FUlJPUiwge1xuICAgICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgaWNvbjogaWNvbiBhcyBzdHJpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChmYWxzZSwgbWVzc2FnZSwgaWNvbik7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgcmVzb2x2ZU5hbWUobmFtZTogc3RyaW5nLCBpY29uc1BhdGg6IFR1aVN0cmluZ0hhbmRsZXI8c3RyaW5nPik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpY29uc1BhdGgobmFtZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTYWZlSHRtbChzcmM6IHN0cmluZyk6IFNhZmVIdG1sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNTcmMgPyB0aGlzLnNhbml0aXplKHNyYykgOiB0aGlzLnByb2Nlc3Moc3JjKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3Moc3JjOiBzdHJpbmcpOiBTYWZlSHRtbCB7XG4gICAgICAgIGNvbnN0IGljb24gPSB0aGlzLnN2Z1NlcnZpY2UuZ2V0T3JpZ2luYWwoc3JjKTtcblxuICAgICAgICBpZiAodGhpcy5pc05hbWUgJiYgIWljb24gJiYgISFzcmMpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvcihVTkRFRklORURfTkFNRURfSUNPTik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbXB0eSBsaW5lIGZvciBpbm5lckhUTUwgd2hlbiBpY29uIGlzIHNob3duIHRocm91Z2ggVVNFIHRhZ1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNTaGFkb3dET00gfHwgIXRoaXMuaXNOYW1lID8gJycgOiB0aGlzLnNhbml0aXplKGljb24gfHwgJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FuaXRpemUoc3JjOiBUdWlTYWZlSHRtbCk6IFR1aVNhZmVIdG1sIHtcbiAgICAgICAgc3JjID0gdGhpcy5vcHRpb25zLmNvbnRlbnRQcm9jZXNzb3Ioc3JjKTtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTYW5pdGl6ZXIgJiYgdHVpSXNTdHJpbmcoc3JjKVxuICAgICAgICAgICAgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChcbiAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBzcmMpIHx8ICcnLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICA6IHNyYztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEV4dGVybmFsSWNvbihzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICAgICAgY29uc3QgdXJsID0gc3JjLmluY2x1ZGVzKCcuc3ZnJykgPyBzcmMgOiB0aGlzLnVzZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0aWNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KHVybCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihGQUlMRURfRVhURVJOQUxfSUNPTik7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoJycpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnNhbml0aXplKHJlc3BvbnNlLnJlcGxhY2UoJzxzdmcnLCAnPHN2ZyBmb2N1c2FibGU9XCJmYWxzZVwiJykpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0dWlMZXQ9XCJpbm5lckhUTUwkIHwgYXN5bmMgYXMgaW5uZXJIVE1MXCI+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlzSW5uZXJIVE1MOyBlbHNlIHVzZVRlbXBsYXRlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXNyY1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaW5uZXJIVE1MXCJcbiAgICA+PC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICN1c2VUZW1wbGF0ZT5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICBjbGFzcz1cInQtc3ZnXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJvbkVycm9yKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwidXNlXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1tYXNrLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvbWFzay90ZXh0LW1hc2stY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExpbmsgbGllcyBhYm91dCBjb25maWcgb2JqZWN0IGhhdmluZyBhbGwgdGhlIHNhbWUgY29uZmlndXJhdGlvbnMgc28gc2VwYXJhdGUgaW50ZXJmYWNlIGlzIHJlcXVpcmVkXG4gKiB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RleHQtbWFzay90ZXh0LW1hc2svYmxvYi9tYXN0ZXIvY29tcG9uZW50RG9jdW1lbnRhdGlvbi5tZCNwaXBlfVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR1aVRleHRNYXNrQ29uZmlnIHtcbiAgICByZWFkb25seSByYXdWYWx1ZTogc3RyaW5nO1xuICAgIHJlYWRvbmx5IHByZXZpb3VzQ29uZm9ybWVkVmFsdWU/OiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgY3VycmVudENhcmV0UG9zaXRpb24/OiBudW1iZXI7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1tYXNrLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvbWFzay90ZXh0LW1hc2stY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL1RpbmtvZmYvbWFza2l0byBNYXNraXRvfVxuICogTGluayBsaWVzIGFib3V0IGNvbmZpZyBvYmplY3QgaGF2aW5nIGFsbCB0aGUgc2FtZSBjb25maWd1cmF0aW9ucyBzbyBzZXBhcmF0ZSBpbnRlcmZhY2UgaXMgcmVxdWlyZWRcbiAqIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vdGV4dC1tYXNrL3RleHQtbWFzay9ibG9iL21hc3Rlci9jb21wb25lbnREb2N1bWVudGF0aW9uLm1kI3BpcGV9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHVpVGV4dE1hc2tDb25maWcge1xuICAgIHJlYWRvbmx5IHJhd1ZhbHVlOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgcHJldmlvdXNDb25mb3JtZWRWYWx1ZT86IHN0cmluZztcbiAgICByZWFkb25seSBjdXJyZW50Q2FyZXRQb3NpdGlvbj86IG51bWJlcjtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1tYXNrLWNvcnJlY3Rpb24taGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvbWFzay90ZXh0LW1hc2stY29ycmVjdGlvbi1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBUdWlUZXh0TWFza0NvcnJlY3Rpb25IYW5kbGVyID0gKGNoYXI6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4gc3RyaW5nIHwgbnVsbDtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1tYXNrLWNvcnJlY3Rpb24taGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvbWFzay90ZXh0LW1hc2stY29ycmVjdGlvbi1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL1RpbmtvZmYvbWFza2l0byBNYXNraXRvfVxuICovXG5leHBvcnQgdHlwZSBUdWlUZXh0TWFza0NvcnJlY3Rpb25IYW5kbGVyID0gKGNoYXI6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4gc3RyaW5nIHwgbnVsbDtcbiJdfQ==