@taiga-ui/core 4.37.0 → 4.38.0-canary.30f044e

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/animations/animations.d.ts +74 -2
  2. package/components/alert/alert.component.d.ts +3 -9
  3. package/components/dialog/dialog.component.d.ts +3 -17
  4. package/components/error/error.component.d.ts +0 -1
  5. package/components/expand/expand-content.directive.d.ts +3 -0
  6. package/components/expand/expand.component.d.ts +3 -0
  7. package/components/expand/expand.d.ts +3 -0
  8. package/components/scrollbar/scroll-controls.component.d.ts +0 -1
  9. package/components/textfield/textfield.component.d.ts +2 -1
  10. package/components/textfield/textfield.directive.d.ts +1 -1
  11. package/directives/dropdown/dropdown.component.d.ts +6 -4
  12. package/directives/hint/hint.component.d.ts +2 -9
  13. package/esm2022/animations/animations.mjs +72 -3
  14. package/esm2022/components/alert/alert.component.mjs +11 -14
  15. package/esm2022/components/alert/alerts.component.mjs +4 -4
  16. package/esm2022/components/dialog/dialog.component.mjs +11 -27
  17. package/esm2022/components/dialog/dialogs.component.mjs +12 -5
  18. package/esm2022/components/error/error.component.mjs +6 -10
  19. package/esm2022/components/expand/expand-content.directive.mjs +4 -1
  20. package/esm2022/components/expand/expand.component.mjs +4 -1
  21. package/esm2022/components/expand/expand.mjs +4 -1
  22. package/esm2022/components/root/root.component.mjs +10 -4
  23. package/esm2022/components/scrollbar/scroll-controls.component.mjs +5 -7
  24. package/esm2022/components/textfield/textfield.component.mjs +9 -7
  25. package/esm2022/components/textfield/textfield.directive.mjs +5 -9
  26. package/esm2022/directives/dropdown/dropdown.component.mjs +14 -15
  27. package/esm2022/directives/hint/hint-unstyled.component.mjs +2 -5
  28. package/esm2022/directives/hint/hint.component.mjs +9 -12
  29. package/esm2022/directives/hint/hints.component.mjs +6 -6
  30. package/fesm2022/taiga-ui-core-animations.mjs +71 -2
  31. package/fesm2022/taiga-ui-core-animations.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-core-components-alert.mjs +13 -16
  33. package/fesm2022/taiga-ui-core-components-alert.mjs.map +1 -1
  34. package/fesm2022/taiga-ui-core-components-dialog.mjs +21 -29
  35. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-core-components-error.mjs +5 -9
  37. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-core-components-expand.mjs +9 -0
  39. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-core-components-root.mjs +9 -3
  41. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +4 -6
  43. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-core-components-textfield.mjs +12 -11
  45. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-core-directives-dropdown.mjs +14 -14
  47. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-core-directives-hint.mjs +13 -18
  49. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +1 -1
  50. package/package.json +15 -15
  51. package/styles/mixins/mixins.less +4 -0
  52. package/styles/mixins/mixins.scss +4 -0
@@ -2,45 +2,30 @@ import { AsyncPipe, NgIf } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';
3
3
  import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
4
4
  import { TUI_TRUE_HANDLER } from '@taiga-ui/cdk/constants';
5
+ import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
5
6
  import { TuiAutoFocus } from '@taiga-ui/cdk/directives/auto-focus';
6
- import { tuiFadeIn, tuiSlideInTop } from '@taiga-ui/core/animations';
7
7
  import { TuiButton } from '@taiga-ui/core/components/button';
8
8
  import { TuiBreakpointService } from '@taiga-ui/core/services';
9
- import { TUI_ANIMATIONS_SPEED, TUI_CLOSE_WORD, TUI_COMMON_ICONS, } from '@taiga-ui/core/tokens';
10
- import { tuiGetDuration } from '@taiga-ui/core/utils';
9
+ import { TUI_CLOSE_WORD, TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
11
10
  import { injectContext, PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
12
11
  import { exhaustMap, filter, isObservable, map, merge, of, Subject, switchMap, take, } from 'rxjs';
13
12
  import { TUI_DIALOGS_CLOSE } from './dialog.tokens';
14
13
  import { TuiDialogCloseService } from './dialog-close.service';
15
14
  import * as i0 from "@angular/core";
15
+ import * as i1 from "@taiga-ui/cdk/directives/animated";
16
16
  const REQUIRED_ERROR = new Error('Required dialog was dismissed');
17
17
  function toObservable(valueOrStream) {
18
18
  return isObservable(valueOrStream) ? valueOrStream : of(valueOrStream);
19
19
  }
20
20
  class TuiDialogComponent {
21
21
  constructor() {
22
- this.speed = inject(TUI_ANIMATIONS_SPEED);
23
- this.animation = {
24
- value: '',
25
- params: {
26
- start: '2.5rem',
27
- duration: tuiGetDuration(this.speed),
28
- },
29
- };
30
- this.fullscreenAnimation = {
31
- value: '',
32
- params: {
33
- start: '100vh',
34
- duration: tuiGetDuration(this.speed),
35
- },
36
- };
37
22
  this.close$ = new Subject();
38
23
  this.context = injectContext();
39
24
  this.closeWord$ = inject(TUI_CLOSE_WORD);
40
25
  this.icons = inject(TUI_COMMON_ICONS);
41
- this.slideInTop = computed(() => this.size === 'fullscreen' || this.size === 'page' || this.isMobile()
42
- ? this.fullscreenAnimation
43
- : this.animation);
26
+ this.from = computed(() => this.size === 'fullscreen' || this.size === 'page' || this.isMobile()
27
+ ? 'translateY(100vh)'
28
+ : 'translateY(2.5rem)');
44
29
  this.isMobile = toSignal(inject(TuiBreakpointService).pipe(map((breakpoint) => breakpoint === 'mobile')));
45
30
  merge(this.close$.pipe(switchMap(() => toObservable(this.context.closeable))), inject(TuiDialogCloseService).pipe(exhaustMap(() => toObservable(this.context.dismissible).pipe(take(1)))), inject(TUI_DIALOGS_CLOSE).pipe(map(TUI_TRUE_HANDLER)))
46
31
  .pipe(filter(Boolean), takeUntilDestroyed())
@@ -63,17 +48,16 @@ class TuiDialogComponent {
63
48
  }
64
49
  }
65
50
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogComponent, isStandalone: true, selector: "tui-dialog", host: { properties: { "@tuiSlideInTop": "slideInTop()", "@tuiFadeIn": "slideInTop()", "attr.data-appearance": "context.appearance", "attr.data-size": "size", "class._centered": "header" } }, providers: [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 [class.t-heading_closable]=\"context.closeable && !header\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n size=\"m\"\n tuiAutoFocus\n tuiButton\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ context.data?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n\n<!-- Close button is insensitive to `context.closeable === Observable<false>` by design -->\n<button\n *ngIf=\"context.closeable\"\n automation-id=\"tui-dialog__close\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"isMobile() ? 'icon' : 'neutral'\"\n [iconStart]=\"icons.close\"\n [size]=\"isMobile() ? 'xs' : 's'\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.zoneless)=\"(0)\"\n>\n {{ closeWord$ | async }}\n</button>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1.5rem;border:2.5rem solid transparent}:host:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";border-radius:inherit;pointer-events:none;box-shadow:var(--tui-shadow-popup)}:host[data-size=auto]{inline-size:auto}:host[data-size=s]{inline-size:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=m]{inline-size:42.5rem}:host[data-size=l]{inline-size:55rem}:host[data-size=fullscreen],:host[data-size=page]{min-inline-size:100vw;min-block-size:100%;border-radius:0;border:none;background:var(--tui-background-elevation-1);box-shadow:0 4rem var(--tui-background-elevation-1)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - 22.5rem)}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{font:var(--tui-font-heading-3)}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-inline-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0;border:none;margin:auto 0 0}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=page] .t-content,:host-context(tui-root._mobile) :host[data-size=page] .t-content{padding:0}.t-heading{margin:0 0 .5rem;overflow-wrap:break-word;font:var(--tui-font-heading-4)}.t-heading_closable{padding-inline-end:2rem}.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:1.75rem;background:var(--tui-background-elevation-1)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-content>section{border-radius:inherit}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:1rem;right:1rem}.t-buttons{margin-top:1.25rem;text-align:end}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAutoFocus, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], animations: [tuiSlideInTop, tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.Default }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogComponent, isStandalone: true, selector: "tui-dialog", host: { properties: { "attr.data-appearance": "context.appearance", "attr.data-size": "size", "class._centered": "header", "style.--tui-from": "from()" } }, providers: [TuiDialogCloseService], hostDirectives: [{ directive: i1.TuiAnimated }], 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 [class.t-heading_closable]=\"context.closeable && !header\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n size=\"m\"\n tuiAutoFocus\n tuiButton\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ context.data?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n\n<!-- Close button is insensitive to `context.closeable === Observable<false>` by design -->\n<button\n *ngIf=\"context.closeable\"\n automation-id=\"tui-dialog__close\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"isMobile() ? 'icon' : 'neutral'\"\n [iconStart]=\"icons.close\"\n [size]=\"isMobile() ? 'xs' : 's'\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.zoneless)=\"(0)\"\n>\n {{ closeWord$ | async }}\n</button>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1.5rem;border:2.5rem solid transparent}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";border-radius:inherit;pointer-events:none;box-shadow:var(--tui-shadow-popup)}:host[data-size=auto]{inline-size:auto}:host[data-size=s]{inline-size:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=m]{inline-size:42.5rem}:host[data-size=l]{inline-size:55rem}:host[data-size=fullscreen],:host[data-size=page]{min-inline-size:100vw;min-block-size:100%;border-radius:0;border:none;background:var(--tui-background-elevation-1);box-shadow:0 4rem var(--tui-background-elevation-1)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - 22.5rem)}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{font:var(--tui-font-heading-3)}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-inline-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0;border:none;margin:auto 0 0;background:var(--tui-background-elevation-1);padding-bottom:env(safe-area-inset-bottom)}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{font:var(--tui-font-heading-5)}:host :host-context(tui-root._mobile)[data-size=fullscreen],:host :host-context(tui-root._mobile)[data-size=page]{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}:host :host-context(tui-root._mobile)[data-size=fullscreen] .t-close,:host :host-context(tui-root._mobile)[data-size=page] .t-close{top:calc(1rem + env(safe-area-inset-top))}:host[data-size=page] .t-content,:host-context(tui-root._mobile) :host[data-size=page] .t-content{padding:0}.t-heading{margin:0 0 .5rem;overflow-wrap:break-word;font:var(--tui-font-heading-4)}.t-heading_closable{padding-inline-end:2rem}.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:1.75rem;background:var(--tui-background-elevation-1)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-content>section{border-radius:inherit}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:1rem;right:1rem}.t-buttons{margin-top:1.25rem;text-align:end}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAutoFocus, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
67
52
  }
68
53
  export { TuiDialogComponent };
69
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogComponent, decorators: [{
70
55
  type: Component,
71
- args: [{ standalone: true, selector: 'tui-dialog', imports: [AsyncPipe, NgIf, PolymorpheusOutlet, TuiAutoFocus, TuiButton], changeDetection: ChangeDetectionStrategy.Default, providers: [TuiDialogCloseService], animations: [tuiSlideInTop, tuiFadeIn], host: {
72
- '[@tuiSlideInTop]': 'slideInTop()',
73
- '[@tuiFadeIn]': 'slideInTop()',
56
+ args: [{ standalone: true, selector: 'tui-dialog', imports: [AsyncPipe, NgIf, PolymorpheusOutlet, TuiAutoFocus, TuiButton], changeDetection: ChangeDetectionStrategy.Default, providers: [TuiDialogCloseService], hostDirectives: [TuiAnimated], host: {
74
57
  '[attr.data-appearance]': 'context.appearance',
75
58
  '[attr.data-size]': 'size',
76
59
  '[class._centered]': 'header',
77
- }, 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 [class.t-heading_closable]=\"context.closeable && !header\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n size=\"m\"\n tuiAutoFocus\n tuiButton\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ context.data?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n\n<!-- Close button is insensitive to `context.closeable === Observable<false>` by design -->\n<button\n *ngIf=\"context.closeable\"\n automation-id=\"tui-dialog__close\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"isMobile() ? 'icon' : 'neutral'\"\n [iconStart]=\"icons.close\"\n [size]=\"isMobile() ? 'xs' : 's'\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.zoneless)=\"(0)\"\n>\n {{ closeWord$ | async }}\n</button>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1.5rem;border:2.5rem solid transparent}:host:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";border-radius:inherit;pointer-events:none;box-shadow:var(--tui-shadow-popup)}:host[data-size=auto]{inline-size:auto}:host[data-size=s]{inline-size:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=m]{inline-size:42.5rem}:host[data-size=l]{inline-size:55rem}:host[data-size=fullscreen],:host[data-size=page]{min-inline-size:100vw;min-block-size:100%;border-radius:0;border:none;background:var(--tui-background-elevation-1);box-shadow:0 4rem var(--tui-background-elevation-1)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - 22.5rem)}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{font:var(--tui-font-heading-3)}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-inline-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0;border:none;margin:auto 0 0}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=page] .t-content,:host-context(tui-root._mobile) :host[data-size=page] .t-content{padding:0}.t-heading{margin:0 0 .5rem;overflow-wrap:break-word;font:var(--tui-font-heading-4)}.t-heading_closable{padding-inline-end:2rem}.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:1.75rem;background:var(--tui-background-elevation-1)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-content>section{border-radius:inherit}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:1rem;right:1rem}.t-buttons{margin-top:1.25rem;text-align:end}\n"] }]
60
+ '[style.--tui-from]': 'from()',
61
+ }, 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 [class.t-heading_closable]=\"context.closeable && !header\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n <div [innerHTML]=\"text\"></div>\n <div class=\"t-buttons\">\n <button\n size=\"m\"\n tuiAutoFocus\n tuiButton\n type=\"button\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ context.data?.button || 'OK' }}\n </button>\n </div>\n </ng-container>\n </section>\n</div>\n<div class=\"t-filler\"></div>\n\n<!-- Close button is insensitive to `context.closeable === Observable<false>` by design -->\n<button\n *ngIf=\"context.closeable\"\n automation-id=\"tui-dialog__close\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"isMobile() ? 'icon' : 'neutral'\"\n [iconStart]=\"icons.close\"\n [size]=\"isMobile() ? 'xs' : 's'\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.zoneless)=\"(0)\"\n>\n {{ closeWord$ | async }}\n</button>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);flex-direction:column;box-sizing:border-box;margin:auto;border-radius:1.5rem;border:2.5rem solid transparent}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}:host:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";border-radius:inherit;pointer-events:none;box-shadow:var(--tui-shadow-popup)}:host[data-size=auto]{inline-size:auto}:host[data-size=s]{inline-size:30rem}:host[data-size=s] .t-content{padding:1.5rem}:host[data-size=s] .t-heading{font:var(--tui-font-heading-5)}:host[data-size=m]{inline-size:42.5rem}:host[data-size=l]{inline-size:55rem}:host[data-size=fullscreen],:host[data-size=page]{min-inline-size:100vw;min-block-size:100%;border-radius:0;border:none;background:var(--tui-background-elevation-1);box-shadow:0 4rem var(--tui-background-elevation-1)}:host[data-size=fullscreen] .t-content,:host[data-size=page] .t-content{padding:3rem calc(50vw - 22.5rem)}:host[data-size=fullscreen] .t-heading,:host[data-size=page] .t-heading{font:var(--tui-font-heading-3)}:host._centered{text-align:center}:host :host-context(tui-root._mobile)[data-size]{min-inline-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0;border:none;margin:auto 0 0;background:var(--tui-background-elevation-1);padding-bottom:env(safe-area-inset-bottom)}:host :host-context(tui-root._mobile)[data-size] .t-content{padding:1rem}:host :host-context(tui-root._mobile)[data-size] .t-heading{font:var(--tui-font-heading-5)}:host :host-context(tui-root._mobile)[data-size=fullscreen],:host :host-context(tui-root._mobile)[data-size=page]{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}:host :host-context(tui-root._mobile)[data-size=fullscreen] .t-close,:host :host-context(tui-root._mobile)[data-size=page] .t-close{top:calc(1rem + env(safe-area-inset-top))}:host[data-size=page] .t-content,:host-context(tui-root._mobile) :host[data-size=page] .t-content{padding:0}.t-heading{margin:0 0 .5rem;overflow-wrap:break-word;font:var(--tui-font-heading-4)}.t-heading_closable{padding-inline-end:2rem}.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:1.75rem;background:var(--tui-background-elevation-1)}.t-content:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.t-content>section{border-radius:inherit}.t-filler{flex-grow:1}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:1rem;right:1rem}.t-buttons{margin-top:1.25rem;text-align:end}\n"] }]
78
62
  }], ctorParameters: function () { return []; } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxPQUFPLEVBQUMsU0FBUyxFQUFFLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxnQkFBZ0IsR0FDbkIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFcEQsT0FBTyxFQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXpFLE9BQU8sRUFDSCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFlBQVksRUFDWixHQUFHLEVBQ0gsS0FBSyxFQUNMLEVBQUUsRUFDRixPQUFPLEVBQ1AsU0FBUyxF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LEVBQUU7WUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2hEO2FBQU07WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNyQztJQUNMLENBQUM7K0dBN0RRLGtCQUFrQjttR0FBbEIsa0JBQWtCLHdQQVZoQixDQUFDLHFCQUFxQixDQUFDLDBCQ2pEdEMscWdEQWtEQSw4d0VEUGMsU0FBUyw4Q0FBRSxJQUFJLDZGQUFFLGtCQUFrQiw4SEFBRSxZQUFZLHFGQUFFLFNBQVMsc0hBTzFELENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQzs7U0FTN0Isa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBbkI5QixTQUFTO2lDQUNNLElBQUksWUFDTixZQUFZLFdBQ2IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxTQUFTLENBQUMsbUJBS3RELHVCQUF1QixDQUFDLE9BQU8sYUFDckMsQ0FBQyxxQkFBcUIsQ0FBQyxjQUN0QixDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsUUFDaEM7d0JBQ0Ysa0JBQWtCLEVBQUUsY0FBYzt3QkFDbEMsY0FBYyxFQUFFLGNBQWM7d0JBQzlCLHdCQUF3QixFQUFFLG9CQUFvQjt3QkFDOUMsa0JBQWtCLEVBQUUsTUFBTTt3QkFDMUIsbUJBQW1CLEVBQUUsUUFBUTtxQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7VFVJX1RSVUVfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlBdXRvRm9jdXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzJztcbmltcG9ydCB0eXBlIHtUdWlQb3BvdmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7dHVpRmFkZUluLCB0dWlTbGlkZUluVG9wfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpQnV0dG9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1R1aUJyZWFrcG9pbnRTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9zZXJ2aWNlcyc7XG5pbXBvcnQge1xuICAgIFRVSV9BTklNQVRJT05TX1NQRUVELFxuICAgIFRVSV9DTE9TRV9XT1JELFxuICAgIFRVSV9DT01NT05fSUNPTlMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUdldER1cmF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge2luamVjdENvbnRleHQsIFBvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQgdHlwZSB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIGV4aGF1c3RNYXAsXG4gICAgZmlsdGVyLFxuICAgIGlzT2JzZXJ2YWJsZSxcbiAgICBtYXAsXG4gICAgbWVyZ2UsXG4gICAgb2YsXG4gICAgU3ViamVjdCxcbiAgICBzd2l0Y2hNYXAsXG4gICAgdGFrZSxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIHtUdWlEaWFsb2dPcHRpb25zLCBUdWlEaWFsb2dTaXplfSBmcm9tICcuL2RpYWxvZy5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0RJQUxPR1NfQ0xPU0V9IGZyb20gJy4vZGlhbG9nLnRva2Vucyc7XG5pbXBvcnQge1R1aURpYWxvZ0Nsb3NlU2VydmljZX0gZnJvbSAnLi9kaWFsb2ctY2xvc2Uuc2VydmljZSc7XG5cbmNvbnN0IFJFUVVJUkVEX0VSUk9SID0gbmV3IEVycm9yKCdSZXF1aXJlZCBkaWFsb2cgd2FzIGRpc21pc3NlZCcpO1xuXG5mdW5jdGlvbiB0b09ic2VydmFibGU8VD4odmFsdWVPclN0cmVhbTogT2JzZXJ2YWJsZTxUPiB8IFQpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gaXNPYnNlcnZhYmxlKHZhbHVlT3JTdHJlYW0pID8gdmFsdWVPclN0cmVhbSA6IG9mKHZhbHVlT3JTdHJlYW0pO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRpYWxvZycsXG4gICAgaW1wb3J0czogW0FzeW5jUGlwZSwgTmdJZiwgUG9seW1vcnBoZXVzT3V0bGV0LCBUdWlBdXRvRm9jdXMsIFR1aUJ1dHRvbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kaWFsb2cuc3R5bGUubGVzcyddLFxuICAgIC8vIFNvIHdlIGRvbid0IGZvcmNlIE9uUHVzaCBvbiBkaWFsb2cgY29udGVudFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvcHJlZmVyLW9uLXB1c2gtY29tcG9uZW50LWNoYW5nZS1kZXRlY3Rpb25cbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGlhbG9nQ2xvc2VTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpU2xpZGVJblRvcCwgdHVpRmFkZUluXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbQHR1aVNsaWRlSW5Ub3BdJzogJ3NsaWRlSW5Ub3AoKScsXG4gICAgICAgICdbQHR1aUZhZGVJbl0nOiAnc2xpZGVJblRvcCgpJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtYXBwZWFyYW5jZV0nOiAnY29udGV4dC5hcHBlYXJhbmNlJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc2l6ZV0nOiAnc2l6ZScsXG4gICAgICAgICdbY2xhc3MuX2NlbnRlcmVkXSc6ICdoZWFkZXInLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURpYWxvZ0NvbXBvbmVudDxPLCBJPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzcGVlZCA9IGluamVjdChUVUlfQU5JTUFUSU9OU19TUEVFRCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGFuaW1hdGlvbiA9IHtcbiAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHN0YXJ0OiAnMi41cmVtJyxcbiAgICAgICAgICAgIGR1cmF0aW9uOiB0dWlHZXREdXJhdGlvbih0aGlzLnNwZWVkKSxcbiAgICAgICAgfSxcbiAgICB9IGFzIGNvbnN0O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBmdWxsc2NyZWVuQW5pbWF0aW9uID0ge1xuICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgc3RhcnQ6ICcxMDB2aCcsXG4gICAgICAgICAgICBkdXJhdGlvbjogdHVpR2V0RHVyYXRpb24odGhpcy5zcGVlZCksXG4gICAgICAgIH0sXG4gICAgfSBhcyBjb25zdDtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjbG9zZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0Q29udGV4dDxUdWlQb3BvdmVyPFR1aURpYWxvZ09wdGlvbnM8ST4sIE8+PigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjbG9zZVdvcmQkID0gaW5qZWN0KFRVSV9DTE9TRV9XT1JEKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbnMgPSBpbmplY3QoVFVJX0NPTU1PTl9JQ09OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNsaWRlSW5Ub3AgPSBjb21wdXRlZCgoKSA9PlxuICAgICAgICB0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJyB8fCB0aGlzLnNpemUgPT09ICdwYWdlJyB8fCB0aGlzLmlzTW9iaWxlKClcbiAgICAgICAgICAgID8gdGhpcy5mdWxsc2NyZWVuQW5pbWF0aW9uXG4gICAgICAgICAgICA6IHRoaXMuYW5pbWF0aW9uLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNNb2JpbGUgPSB0b1NpZ25hbChcbiAgICAgICAgaW5qZWN0KFR1aUJyZWFrcG9pbnRTZXJ2aWNlKS5waXBlKG1hcCgoYnJlYWtwb2ludCkgPT4gYnJlYWtwb2ludCA9PT0gJ21vYmlsZScpKSxcbiAgICApO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgdGhpcy5jbG9zZSQucGlwZShzd2l0Y2hNYXAoKCkgPT4gdG9PYnNlcnZhYmxlKHRoaXMuY29udGV4dC5jbG9zZWFibGUpKSksXG4gICAgICAgICAgICBpbmplY3QoVHVpRGlhbG9nQ2xvc2VTZXJ2aWNlKS5waXBlKFxuICAgICAgICAgICAgICAgIGV4aGF1c3RNYXAoKCkgPT4gdG9PYnNlcnZhYmxlKHRoaXMuY29udGV4dC5kaXNtaXNzaWJsZSkucGlwZSh0YWtlKDEpKSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgaW5qZWN0KFRVSV9ESUFMT0dTX0NMT1NFKS5waXBlKG1hcChUVUlfVFJVRV9IQU5ETEVSKSksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHNpemUoKTogVHVpRGlhbG9nU2l6ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRleHQuc2l6ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGhlYWRlcigpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aVBvcG92ZXI8VHVpRGlhbG9nT3B0aW9uczxJPiwgTz4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC5oZWFkZXI7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGV4dC5yZXF1aXJlZCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0LiRpbXBsaWNpdC5lcnJvcihSRVFVSVJFRF9FUlJPUik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8aGVhZGVyXG4gICAgKm5nSWY9XCJoZWFkZXJcIlxuICAgIGNsYXNzPVwidC1oZWFkZXJcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImhlYWRlciBhcyB0ZXh0OyBjb250ZXh0OiBjb250ZXh0XCI+XG4gICAgICAgIHt7IHRleHQgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvaGVhZGVyPlxuPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgIDxoMlxuICAgICAgICBjbGFzcz1cInQtaGVhZGluZ1wiXG4gICAgICAgIFtjbGFzcy50LWhlYWRpbmdfY2xvc2FibGVdPVwiY29udGV4dC5jbG9zZWFibGUgJiYgIWhlYWRlclwiXG4gICAgICAgIFtpZF09XCJjb250ZXh0LmlkXCJcbiAgICAgICAgW3RleHRDb250ZW50XT1cImNvbnRleHQubGFiZWxcIlxuICAgID48L2gyPlxuICAgIDxzZWN0aW9uPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250ZXh0LmNvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogY29udGV4dFwiPlxuICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInRleHRcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWJ1dHRvbnNcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgdHVpQXV0b0ZvY3VzXG4gICAgICAgICAgICAgICAgICAgIHR1aUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgY29udGV4dC5kYXRhPy5idXR0b24gfHwgJ09LJyB9fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvc2VjdGlvbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInQtZmlsbGVyXCI+PC9kaXY+XG5cbjwhLS0gQ2xvc2UgYnV0dG9uIGlzIGluc2Vuc2l0aXZlIHRvIGBjb250ZXh0LmNsb3NlYWJsZSA9PT0gT2JzZXJ2YWJsZTxmYWxzZT5gIGJ5IGRlc2lnbiAtLT5cbjxidXR0b25cbiAgICAqbmdJZj1cImNvbnRleHQuY2xvc2VhYmxlXCJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWRpYWxvZ19fY2xvc2VcIlxuICAgIHR1aUljb25CdXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cInQtY2xvc2VcIlxuICAgIFthcHBlYXJhbmNlXT1cImlzTW9iaWxlKCkgPyAnaWNvbicgOiAnbmV1dHJhbCdcIlxuICAgIFtpY29uU3RhcnRdPVwiaWNvbnMuY2xvc2VcIlxuICAgIFtzaXplXT1cImlzTW9iaWxlKCkgPyAneHMnIDogJ3MnXCJcbiAgICBbc3R5bGUuYm9yZGVyLXJhZGl1cy4lXT1cIjEwMFwiXG4gICAgKGNsaWNrKT1cImNsb3NlJC5uZXh0KClcIlxuICAgIChtb3VzZWRvd24ucHJldmVudC56b25lbGVzcyk9XCIoMClcIlxuPlxuICAgIHt7IGNsb3NlV29yZCQgfCBhc3luYyB9fVxuPC9idXR0b24+XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFFakUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBQyxjQUFjLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsYUFBYSxFQUFFLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFekUsT0FBTyxFQUNILFVBQVUsRUFDVixNQUFNLEVBQ04sWUFBWSxFQUNaLEdBQUcsRUFDSCxLQUFLLEVBQ0wsRUFBRSxFQUNGLE9BQU8sRUFDUCxTQUFTLEVBQ1QsSUFBSSxHQUNQLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0saUJBQWlC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RCx1QkFBdUIsQ0FBQyxPQUFPLGFBQ3JDLENBQUMscUJBQXFCLENBQUMsa0JBQ2xCLENBQUMsV0FBVyxDQUFDLFFBQ3ZCO3dCQUNGLHdCQUF3QixFQUFFLG9CQUFvQjt3QkFDOUMsa0JBQWtCLEVBQUUsTUFBTTt3QkFDMUIsbUJBQW1CLEVBQUUsUUFBUTt3QkFDN0Isb0JBQW9CLEVBQUUsUUFBUTtxQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7VFVJX1RSVUVfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlBbmltYXRlZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2FuaW1hdGVkJztcbmltcG9ydCB7VHVpQXV0b0ZvY3VzfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cyc7XG5pbXBvcnQgdHlwZSB7VHVpUG9wb3Zlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtUdWlCcmVha3BvaW50U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfQ0xPU0VfV09SRCwgVFVJX0NPTU1PTl9JQ09OU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7aW5qZWN0Q29udGV4dCwgUG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZXhoYXVzdE1hcCxcbiAgICBmaWx0ZXIsXG4gICAgaXNPYnNlcnZhYmxlLFxuICAgIG1hcCxcbiAgICBtZXJnZSxcbiAgICBvZixcbiAgICBTdWJqZWN0LFxuICAgIHN3aXRjaE1hcCxcbiAgICB0YWtlLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUge1R1aURpYWxvZ09wdGlvbnMsIFR1aURpYWxvZ1NpemV9IGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRElBTE9HU19DTE9TRX0gZnJvbSAnLi9kaWFsb2cudG9rZW5zJztcbmltcG9ydCB7VHVpRGlhbG9nQ2xvc2VTZXJ2aWNlfSBmcm9tICcuL2RpYWxvZy1jbG9zZS5zZXJ2aWNlJztcblxuY29uc3QgUkVRVUlSRURfRVJST1IgPSBuZXcgRXJyb3IoJ1JlcXVpcmVkIGRpYWxvZyB3YXMgZGlzbWlzc2VkJyk7XG5cbmZ1bmN0aW9uIHRvT2JzZXJ2YWJsZTxUPih2YWx1ZU9yU3RyZWFtOiBPYnNlcnZhYmxlPFQ+IHwgVCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWVPclN0cmVhbSkgPyB2YWx1ZU9yU3RyZWFtIDogb2YodmFsdWVPclN0cmVhbSk7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktZGlhbG9nJyxcbiAgICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUF1dG9Gb2N1cywgVHVpQnV0dG9uXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy5zdHlsZS5sZXNzJ10sXG4gICAgLy8gU28gd2UgZG9uJ3QgZm9yY2UgT25QdXNoIG9uIGRpYWxvZyBjb250ZW50XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBwcm92aWRlcnM6IFtUdWlEaWFsb2dDbG9zZVNlcnZpY2VdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpQW5pbWF0ZWRdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtYXBwZWFyYW5jZV0nOiAnY29udGV4dC5hcHBlYXJhbmNlJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc2l6ZV0nOiAnc2l6ZScsXG4gICAgICAgICdbY2xhc3MuX2NlbnRlcmVkXSc6ICdoZWFkZXInLFxuICAgICAgICAnW3N0eWxlLi0tdHVpLWZyb21dJzogJ2Zyb20oKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGlhbG9nQ29tcG9uZW50PE8sIEk+IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xvc2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGV4dCA9IGluamVjdENvbnRleHQ8VHVpUG9wb3ZlcjxUdWlEaWFsb2dPcHRpb25zPEk+LCBPPj4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xvc2VXb3JkJCA9IGluamVjdChUVUlfQ0xPU0VfV09SRCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBmcm9tID0gY29tcHV0ZWQoKCkgPT5cbiAgICAgICAgdGhpcy5zaXplID09PSAnZnVsbHNjcmVlbicgfHwgdGhpcy5zaXplID09PSAncGFnZScgfHwgdGhpcy5pc01vYmlsZSgpXG4gICAgICAgICAgICA/ICd0cmFuc2xhdGVZKDEwMHZoKSdcbiAgICAgICAgICAgIDogJ3RyYW5zbGF0ZVkoMi41cmVtKScsXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc01vYmlsZSA9IHRvU2lnbmFsKFxuICAgICAgICBpbmplY3QoVHVpQnJlYWtwb2ludFNlcnZpY2UpLnBpcGUobWFwKChicmVha3BvaW50KSA9PiBicmVha3BvaW50ID09PSAnbW9iaWxlJykpLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICB0aGlzLmNsb3NlJC5waXBlKHN3aXRjaE1hcCgoKSA9PiB0b09ic2VydmFibGUodGhpcy5jb250ZXh0LmNsb3NlYWJsZSkpKSxcbiAgICAgICAgICAgIGluamVjdChUdWlEaWFsb2dDbG9zZVNlcnZpY2UpLnBpcGUoXG4gICAgICAgICAgICAgICAgZXhoYXVzdE1hcCgoKSA9PiB0b09ic2VydmFibGUodGhpcy5jb250ZXh0LmRpc21pc3NpYmxlKS5waXBlKHRha2UoMSkpKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBpbmplY3QoVFVJX0RJQUxPR1NfQ0xPU0UpLnBpcGUobWFwKFRVSV9UUlVFX0hBTkRMRVIpKSxcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKEJvb2xlYW4pLCB0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgc2l6ZSgpOiBUdWlEaWFsb2dTaXplIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC5zaXplO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaGVhZGVyKCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpUG9wb3ZlcjxUdWlEaWFsb2dPcHRpb25zPEk+LCBPPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LmhlYWRlcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250ZXh0LnJlcXVpcmVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmVycm9yKFJFUVVJUkVEX0VSUk9SKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY29udGV4dC4kaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxoZWFkZXJcbiAgICAqbmdJZj1cImhlYWRlclwiXG4gICAgY2xhc3M9XCJ0LWhlYWRlclwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaGVhZGVyIGFzIHRleHQ7IGNvbnRleHQ6IGNvbnRleHRcIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9oZWFkZXI+XG48ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgPGgyXG4gICAgICAgIGNsYXNzPVwidC1oZWFkaW5nXCJcbiAgICAgICAgW2NsYXNzLnQtaGVhZGluZ19jbG9zYWJsZV09XCJjb250ZXh0LmNsb3NlYWJsZSAmJiAhaGVhZGVyXCJcbiAgICAgICAgW2lkXT1cImNvbnRleHQuaWRcIlxuICAgICAgICBbdGV4dENvbnRlbnRdPVwiY29udGV4dC5sYWJlbFwiXG4gICAgPjwvaDI+XG4gICAgPHNlY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImNvbnRleHQuY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiBjb250ZXh0XCI+XG4gICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwidGV4dFwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInQtYnV0dG9uc1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICB0dWlBdXRvRm9jdXNcbiAgICAgICAgICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29udGV4dC4kaW1wbGljaXQuY29tcGxldGUoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBjb250ZXh0LmRhdGE/LmJ1dHRvbiB8fCAnT0snIH19XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9zZWN0aW9uPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwidC1maWxsZXJcIj48L2Rpdj5cblxuPCEtLSBDbG9zZSBidXR0b24gaXMgaW5zZW5zaXRpdmUgdG8gYGNvbnRleHQuY2xvc2VhYmxlID09PSBPYnNlcnZhYmxlPGZhbHNlPmAgYnkgZGVzaWduIC0tPlxuPGJ1dHRvblxuICAgICpuZ0lmPVwiY29udGV4dC5jbG9zZWFibGVcIlxuICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktZGlhbG9nX19jbG9zZVwiXG4gICAgdHVpSWNvbkJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwidC1jbG9zZVwiXG4gICAgW2FwcGVhcmFuY2VdPVwiaXNNb2JpbGUoKSA/ICdpY29uJyA6ICduZXV0cmFsJ1wiXG4gICAgW2ljb25TdGFydF09XCJpY29ucy5jbG9zZVwiXG4gICAgW3NpemVdPVwiaXNNb2JpbGUoKSA/ICd4cycgOiAncydcIlxuICAgIFtzdHlsZS5ib3JkZXItcmFkaXVzLiVdPVwiMTAwXCJcbiAgICAoY2xpY2spPVwiY2xvc2UkLm5leHQoKVwiXG4gICAgKG1vdXNlZG93bi5wcmV2ZW50LnpvbmVsZXNzKT1cIigwKVwiXG4+XG4gICAge3sgY2xvc2VXb3JkJCB8IGFzeW5jIH19XG48L2J1dHRvbj5cbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  import { NgForOf } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
3
3
  import { toSignal } from '@angular/core/rxjs-interop';
4
+ import { TuiAnimatedParent } from '@taiga-ui/cdk/directives/animated';
4
5
  import { TuiFocusTrap } from '@taiga-ui/cdk/directives/focus-trap';
5
6
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
6
- import { tuiHost } from '@taiga-ui/core/animations';
7
7
  import { TuiScrollControls, TuiScrollRef } from '@taiga-ui/core/components/scrollbar';
8
8
  import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
9
9
  import { TUI_DIALOGS } from './dialog.tokens';
@@ -14,13 +14,20 @@ class TuiDialogs {
14
14
  this.dialogs = toSignal(inject(TUI_DIALOGS), { initialValue: [] });
15
15
  }
16
16
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogs, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogs, isStandalone: true, selector: "tui-dialogs", host: { listeners: { "keydown.zoneless": "el.scrollTop = el.scrollHeight / 2" } }, ngImport: i0, template: "<div\n class=\"t-overlay\"\n [class.t-overlay_visible]=\"dialogs().length\"\n></div>\n<section\n *ngFor=\"let item of dialogs()\"\n aria-modal=\"true\"\n role=\"dialog\"\n tuiFocusTrap\n tuiScrollRef\n class=\"t-dialog\"\n @tuiHost\n [attr.aria-labelledby]=\"item.id\"\n>\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n</section>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;overflow:hidden;overscroll-behavior:none;overflow-wrap:break-word;margin-top:var(--t-root-top)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:has(section){pointer-events:auto;overflow:auto}:host:before{content:\"\";display:block;block-size:1000%}.t-overlay,.t-dialog{transition-property:filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;scrollbar-width:none;-ms-overflow-style:none;position:fixed;top:0;left:0;bottom:0;right:0;display:flex;block-size:100%;align-items:flex-start;outline:none;overflow:auto}.t-overlay::-webkit-scrollbar,.t-dialog::-webkit-scrollbar,.t-overlay::-webkit-scrollbar-thumb,.t-dialog::-webkit-scrollbar-thumb{display:none}.t-overlay.ng-animating,.t-dialog.ng-animating{overflow:clip}.t-dialog{position:sticky;overscroll-behavior:none;filter:brightness(.25)}.t-overlay{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-service-backdrop);-webkit-backdrop-filter:var(--tui-backdrop, none);backdrop-filter:var(--tui-backdrop, none);opacity:0;transition-timing-function:ease-in}.t-overlay_visible{opacity:1;transition-timing-function:ease-out}.t-dialog:last-child{pointer-events:auto;filter:none}:host-context(tui-root:has(tui-dropdown-mobile._sheet)) .t-dialog:last-child{filter:brightness(.5)}.t-scrollbars{position:fixed;top:0;left:0;bottom:0;right:0;margin:0;color:#747474}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiFocusTrap, selector: "[tuiFocusTrap]" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: TuiScrollRef, selector: "[tuiScrollRef]" }], animations: [tuiHost], changeDetection: i0.ChangeDetectionStrategy.Default }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogs, isStandalone: true, selector: "tui-dialogs", host: { listeners: { "keydown.zoneless": "el.scrollTop = el.scrollHeight / 2" } }, ngImport: i0, template: "<div\n class=\"t-overlay\"\n [class.t-overlay_visible]=\"dialogs().length\"\n></div>\n<section\n *ngFor=\"let item of dialogs()\"\n aria-modal=\"true\"\n role=\"dialog\"\n tuiAnimatedParent\n tuiFocusTrap\n tuiScrollRef\n class=\"t-dialog\"\n [attr.aria-labelledby]=\"item.id\"\n>\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n</section>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;overflow:hidden;overscroll-behavior:none;overflow-wrap:break-word;margin-top:var(--t-root-top)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:has(section){pointer-events:auto;overflow:auto}:host:before{content:\"\";display:block;block-size:1000%}.t-overlay,.t-dialog{transition-property:filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;scrollbar-width:none;-ms-overflow-style:none;position:fixed;top:0;left:0;bottom:0;right:0;display:flex;block-size:100%;align-items:flex-start;outline:none;overflow:auto}.t-overlay::-webkit-scrollbar,.t-dialog::-webkit-scrollbar,.t-overlay::-webkit-scrollbar-thumb,.t-dialog::-webkit-scrollbar-thumb{display:none}.t-overlay:has(>.tui-enter),.t-dialog:has(>.tui-enter),.t-overlay:has(>.tui-leave),.t-dialog:has(>.tui-leave){overflow:clip}.t-dialog{position:sticky;overscroll-behavior:none;filter:brightness(.25)}.t-overlay{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-service-backdrop);-webkit-backdrop-filter:var(--tui-backdrop, none);backdrop-filter:var(--tui-backdrop, none);opacity:0;transition-timing-function:ease-in}.t-overlay_visible{opacity:1;transition-timing-function:ease-out}.t-dialog:last-child{pointer-events:auto;filter:none}:host-context(tui-root:has(tui-dropdown-mobile._sheet)) .t-dialog:last-child{filter:brightness(.5)}.t-scrollbars{position:fixed;top:0;left:0;bottom:0;right:0;margin:0;color:#747474}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAnimatedParent, selector: "[tuiAnimatedParent]" }, { kind: "directive", type: TuiFocusTrap, selector: "[tuiFocusTrap]" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: TuiScrollRef, selector: "[tuiScrollRef]" }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
18
18
  }
19
19
  export { TuiDialogs };
20
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogs, decorators: [{
21
21
  type: Component,
22
- args: [{ standalone: true, selector: 'tui-dialogs', imports: [NgForOf, PolymorpheusOutlet, TuiFocusTrap, TuiScrollControls, TuiScrollRef], changeDetection: ChangeDetectionStrategy.Default, animations: [tuiHost], host: {
22
+ args: [{ standalone: true, selector: 'tui-dialogs', imports: [
23
+ NgForOf,
24
+ PolymorpheusOutlet,
25
+ TuiAnimatedParent,
26
+ TuiFocusTrap,
27
+ TuiScrollControls,
28
+ TuiScrollRef,
29
+ ], changeDetection: ChangeDetectionStrategy.Default, host: {
23
30
  '(keydown.zoneless)': 'el.scrollTop = el.scrollHeight / 2',
24
- }, template: "<div\n class=\"t-overlay\"\n [class.t-overlay_visible]=\"dialogs().length\"\n></div>\n<section\n *ngFor=\"let item of dialogs()\"\n aria-modal=\"true\"\n role=\"dialog\"\n tuiFocusTrap\n tuiScrollRef\n class=\"t-dialog\"\n @tuiHost\n [attr.aria-labelledby]=\"item.id\"\n>\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n</section>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;overflow:hidden;overscroll-behavior:none;overflow-wrap:break-word;margin-top:var(--t-root-top)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:has(section){pointer-events:auto;overflow:auto}:host:before{content:\"\";display:block;block-size:1000%}.t-overlay,.t-dialog{transition-property:filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;scrollbar-width:none;-ms-overflow-style:none;position:fixed;top:0;left:0;bottom:0;right:0;display:flex;block-size:100%;align-items:flex-start;outline:none;overflow:auto}.t-overlay::-webkit-scrollbar,.t-dialog::-webkit-scrollbar,.t-overlay::-webkit-scrollbar-thumb,.t-dialog::-webkit-scrollbar-thumb{display:none}.t-overlay.ng-animating,.t-dialog.ng-animating{overflow:clip}.t-dialog{position:sticky;overscroll-behavior:none;filter:brightness(.25)}.t-overlay{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-service-backdrop);-webkit-backdrop-filter:var(--tui-backdrop, none);backdrop-filter:var(--tui-backdrop, none);opacity:0;transition-timing-function:ease-in}.t-overlay_visible{opacity:1;transition-timing-function:ease-out}.t-dialog:last-child{pointer-events:auto;filter:none}:host-context(tui-root:has(tui-dropdown-mobile._sheet)) .t-dialog:last-child{filter:brightness(.5)}.t-scrollbars{position:fixed;top:0;left:0;bottom:0;right:0;margin:0;color:#747474}\n"] }]
31
+ }, template: "<div\n class=\"t-overlay\"\n [class.t-overlay_visible]=\"dialogs().length\"\n></div>\n<section\n *ngFor=\"let item of dialogs()\"\n aria-modal=\"true\"\n role=\"dialog\"\n tuiAnimatedParent\n tuiFocusTrap\n tuiScrollRef\n class=\"t-dialog\"\n [attr.aria-labelledby]=\"item.id\"\n>\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n</section>\n", styles: [":host{position:fixed;top:0;left:0;inline-size:100%;block-size:100%;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;overflow:hidden;overscroll-behavior:none;overflow-wrap:break-word;margin-top:var(--t-root-top)}:host::-webkit-scrollbar,:host::-webkit-scrollbar-thumb{display:none}:host:has(section){pointer-events:auto;overflow:auto}:host:before{content:\"\";display:block;block-size:1000%}.t-overlay,.t-dialog{transition-property:filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;scrollbar-width:none;-ms-overflow-style:none;position:fixed;top:0;left:0;bottom:0;right:0;display:flex;block-size:100%;align-items:flex-start;outline:none;overflow:auto}.t-overlay::-webkit-scrollbar,.t-dialog::-webkit-scrollbar,.t-overlay::-webkit-scrollbar-thumb,.t-dialog::-webkit-scrollbar-thumb{display:none}.t-overlay:has(>.tui-enter),.t-dialog:has(>.tui-enter),.t-overlay:has(>.tui-leave),.t-dialog:has(>.tui-leave){overflow:clip}.t-dialog{position:sticky;overscroll-behavior:none;filter:brightness(.25)}.t-overlay{transition-property:opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-service-backdrop);-webkit-backdrop-filter:var(--tui-backdrop, none);backdrop-filter:var(--tui-backdrop, none);opacity:0;transition-timing-function:ease-in}.t-overlay_visible{opacity:1;transition-timing-function:ease-out}.t-dialog:last-child{pointer-events:auto;filter:none}:host-context(tui-root:has(tui-dropdown-mobile._sheet)) .t-dialog:last-child{filter:brightness(.5)}.t-scrollbars{position:fixed;top:0;left:0;bottom:0;right:0;margin:0;color:#747474}\n"] }]
25
32
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2dzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXhDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFFakUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBRTVDLE1BY2EsVUFBVTtJQWR2QjtRQWV1QixPQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixZQUFPLEdBQWdELFFBQVEsQ0FDOUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUNuQixFQUFDLFlBQVksRUFBRSxFQUFFLEVBQUMsQ0FDckIsQ0FBQztLQUNMOytHQU5ZLFVBQVU7bUdBQVYsVUFBVSwwSkMzQnZCLDZiQWlCQSwybURERGMsT0FBTyxtSEFBRSxrQkFBa0IsOEhBQUUsWUFBWSwyREFBRSxpQkFBaUIsZ0VBQUUsWUFBWSw2Q0FNeEUsQ0FBQyxPQUFPLENBQUM7O1NBS1osVUFBVTs0RkFBVixVQUFVO2tCQWR0QixTQUFTO2lDQUNNLElBQUksWUFDTixhQUFhLFdBQ2QsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxtQkFLcEUsdUJBQXVCLENBQUMsT0FBTyxjQUNwQyxDQUFDLE9BQU8sQ0FBQyxRQUNmO3dCQUNGLG9CQUFvQixFQUFFLG9DQUFvQztxQkFDN0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nRm9yT2Z9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7U2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7VHVpRm9jdXNUcmFwfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZm9jdXMtdHJhcCc7XG5pbXBvcnQgdHlwZSB7VHVpUG9wb3Zlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aVNjcm9sbENvbnRyb2xzLCBUdWlTY3JvbGxSZWZ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvc2Nyb2xsYmFyJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUVUlfRElBTE9HU30gZnJvbSAnLi9kaWFsb2cudG9rZW5zJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1kaWFsb2dzJyxcbiAgICBpbXBvcnRzOiBbTmdGb3JPZiwgUG9seW1vcnBoZXVzT3V0bGV0LCBUdWlGb2N1c1RyYXAsIFR1aVNjcm9sbENvbnRyb2xzLCBUdWlTY3JvbGxSZWZdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2dzLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZ3Muc3R5bGUubGVzcyddLFxuICAgIC8vIFNvIHRoYXQgd2UgZG8gbm90IGZvcmNlIE9uUHVzaCBvbiBjdXN0b20gZGlhbG9nc1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvcHJlZmVyLW9uLXB1c2gtY29tcG9uZW50LWNoYW5nZS1kZXRlY3Rpb25cbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgYW5pbWF0aW9uczogW3R1aUhvc3RdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhrZXlkb3duLnpvbmVsZXNzKSc6ICdlbC5zY3JvbGxUb3AgPSBlbC5zY3JvbGxIZWlnaHQgLyAyJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2dzIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWwgPSB0dWlJbmplY3RFbGVtZW50KCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpYWxvZ3M6IFNpZ25hbDxSZWFkb25seUFycmF5PFR1aVBvcG92ZXI8YW55LCBhbnk+Pj4gPSB0b1NpZ25hbChcbiAgICAgICAgaW5qZWN0KFRVSV9ESUFMT0dTKSxcbiAgICAgICAge2luaXRpYWxWYWx1ZTogW119LFxuICAgICk7XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJ0LW92ZXJsYXlcIlxuICAgIFtjbGFzcy50LW92ZXJsYXlfdmlzaWJsZV09XCJkaWFsb2dzKCkubGVuZ3RoXCJcbj48L2Rpdj5cbjxzZWN0aW9uXG4gICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGlhbG9ncygpXCJcbiAgICBhcmlhLW1vZGFsPVwidHJ1ZVwiXG4gICAgcm9sZT1cImRpYWxvZ1wiXG4gICAgdHVpRm9jdXNUcmFwXG4gICAgdHVpU2Nyb2xsUmVmXG4gICAgY2xhc3M9XCJ0LWRpYWxvZ1wiXG4gICAgQHR1aUhvc3RcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiaXRlbS5pZFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbS5jb21wb25lbnQ7IGNvbnRleHQ6IGl0ZW1cIiAvPlxuICAgIDx0dWktc2Nyb2xsLWNvbnRyb2xzIGNsYXNzPVwidC1zY3JvbGxiYXJzXCIgLz5cbjwvc2VjdGlvbj5cbiJdfQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2dzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXhDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFFakUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFlBQVksRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTFELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFNUMsTUFvQmEsVUFBVTtJQXBCdkI7UUFxQnVCLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLFlBQU8sR0FBZ0QsUUFBUSxDQUM5RSxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQ25CLEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUNyQixDQUFDO0tBQ0w7K0dBTlksVUFBVTttR0FBVixVQUFVLDBKQ2pDdkIsc2NBaUJBLDBxRERBUSxPQUFPLG1IQUNQLGtCQUFrQiw4SEFDbEIsaUJBQWlCLGdFQUNqQixZQUFZLDJEQUNaLGlCQUFpQixnRUFDakIsWUFBWTs7U0FXUCxVQUFVOzRGQUFWLFVBQVU7a0JBcEJ0QixTQUFTO2lDQUNNLElBQUksWUFDTixhQUFhLFdBQ2Q7d0JBQ0wsT0FBTzt3QkFDUCxrQkFBa0I7d0JBQ2xCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLFlBQVk7cUJBQ2YsbUJBS2dCLHVCQUF1QixDQUFDLE9BQU8sUUFDMUM7d0JBQ0Ysb0JBQW9CLEVBQUUsb0NBQW9DO3FCQUM3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdGb3JPZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtTaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtUdWlBbmltYXRlZFBhcmVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2FuaW1hdGVkJztcbmltcG9ydCB7VHVpRm9jdXNUcmFwfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZm9jdXMtdHJhcCc7XG5pbXBvcnQgdHlwZSB7VHVpUG9wb3Zlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7VHVpU2Nyb2xsQ29udHJvbHMsIFR1aVNjcm9sbFJlZn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXInO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1RVSV9ESUFMT0dTfSBmcm9tICcuL2RpYWxvZy50b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRpYWxvZ3MnLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdGb3JPZixcbiAgICAgICAgUG9seW1vcnBoZXVzT3V0bGV0LFxuICAgICAgICBUdWlBbmltYXRlZFBhcmVudCxcbiAgICAgICAgVHVpRm9jdXNUcmFwLFxuICAgICAgICBUdWlTY3JvbGxDb250cm9scyxcbiAgICAgICAgVHVpU2Nyb2xsUmVmLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZ3MudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGlhbG9ncy5zdHlsZS5sZXNzJ10sXG4gICAgLy8gU28gdGhhdCB3ZSBkbyBub3QgZm9yY2UgT25QdXNoIG9uIGN1c3RvbSBkaWFsb2dzXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBob3N0OiB7XG4gICAgICAgICcoa2V5ZG93bi56b25lbGVzcyknOiAnZWwuc2Nyb2xsVG9wID0gZWwuc2Nyb2xsSGVpZ2h0IC8gMicsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGlhbG9ncyB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkaWFsb2dzOiBTaWduYWw8UmVhZG9ubHlBcnJheTxUdWlQb3BvdmVyPGFueSwgYW55Pj4+ID0gdG9TaWduYWwoXG4gICAgICAgIGluamVjdChUVUlfRElBTE9HUyksXG4gICAgICAgIHtpbml0aWFsVmFsdWU6IFtdfSxcbiAgICApO1xufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwidC1vdmVybGF5XCJcbiAgICBbY2xhc3MudC1vdmVybGF5X3Zpc2libGVdPVwiZGlhbG9ncygpLmxlbmd0aFwiXG4+PC9kaXY+XG48c2VjdGlvblxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRpYWxvZ3MoKVwiXG4gICAgYXJpYS1tb2RhbD1cInRydWVcIlxuICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgIHR1aUFuaW1hdGVkUGFyZW50XG4gICAgdHVpRm9jdXNUcmFwXG4gICAgdHVpU2Nyb2xsUmVmXG4gICAgY2xhc3M9XCJ0LWRpYWxvZ1wiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIml0ZW0uaWRcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cIml0ZW0uY29tcG9uZW50OyBjb250ZXh0OiBpdGVtXCIgLz5cbiAgICA8dHVpLXNjcm9sbC1jb250cm9scyBjbGFzcz1cInQtc2Nyb2xsYmFyc1wiIC8+XG48L3NlY3Rpb24+XG4iXX0=
@@ -2,8 +2,8 @@ import { NgIf } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, inject, Input } from '@angular/core';
3
3
  import { toSignal } from '@angular/core/rxjs-interop';
4
4
  import { TuiValidationError } from '@taiga-ui/cdk/classes';
5
+ import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
5
6
  import { tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
6
- import { tuiFadeIn, tuiHeightCollapse } from '@taiga-ui/core/animations';
7
7
  import { TUI_ANIMATIONS_SPEED, TUI_DEFAULT_ERROR_MESSAGE } from '@taiga-ui/core/tokens';
8
8
  import { tuiToAnimationOptions } from '@taiga-ui/core/utils';
9
9
  import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
@@ -18,21 +18,17 @@ class TuiError {
18
18
  set errorSetter(error) {
19
19
  this.error = tuiIsString(error) ? new TuiValidationError(error) : error;
20
20
  }
21
- onAnimation(visible) {
22
- this.visible = visible;
23
- }
24
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiError, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiError, isStandalone: true, selector: "tui-error", inputs: { errorSetter: ["error", "errorSetter"] }, host: { listeners: { "animationcancel.self": "onAnimation(false)", "animationstart.self": "onAnimation(true)" } }, ngImport: i0, template: "<div\n *ngIf=\"error && visible\"\n automation-id=\"tui-error__text\"\n class=\"t-message-text\"\n [@tuiFadeIn]=\"options\"\n [@tuiHeightCollapse]=\"options\"\n>\n <ng-container *polymorpheusOutlet=\"error.message || default() as text; context: error.context || {}\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{display:block;font:var(--tui-font-text-s);color:var(--tui-text-negative);overflow-wrap:break-word;animation:tuiPresent 1s infinite}.t-message-text{white-space:pre-line}.t-message-text:before{content:\"\";line-height:1.5rem;vertical-align:bottom}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiHeightCollapse, tuiFadeIn], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiError, isStandalone: true, selector: "tui-error", inputs: { errorSetter: ["error", "errorSetter"] }, host: { properties: { "class._error": "error" } }, ngImport: i0, template: "<div\n *ngIf=\"error\"\n automation-id=\"tui-error__text\"\n tuiAnimated\n class=\"t-message-text\"\n>\n <ng-container *polymorpheusOutlet=\"error.message || default() as text; context: error.context || {}\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{transition-property:grid-template-rows;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:grid;font:var(--tui-font-text-s);color:var(--tui-text-negative);overflow-wrap:break-word;grid-template-rows:0fr}:host._error{grid-template-rows:1fr}.t-message-text{white-space:pre-line;grid-row:1 / span 2;overflow:hidden}.t-message-text.tui-enter,.t-message-text.tui-leave{animation-name:tuiFade}.t-message-text:before{content:\"\";line-height:1.5rem;vertical-align:bottom}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiAnimated, selector: "[tuiAnimated]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
23
  }
27
24
  export { TuiError };
28
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiError, decorators: [{
29
26
  type: Component,
30
- args: [{ standalone: true, selector: 'tui-error', imports: [NgIf, PolymorpheusOutlet], changeDetection: ChangeDetectionStrategy.OnPush, animations: [tuiHeightCollapse, tuiFadeIn], host: {
31
- '(animationcancel.self)': 'onAnimation(false)',
32
- '(animationstart.self)': 'onAnimation(true)',
33
- }, template: "<div\n *ngIf=\"error && visible\"\n automation-id=\"tui-error__text\"\n class=\"t-message-text\"\n [@tuiFadeIn]=\"options\"\n [@tuiHeightCollapse]=\"options\"\n>\n <ng-container *polymorpheusOutlet=\"error.message || default() as text; context: error.context || {}\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{display:block;font:var(--tui-font-text-s);color:var(--tui-text-negative);overflow-wrap:break-word;animation:tuiPresent 1s infinite}.t-message-text{white-space:pre-line}.t-message-text:before{content:\"\";line-height:1.5rem;vertical-align:bottom}\n"] }]
27
+ args: [{ standalone: true, selector: 'tui-error', imports: [NgIf, PolymorpheusOutlet, TuiAnimated], changeDetection: ChangeDetectionStrategy.OnPush, host: {
28
+ '[class._error]': 'error',
29
+ }, template: "<div\n *ngIf=\"error\"\n automation-id=\"tui-error__text\"\n tuiAnimated\n class=\"t-message-text\"\n>\n <ng-container *polymorpheusOutlet=\"error.message || default() as text; context: error.context || {}\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{transition-property:grid-template-rows;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:grid;font:var(--tui-font-text-s);color:var(--tui-text-negative);overflow-wrap:break-word;grid-template-rows:0fr}:host._error{grid-template-rows:1fr}.t-message-text{white-space:pre-line;grid-row:1 / span 2;overflow:hidden}.t-message-text.tui-enter,.t-message-text.tui-leave{animation-name:tuiFade}.t-message-text:before{content:\"\";line-height:1.5rem;vertical-align:bottom}\n"] }]
34
30
  }], propDecorators: { errorSetter: [{
35
31
  type: Input,
36
32
  args: ['error']
37
33
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9lcnJvci9lcnJvci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUMsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDdkUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLHlCQUF5QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDdEYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBRTFELE1BYWEsUUFBUTtJQWJyQjtRQWN1QixZQUFPLEdBQUcscUJBQXFCLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztRQUN2RSxVQUFLLEdBQThCLElBQUksQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ04sWUFBTyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0tBVTVFO0lBUkcsSUFDVyxXQUFXLENBQUMsS0FBeUM7UUFDNUQsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUM1RSxDQUFDO0lBRVMsV0FBVyxDQUFDLE9BQWdCO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQzNCLENBQUM7K0dBYlEsUUFBUTttR0FBUixRQUFRLDJPQ3ZCckIsa1ZBV0EsdVRERWMsSUFBSSw2RkFBRSxrQkFBa0IsZ0hBSXRCLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDOztTQU1qQyxRQUFROzRGQUFSLFFBQVE7a0JBYnBCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLFdBQVcsV0FDWixDQUFDLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxtQkFHbEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxDQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQyxRQUNwQzt3QkFDRix3QkFBd0IsRUFBRSxvQkFBb0I7d0JBQzlDLHVCQUF1QixFQUFFLG1CQUFtQjtxQkFDL0M7OEJBU1UsV0FBVztzQkFEckIsS0FBSzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7VHVpVmFsaWRhdGlvbkVycm9yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHt0dWlJc1N0cmluZ30gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7dHVpRmFkZUluLCB0dWlIZWlnaHRDb2xsYXBzZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1RVSV9BTklNQVRJT05TX1NQRUVELCBUVUlfREVGQVVMVF9FUlJPUl9NRVNTQUdFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlUb0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1lcnJvcicsXG4gICAgaW1wb3J0czogW05nSWYsIFBvbHltb3JwaGV1c091dGxldF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Vycm9yLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Vycm9yLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBbdHVpSGVpZ2h0Q29sbGFwc2UsIHR1aUZhZGVJbl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnKGFuaW1hdGlvbmNhbmNlbC5zZWxmKSc6ICdvbkFuaW1hdGlvbihmYWxzZSknLFxuICAgICAgICAnKGFuaW1hdGlvbnN0YXJ0LnNlbGYpJzogJ29uQW5pbWF0aW9uKHRydWUpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlFcnJvciB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnMgPSB0dWlUb0FuaW1hdGlvbk9wdGlvbnMoaW5qZWN0KFRVSV9BTklNQVRJT05TX1NQRUVEKSk7XG4gICAgcHJvdGVjdGVkIGVycm9yOiBUdWlWYWxpZGF0aW9uRXJyb3IgfCBudWxsID0gbnVsbDtcbiAgICBwcm90ZWN0ZWQgdmlzaWJsZSA9IHRydWU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHQgPSB0b1NpZ25hbChpbmplY3QoVFVJX0RFRkFVTFRfRVJST1JfTUVTU0FHRSkpO1xuXG4gICAgQElucHV0KCdlcnJvcicpXG4gICAgcHVibGljIHNldCBlcnJvclNldHRlcihlcnJvcjogVHVpVmFsaWRhdGlvbkVycm9yIHwgc3RyaW5nIHwgbnVsbCkge1xuICAgICAgICB0aGlzLmVycm9yID0gdHVpSXNTdHJpbmcoZXJyb3IpID8gbmV3IFR1aVZhbGlkYXRpb25FcnJvcihlcnJvcikgOiBlcnJvcjtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25BbmltYXRpb24odmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnZpc2libGUgPSB2aXNpYmxlO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAqbmdJZj1cImVycm9yICYmIHZpc2libGVcIlxuICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktZXJyb3JfX3RleHRcIlxuICAgIGNsYXNzPVwidC1tZXNzYWdlLXRleHRcIlxuICAgIFtAdHVpRmFkZUluXT1cIm9wdGlvbnNcIlxuICAgIFtAdHVpSGVpZ2h0Q29sbGFwc2VdPVwib3B0aW9uc1wiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiZXJyb3IubWVzc2FnZSB8fCBkZWZhdWx0KCkgYXMgdGV4dDsgY29udGV4dDogZXJyb3IuY29udGV4dCB8fCB7fVwiPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9lcnJvci9lcnJvci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDOUQsT0FBTyxFQUFDLG9CQUFvQixFQUFFLHlCQUF5QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDdEYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBRTFELE1BV2EsUUFBUTtJQVhyQjtRQVl1QixZQUFPLEdBQUcscUJBQXFCLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztRQUN2RSxVQUFLLEdBQThCLElBQUksQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ04sWUFBTyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0tBTTVFO0lBSkcsSUFDVyxXQUFXLENBQUMsS0FBeUM7UUFDNUQsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUM1RSxDQUFDOytHQVRRLFFBQVE7bUdBQVIsUUFBUSwyS0NyQnJCLG9SQVVBLDBqQkRHYyxJQUFJLDZGQUFFLGtCQUFrQiw4SEFBRSxXQUFXOztTQVF0QyxRQUFROzRGQUFSLFFBQVE7a0JBWHBCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLFdBQVcsV0FDWixDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLENBQUMsbUJBRy9CLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsZ0JBQWdCLEVBQUUsT0FBTztxQkFDNUI7OEJBU1UsV0FBVztzQkFEckIsS0FBSzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7VHVpVmFsaWRhdGlvbkVycm9yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtUdWlBbmltYXRlZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2FuaW1hdGVkJztcbmltcG9ydCB7dHVpSXNTdHJpbmd9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1RVSV9BTklNQVRJT05TX1NQRUVELCBUVUlfREVGQVVMVF9FUlJPUl9NRVNTQUdFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlUb0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1lcnJvcicsXG4gICAgaW1wb3J0czogW05nSWYsIFBvbHltb3JwaGV1c091dGxldCwgVHVpQW5pbWF0ZWRdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lcnJvci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lcnJvci5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLl9lcnJvcl0nOiAnZXJyb3InLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUVycm9yIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IHR1aVRvQW5pbWF0aW9uT3B0aW9ucyhpbmplY3QoVFVJX0FOSU1BVElPTlNfU1BFRUQpKTtcbiAgICBwcm90ZWN0ZWQgZXJyb3I6IFR1aVZhbGlkYXRpb25FcnJvciB8IG51bGwgPSBudWxsO1xuICAgIHByb3RlY3RlZCB2aXNpYmxlID0gdHJ1ZTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdCA9IHRvU2lnbmFsKGluamVjdChUVUlfREVGQVVMVF9FUlJPUl9NRVNTQUdFKSk7XG5cbiAgICBASW5wdXQoJ2Vycm9yJylcbiAgICBwdWJsaWMgc2V0IGVycm9yU2V0dGVyKGVycm9yOiBUdWlWYWxpZGF0aW9uRXJyb3IgfCBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIHRoaXMuZXJyb3IgPSB0dWlJc1N0cmluZyhlcnJvcikgPyBuZXcgVHVpVmFsaWRhdGlvbkVycm9yKGVycm9yKSA6IGVycm9yO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAqbmdJZj1cImVycm9yXCJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWVycm9yX190ZXh0XCJcbiAgICB0dWlBbmltYXRlZFxuICAgIGNsYXNzPVwidC1tZXNzYWdlLXRleHRcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImVycm9yLm1lc3NhZ2UgfHwgZGVmYXVsdCgpIGFzIHRleHQ7IGNvbnRleHQ6IGVycm9yLmNvbnRleHQgfHwge31cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -1,5 +1,8 @@
1
1
  import { Directive } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * @deprecated use {@link TuiExpand} from @taiga-ui/experimental
5
+ */
3
6
  class TuiExpandContent {
4
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiExpandContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
8
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiExpandContent, isStandalone: true, selector: "[tuiExpandContent]", ngImport: i0 }); }
@@ -12,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
12
15
  selector: '[tuiExpandContent]',
13
16
  }]
14
17
  }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2V4cGFuZC9leHBhbmQtY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFeEMsTUFJYSxnQkFBZ0I7K0dBQWhCLGdCQUFnQjttR0FBaEIsZ0JBQWdCOztTQUFoQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG9CQUFvQjtpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdbdHVpRXhwYW5kQ29udGVudF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlFeHBhbmRDb250ZW50IHt9XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2V4cGFuZC9leHBhbmQtY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFeEM7O0dBRUc7QUFDSCxNQUlhLGdCQUFnQjsrR0FBaEIsZ0JBQWdCO21HQUFoQixnQkFBZ0I7O1NBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Uge0BsaW5rIFR1aUV4cGFuZH0gZnJvbSBAdGFpZ2EtdWkvZXhwZXJpbWVudGFsXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdbdHVpRXhwYW5kQ29udGVudF0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlFeHBhbmRDb250ZW50IHt9XG4iXX0=
@@ -18,6 +18,9 @@ const LOADER_HEIGHT = 48;
18
18
  * Dispatch to finish loading states for {@link TuiExpandComponent}.
19
19
  */
20
20
  export const TUI_EXPAND_LOADED = 'tui-expand-loaded';
21
+ /**
22
+ * @deprecated use {@link TuiExpand} from @taiga-ui/experimental
23
+ */
21
24
  class TuiExpandComponent {
22
25
  constructor() {
23
26
  this.cdr = inject(ChangeDetectorRef);
@@ -118,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
118
121
  type: Input,
119
122
  args: ['expanded']
120
123
  }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9leHBhbmQvZXhwYW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9leHBhbmQvZXhwYW5kLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxFQUNYLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUUzQixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFNUQsTUFBTSxLQUFLLEdBQUc7SUFDVixJQUFJLEVBQUUsQ0FBQztJQUNQLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztDQUNMLENBQUM7QUFFWCxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFFekI7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsbUJBQW1CLENBQUM7QUFFckQsTUFrQmEsa0JBQWtCO0lBbEIvQjtRQXNCcUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFD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O3VCQUFDLFNBQVM7Z0JBUVYsT0FBTztzQkFEaEIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUM7Z0JBTTVDLEtBQUs7c0JBRFgsS0FBSztnQkFJSyxjQUFjO3NCQUR4QixLQUFLO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7TmdJZkNvbnRleHR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nSWYsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7RWxlbWVudFJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRGVzdHJveVJlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgdHlwZSB7VHVpVmFsdWVzT2Z9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlQYXJlbnRBbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlMb2FkZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvbG9hZGVyJztcbmltcG9ydCB7dGltZXJ9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aUV4cGFuZENvbnRlbnR9IGZyb20gJy4vZXhwYW5kLWNvbnRlbnQuZGlyZWN0aXZlJztcblxuY29uc3QgU3RhdGUgPSB7XG4gICAgSWRsZTogMCxcbiAgICBMb2FkaW5nOiAxLFxuICAgIFByZXBhcmVkOiAyLFxuICAgIEFuaW1hdGVkOiAzLFxufSBhcyBjb25zdDtcblxuY29uc3QgTE9BREVSX0hFSUdIVCA9IDQ4O1xuXG4vKipcbiAqIEFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhc3luYyBkYXRhIGZvciBleHBhbmQgaGFzIGZpbmlzaGVkIGxvYWRpbmcuXG4gKiBEaXNwYXRjaCB0byBmaW5pc2ggbG9hZGluZyBzdGF0ZXMgZm9yIHtAbGluayBUdWlFeHBhbmRDb21wb25lbnR9LlxuICovXG5leHBvcnQgY29uc3QgVFVJX0VYUEFORF9MT0FERUQgPSAndHVpLWV4cGFuZC1sb2FkZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWV4cGFuZCcsXG4gICAgaW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIFR1aUxvYWRlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V4cGFuZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9leHBhbmQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlQYXJlbnRBbmltYXRpb25dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS5oZWlnaHQucHhdJzogJ2hlaWdodCcsXG4gICAgICAgICdbY2xhc3MuX2xvYWRpbmddJzogJ2xvYWRpbmcnLFxuICAgICAgICAnW2NsYXNzLl9vdmVyZmxvd10nOiAnb3ZlcmZsb3cnLFxuICAgICAgICAnW2NsYXNzLl9leHBhbmRlZF0nOiAnZXhwYW5kZWQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1leHBhbmRlZF0nOiAnZXhwYW5kZWQnLFxuICAgICAgICAnKHRyYW5zaXRpb25lbmQuc2VsZiknOiAnb25UcmFuc2l0aW9uRW5kKCRldmVudCknLFxuICAgICAgICBbYCgke1RVSV9FWFBBTkRfTE9BREVEfSlgXTogJ29uRXhwYW5kTG9hZGVkKCRldmVudCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUV4cGFuZENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnd3JhcHBlcicpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZW50V3JhcHBlcj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcml2YXRlIHN0YXRlOiBUdWlWYWx1ZXNPZjx0eXBlb2YgU3RhdGU+ID0gU3RhdGUuSWRsZTtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpRXhwYW5kQ29udGVudCwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICBwcm90ZWN0ZWQgY29udGVudDogVGVtcGxhdGVSZWY8TmdJZkNvbnRleHQ8Ym9vbGVhbj4+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcm90ZWN0ZWQgZXhwYW5kZWQ6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGFzeW5jID0gZmFsc2U7XG5cbiAgICBASW5wdXQoJ2V4cGFuZGVkJylcbiAgICBwdWJsaWMgc2V0IGV4cGFuZGVkU2V0dGVyKGV4cGFuZGVkOiBib29sZWFuIHwgbnVsbCkge1xuICAgICAgICBpZiAodGhpcy5leHBhbmRlZCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuSWRsZSkge1xuICAgICAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IFN0YXRlLkFuaW1hdGVkO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMucmV0cmlnZ2VyKHRoaXMuYXN5bmMgJiYgZXhwYW5kZWQgPyBTdGF0ZS5Mb2FkaW5nIDogU3RhdGUuQW5pbWF0ZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29udGVudFZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGFuZGVkIHx8IHRoaXMuc3RhdGUgIT09IFN0YXRlLklkbGU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBvdmVyZmxvdygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUgIT09IFN0YXRlLklkbGU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmV4cGFuZGVkICYmIHRoaXMuYXN5bmMgJiYgdGhpcy5zdGF0ZSA9PT0gU3RhdGUuTG9hZGluZztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGhlaWdodCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge2V4cGFuZGVkLCBzdGF0ZSwgY29udGVudFdyYXBwZXJ9ID0gdGhpcztcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAoZXhwYW5kZWQgJiYgc3RhdGUgPT09IFN0YXRlLlByZXBhcmVkKSB8fFxuICAgICAgICAgICAgKCFleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuQW5pbWF0ZWQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBjb250ZW50V3JhcHBlciAmJlxuICAgICAgICAgICAgKCghZXhwYW5kZWQgJiYgc3RhdGUgPT09IFN0YXRlLlByZXBhcmVkKSB8fFxuICAgICAgICAgICAgICAgIChleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuQW5pbWF0ZWQpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBjb250ZW50V3JhcHBlci5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb250ZW50V3JhcHBlciAmJiBleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuTG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWF4KGNvbnRlbnRXcmFwcGVyLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0LCBMT0FERVJfSEVJR0hUKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRyYW5zaXRpb25FbmQoe3Byb3BlcnR5TmFtZSwgcHNldWRvRWxlbWVudH06IFRyYW5zaXRpb25FdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBwcm9wZXJ0eU5hbWUgPT09ICdvcGFjaXR5JyAmJlxuICAgICAgICAgICAgIXBzZXVkb0VsZW1lbnQgJiZcbiAgICAgICAgICAgIHRoaXMuc3RhdGUgPT09IFN0YXRlLkFuaW1hdGVkXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IFN0YXRlLklkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25FeHBhbmRMb2FkZWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5Mb2FkaW5nKSB7XG4gICAgICAgICAgICB0aGlzLnJldHJpZ2dlcihTdGF0ZS5BbmltYXRlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJldHJpZ2dlcihzdGF0ZTogVHVpVmFsdWVzT2Y8dHlwZW9mIFN0YXRlPik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0YXRlID0gU3RhdGUuUHJlcGFyZWQ7XG5cbiAgICAgICAgdGltZXIoMClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCBkZWxheSB0byByZS10cmlnZ2VyIENTUyBoZWlnaHQgdHJhbnNpdGlvbiBmcm9tIHRoZSBjb3JyZWN0IG51bWJlclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5QcmVwYXJlZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICN3cmFwcGVyXG4gICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgIEB0dWlQYXJlbnRBbmltYXRpb25cbiAgICBbQC5kaXNhYmxlZF09XCJvdmVyZmxvd1wiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnRWaXNpYmxlXCI+XG4gICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgIDx0dWktbG9hZGVyXG4gICAgICAgICAgICAqbmdJZj1cImFzeW5jOyBlbHNlIGNvbnRlbnRcIlxuICAgICAgICAgICAgc2l6ZT1cImxcIlxuICAgICAgICAgICAgW292ZXJsYXldPVwidHJ1ZVwiXG4gICAgICAgICAgICBbc2hvd0xvYWRlcl09XCJsb2FkaW5nXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb250ZW50XCIgLz5cbiAgICAgICAgPC90dWktbG9hZGVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9leHBhbmQvZXhwYW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9leHBhbmQvZXhwYW5kLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxFQUNYLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUUzQixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFNUQsTUFBTSxLQUFLLEdBQUc7SUFDVixJQUFJLEVBQUUsQ0FBQztJQUNQLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztDQUNMLENBQUM7QUFFWCxNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFFekI7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsbUJBQW1CLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxNQWtCYSxrQkFBa0I7SUFsQi9CO1FBc0JxQixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFp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c0JBRDlCLFNBQVM7dUJBQUMsU0FBUztnQkFRVixPQUFPO3NCQURoQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBQztnQkFNNUMsS0FBSztzQkFEWCxLQUFLO2dCQUlLLGNBQWM7c0JBRHhCLEtBQUs7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtOZ0lmQ29udGV4dH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtFbGVtZW50UmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBEZXN0cm95UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB0eXBlIHtUdWlWYWx1ZXNPZn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aVBhcmVudEFuaW1hdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aUxvYWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9sb2FkZXInO1xuaW1wb3J0IHt0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpRXhwYW5kQ29udGVudH0gZnJvbSAnLi9leHBhbmQtY29udGVudC5kaXJlY3RpdmUnO1xuXG5jb25zdCBTdGF0ZSA9IHtcbiAgICBJZGxlOiAwLFxuICAgIExvYWRpbmc6IDEsXG4gICAgUHJlcGFyZWQ6IDIsXG4gICAgQW5pbWF0ZWQ6IDMsXG59IGFzIGNvbnN0O1xuXG5jb25zdCBMT0FERVJfSEVJR0hUID0gNDg7XG5cbi8qKlxuICogQW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGFzeW5jIGRhdGEgZm9yIGV4cGFuZCBoYXMgZmluaXNoZWQgbG9hZGluZy5cbiAqIERpc3BhdGNoIHRvIGZpbmlzaCBsb2FkaW5nIHN0YXRlcyBmb3Ige0BsaW5rIFR1aUV4cGFuZENvbXBvbmVudH0uXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfRVhQQU5EX0xPQURFRCA9ICd0dWktZXhwYW5kLWxvYWRlZCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIHtAbGluayBUdWlFeHBhbmR9IGZyb20gQHRhaWdhLXVpL2V4cGVyaW1lbnRhbFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWV4cGFuZCcsXG4gICAgaW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIFR1aUxvYWRlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V4cGFuZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9leHBhbmQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlQYXJlbnRBbmltYXRpb25dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS5oZWlnaHQucHhdJzogJ2hlaWdodCcsXG4gICAgICAgICdbY2xhc3MuX2xvYWRpbmddJzogJ2xvYWRpbmcnLFxuICAgICAgICAnW2NsYXNzLl9vdmVyZmxvd10nOiAnb3ZlcmZsb3cnLFxuICAgICAgICAnW2NsYXNzLl9leHBhbmRlZF0nOiAnZXhwYW5kZWQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1leHBhbmRlZF0nOiAnZXhwYW5kZWQnLFxuICAgICAgICAnKHRyYW5zaXRpb25lbmQuc2VsZiknOiAnb25UcmFuc2l0aW9uRW5kKCRldmVudCknLFxuICAgICAgICBbYCgke1RVSV9FWFBBTkRfTE9BREVEfSlgXTogJ29uRXhwYW5kTG9hZGVkKCRldmVudCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUV4cGFuZENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnd3JhcHBlcicpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZW50V3JhcHBlcj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcml2YXRlIHN0YXRlOiBUdWlWYWx1ZXNPZjx0eXBlb2YgU3RhdGU+ID0gU3RhdGUuSWRsZTtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpRXhwYW5kQ29udGVudCwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICBwcm90ZWN0ZWQgY29udGVudDogVGVtcGxhdGVSZWY8TmdJZkNvbnRleHQ8Ym9vbGVhbj4+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcm90ZWN0ZWQgZXhwYW5kZWQ6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGFzeW5jID0gZmFsc2U7XG5cbiAgICBASW5wdXQoJ2V4cGFuZGVkJylcbiAgICBwdWJsaWMgc2V0IGV4cGFuZGVkU2V0dGVyKGV4cGFuZGVkOiBib29sZWFuIHwgbnVsbCkge1xuICAgICAgICBpZiAodGhpcy5leHBhbmRlZCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuSWRsZSkge1xuICAgICAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IFN0YXRlLkFuaW1hdGVkO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMucmV0cmlnZ2VyKHRoaXMuYXN5bmMgJiYgZXhwYW5kZWQgPyBTdGF0ZS5Mb2FkaW5nIDogU3RhdGUuQW5pbWF0ZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29udGVudFZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGFuZGVkIHx8IHRoaXMuc3RhdGUgIT09IFN0YXRlLklkbGU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBvdmVyZmxvdygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUgIT09IFN0YXRlLklkbGU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmV4cGFuZGVkICYmIHRoaXMuYXN5bmMgJiYgdGhpcy5zdGF0ZSA9PT0gU3RhdGUuTG9hZGluZztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGhlaWdodCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge2V4cGFuZGVkLCBzdGF0ZSwgY29udGVudFdyYXBwZXJ9ID0gdGhpcztcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAoZXhwYW5kZWQgJiYgc3RhdGUgPT09IFN0YXRlLlByZXBhcmVkKSB8fFxuICAgICAgICAgICAgKCFleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuQW5pbWF0ZWQpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBjb250ZW50V3JhcHBlciAmJlxuICAgICAgICAgICAgKCghZXhwYW5kZWQgJiYgc3RhdGUgPT09IFN0YXRlLlByZXBhcmVkKSB8fFxuICAgICAgICAgICAgICAgIChleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuQW5pbWF0ZWQpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBjb250ZW50V3JhcHBlci5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb250ZW50V3JhcHBlciAmJiBleHBhbmRlZCAmJiBzdGF0ZSA9PT0gU3RhdGUuTG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWF4KGNvbnRlbnRXcmFwcGVyLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0LCBMT0FERVJfSEVJR0hUKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRyYW5zaXRpb25FbmQoe3Byb3BlcnR5TmFtZSwgcHNldWRvRWxlbWVudH06IFRyYW5zaXRpb25FdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBwcm9wZXJ0eU5hbWUgPT09ICdvcGFjaXR5JyAmJlxuICAgICAgICAgICAgIXBzZXVkb0VsZW1lbnQgJiZcbiAgICAgICAgICAgIHRoaXMuc3RhdGUgPT09IFN0YXRlLkFuaW1hdGVkXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IFN0YXRlLklkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25FeHBhbmRMb2FkZWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5Mb2FkaW5nKSB7XG4gICAgICAgICAgICB0aGlzLnJldHJpZ2dlcihTdGF0ZS5BbmltYXRlZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJldHJpZ2dlcihzdGF0ZTogVHVpVmFsdWVzT2Y8dHlwZW9mIFN0YXRlPik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0YXRlID0gU3RhdGUuUHJlcGFyZWQ7XG5cbiAgICAgICAgdGltZXIoMClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCBkZWxheSB0byByZS10cmlnZ2VyIENTUyBoZWlnaHQgdHJhbnNpdGlvbiBmcm9tIHRoZSBjb3JyZWN0IG51bWJlclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5QcmVwYXJlZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICN3cmFwcGVyXG4gICAgY2xhc3M9XCJ0LXdyYXBwZXJcIlxuICAgIEB0dWlQYXJlbnRBbmltYXRpb25cbiAgICBbQC5kaXNhYmxlZF09XCJvdmVyZmxvd1wiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnRWaXNpYmxlXCI+XG4gICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgIDx0dWktbG9hZGVyXG4gICAgICAgICAgICAqbmdJZj1cImFzeW5jOyBlbHNlIGNvbnRlbnRcIlxuICAgICAgICAgICAgc2l6ZT1cImxcIlxuICAgICAgICAgICAgW292ZXJsYXldPVwidHJ1ZVwiXG4gICAgICAgICAgICBbc2hvd0xvYWRlcl09XCJsb2FkaW5nXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb250ZW50XCIgLz5cbiAgICAgICAgPC90dWktbG9hZGVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -1,4 +1,7 @@
1
1
  import { TuiExpandComponent } from './expand.component';
2
2
  import { TuiExpandContent } from './expand-content.directive';
3
+ /**
4
+ * @deprecated use {@link TuiExpand} from @taiga-ui/experimental
5
+ */
3
6
  export const TuiExpand = [TuiExpandComponent, TuiExpandContent];
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2V4cGFuZC9leHBhbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHVpRXhwYW5kQ29tcG9uZW50fSBmcm9tICcuL2V4cGFuZC5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlFeHBhbmRDb250ZW50fSBmcm9tICcuL2V4cGFuZC1jb250ZW50LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBUdWlFeHBhbmQgPSBbVHVpRXhwYW5kQ29tcG9uZW50LCBUdWlFeHBhbmRDb250ZW50XSBhcyBjb25zdDtcbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2V4cGFuZC9leHBhbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlFeHBhbmRDb21wb25lbnR9IGZyb20gJy4vZXhwYW5kLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aUV4cGFuZENvbnRlbnR9IGZyb20gJy4vZXhwYW5kLWNvbnRlbnQuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Uge0BsaW5rIFR1aUV4cGFuZH0gZnJvbSBAdGFpZ2EtdWkvZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBjb25zdCBUdWlFeHBhbmQgPSBbVHVpRXhwYW5kQ29tcG9uZW50LCBUdWlFeHBhbmRDb250ZW50XSBhcyBjb25zdDtcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  /// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
2
2
  /// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
3
3
  import { DOCUMENT, NgIf } from '@angular/common';
4
- import { ChangeDetectionStrategy, Component, inject, signal, ViewEncapsulation, } from '@angular/core';
4
+ import { ChangeDetectionStrategy, Component, inject, RendererFactory2, signal, ViewEncapsulation, } from '@angular/core';
5
5
  import { toSignal } from '@angular/core/rxjs-interop';
6
6
  import { EVENT_MANAGER_PLUGINS } from '@angular/platform-browser';
7
7
  import { TUI_VERSION } from '@taiga-ui/cdk/constants';
@@ -37,6 +37,12 @@ class TuiRoot {
37
37
  this.isMobileRes = toSignal(inject(TuiBreakpointService).pipe(map((breakpoint) => breakpoint === 'mobile'), tuiWatch()), { initialValue: false });
38
38
  this.nativeScrollbar = inject(TUI_SCROLLBAR_OPTIONS).mode === 'native';
39
39
  this.scrollbars = !this.nativeScrollbar && !inject(TUI_IS_MOBILE) && !this.isChildRoot;
40
+ // TODO move to provideTaiga in v5
41
+ const factory = inject(RendererFactory2);
42
+ factory.removeStylesOnCompDestroy = false;
43
+ if (factory.delegate) {
44
+ factory.delegate.removeStylesOnCompDestroy = false;
45
+ }
40
46
  if (!this.top()) {
41
47
  return;
42
48
  }
@@ -53,7 +59,7 @@ class TuiRoot {
53
59
  : !this.isChildRoot;
54
60
  }
55
61
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiRoot, isStandalone: true, selector: "tui-root", host: { attributes: { "data-tui-version": "4.37.0" }, listeners: { "touchstart.passive.zoneless": "0", "document:fullscreenchange": "top.set(isTopLayer)" }, properties: { "style.--tui-duration.ms": "duration", "style.--tui-scroll-behavior": "reducedMotion ? \"auto\" : \"smooth\"", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }, { directive: i2.TuiVisualViewport }, { directive: i3.TuiFontSize }], ngImport: i0, template: "<div class=\"t-root-content\"><ng-content /></div>\n<ng-container *ngIf=\"top()\">\n <tui-scroll-controls\n *ngIf=\"scrollbars\"\n class=\"t-root-scrollbar\"\n />\n <tui-popups />\n <ng-content select=\"tuiOverContent\" />\n <tui-dialogs />\n <ng-content select=\"tuiOverDialogs\" />\n <tui-alerts />\n <ng-content select=\"tuiOverAlerts\" />\n <tui-dropdowns />\n <ng-content select=\"tuiOverDropdowns\" />\n <tui-hints />\n <ng-content select=\"tuiOverHints\" />\n</ng-container>\n", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-text-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;z-index:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiPopups, selector: "tui-popups" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiRoot, isStandalone: true, selector: "tui-root", host: { attributes: { "data-tui-version": "4.38.0-canary.30f044e" }, listeners: { "touchstart.passive.zoneless": "0", "document:fullscreenchange": "top.set(isTopLayer)" }, properties: { "style.--tui-duration.ms": "duration", "style.--tui-scroll-behavior": "reducedMotion ? \"auto\" : \"smooth\"", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }, { directive: i2.TuiVisualViewport }, { directive: i3.TuiFontSize }], ngImport: i0, template: "<div class=\"t-root-content\"><ng-content /></div>\n<ng-container *ngIf=\"top()\">\n <tui-scroll-controls\n *ngIf=\"scrollbars\"\n class=\"t-root-scrollbar\"\n />\n <tui-popups />\n <ng-content select=\"tuiOverContent\" />\n <tui-dialogs />\n <ng-content select=\"tuiOverDialogs\" />\n <tui-alerts />\n <ng-content select=\"tuiOverAlerts\" />\n <tui-dropdowns />\n <ng-content select=\"tuiOverDropdowns\" />\n <tui-hints />\n <ng-content select=\"tuiOverHints\" />\n</ng-container>\n", styles: ["@keyframes tuiSkeletonVibe{to{opacity:.5}}@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiFade{0%{opacity:0}}@keyframes tuiSlide{0%{transform:var(--tui-from, translateY(100%))}}@keyframes tuiScale{0%{transform:scale(0)}}@keyframes tuiCollapse{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}.tui-enter,.tui-leave{animation-duration:var(--tui-duration);animation-timing-function:ease-in-out;pointer-events:none}.tui-leave{animation-direction:reverse}\n", ".tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-text-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;z-index:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiPopups, selector: "tui-popups" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
57
63
  }
58
64
  export { TuiRoot };
59
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, decorators: [{
@@ -74,6 +80,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
74
80
  // Required for the :active state to work in Safari. https://stackoverflow.com/a/33681490
75
81
  '(touchstart.passive.zoneless)': '0',
76
82
  '(document:fullscreenchange)': 'top.set(isTopLayer)',
77
- }, template: "<div class=\"t-root-content\"><ng-content /></div>\n<ng-container *ngIf=\"top()\">\n <tui-scroll-controls\n *ngIf=\"scrollbars\"\n class=\"t-root-scrollbar\"\n />\n <tui-popups />\n <ng-content select=\"tuiOverContent\" />\n <tui-dialogs />\n <ng-content select=\"tuiOverDialogs\" />\n <tui-alerts />\n <ng-content select=\"tuiOverAlerts\" />\n <tui-dropdowns />\n <ng-content select=\"tuiOverDropdowns\" />\n <tui-hints />\n <ng-content select=\"tuiOverHints\" />\n</ng-container>\n", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-text-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;z-index:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"] }]
83
+ }, template: "<div class=\"t-root-content\"><ng-content /></div>\n<ng-container *ngIf=\"top()\">\n <tui-scroll-controls\n *ngIf=\"scrollbars\"\n class=\"t-root-scrollbar\"\n />\n <tui-popups />\n <ng-content select=\"tuiOverContent\" />\n <tui-dialogs />\n <ng-content select=\"tuiOverDialogs\" />\n <tui-alerts />\n <ng-content select=\"tuiOverAlerts\" />\n <tui-dropdowns />\n <ng-content select=\"tuiOverDropdowns\" />\n <tui-hints />\n <ng-content select=\"tuiOverHints\" />\n</ng-container>\n", styles: ["@keyframes tuiSkeletonVibe{to{opacity:.5}}@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiFade{0%{opacity:0}}@keyframes tuiSlide{0%{transform:var(--tui-from, translateY(100%))}}@keyframes tuiScale{0%{transform:scale(0)}}@keyframes tuiCollapse{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}.tui-enter,.tui-leave{animation-duration:var(--tui-duration);animation-timing-function:ease-in-out;pointer-events:none}.tui-leave{animation-direction:reverse}\n", ".tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-text-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;z-index:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"] }]
78
84
  }], ctorParameters: function () { return []; } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcm9vdC9yb290LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9yb290L3Jvb3QudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFBeEQsd0RBQXdEO0FBQ3hELE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDL0QsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzFELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLGlCQUFp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QUFVLHdEQUNWLFlBQVksMERBQ1osUUFBUSxzREFDUixTQUFTLHVEQUNULGlCQUFpQjs7U0FrQlosT0FBTzs0RkFBUCxPQUFPO2tCQTVCbkIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sVUFBVSxXQUNYO3dCQUNMLElBQUk7d0JBQ0osU0FBUzt3QkFDVCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osUUFBUTt3QkFDUixTQUFTO3dCQUNULGlCQUFpQjtxQkFDcEIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSSxtQkFFcEIsdUJBQXVCLENBQUMsT0FBTyxrQkFDaEMsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLFFBQ3ZEO3dCQUNGLGtCQUFrQixFQUFFLFdBQVc7d0JBQy9CLDJCQUEyQixFQUFFLFVBQVU7d0JBQ3ZDLCtCQUErQixFQUFFLG1DQUFtQzt3QkFDcEUsaUJBQWlCLEVBQUUsZUFBZTt3QkFDbEMseUZBQXlGO3dCQUN6RiwrQkFBK0IsRUFBRSxHQUFHO3dCQUNwQyw2QkFBNkIsRUFBRSxxQkFBcUI7cUJBQ3ZEIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJAdGFpZ2EtdWkvdHNjb25maWcvbmctZGV2LW1vZGVcIiAvPlxuaW1wb3J0IHtET0NVTUVOVCwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGluamVjdCxcbiAgICBzaWduYWwsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtFVkVOVF9NQU5BR0VSX1BMVUdJTlN9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtUVUlfVkVSU0lPTn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlGb250U2l6ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2ZvbnQtc2l6ZSc7XG5pbXBvcnQge1R1aVBsYXRmb3JtfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvcGxhdGZvcm0nO1xuaW1wb3J0IHtUdWlWaXN1YWxWaWV3cG9ydH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3Zpc3VhbC12aWV3cG9ydCc7XG5pbXBvcnQge3R1aVdhdGNofSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7VFVJX0lTX01PQklMRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge1R1aUFsZXJ0c30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydCc7XG5pbXBvcnQge1R1aURpYWxvZ3N9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGlhbG9nJztcbmltcG9ydCB7XG4gICAgVFVJX1NDUk9MTEJBUl9PUFRJT05TLFxuICAgIFR1aVNjcm9sbENvbnRyb2xzLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3Njcm9sbGJhcic7XG5pbXBvcnQge1R1aURyb3Bkb3duc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge1R1aUhpbnRzfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHtUdWlQb3B1cHN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvcG9wdXAnO1xuaW1wb3J0IHtUdWlCcmVha3BvaW50U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19TUEVFRCwgVFVJX1JFRFVDRURfTU9USU9OLCBUVUlfVEhFTUV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUdldER1cmF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscyc7XG5pbXBvcnQge1ByZXZlbnRFdmVudFBsdWdpbn0gZnJvbSAnQHRhaWdhLXVpL2V2ZW50LXBsdWdpbnMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLXJvb3QnLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdJZixcbiAgICAgICAgVHVpQWxlcnRzLFxuICAgICAgICBUdWlEaWFsb2dzLFxuICAgICAgICBUdWlEcm9wZG93bnMsXG4gICAgICAgIFR1aUhpbnRzLFxuICAgICAgICBUdWlQb3B1cHMsXG4gICAgICAgIFR1aVNjcm9sbENvbnRyb2xzLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Jvb3QudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcm9vdC5zdHlsZS5sZXNzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3ByZWZlci1vbi1wdXNoLWNvbXBvbmVudC1jaGFuZ2UtZGV0ZWN0aW9uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpUGxhdGZvcm0sIFR1aVZpc3VhbFZpZXdwb3J0LCBUdWlGb250U2l6ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICAnZGF0YS10dWktdmVyc2lvbic6IFRVSV9WRVJTSU9OLFxuICAgICAgICAnW3N0eWxlLi0tdHVpLWR1cmF0aW9uLm1zXSc6ICdkdXJhdGlvbicsXG4gICAgICAgICdbc3R5bGUuLS10dWktc2Nyb2xsLWJlaGF2aW9yXSc6ICdyZWR1Y2VkTW90aW9uID8gXCJhdXRvXCIgOiBcInNtb290aFwiJyxcbiAgICAgICAgJ1tjbGFzcy5fbW9iaWxlXSc6ICdpc01vYmlsZVJlcygpJyxcbiAgICAgICAgLy8gUmVxdWlyZWQgZm9yIHRoZSA6YWN0aXZlIHN0YXRlIHRvIHdvcmsgaW4gU2FmYXJpLiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMzM2ODE0OTBcbiAgICAgICAgJyh0b3VjaHN0YXJ0LnBhc3NpdmUuem9uZWxlc3MpJzogJzAnLFxuICAgICAgICAnKGRvY3VtZW50OmZ1bGxzY3JlZW5jaGFuZ2UpJzogJ3RvcC5zZXQoaXNUb3BMYXllciknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVJvb3Qge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSByZWR1Y2VkTW90aW9uID0gaW5qZWN0KFRVSV9SRURVQ0VEX01PVElPTik7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGR1cmF0aW9uID0gdHVpR2V0RHVyYXRpb24oaW5qZWN0KFRVSV9BTklNQVRJT05TX1NQRUVEKSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzQ2hpbGRSb290ID0gISFpbmplY3QoVHVpUm9vdCwge29wdGlvbmFsOiB0cnVlLCBza2lwU2VsZjogdHJ1ZX0pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0b3AgPSBzaWduYWwoIXRoaXMuaXNDaGlsZFJvb3QpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc01vYmlsZVJlcyA9IHRvU2lnbmFsKFxuICAgICAgICBpbmplY3QoVHVpQnJlYWtwb2ludFNlcnZpY2UpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGJyZWFrcG9pbnQpID0+IGJyZWFrcG9pbnQgPT09ICdtb2JpbGUnKSxcbiAgICAgICAgICAgIHR1aVdhdGNoKCksXG4gICAgICAgICksXG4gICAgICAgIHtpbml0aWFsVmFsdWU6IGZhbHNlfSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5hdGl2ZVNjcm9sbGJhciA9IGluamVjdChUVUlfU0NST0xMQkFSX09QVElPTlMpLm1vZGUgPT09ICduYXRpdmUnO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNjcm9sbGJhcnMgPVxuICAgICAgICAhdGhpcy5uYXRpdmVTY3JvbGxiYXIgJiYgIWluamVjdChUVUlfSVNfTU9CSUxFKSAmJiAhdGhpcy5pc0NoaWxkUm9vdDtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBpZiAoIXRoaXMudG9wKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZG9jLmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAnZGF0YS10dWktdGhlbWUnLFxuICAgICAgICAgICAgaW5qZWN0KFRVSV9USEVNRSkudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoIXRoaXMubmF0aXZlU2Nyb2xsYmFyKSB7XG4gICAgICAgICAgICB0aGlzLmRvYy5kZWZhdWx0Vmlldz8uZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoXG4gICAgICAgICAgICAgICAgJ3R1aS16ZXJvLXNjcm9sbGJhcicsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICBjb25zb2xlLmFzc2VydChcbiAgICAgICAgICAgICAgICAhIWluamVjdDx1bmtub3duW10+KEVWRU5UX01BTkFHRVJfUExVR0lOUykuZmluZChcbiAgICAgICAgICAgICAgICAgICAgKHBsdWdpbikgPT4gcGx1Z2luIGluc3RhbmNlb2YgUHJldmVudEV2ZW50UGx1Z2luLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgJ05HX0VWRU5UX1BMVUdJTlMgaXMgbWlzc2luZyBmcm9tIGdsb2JhbCBwcm92aWRlcnMnLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzVG9wTGF5ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRvYy5mdWxsc2NyZWVuRWxlbWVudFxuICAgICAgICAgICAgPyB0aGlzLmRvYy5mdWxsc2NyZWVuRWxlbWVudCA9PT0gdGhpcy5lbFxuICAgICAgICAgICAgOiAhdGhpcy5pc0NoaWxkUm9vdDtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidC1yb290LWNvbnRlbnRcIj48bmctY29udGVudCAvPjwvZGl2PlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvcCgpXCI+XG4gICAgPHR1aS1zY3JvbGwtY29udHJvbHNcbiAgICAgICAgKm5nSWY9XCJzY3JvbGxiYXJzXCJcbiAgICAgICAgY2xhc3M9XCJ0LXJvb3Qtc2Nyb2xsYmFyXCJcbiAgICAvPlxuICAgIDx0dWktcG9wdXBzIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpT3ZlckNvbnRlbnRcIiAvPlxuICAgIDx0dWktZGlhbG9ncyAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aU92ZXJEaWFsb2dzXCIgLz5cbiAgICA8dHVpLWFsZXJ0cyAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aU92ZXJBbGVydHNcIiAvPlxuICAgIDx0dWktZHJvcGRvd25zIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpT3ZlckRyb3Bkb3duc1wiIC8+XG4gICAgPHR1aS1oaW50cyAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aU92ZXJIaW50c1wiIC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcm9vdC9yb290LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9yb290L3Jvb3QudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFBeEQsd0RBQXdEO0FBQ3hELE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGdCQUFnQixFQUNoQixNQUFNLEVBQ04saUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbkQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDNUQsT0FBTyxFQUNILHFCQUFx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QUFDLGlCQUFpQjtZQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsS0FBSyxJQUFJLENBQUMsRUFBRTtZQUN4QyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7K0dBMURRLE9BQU87bUdBQVAsT0FBTyx3Z0JDOURwQix1aEJBaUJBLHd2Q0RxQlEsSUFBSSw2RkFDSixTQUFTLHVEQUNULFVBQVUsd0RBQ1YsWUFBWSwwREFDWixRQUFRLHNEQUNSLFNBQVMsdURBQ1QsaUJBQWlCOztTQWtCWixPQUFPOzRGQUFQLE9BQU87a0JBNUJuQixTQUFTO2lDQUNNLElBQUksWUFDTixVQUFVLFdBQ1g7d0JBQ0wsSUFBSTt3QkFDSixTQUFTO3dCQUNULFVBQVU7d0JBQ1YsWUFBWTt3QkFDWixRQUFRO3dCQUNSLFNBQVM7d0JBQ1QsaUJBQWlCO3FCQUNwQixpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUVwQix1QkFBdUIsQ0FBQyxPQUFPLGtCQUNoQyxDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLENBQUMsUUFDdkQ7d0JBQ0Ysa0JBQWtCLEVBQUUsV0FBVzt3QkFDL0IsMkJBQTJCLEVBQUUsVUFBVTt3QkFDdkMsK0JBQStCLEVBQUUsbUNBQW1DO3dCQUNwRSxpQkFBaUIsRUFBRSxlQUFlO3dCQUNsQyx5RkFBeUY7d0JBQ3pGLCtCQUErQixFQUFFLEdBQUc7d0JBQ3BDLDZCQUE2QixFQUFFLHFCQUFxQjtxQkFDdkQiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSB0eXBlcz1cIkB0YWlnYS11aS90c2NvbmZpZy9uZy1kZXYtbW9kZVwiIC8+XG5pbXBvcnQge0RPQ1VNRU5ULCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgaW5qZWN0LFxuICAgIFJlbmRlcmVyRmFjdG9yeTIsXG4gICAgc2lnbmFsLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7RVZFTlRfTUFOQUdFUl9QTFVHSU5TfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7VFVJX1ZFUlNJT059IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpRm9udFNpemV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9mb250LXNpemUnO1xuaW1wb3J0IHtUdWlQbGF0Zm9ybX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3BsYXRmb3JtJztcbmltcG9ydCB7VHVpVmlzdWFsVmlld3BvcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy92aXN1YWwtdmlld3BvcnQnO1xuaW1wb3J0IHt0dWlXYXRjaH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge1RVSV9JU19NT0JJTEV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHtUdWlBbGVydHN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvYWxlcnQnO1xuaW1wb3J0IHtUdWlEaWFsb2dzfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RpYWxvZyc7XG5pbXBvcnQge1xuICAgIFRVSV9TQ1JPTExCQVJfT1BUSU9OUyxcbiAgICBUdWlTY3JvbGxDb250cm9scyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXInO1xuaW1wb3J0IHtUdWlEcm9wZG93bnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHtUdWlIaW50c30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB7VHVpUG9wdXBzfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL3BvcHVwJztcbmltcG9ydCB7VHVpQnJlYWtwb2ludFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTlNfU1BFRUQsIFRVSV9SRURVQ0VEX01PVElPTiwgVFVJX1RIRU1FfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlHZXREdXJhdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtQcmV2ZW50RXZlbnRQbHVnaW59IGZyb20gJ0B0YWlnYS11aS9ldmVudC1wbHVnaW5zJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1yb290JyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE5nSWYsXG4gICAgICAgIFR1aUFsZXJ0cyxcbiAgICAgICAgVHVpRGlhbG9ncyxcbiAgICAgICAgVHVpRHJvcGRvd25zLFxuICAgICAgICBUdWlIaW50cyxcbiAgICAgICAgVHVpUG9wdXBzLFxuICAgICAgICBUdWlTY3JvbGxDb250cm9scyxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yb290LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FuaW1hdGlvbnMubGVzcycsICcuL3Jvb3Quc3R5bGUubGVzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBob3N0RGlyZWN0aXZlczogW1R1aVBsYXRmb3JtLCBUdWlWaXN1YWxWaWV3cG9ydCwgVHVpRm9udFNpemVdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2RhdGEtdHVpLXZlcnNpb24nOiBUVUlfVkVSU0lPTixcbiAgICAgICAgJ1tzdHlsZS4tLXR1aS1kdXJhdGlvbi5tc10nOiAnZHVyYXRpb24nLFxuICAgICAgICAnW3N0eWxlLi0tdHVpLXNjcm9sbC1iZWhhdmlvcl0nOiAncmVkdWNlZE1vdGlvbiA/IFwiYXV0b1wiIDogXCJzbW9vdGhcIicsXG4gICAgICAgICdbY2xhc3MuX21vYmlsZV0nOiAnaXNNb2JpbGVSZXMoKScsXG4gICAgICAgIC8vIFJlcXVpcmVkIGZvciB0aGUgOmFjdGl2ZSBzdGF0ZSB0byB3b3JrIGluIFNhZmFyaS4gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzMzNjgxNDkwXG4gICAgICAgICcodG91Y2hzdGFydC5wYXNzaXZlLnpvbmVsZXNzKSc6ICcwJyxcbiAgICAgICAgJyhkb2N1bWVudDpmdWxsc2NyZWVuY2hhbmdlKSc6ICd0b3Auc2V0KGlzVG9wTGF5ZXIpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlSb290IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRvYyA9IGluamVjdChET0NVTUVOVCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVkdWNlZE1vdGlvbiA9IGluamVjdChUVUlfUkVEVUNFRF9NT1RJT04pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkdXJhdGlvbiA9IHR1aUdldER1cmF0aW9uKGluamVjdChUVUlfQU5JTUFUSU9OU19TUEVFRCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0NoaWxkUm9vdCA9ICEhaW5qZWN0KFR1aVJvb3QsIHtvcHRpb25hbDogdHJ1ZSwgc2tpcFNlbGY6IHRydWV9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG9wID0gc2lnbmFsKCF0aGlzLmlzQ2hpbGRSb290KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNNb2JpbGVSZXMgPSB0b1NpZ25hbChcbiAgICAgICAgaW5qZWN0KFR1aUJyZWFrcG9pbnRTZXJ2aWNlKS5waXBlKFxuICAgICAgICAgICAgbWFwKChicmVha3BvaW50KSA9PiBicmVha3BvaW50ID09PSAnbW9iaWxlJyksXG4gICAgICAgICAgICB0dWlXYXRjaCgpLFxuICAgICAgICApLFxuICAgICAgICB7aW5pdGlhbFZhbHVlOiBmYWxzZX0sXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBuYXRpdmVTY3JvbGxiYXIgPSBpbmplY3QoVFVJX1NDUk9MTEJBUl9PUFRJT05TKS5tb2RlID09PSAnbmF0aXZlJztcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBzY3JvbGxiYXJzID1cbiAgICAgICAgIXRoaXMubmF0aXZlU2Nyb2xsYmFyICYmICFpbmplY3QoVFVJX0lTX01PQklMRSkgJiYgIXRoaXMuaXNDaGlsZFJvb3Q7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLy8gVE9ETyBtb3ZlIHRvIHByb3ZpZGVUYWlnYSBpbiB2NVxuICAgICAgICBjb25zdCBmYWN0b3J5ID0gaW5qZWN0PGFueT4oUmVuZGVyZXJGYWN0b3J5Mik7XG5cbiAgICAgICAgZmFjdG9yeS5yZW1vdmVTdHlsZXNPbkNvbXBEZXN0cm95ID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKGZhY3RvcnkuZGVsZWdhdGUpIHtcbiAgICAgICAgICAgIGZhY3RvcnkuZGVsZWdhdGUucmVtb3ZlU3R5bGVzT25Db21wRGVzdHJveSA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnRvcCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRvYy5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgJ2RhdGEtdHVpLXRoZW1lJyxcbiAgICAgICAgICAgIGluamVjdChUVUlfVEhFTUUpLnRvTG93ZXJDYXNlKCksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKCF0aGlzLm5hdGl2ZVNjcm9sbGJhcikge1xuICAgICAgICAgICAgdGhpcy5kb2MuZGVmYXVsdFZpZXc/LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKFxuICAgICAgICAgICAgICAgICd0dWktemVyby1zY3JvbGxiYXInLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgY29uc29sZS5hc3NlcnQoXG4gICAgICAgICAgICAgICAgISFpbmplY3Q8dW5rbm93bltdPihFVkVOVF9NQU5BR0VSX1BMVUdJTlMpLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgIChwbHVnaW4pID0+IHBsdWdpbiBpbnN0YW5jZW9mIFByZXZlbnRFdmVudFBsdWdpbixcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICdOR19FVkVOVF9QTFVHSU5TIGlzIG1pc3NpbmcgZnJvbSBnbG9iYWwgcHJvdmlkZXJzJyxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc1RvcExheWVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kb2MuZnVsbHNjcmVlbkVsZW1lbnRcbiAgICAgICAgICAgID8gdGhpcy5kb2MuZnVsbHNjcmVlbkVsZW1lbnQgPT09IHRoaXMuZWxcbiAgICAgICAgICAgIDogIXRoaXMuaXNDaGlsZFJvb3Q7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInQtcm9vdC1jb250ZW50XCI+PG5nLWNvbnRlbnQgLz48L2Rpdj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJ0b3AoKVwiPlxuICAgIDx0dWktc2Nyb2xsLWNvbnRyb2xzXG4gICAgICAgICpuZ0lmPVwic2Nyb2xsYmFyc1wiXG4gICAgICAgIGNsYXNzPVwidC1yb290LXNjcm9sbGJhclwiXG4gICAgLz5cbiAgICA8dHVpLXBvcHVwcyAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aU92ZXJDb250ZW50XCIgLz5cbiAgICA8dHVpLWRpYWxvZ3MgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWlPdmVyRGlhbG9nc1wiIC8+XG4gICAgPHR1aS1hbGVydHMgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWlPdmVyQWxlcnRzXCIgLz5cbiAgICA8dHVpLWRyb3Bkb3ducyAvPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aU92ZXJEcm9wZG93bnNcIiAvPlxuICAgIDx0dWktaGludHMgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWlPdmVySGludHNcIiAvPlxuPC9uZy1jb250YWluZXI+XG4iXX0=