@taiga-ui/core 4.0.0-rc.4 → 4.0.0-rc.5

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.
@@ -2,7 +2,7 @@ import type { OnInit } from '@angular/core';
2
2
  import type { TuiPopover } from '@taiga-ui/cdk/services';
3
3
  import type { TuiAlertOptions } from './alert.interfaces';
4
4
  import * as i0 from "@angular/core";
5
- export declare class TuiAlert<O, I> implements OnInit {
5
+ export declare class TuiAlertComponent<O, I> implements OnInit {
6
6
  private readonly el;
7
7
  private readonly destroyRef;
8
8
  protected readonly position: string;
@@ -19,6 +19,6 @@ export declare class TuiAlert<O, I> implements OnInit {
19
19
  ngOnInit(): void;
20
20
  protected close(): void;
21
21
  private initAutoClose;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiAlert<any, any>, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiAlert<any, any>, "tui-alert", never, {}, {}, never, never, true, never>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiAlertComponent<any, any>, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiAlertComponent<any, any>, "tui-alert", never, {}, {}, never, never, true, never>;
24
24
  }
@@ -1,7 +1,7 @@
1
1
  import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
2
2
  import type { TuiAlertOptions } from './alert.interfaces';
3
3
  import * as i0 from "@angular/core";
4
- export declare class TuiAlertDirective<T> extends TuiPopoverDirective<TuiAlertOptions<T>> {
5
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiAlertDirective<any>, never>;
6
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiAlertDirective<any>, "ng-template[tuiAlert]", never, { "options": { "alias": "tuiAlertOptions"; "required": false; }; "open": { "alias": "tuiAlert"; "required": false; }; }, { "openChange": "tuiAlertChange"; }, never, never, true, never>;
4
+ export declare class TuiAlert<T> extends TuiPopoverDirective<TuiAlertOptions<T>> {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiAlert<any>, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiAlert<any>, "ng-template[tuiAlert]", never, { "options": { "alias": "tuiAlertOptions"; "required": false; }; "open": { "alias": "tuiAlert"; "required": false; }; }, { "openChange": "tuiAlertChange"; }, never, never, true, never>;
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
2
2
  import type { TuiDialogOptions } from './dialog.interfaces';
3
3
  import * as i0 from "@angular/core";
4
- export declare class TuiDialogDirective<T> extends TuiPopoverDirective<TuiDialogOptions<T>> {
5
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDialogDirective<any>, never>;
6
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDialogDirective<any>, "ng-template[tuiDialog]", never, { "options": { "alias": "tuiDialogOptions"; "required": false; }; "open": { "alias": "tuiDialog"; "required": false; }; }, { "openChange": "tuiDialogChange"; }, never, never, true, never>;
4
+ export declare class TuiDialog<T> extends TuiPopoverDirective<TuiDialogOptions<T>> {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiDialog<any>, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDialog<any>, "ng-template[tuiDialog]", never, { "options": { "alias": "tuiDialogOptions"; "required": false; }; "open": { "alias": "tuiDialog"; "required": false; }; }, { "openChange": "tuiDialogChange"; }, never, never, true, never>;
7
7
  }
@@ -1,4 +1,3 @@
1
- export * from './dialog';
2
1
  export * from './dialog.component';
3
2
  export * from './dialog.directive';
4
3
  export * from './dialog.interfaces';
@@ -10,7 +10,7 @@ import { POLYMORPHEUS_CONTEXT, PolymorpheusOutlet, PolymorpheusTemplate, } from
10
10
  import { fromEvent, repeat, takeUntil, timer } from 'rxjs';
11
11
  import { TUI_ALERT_POSITION } from './alert.tokens';
12
12
  import * as i0 from "@angular/core";
13
- class TuiAlert {
13
+ class TuiAlertComponent {
14
14
  constructor() {
15
15
  this.el = tuiInjectElement();
16
16
  this.destroyRef = inject(DestroyRef);
@@ -38,11 +38,11 @@ class TuiAlert {
38
38
  .pipe(takeUntil(fromEvent(this.el, 'mouseenter')), repeat({ delay: () => fromEvent(this.el, 'mouseleave') }), takeUntilDestroyed(this.destroyRef))
39
39
  .subscribe(() => this.close());
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlert, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n", styles: [":host{display:block;box-shadow:var(--tui-shadow-medium);border-radius:var(--tui-radius-l);width:18rem}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-heading{margin:0}[data-size=s] .t-heading{font:var(--tui-font-text-s);font-weight:700}[data-size=m] .t-heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700}[data-size=l] .t-heading{font:var(--tui-font-text-l);line-height:1.5rem;font-weight:700}.t-content{color:var(--tui-text-primary);word-wrap:break-word;word-break:break-word}.t-content:empty{display:none}\n"], dependencies: [{ kind: "component", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertComponent, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n", styles: [":host{display:block;box-shadow:var(--tui-shadow-medium);border-radius:var(--tui-radius-l);width:18rem}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-heading{margin:0}[data-size=s] .t-heading{font:var(--tui-font-text-s);font-weight:700}[data-size=m] .t-heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700}[data-size=l] .t-heading{font:var(--tui-font-text-l);line-height:1.5rem;font-weight:700}.t-content{color:var(--tui-text-primary);word-wrap:break-word;word-break:break-word}.t-content:empty{display:none}\n"], dependencies: [{ kind: "component", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
43
  }
44
- export { TuiAlert };
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, decorators: [{
44
+ export { TuiAlertComponent };
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, decorators: [{
46
46
  type: Component,
47
47
  args: [{ standalone: true, selector: 'tui-alert', imports: [TuiNotification, NgIf, PolymorpheusOutlet, PolymorpheusTemplate], changeDetection: ChangeDetectionStrategy.OnPush, animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], host: {
48
48
  role: 'alert',
@@ -52,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
52
52
  '[@tuiHeightCollapse]': 'animation',
53
53
  }, template: "<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n", styles: [":host{display:block;box-shadow:var(--tui-shadow-medium);border-radius:var(--tui-radius-l);width:18rem}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-heading{margin:0}[data-size=s] .t-heading{font:var(--tui-font-text-s);font-weight:700}[data-size=m] .t-heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700}[data-size=l] .t-heading{font:var(--tui-font-text-l);line-height:1.5rem;font-weight:700}.t-content{color:var(--tui-text-primary);word-wrap:break-word;word-break:break-word}.t-content:empty{display:none}\n"] }]
54
54
  }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDdkUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUNILG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsb0JBQW9CLEdBQ3ZCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUd6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbEQsTUFnQmEsUUFBUTtJQWhCckI7UUFpQnFCLE9BQUUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3RDLFNBQUksR0FDbkIsTUFBTSxDQUFvQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRWpELGNBQVMsR0FDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxVQUFVO1lBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFFWCxZQUFPLEdBQUcscUJBQXFCLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztRQUU5RCxjQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3pELENBQUMsQ0FBQyxFQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFDO1lBQ25DLENBQUMsQ0FBQyxFQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLENBQUM7S0F1QjFDO0lBckJVLFFBQVE7UUFDWCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVTLEtBQUs7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixPQUFPO1NBQ1Y7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUNoQixJQUFJLENBQ0QsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQzNDLE1BQU0sQ0FBQyxFQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsRUFBQyxDQUFDLEVBQ3ZELGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FDdEM7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0F0Q1EsUUFBUTttR0FBUixRQUFRLG9QQ3BDckIsNHJCQXlCQSxtb0JERmMsZUFBZSw2S0FBRSxJQUFJLDZGQUFFLGtCQUFrQixnSEFJdkMsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixDQUFDOztTQVM3QyxRQUFROzRGQUFSLFFBQVE7a0JBaEJwQixTQUFTO2lDQUNNLElBQUksWUFDTixXQUFXLFdBQ1osQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDLG1CQUd6RCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxRQUNoRDt3QkFDRixJQUFJLEVBQUUsT0FBTzt3QkFDYixnQkFBZ0IsRUFBRSxVQUFVO3dCQUM1QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFdBQVc7d0JBQzVCLHNCQUFzQixFQUFFLFdBQVc7cUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge09uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHR5cGUge1R1aVBvcG92ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpSGVpZ2h0Q29sbGFwc2UsIHR1aVNsaWRlSW59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlOb3RpZmljYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTlNfU1BFRUR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aVRvQW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBQT0xZTU9SUEhFVVNfQ09OVEVYVCxcbiAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG4gICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG59IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIHJlcGVhdCwgdGFrZVVudGlsLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIHtUdWlBbGVydE9wdGlvbnN9IGZyb20gJy4vYWxlcnQuaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9BTEVSVF9QT1NJVElPTn0gZnJvbSAnLi9hbGVydC50b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWFsZXJ0JyxcbiAgICBpbXBvcnRzOiBbVHVpTm90aWZpY2F0aW9uLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFBvbHltb3JwaGV1c1RlbXBsYXRlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW4sIHR1aVNsaWRlSW4sIHR1aUhlaWdodENvbGxhcHNlXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdhbGVydCcsXG4gICAgICAgICdbc3R5bGUubWFyZ2luXSc6ICdwb3NpdGlvbicsXG4gICAgICAgICdbQHR1aUZhZGVJbl0nOiAnb3B0aW9ucycsXG4gICAgICAgICdbQHR1aVNsaWRlSW5dJzogJ2FuaW1hdGlvbicsXG4gICAgICAgICdbQHR1aUhlaWdodENvbGxhcHNlXSc6ICdhbmltYXRpb24nLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFsZXJ0PE8sIEk+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcG9zaXRpb24gPSBpbmplY3QoVFVJX0FMRVJUX1BPU0lUSU9OKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbSA9XG4gICAgICAgIGluamVjdDxUdWlQb3BvdmVyPFR1aUFsZXJ0T3B0aW9uczxJPiwgTz4+KFBPTFlNT1JQSEVVU19DT05URVhUKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdXRvQ2xvc2UgPVxuICAgICAgICB0eXBlb2YgdGhpcy5pdGVtLmF1dG9DbG9zZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyB0aGlzLml0ZW0uYXV0b0Nsb3NlKHRoaXMuaXRlbS5zdGF0dXMpXG4gICAgICAgICAgICA6IHRoaXMuaXRlbS5hdXRvQ2xvc2U7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IHR1aVRvQW5pbWF0aW9uT3B0aW9ucyhpbmplY3QoVFVJX0FOSU1BVElPTlNfU1BFRUQpKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhbmltYXRpb24gPSB0aGlzLnBvc2l0aW9uLmVuZHNXaXRoKCdhdXRvJylcbiAgICAgICAgPyB7Li4udGhpcy5vcHRpb25zLCB2YWx1ZTogJ3JpZ2h0J31cbiAgICAgICAgOiB7Li4udGhpcy5vcHRpb25zLCB2YWx1ZTogJ2xlZnQnfTtcblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0QXV0b0Nsb3NlKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW0uJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QXV0b0Nsb3NlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuYXV0b0Nsb3NlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aW1lcih0aGlzLmF1dG9DbG9zZSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChmcm9tRXZlbnQodGhpcy5lbCwgJ21vdXNlZW50ZXInKSksXG4gICAgICAgICAgICAgICAgcmVwZWF0KHtkZWxheTogKCkgPT4gZnJvbUV2ZW50KHRoaXMuZWwsICdtb3VzZWxlYXZlJyl9KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG59XG4iLCI8dHVpLW5vdGlmaWNhdGlvblxuICAgIFtoaWRlQ2xvc2VdPVwiIWl0ZW0uY2xvc2VhYmxlXCJcbiAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuICAgIFtzdGF0dXNdPVwiaXRlbS5zdGF0dXNcIlxuICAgIChjbG9zZSk9XCJjbG9zZSgpXCJcbj5cbiAgICA8bGFiZWxcbiAgICAgICAgKm5nSWY9XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1ub3RpZmljYXRpb24tYWxlcnRfX2hlYWRpbmdcIlxuICAgICAgICBjbGFzcz1cInQtaGVhZGluZ1wiXG4gICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtLmxhYmVsIGFzIHRleHQ7IGNvbnRleHQ6IGl0ZW1cIj5cbiAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2XG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktbm90aWZpY2F0aW9uLWFsZXJ0X19jb250ZW50XCJcbiAgICAgICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cIml0ZW0uY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiBpdGVtXCJcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwidGV4dFwiXG4gICAgICAgID48L2Rpdj5cbiAgICA8L2Rpdj5cbjwvdHVpLW5vdGlmaWNhdGlvbj5cbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDdkUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUNILG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsb0JBQW9CLEdBQ3ZCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUd6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbEQsTUFnQmEsaUJBQWlCO0lBaEI5QjtRQWlCcUIsT0FBRSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QixhQUFRLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEMsU0FBSSxHQUNuQixNQUFNLENBQW9DLG9CQUFvQixDQUFDLENBQUM7UUFFakQsY0FBUyxHQUN4QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLFVBQVU7WUFDckMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUVYLFlBQU8sR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1FBRTlELGNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDekQsQ0FBQyxDQUFDLEVBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUM7WUFDbkMsQ0FBQyxDQUFDLEVBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsQ0FBQztLQXVCMUM7SUFyQlUsUUFBUTtRQUNYLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRVMsS0FBSztRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTyxhQUFhO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2pCLE9BQU87U0FDVjtRQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ2hCLElBQUksQ0FDRCxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFDM0MsTUFBTSxDQUFDLEVBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQyxFQUFDLENBQUMsRUFDdkQsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUN0QzthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDOytHQXRDUSxpQkFBaUI7bUdBQWpCLGlCQUFpQixvUENwQzlCLDRyQkF5QkEsbW9CREZjLGVBQWUsNktBQUUsSUFBSSw2RkFBRSxrQkFBa0IsZ0hBSXZDLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQzs7U0FTN0MsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBaEI3QixTQUFTO2lDQUNNLElBQUksWUFDTixXQUFXLFdBQ1osQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDLG1CQUd6RCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxRQUNoRDt3QkFDRixJQUFJLEVBQUUsT0FBTzt3QkFDYixnQkFBZ0IsRUFBRSxVQUFVO3dCQUM1QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFdBQVc7d0JBQzVCLHNCQUFzQixFQUFFLFdBQVc7cUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge09uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHR5cGUge1R1aVBvcG92ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpSGVpZ2h0Q29sbGFwc2UsIHR1aVNsaWRlSW59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlOb3RpZmljYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTlNfU1BFRUR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aVRvQW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBQT0xZTU9SUEhFVVNfQ09OVEVYVCxcbiAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG4gICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG59IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIHJlcGVhdCwgdGFrZVVudGlsLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIHtUdWlBbGVydE9wdGlvbnN9IGZyb20gJy4vYWxlcnQuaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9BTEVSVF9QT1NJVElPTn0gZnJvbSAnLi9hbGVydC50b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWFsZXJ0JyxcbiAgICBpbXBvcnRzOiBbVHVpTm90aWZpY2F0aW9uLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFBvbHltb3JwaGV1c1RlbXBsYXRlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW4sIHR1aVNsaWRlSW4sIHR1aUhlaWdodENvbGxhcHNlXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdhbGVydCcsXG4gICAgICAgICdbc3R5bGUubWFyZ2luXSc6ICdwb3NpdGlvbicsXG4gICAgICAgICdbQHR1aUZhZGVJbl0nOiAnb3B0aW9ucycsXG4gICAgICAgICdbQHR1aVNsaWRlSW5dJzogJ2FuaW1hdGlvbicsXG4gICAgICAgICdbQHR1aUhlaWdodENvbGxhcHNlXSc6ICdhbmltYXRpb24nLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFsZXJ0Q29tcG9uZW50PE8sIEk+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcG9zaXRpb24gPSBpbmplY3QoVFVJX0FMRVJUX1BPU0lUSU9OKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbSA9XG4gICAgICAgIGluamVjdDxUdWlQb3BvdmVyPFR1aUFsZXJ0T3B0aW9uczxJPiwgTz4+KFBPTFlNT1JQSEVVU19DT05URVhUKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdXRvQ2xvc2UgPVxuICAgICAgICB0eXBlb2YgdGhpcy5pdGVtLmF1dG9DbG9zZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyB0aGlzLml0ZW0uYXV0b0Nsb3NlKHRoaXMuaXRlbS5zdGF0dXMpXG4gICAgICAgICAgICA6IHRoaXMuaXRlbS5hdXRvQ2xvc2U7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IHR1aVRvQW5pbWF0aW9uT3B0aW9ucyhpbmplY3QoVFVJX0FOSU1BVElPTlNfU1BFRUQpKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBhbmltYXRpb24gPSB0aGlzLnBvc2l0aW9uLmVuZHNXaXRoKCdhdXRvJylcbiAgICAgICAgPyB7Li4udGhpcy5vcHRpb25zLCB2YWx1ZTogJ3JpZ2h0J31cbiAgICAgICAgOiB7Li4udGhpcy5vcHRpb25zLCB2YWx1ZTogJ2xlZnQnfTtcblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0QXV0b0Nsb3NlKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW0uJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QXV0b0Nsb3NlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuYXV0b0Nsb3NlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aW1lcih0aGlzLmF1dG9DbG9zZSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChmcm9tRXZlbnQodGhpcy5lbCwgJ21vdXNlZW50ZXInKSksXG4gICAgICAgICAgICAgICAgcmVwZWF0KHtkZWxheTogKCkgPT4gZnJvbUV2ZW50KHRoaXMuZWwsICdtb3VzZWxlYXZlJyl9KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG59XG4iLCI8dHVpLW5vdGlmaWNhdGlvblxuICAgIFtoaWRlQ2xvc2VdPVwiIWl0ZW0uY2xvc2VhYmxlXCJcbiAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuICAgIFtzdGF0dXNdPVwiaXRlbS5zdGF0dXNcIlxuICAgIChjbG9zZSk9XCJjbG9zZSgpXCJcbj5cbiAgICA8bGFiZWxcbiAgICAgICAgKm5nSWY9XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1ub3RpZmljYXRpb24tYWxlcnRfX2hlYWRpbmdcIlxuICAgICAgICBjbGFzcz1cInQtaGVhZGluZ1wiXG4gICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtLmxhYmVsIGFzIHRleHQ7IGNvbnRleHQ6IGl0ZW1cIj5cbiAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2XG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktbm90aWZpY2F0aW9uLWFsZXJ0X19jb250ZW50XCJcbiAgICAgICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cIml0ZW0uY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiBpdGVtXCJcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwidGV4dFwiXG4gICAgICAgID48L2Rpdj5cbiAgICA8L2Rpdj5cbjwvdHVpLW5vdGlmaWNhdGlvbj5cbiJdfQ==
@@ -3,12 +3,12 @@ import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
3
3
  import { tuiAsPopover } from '@taiga-ui/cdk/services';
4
4
  import { TuiAlertService } from './alert.service';
5
5
  import * as i0 from "@angular/core";
6
- class TuiAlertDirective extends TuiPopoverDirective {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertDirective, isStandalone: true, selector: "ng-template[tuiAlert]", inputs: { options: ["tuiAlertOptions", "options"], open: ["tuiAlert", "open"] }, outputs: { openChange: "tuiAlertChange" }, providers: [tuiAsPopover(TuiAlertService)], usesInheritance: true, ngImport: i0 }); }
6
+ class TuiAlert extends TuiPopoverDirective {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlert, isStandalone: true, selector: "ng-template[tuiAlert]", inputs: { options: ["tuiAlertOptions", "options"], open: ["tuiAlert", "open"] }, outputs: { openChange: "tuiAlertChange" }, providers: [tuiAsPopover(TuiAlertService)], usesInheritance: true, ngImport: i0 }); }
9
9
  }
10
- export { TuiAlertDirective };
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertDirective, decorators: [{
10
+ export { TuiAlert };
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  standalone: true,
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
18
18
  providers: [tuiAsPopover(TuiAlertService)],
19
19
  }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdwRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBRWhELE1BT2EsaUJBQXFCLFNBQVEsbUJBQXVDOytHQUFwRSxpQkFBaUI7bUdBQWpCLGlCQUFpQixnTUFGZixDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQzs7U0FFakMsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBUDdCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixFQUFFLGdCQUFnQixDQUFDO29CQUN0RCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDdkMsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpUG9wb3ZlckRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3BvcG92ZXInO1xuaW1wb3J0IHt0dWlBc1BvcG92ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpQWxlcnRPcHRpb25zfSBmcm9tICcuL2FsZXJ0LmludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlBbGVydFNlcnZpY2V9IGZyb20gJy4vYWxlcnQuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVt0dWlBbGVydF0nLFxuICAgIGlucHV0czogWydvcHRpb25zOiB0dWlBbGVydE9wdGlvbnMnLCAnb3BlbjogdHVpQWxlcnQnXSxcbiAgICBvdXRwdXRzOiBbJ29wZW5DaGFuZ2U6IHR1aUFsZXJ0Q2hhbmdlJ10sXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNQb3BvdmVyKFR1aUFsZXJ0U2VydmljZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBbGVydERpcmVjdGl2ZTxUPiBleHRlbmRzIFR1aVBvcG92ZXJEaXJlY3RpdmU8VHVpQWxlcnRPcHRpb25zPFQ+PiB7fVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdwRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBRWhELE1BT2EsUUFBWSxTQUFRLG1CQUF1QzsrR0FBM0QsUUFBUTttR0FBUixRQUFRLGdNQUZOLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDOztTQUVqQyxRQUFROzRGQUFSLFFBQVE7a0JBUHBCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixFQUFFLGdCQUFnQixDQUFDO29CQUN0RCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDdkMsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpUG9wb3ZlckRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3BvcG92ZXInO1xuaW1wb3J0IHt0dWlBc1BvcG92ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpQWxlcnRPcHRpb25zfSBmcm9tICcuL2FsZXJ0LmludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlBbGVydFNlcnZpY2V9IGZyb20gJy4vYWxlcnQuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVt0dWlBbGVydF0nLFxuICAgIGlucHV0czogWydvcHRpb25zOiB0dWlBbGVydE9wdGlvbnMnLCAnb3BlbjogdHVpQWxlcnQnXSxcbiAgICBvdXRwdXRzOiBbJ29wZW5DaGFuZ2U6IHR1aUFsZXJ0Q2hhbmdlJ10sXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNQb3BvdmVyKFR1aUFsZXJ0U2VydmljZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBbGVydDxUPiBleHRlbmRzIFR1aVBvcG92ZXJEaXJlY3RpdmU8VHVpQWxlcnRPcHRpb25zPFQ+PiB7fVxuIl19
@@ -1,18 +1,18 @@
1
1
  import { inject, Injectable } from '@angular/core';
2
2
  import { TuiPopoverService } from '@taiga-ui/cdk/services';
3
- import { TuiAlert } from './alert.component';
3
+ import { TuiAlertComponent } from './alert.component';
4
4
  import { TUI_ALERT_OPTIONS, TUI_ALERTS } from './alert.tokens';
5
5
  import * as i0 from "@angular/core";
6
6
  class TuiAlertService extends TuiPopoverService {
7
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, providedIn: 'root', useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlert, inject(TUI_ALERT_OPTIONS)) }); }
8
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, providedIn: 'root', useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)) }); }
9
9
  }
10
10
  export { TuiAlertService };
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, decorators: [{
12
12
  type: Injectable,
13
13
  args: [{
14
14
  providedIn: 'root',
15
- useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlert, inject(TUI_ALERT_OPTIONS)),
15
+ useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)),
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTdELE1BS2EsZUFBZ0IsU0FBUSxpQkFBdUM7K0dBQS9ELGVBQWU7bUhBQWYsZUFBZSxjQUpaLE1BQU0sY0FDTixHQUFHLEVBQUUsQ0FDYixJQUFJLGVBQWUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDOztTQUUvRCxlQUFlOzRGQUFmLGVBQWU7a0JBTDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FDYixvQkFBb0IsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztpQkFDM0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVBvcG92ZXJTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcblxuaW1wb3J0IHtUdWlBbGVydH0gZnJvbSAnLi9hbGVydC5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUge1R1aUFsZXJ0T3B0aW9uc30gZnJvbSAnLi9hbGVydC5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FMRVJUX09QVElPTlMsIFRVSV9BTEVSVFN9IGZyb20gJy4vYWxlcnQudG9rZW5zJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICB1c2VGYWN0b3J5OiAoKSA9PlxuICAgICAgICBuZXcgVHVpQWxlcnRTZXJ2aWNlKFRVSV9BTEVSVFMsIFR1aUFsZXJ0LCBpbmplY3QoVFVJX0FMRVJUX09QVElPTlMpKSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQWxlcnRTZXJ2aWNlIGV4dGVuZHMgVHVpUG9wb3ZlclNlcnZpY2U8VHVpQWxlcnRPcHRpb25zPGFueT4+IHt9XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRXBELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFN0QsTUFLYSxlQUFnQixTQUFRLGlCQUF1QzsrR0FBL0QsZUFBZTttSEFBZixlQUFlLGNBSlosTUFBTSxjQUNOLEdBQUcsRUFBRSxDQUNiLElBQUksZUFBZSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQzs7U0FFeEUsZUFBZTs0RkFBZixlQUFlO2tCQUwzQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO29CQUNsQixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQ2Isb0JBQW9CLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztpQkFDcEYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVBvcG92ZXJTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcblxuaW1wb3J0IHtUdWlBbGVydENvbXBvbmVudH0gZnJvbSAnLi9hbGVydC5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUge1R1aUFsZXJ0T3B0aW9uc30gZnJvbSAnLi9hbGVydC5pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FMRVJUX09QVElPTlMsIFRVSV9BTEVSVFN9IGZyb20gJy4vYWxlcnQudG9rZW5zJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICB1c2VGYWN0b3J5OiAoKSA9PlxuICAgICAgICBuZXcgVHVpQWxlcnRTZXJ2aWNlKFRVSV9BTEVSVFMsIFR1aUFsZXJ0Q29tcG9uZW50LCBpbmplY3QoVFVJX0FMRVJUX09QVElPTlMpKSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQWxlcnRTZXJ2aWNlIGV4dGVuZHMgVHVpUG9wb3ZlclNlcnZpY2U8VHVpQWxlcnRPcHRpb25zPGFueT4+IHt9XG4iXX0=
@@ -53,7 +53,7 @@ class TuiDataListComponent {
53
53
  return Array.from(this.el.querySelectorAll('a[tuiOption],button[tuiOption],input'));
54
54
  }
55
55
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListComponent, isStandalone: true, selector: "tui-data-list", inputs: { emptyContent: "emptyContent", size: "size" }, host: { attributes: { "role": "listbox" }, listeners: { "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)", "keydown.tab": "handleFocusLossIfNecessary()", "keydown.shift.tab": "handleFocusLossIfNecessary()", "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()" }, properties: { "attr.data-size": "this.size" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }], ngImport: i0, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:after{font-size:1rem;margin:0 -.25rem 0 1rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
56
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListComponent, isStandalone: true, selector: "tui-data-list", inputs: { emptyContent: "emptyContent", size: "size" }, host: { attributes: { "role": "listbox" }, listeners: { "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)", "keydown.tab": "handleFocusLossIfNecessary()", "keydown.shift.tab": "handleFocusLossIfNecessary()", "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()" }, properties: { "attr.data-size": "this.size" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }], ngImport: i0, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=s]>.t-empty:before,tui-data-list[data-size=s] [tuiOption]:before{font-size:1rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:before{margin-inline-end:.5rem}[tuiOption]:after{font-size:1rem;margin:0 -.75rem 0 auto;border-left:.5rem solid;border-right:.5rem solid}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
57
57
  }
58
58
  __decorate([
59
59
  tuiPure
@@ -63,7 +63,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
63
63
  type: Component,
64
64
  args: [{ standalone: true, selector: 'tui-data-list', imports: [NgIf, AsyncPipe, PolymorpheusOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListComponent)], host: {
65
65
  role: 'listbox',
66
- }, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:after{font-size:1rem;margin:0 -.25rem 0 1rem}\n"] }]
66
+ }, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=s]>.t-empty:before,tui-data-list[data-size=s] [tuiOption]:before{font-size:1rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:before{margin-inline-end:.5rem}[tuiOption]:after{font-size:1rem;margin:0 -.75rem 0 auto;border-left:.5rem solid;border-right:.5rem solid}\n"] }]
67
67
  }], propDecorators: { options: [{
68
68
  type: ContentChildren,
69
69
  args: [forwardRef(() => TuiOption), { descendants: true }]
@@ -99,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
99
99
  type: HostListener,
100
100
  args: ['mousedown.prevent']
101
101
  }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvZGF0YS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvZGF0YS1saXN0LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsWUFBWSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0UsT0FBTyxFQUFDLFlBQVksRUFBRSxPQUFPLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBR3pCLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7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LFFBQ2xEO3dCQUNGLElBQUksRUFBRSxTQUFTO3FCQUNsQjs4QkFJZ0IsT0FBTztzQkFEdkIsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQVMxRCxZQUFZO3NCQURsQixLQUFLO2dCQUtDLElBQUk7c0JBRlYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBS3RCLGNBQWM7c0JBRnBCLFlBQVk7dUJBQUMsMkJBQTJCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDOztzQkFDaEUsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUM7Z0JBV3pELDBCQUEwQjtzQkFKaEMsWUFBWTt1QkFBQyxzQkFBc0I7O3NCQUNuQyxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQzs7c0JBQzVDLFlBQVk7dUJBQUMsYUFBYTs7c0JBQzFCLFlBQVk7dUJBQUMsbUJBQW1CO2dCQWVuQixNQUFNLE1BS1YsU0FBUztzQkFEbEIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxzQkFBc0IsQ0FBQztnQkFRL0QsSUFBSTtzQkFEYixZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge1F1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpUXVlcnlMaXN0Q2hhbmdlc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpSXNOYXRpdmVGb2N1c2VkSW4sIHR1aU1vdmVGb2N1c30gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudCwgdHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VFVJX05PVEhJTkdfRk9VTkRfTUVTU0FHRX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtUdWlTaXplTCwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB0eXBlIHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUge1R1aURhdGFMaXN0QWNjZXNzb3J9IGZyb20gJy4vZGF0YS1saXN0LnRva2Vucyc7XG5pbXBvcnQge1RVSV9EQVRBX0xJU1RfSE9TVCwgdHVpQXNEYXRhTGlzdEFjY2Vzc29yfSBmcm9tICcuL2RhdGEtbGlzdC50b2tlbnMnO1xuaW1wb3J0IHtUdWlPcHRpb259IGZyb20gJy4vb3B0aW9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJbmplY3REYXRhTGlzdFNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgY29uc3Qgc2l6ZXMgPSBbJ3MnLCAnbScsICdsJ10gYXMgY29uc3Q7XG4gICAgY29uc3Qgc2l6ZSA9IGluamVjdChUVUlfREFUQV9MSVNUX0hPU1QsIHtvcHRpb25hbDogdHJ1ZX0pPy5zaXplO1xuXG4gICAgcmV0dXJuIHNpemUgJiYgc2l6ZXMuaW5jbHVkZXMoc2l6ZSkgPyBzaXplIDogJ2wnO1xufVxuXG4vLyBUT0RPOiBDb25zaWRlciBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQgZm9yIHByb3BlciBhY2Nlc3NpYmlsaXR5IGltcGxlbWVudGF0aW9uXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRhdGEtbGlzdCcsXG4gICAgaW1wb3J0czogW05nSWYsIEFzeW5jUGlwZSwgUG9seW1vcnBoZXVzT3V0bGV0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1saXN0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RhdGEtbGlzdC5zdHlsZS5sZXNzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc0RhdGFMaXN0QWNjZXNzb3IoVHVpRGF0YUxpc3RDb21wb25lbnQpXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdsaXN0Ym94JyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEYXRhTGlzdENvbXBvbmVudDxUPiBpbXBsZW1lbnRzIFR1aURhdGFMaXN0QWNjZXNzb3I8VD4ge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBUdWlPcHRpb24pLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogUXVlcnlMaXN0PFR1aU9wdGlvbjxUPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIHByaXZhdGUgb3JpZ2luPzogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkZWZhdWx0RW1wdHlDb250ZW50JCA9IGluamVjdChUVUlfTk9USElOR19GT1VORF9NRVNTQUdFKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVtcHR5Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgcHVibGljIHNpemUgPSB0dWlJbmplY3REYXRhTGlzdFNpemUoKTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dEb3duLnByZXZlbnQnLCBbJyRldmVudC50YXJnZXQnLCAnMSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dVcC5wcmV2ZW50JywgWyckZXZlbnQudGFyZ2V0JywgJy0xJ10pXG4gICAgcHVibGljIG9uS2V5RG93bkFycm93KGN1cnJlbnQ6IEhUTUxFbGVtZW50LCBzdGVwOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2VsZW1lbnRzfSA9IHRoaXM7XG5cbiAgICAgICAgdHVpTW92ZUZvY3VzKGVsZW1lbnRzLmluZGV4T2YoY3VycmVudCksIGVsZW1lbnRzLCBzdGVwKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aGVlbC5zaWxlbnQucGFzc2l2ZScpXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24udGFiJylcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLnNoaWZ0LnRhYicpXG4gICAgcHVibGljIGhhbmRsZUZvY3VzTG9zc0lmTmVjZXNzYXJ5KGVsZW1lbnQ6IEVsZW1lbnQgPSB0aGlzLmVsKTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlJc05hdGl2ZUZvY3VzZWRJbihlbGVtZW50KSkge1xuICAgICAgICAgICAgdGhpcy5vcmlnaW4/LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3B0aW9ucyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNcbiAgICAgICAgICAgIC5maWx0ZXIoKHtkaXNhYmxlZH0pID0+IGluY2x1ZGVEaXNhYmxlZCB8fCAhZGlzYWJsZWQpXG4gICAgICAgICAgICAubWFwKCh7dmFsdWV9KSA9PiB2YWx1ZSlcbiAgICAgICAgICAgIC5maWx0ZXIodHVpSXNQcmVzZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByb3RlY3RlZCBnZXQgZW1wdHkkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdHVpUXVlcnlMaXN0Q2hhbmdlcyh0aGlzLm9wdGlvbnMpLnBpcGUobWFwKCh7bGVuZ3RofSkgPT4gIWxlbmd0aCkpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC5yZWxhdGVkVGFyZ2V0JywgJyRldmVudC5jdXJyZW50VGFyZ2V0J10pXG4gICAgcHJvdGVjdGVkIG9uRm9jdXNJbihyZWxhdGVkVGFyZ2V0OiBIVE1MRWxlbWVudCwgY3VycmVudFRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjdXJyZW50VGFyZ2V0LmNvbnRhaW5zKHJlbGF0ZWRUYXJnZXQpICYmICF0aGlzLm9yaWdpbikge1xuICAgICAgICAgICAgdGhpcy5vcmlnaW4gPSByZWxhdGVkVGFyZ2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duLnByZXZlbnQnKVxuICAgIHByb3RlY3RlZCBub29wKCk6IHZvaWQge31cblxuICAgIHByaXZhdGUgZ2V0IGVsZW1lbnRzKCk6IHJlYWRvbmx5IEhUTUxFbGVtZW50W10ge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgICAgICAgIHRoaXMuZWwucXVlcnlTZWxlY3RvckFsbCgnYVt0dWlPcHRpb25dLGJ1dHRvblt0dWlPcHRpb25dLGlucHV0JyksXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQgLz5cbjxkaXZcbiAgICAqbmdJZj1cImVtcHR5JCB8IGFzeW5jXCJcbiAgICBjbGFzcz1cInQtZW1wdHlcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImVtcHR5Q29udGVudCB8fCAoZGVmYXVsdEVtcHR5Q29udGVudCQgfCBhc3luYykgYXMgdGV4dFwiPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvZGF0YS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvZGF0YS1saXN0LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsWUFBWSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0UsT0FBTyxFQUFDLFlBQVksRUFBRSxPQUFPLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBR3pCLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7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LFFBQ2xEO3dCQUNGLElBQUksRUFBRSxTQUFTO3FCQUNsQjs4QkFJZ0IsT0FBTztzQkFEdkIsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQVMxRCxZQUFZO3NCQURsQixLQUFLO2dCQUtDLElBQUk7c0JBRlYsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBS3RCLGNBQWM7c0JBRnBCLFlBQVk7dUJBQUMsMkJBQTJCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDOztzQkFDaEUsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUM7Z0JBV3pELDBCQUEwQjtzQkFKaEMsWUFBWTt1QkFBQyxzQkFBc0I7O3NCQUNuQyxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQzs7c0JBQzVDLFlBQVk7dUJBQUMsYUFBYTs7c0JBQzFCLFlBQVk7dUJBQUMsbUJBQW1CO2dCQWVuQixNQUFNLE1BS1YsU0FBUztzQkFEbEIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxzQkFBc0IsQ0FBQztnQkFRL0QsSUFBSTtzQkFEYixZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUge1F1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7dHVpUXVlcnlMaXN0Q2hhbmdlc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpSXNOYXRpdmVGb2N1c2VkSW4sIHR1aU1vdmVGb2N1c30gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudCwgdHVpUHVyZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VFVJX05PVEhJTkdfRk9VTkRfTUVTU0FHRX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtUdWlTaXplTCwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB0eXBlIHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUge1R1aURhdGFMaXN0QWNjZXNzb3J9IGZyb20gJy4vZGF0YS1saXN0LnRva2Vucyc7XG5pbXBvcnQge1RVSV9EQVRBX0xJU1RfSE9TVCwgdHVpQXNEYXRhTGlzdEFjY2Vzc29yfSBmcm9tICcuL2RhdGEtbGlzdC50b2tlbnMnO1xuaW1wb3J0IHtUdWlPcHRpb259IGZyb20gJy4vb3B0aW9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJbmplY3REYXRhTGlzdFNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgY29uc3Qgc2l6ZXMgPSBbJ3MnLCAnbScsICdsJ10gYXMgY29uc3Q7XG4gICAgY29uc3Qgc2l6ZSA9IGluamVjdChUVUlfREFUQV9MSVNUX0hPU1QsIHtvcHRpb25hbDogdHJ1ZX0pPy5zaXplO1xuXG4gICAgcmV0dXJuIHNpemUgJiYgc2l6ZXMuaW5jbHVkZXMoc2l6ZSkgPyBzaXplIDogJ2wnO1xufVxuXG4vLyBUT0RPOiBDb25zaWRlciBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQgZm9yIHByb3BlciBhY2Nlc3NpYmlsaXR5IGltcGxlbWVudGF0aW9uXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRhdGEtbGlzdCcsXG4gICAgaW1wb3J0czogW05nSWYsIEFzeW5jUGlwZSwgUG9seW1vcnBoZXVzT3V0bGV0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1saXN0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RhdGEtbGlzdC5zdHlsZS5sZXNzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc0RhdGFMaXN0QWNjZXNzb3IoVHVpRGF0YUxpc3RDb21wb25lbnQpXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdsaXN0Ym94JyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEYXRhTGlzdENvbXBvbmVudDxUPiBpbXBsZW1lbnRzIFR1aURhdGFMaXN0QWNjZXNzb3I8VD4ge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBUdWlPcHRpb24pLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogUXVlcnlMaXN0PFR1aU9wdGlvbjxUPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIHByaXZhdGUgb3JpZ2luPzogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkZWZhdWx0RW1wdHlDb250ZW50JCA9IGluamVjdChUVUlfTk9USElOR19GT1VORF9NRVNTQUdFKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVtcHR5Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgcHVibGljIHNpemUgPSB0dWlJbmplY3REYXRhTGlzdFNpemUoKTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dEb3duLnByZXZlbnQnLCBbJyRldmVudC50YXJnZXQnLCAnMSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dVcC5wcmV2ZW50JywgWyckZXZlbnQudGFyZ2V0JywgJy0xJ10pXG4gICAgcHVibGljIG9uS2V5RG93bkFycm93KGN1cnJlbnQ6IEhUTUxFbGVtZW50LCBzdGVwOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2VsZW1lbnRzfSA9IHRoaXM7XG5cbiAgICAgICAgdHVpTW92ZUZvY3VzKGVsZW1lbnRzLmluZGV4T2YoY3VycmVudCksIGVsZW1lbnRzLCBzdGVwKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aGVlbC5zaWxlbnQucGFzc2l2ZScpXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24udGFiJylcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLnNoaWZ0LnRhYicpXG4gICAgcHVibGljIGhhbmRsZUZvY3VzTG9zc0lmTmVjZXNzYXJ5KGVsZW1lbnQ6IEVsZW1lbnQgPSB0aGlzLmVsKTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlJc05hdGl2ZUZvY3VzZWRJbihlbGVtZW50KSkge1xuICAgICAgICAgICAgdGhpcy5vcmlnaW4/LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3B0aW9ucyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNcbiAgICAgICAgICAgIC5maWx0ZXIoKHtkaXNhYmxlZH0pID0+IGluY2x1ZGVEaXNhYmxlZCB8fCAhZGlzYWJsZWQpXG4gICAgICAgICAgICAubWFwKCh7dmFsdWV9KSA9PiB2YWx1ZSlcbiAgICAgICAgICAgIC5maWx0ZXIodHVpSXNQcmVzZW50KTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByb3RlY3RlZCBnZXQgZW1wdHkkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdHVpUXVlcnlMaXN0Q2hhbmdlcyh0aGlzLm9wdGlvbnMpLnBpcGUobWFwKCh7bGVuZ3RofSkgPT4gIWxlbmd0aCkpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC5yZWxhdGVkVGFyZ2V0JywgJyRldmVudC5jdXJyZW50VGFyZ2V0J10pXG4gICAgcHJvdGVjdGVkIG9uRm9jdXNJbihyZWxhdGVkVGFyZ2V0OiBIVE1MRWxlbWVudCwgY3VycmVudFRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjdXJyZW50VGFyZ2V0LmNvbnRhaW5zKHJlbGF0ZWRUYXJnZXQpICYmICF0aGlzLm9yaWdpbikge1xuICAgICAgICAgICAgdGhpcy5vcmlnaW4gPSByZWxhdGVkVGFyZ2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duLnByZXZlbnQnKVxuICAgIHByb3RlY3RlZCBub29wKCk6IHZvaWQge31cblxuICAgIHByaXZhdGUgZ2V0IGVsZW1lbnRzKCk6IHJlYWRvbmx5IEhUTUxFbGVtZW50W10ge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgICAgICAgIHRoaXMuZWwucXVlcnlTZWxlY3RvckFsbCgnYVt0dWlPcHRpb25dLGJ1dHRvblt0dWlPcHRpb25dLGlucHV0JyksXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQgLz5cbjxkaXZcbiAgICAqbmdJZj1cImVtcHR5JCB8IGFzeW5jXCJcbiAgICBjbGFzcz1cInQtZW1wdHlcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cImVtcHR5Q29udGVudCB8fCAoZGVmYXVsdEVtcHR5Q29udGVudCQgfCBhc3luYykgYXMgdGV4dFwiPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
@@ -3,12 +3,12 @@ import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
3
3
  import { tuiAsPopover } from '@taiga-ui/cdk/services';
4
4
  import { TuiDialogService } from './dialog.service';
5
5
  import * as i0 from "@angular/core";
6
- class TuiDialogDirective extends TuiPopoverDirective {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogDirective, isStandalone: true, selector: "ng-template[tuiDialog]", inputs: { options: ["tuiDialogOptions", "options"], open: ["tuiDialog", "open"] }, outputs: { openChange: "tuiDialogChange" }, providers: [tuiAsPopover(TuiDialogService)], usesInheritance: true, ngImport: i0 }); }
6
+ class TuiDialog extends TuiPopoverDirective {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialog, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialog, isStandalone: true, selector: "ng-template[tuiDialog]", inputs: { options: ["tuiDialogOptions", "options"], open: ["tuiDialog", "open"] }, outputs: { openChange: "tuiDialogChange" }, providers: [tuiAsPopover(TuiDialogService)], usesInheritance: true, ngImport: i0 }); }
9
9
  }
10
- export { TuiDialogDirective };
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogDirective, decorators: [{
10
+ export { TuiDialog };
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialog, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  standalone: true,
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
18
18
  providers: [tuiAsPopover(TuiDialogService)],
19
19
  }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdwRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFbEQsTUFPYSxrQkFBc0IsU0FBUSxtQkFBd0M7K0dBQXRFLGtCQUFrQjttR0FBbEIsa0JBQWtCLG9NQUZoQixDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDOztTQUVsQyxrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFQOUIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsTUFBTSxFQUFFLENBQUMsMkJBQTJCLEVBQUUsaUJBQWlCLENBQUM7b0JBQ3hELE9BQU8sRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUN4QyxTQUFTLEVBQUUsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztpQkFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVBvcG92ZXJEaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9wb3BvdmVyJztcbmltcG9ydCB7dHVpQXNQb3BvdmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcblxuaW1wb3J0IHR5cGUge1R1aURpYWxvZ09wdGlvbnN9IGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlEaWFsb2dTZXJ2aWNlfSBmcm9tICcuL2RpYWxvZy5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ25nLXRlbXBsYXRlW3R1aURpYWxvZ10nLFxuICAgIGlucHV0czogWydvcHRpb25zOiB0dWlEaWFsb2dPcHRpb25zJywgJ29wZW46IHR1aURpYWxvZyddLFxuICAgIG91dHB1dHM6IFsnb3BlbkNoYW5nZTogdHVpRGlhbG9nQ2hhbmdlJ10sXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNQb3BvdmVyKFR1aURpYWxvZ1NlcnZpY2UpXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGlhbG9nRGlyZWN0aXZlPFQ+IGV4dGVuZHMgVHVpUG9wb3ZlckRpcmVjdGl2ZTxUdWlEaWFsb2dPcHRpb25zPFQ+PiB7fVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdwRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFbEQsTUFPYSxTQUFhLFNBQVEsbUJBQXdDOytHQUE3RCxTQUFTO21HQUFULFNBQVMsb01BRlAsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzs7U0FFbEMsU0FBUzs0RkFBVCxTQUFTO2tCQVByQixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxNQUFNLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDeEQsT0FBTyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQ3hDLFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2lCQUM5QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpUG9wb3ZlckRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3BvcG92ZXInO1xuaW1wb3J0IHt0dWlBc1BvcG92ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpRGlhbG9nT3B0aW9uc30gZnJvbSAnLi9kaWFsb2cuaW50ZXJmYWNlcyc7XG5pbXBvcnQge1R1aURpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZGlhbG9nLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnbmctdGVtcGxhdGVbdHVpRGlhbG9nXScsXG4gICAgaW5wdXRzOiBbJ29wdGlvbnM6IHR1aURpYWxvZ09wdGlvbnMnLCAnb3BlbjogdHVpRGlhbG9nJ10sXG4gICAgb3V0cHV0czogWydvcGVuQ2hhbmdlOiB0dWlEaWFsb2dDaGFuZ2UnXSxcbiAgICBwcm92aWRlcnM6IFt0dWlBc1BvcG92ZXIoVHVpRGlhbG9nU2VydmljZSldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2c8VD4gZXh0ZW5kcyBUdWlQb3BvdmVyRGlyZWN0aXZlPFR1aURpYWxvZ09wdGlvbnM8VD4+IHt9XG4iXX0=
@@ -1,4 +1,3 @@
1
- export * from './dialog';
2
1
  export * from './dialog.component';
3
2
  export * from './dialog.directive';
4
3
  export * from './dialog.interfaces';
@@ -6,4 +5,4 @@ export * from './dialog.service';
6
5
  export * from './dialog.tokens';
7
6
  export * from './dialog-close.service';
8
7
  export * from './dialogs.component';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZy50b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2ctY2xvc2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZ3MuY29tcG9uZW50JztcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZy50b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaWFsb2ctY2xvc2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZ3MuY29tcG9uZW50JztcbiJdfQ==
@@ -27,7 +27,7 @@ class TuiRoot {
27
27
  inject(DOCUMENT).defaultView?.document.documentElement.setAttribute('data-tui-theme', inject(TUI_THEME).toLowerCase());
28
28
  }
29
29
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- 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.0.0-rc.4" }, listeners: { "touchstart.passive.silent": "0" }, properties: { "style.--tui-duration.ms": "duration", "class._reduced-motion": "reducedMotion", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n/>\n<tui-dropdowns>\n <div class=\"t-root-content\">\n <ng-content />\n </div>\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", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html[data-tui-theme],.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html[data-tui-theme]::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html[data-tui-theme]::-webkit-scrollbar-thumb,.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;-webkit-tap-highlight-color:transparent}tui-root:before{position:fixed;top:0;left:0;width:100%;height:100%;content:\"\";background:var(--tui-background-base)}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{height:100%;isolation:isolate;transform:translateY(var(--t-root-top))}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
30
+ 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.0.0-rc.5" }, listeners: { "touchstart.passive.silent": "0" }, properties: { "style.--tui-duration.ms": "duration", "class._reduced-motion": "reducedMotion", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n/>\n<tui-dropdowns>\n <div class=\"t-root-content\">\n <ng-content />\n </div>\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", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html[data-tui-theme],.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html[data-tui-theme]::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html[data-tui-theme]::-webkit-scrollbar-thumb,.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;-webkit-tap-highlight-color:transparent}tui-root:before{position:fixed;top:0;left:0;width:100%;height:100%;content:\"\";background:var(--tui-background-base)}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{height:100%;isolation:isolate;transform:translateY(var(--t-root-top))}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
31
31
  }
32
32
  export { TuiRoot };
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, decorators: [{
@@ -44,7 +44,7 @@ const TUI_ALERTS_GROUPED = tuiCreateTokenFromFactory(() => combineLatest([
44
44
  return Array.from(map.values());
45
45
  })));
46
46
 
47
- class TuiAlert {
47
+ class TuiAlertComponent {
48
48
  constructor() {
49
49
  this.el = tuiInjectElement();
50
50
  this.destroyRef = inject(DestroyRef);
@@ -72,10 +72,10 @@ class TuiAlert {
72
72
  .pipe(takeUntil(fromEvent(this.el, 'mouseenter')), repeat({ delay: () => fromEvent(this.el, 'mouseleave') }), takeUntilDestroyed(this.destroyRef))
73
73
  .subscribe(() => this.close());
74
74
  }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlert, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n", styles: [":host{display:block;box-shadow:var(--tui-shadow-medium);border-radius:var(--tui-radius-l);width:18rem}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-heading{margin:0}[data-size=s] .t-heading{font:var(--tui-font-text-s);font-weight:700}[data-size=m] .t-heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700}[data-size=l] .t-heading{font:var(--tui-font-text-l);line-height:1.5rem;font-weight:700}.t-content{color:var(--tui-text-primary);word-wrap:break-word;word-break:break-word}.t-content:empty{display:none}\n"], dependencies: [{ kind: "component", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertComponent, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n", styles: [":host{display:block;box-shadow:var(--tui-shadow-medium);border-radius:var(--tui-radius-l);width:18rem}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-heading{margin:0}[data-size=s] .t-heading{font:var(--tui-font-text-s);font-weight:700}[data-size=m] .t-heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700}[data-size=l] .t-heading{font:var(--tui-font-text-l);line-height:1.5rem;font-weight:700}.t-content{color:var(--tui-text-primary);word-wrap:break-word;word-break:break-word}.t-content:empty{display:none}\n"], dependencies: [{ kind: "component", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
77
  }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, decorators: [{
79
79
  type: Component,
80
80
  args: [{ standalone: true, selector: 'tui-alert', imports: [TuiNotification, NgIf, PolymorpheusOutlet, PolymorpheusTemplate], changeDetection: ChangeDetectionStrategy.OnPush, animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], host: {
81
81
  role: 'alert',
@@ -88,21 +88,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
88
88
 
89
89
  class TuiAlertService extends TuiPopoverService {
90
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
91
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, providedIn: 'root', useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlert, inject(TUI_ALERT_OPTIONS)) }); }
91
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, providedIn: 'root', useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)) }); }
92
92
  }
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertService, decorators: [{
94
94
  type: Injectable,
95
95
  args: [{
96
96
  providedIn: 'root',
97
- useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlert, inject(TUI_ALERT_OPTIONS)),
97
+ useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)),
98
98
  }]
99
99
  }] });
100
100
 
101
- class TuiAlertDirective extends TuiPopoverDirective {
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
103
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertDirective, isStandalone: true, selector: "ng-template[tuiAlert]", inputs: { options: ["tuiAlertOptions", "options"], open: ["tuiAlert", "open"] }, outputs: { openChange: "tuiAlertChange" }, providers: [tuiAsPopover(TuiAlertService)], usesInheritance: true, ngImport: i0 }); }
101
+ class TuiAlert extends TuiPopoverDirective {
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
103
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlert, isStandalone: true, selector: "ng-template[tuiAlert]", inputs: { options: ["tuiAlertOptions", "options"], open: ["tuiAlert", "open"] }, outputs: { openChange: "tuiAlertChange" }, providers: [tuiAsPopover(TuiAlertService)], usesInheritance: true, ngImport: i0 }); }
104
104
  }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertDirective, decorators: [{
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlert, decorators: [{
106
106
  type: Directive,
107
107
  args: [{
108
108
  standalone: true,
@@ -140,5 +140,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
140
140
  * Generated bundle index. Do not edit.
141
141
  */
142
142
 
143
- export { TUI_ALERTS, TUI_ALERTS_GROUPED, TUI_ALERT_DEFAULT_OPTIONS, TUI_ALERT_OPTIONS, TUI_ALERT_POSITION, TuiAlert, TuiAlertDirective, TuiAlertService, TuiAlerts };
143
+ export { TUI_ALERTS, TUI_ALERTS_GROUPED, TUI_ALERT_DEFAULT_OPTIONS, TUI_ALERT_OPTIONS, TUI_ALERT_POSITION, TuiAlert, TuiAlertComponent, TuiAlertService, TuiAlerts };
144
144
  //# sourceMappingURL=taiga-ui-core-components-alert.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-alert.mjs","sources":["../../../projects/core/components/alert/alert.tokens.ts","../../../projects/core/components/alert/alert.component.ts","../../../projects/core/components/alert/alert.template.html","../../../projects/core/components/alert/alert.service.ts","../../../projects/core/components/alert/alert.directive.ts","../../../projects/core/components/alert/alerts.component.ts","../../../projects/core/components/alert/alerts.template.html","../../../projects/core/components/alert/taiga-ui-core-components-alert.ts"],"sourcesContent":["import type {Type} from '@angular/core';\nimport {inject} from '@angular/core';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {\n tuiCreateToken,\n tuiCreateTokenFromFactory,\n} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/components/notification';\nimport {BehaviorSubject, combineLatest, map, of} from 'rxjs';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\n\nexport const TUI_ALERT_DEFAULT_OPTIONS: Omit<TuiAlertOptions, 'icon' | 'status'> = {\n autoClose: 3000,\n label: '',\n closeable: true,\n data: undefined,\n};\n\nexport const TUI_ALERT_OPTIONS = tuiCreateTokenFromFactory<TuiAlertOptions>(() => ({\n ...TUI_ALERT_DEFAULT_OPTIONS,\n ...inject(TUI_NOTIFICATION_OPTIONS),\n}));\n\nexport const TUI_ALERT_POSITION = tuiCreateTokenFromFactory<string>(() =>\n inject(TUI_IS_MOBILE) ? '1rem 1rem 0 auto' : '2rem 3rem 0 auto',\n);\n\nexport const TUI_ALERTS = tuiCreateToken(\n new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n);\n\n/**\n * Grouping alerts by their component\n */\nexport const TUI_ALERTS_GROUPED = tuiCreateTokenFromFactory(() =>\n combineLatest([\n of(new Map<Type<any>, ReadonlyArray<TuiPopover<any, any>>>()),\n inject(TUI_ALERTS),\n ]).pipe(\n map(([map, alerts]) => {\n map.forEach((_, key) => map.set(key, []));\n\n alerts.forEach((alert) => {\n const key = alert.component.component;\n const value = map.get(key) || [];\n\n map.set(key, [...value, alert]);\n });\n\n return Array.from(map.values());\n }),\n ),\n);\n","import {NgIf} from '@angular/common';\nimport type {OnInit} from '@angular/core';\nimport {ChangeDetectionStrategy, Component, DestroyRef, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiFadeIn, tuiHeightCollapse, tuiSlideIn} from '@taiga-ui/core/animations';\nimport {TuiNotification} from '@taiga-ui/core/components/notification';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiToAnimationOptions} from '@taiga-ui/core/utils';\nimport {\n POLYMORPHEUS_CONTEXT,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n} from '@taiga-ui/polymorpheus';\nimport {fromEvent, repeat, takeUntil, timer} from 'rxjs';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_POSITION} from './alert.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-alert',\n imports: [TuiNotification, NgIf, PolymorpheusOutlet, PolymorpheusTemplate],\n templateUrl: './alert.template.html',\n styleUrls: ['./alert.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse],\n host: {\n role: 'alert',\n '[style.margin]': 'position',\n '[@tuiFadeIn]': 'options',\n '[@tuiSlideIn]': 'animation',\n '[@tuiHeightCollapse]': 'animation',\n },\n})\nexport class TuiAlert<O, I> implements OnInit {\n private readonly el = tuiInjectElement();\n private readonly destroyRef = inject(DestroyRef);\n protected readonly position = inject(TUI_ALERT_POSITION);\n protected readonly item =\n inject<TuiPopover<TuiAlertOptions<I>, O>>(POLYMORPHEUS_CONTEXT);\n\n protected readonly autoClose =\n typeof this.item.autoClose === 'function'\n ? this.item.autoClose(this.item.status)\n : this.item.autoClose;\n\n protected readonly options = tuiToAnimationOptions(inject(TUI_ANIMATIONS_SPEED));\n\n protected readonly animation = this.position.endsWith('auto')\n ? {...this.options, value: 'right'}\n : {...this.options, value: 'left'};\n\n public ngOnInit(): void {\n this.initAutoClose();\n }\n\n protected close(): void {\n this.item.$implicit.complete();\n }\n\n private initAutoClose(): void {\n if (!this.autoClose) {\n return;\n }\n\n timer(this.autoClose)\n .pipe(\n takeUntil(fromEvent(this.el, 'mouseenter')),\n repeat({delay: () => fromEvent(this.el, 'mouseleave')}),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => this.close());\n }\n}\n","<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiAlert} from './alert.component';\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_OPTIONS, TUI_ALERTS} from './alert.tokens';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiAlertService(TUI_ALERTS, TuiAlert, inject(TUI_ALERT_OPTIONS)),\n})\nexport class TuiAlertService extends TuiPopoverService<TuiAlertOptions<any>> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TuiAlertService} from './alert.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiAlert]',\n inputs: ['options: tuiAlertOptions', 'open: tuiAlert'],\n outputs: ['openChange: tuiAlertChange'],\n providers: [tuiAsPopover(TuiAlertService)],\n})\nexport class TuiAlertDirective<T> extends TuiPopoverDirective<TuiAlertOptions<T>> {}\n","import {CommonModule} from '@angular/common';\nimport type {Type} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n INJECTOR,\n Injector,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TuiMapperPipe} from '@taiga-ui/cdk/pipes/mapper';\nimport type {TuiMapper} from '@taiga-ui/cdk/types';\nimport {tuiParentAnimation} from '@taiga-ui/core/animations';\nimport {POLYMORPHEUS_CONTEXT} from '@taiga-ui/polymorpheus';\nimport {identity} from 'rxjs';\n\nimport {TUI_ALERTS_GROUPED} from './alert.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-alerts',\n imports: [CommonModule, TuiMapperPipe],\n templateUrl: './alerts.template.html',\n styleUrls: ['./alerts.style.less'],\n encapsulation: ViewEncapsulation.None,\n // So that we do not force OnPush on custom alerts\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [tuiParentAnimation],\n})\nexport class TuiAlerts {\n private readonly injector = inject(INJECTOR);\n\n protected readonly alerts$ = inject(TUI_ALERTS_GROUPED);\n protected readonly trackBy = identity;\n protected readonly mapper: TuiMapper<[Type<any>], Injector> = (useValue) =>\n Injector.create({\n providers: [\n {\n provide: POLYMORPHEUS_CONTEXT,\n useValue,\n },\n ],\n parent: this.injector,\n });\n}\n","<div\n *ngFor=\"let group of alerts$ | async; trackBy: trackBy\"\n class=\"t-wrapper\"\n @tuiParentAnimation\n>\n <ng-container\n *ngFor=\"let item of group\"\n [ngComponentOutlet]=\"item.component.component\"\n [ngComponentOutletInjector]=\"item | tuiMapper: mapper\"\n />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-alert.mjs","sources":["../../../projects/core/components/alert/alert.tokens.ts","../../../projects/core/components/alert/alert.component.ts","../../../projects/core/components/alert/alert.template.html","../../../projects/core/components/alert/alert.service.ts","../../../projects/core/components/alert/alert.directive.ts","../../../projects/core/components/alert/alerts.component.ts","../../../projects/core/components/alert/alerts.template.html","../../../projects/core/components/alert/taiga-ui-core-components-alert.ts"],"sourcesContent":["import type {Type} from '@angular/core';\nimport {inject} from '@angular/core';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {\n tuiCreateToken,\n tuiCreateTokenFromFactory,\n} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/components/notification';\nimport {BehaviorSubject, combineLatest, map, of} from 'rxjs';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\n\nexport const TUI_ALERT_DEFAULT_OPTIONS: Omit<TuiAlertOptions, 'icon' | 'status'> = {\n autoClose: 3000,\n label: '',\n closeable: true,\n data: undefined,\n};\n\nexport const TUI_ALERT_OPTIONS = tuiCreateTokenFromFactory<TuiAlertOptions>(() => ({\n ...TUI_ALERT_DEFAULT_OPTIONS,\n ...inject(TUI_NOTIFICATION_OPTIONS),\n}));\n\nexport const TUI_ALERT_POSITION = tuiCreateTokenFromFactory<string>(() =>\n inject(TUI_IS_MOBILE) ? '1rem 1rem 0 auto' : '2rem 3rem 0 auto',\n);\n\nexport const TUI_ALERTS = tuiCreateToken(\n new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n);\n\n/**\n * Grouping alerts by their component\n */\nexport const TUI_ALERTS_GROUPED = tuiCreateTokenFromFactory(() =>\n combineLatest([\n of(new Map<Type<any>, ReadonlyArray<TuiPopover<any, any>>>()),\n inject(TUI_ALERTS),\n ]).pipe(\n map(([map, alerts]) => {\n map.forEach((_, key) => map.set(key, []));\n\n alerts.forEach((alert) => {\n const key = alert.component.component;\n const value = map.get(key) || [];\n\n map.set(key, [...value, alert]);\n });\n\n return Array.from(map.values());\n }),\n ),\n);\n","import {NgIf} from '@angular/common';\nimport type {OnInit} from '@angular/core';\nimport {ChangeDetectionStrategy, Component, DestroyRef, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiFadeIn, tuiHeightCollapse, tuiSlideIn} from '@taiga-ui/core/animations';\nimport {TuiNotification} from '@taiga-ui/core/components/notification';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiToAnimationOptions} from '@taiga-ui/core/utils';\nimport {\n POLYMORPHEUS_CONTEXT,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n} from '@taiga-ui/polymorpheus';\nimport {fromEvent, repeat, takeUntil, timer} from 'rxjs';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_POSITION} from './alert.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-alert',\n imports: [TuiNotification, NgIf, PolymorpheusOutlet, PolymorpheusTemplate],\n templateUrl: './alert.template.html',\n styleUrls: ['./alert.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse],\n host: {\n role: 'alert',\n '[style.margin]': 'position',\n '[@tuiFadeIn]': 'options',\n '[@tuiSlideIn]': 'animation',\n '[@tuiHeightCollapse]': 'animation',\n },\n})\nexport class TuiAlertComponent<O, I> implements OnInit {\n private readonly el = tuiInjectElement();\n private readonly destroyRef = inject(DestroyRef);\n protected readonly position = inject(TUI_ALERT_POSITION);\n protected readonly item =\n inject<TuiPopover<TuiAlertOptions<I>, O>>(POLYMORPHEUS_CONTEXT);\n\n protected readonly autoClose =\n typeof this.item.autoClose === 'function'\n ? this.item.autoClose(this.item.status)\n : this.item.autoClose;\n\n protected readonly options = tuiToAnimationOptions(inject(TUI_ANIMATIONS_SPEED));\n\n protected readonly animation = this.position.endsWith('auto')\n ? {...this.options, value: 'right'}\n : {...this.options, value: 'left'};\n\n public ngOnInit(): void {\n this.initAutoClose();\n }\n\n protected close(): void {\n this.item.$implicit.complete();\n }\n\n private initAutoClose(): void {\n if (!this.autoClose) {\n return;\n }\n\n timer(this.autoClose)\n .pipe(\n takeUntil(fromEvent(this.el, 'mouseenter')),\n repeat({delay: () => fromEvent(this.el, 'mouseleave')}),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => this.close());\n }\n}\n","<tui-notification\n [hideClose]=\"!item.closeable\"\n [icon]=\"item.icon\"\n [status]=\"item.status\"\n (close)=\"close()\"\n>\n <label\n *ngIf=\"item.label\"\n automation-id=\"tui-notification-alert__heading\"\n class=\"t-heading\"\n >\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n </label>\n <div\n automation-id=\"tui-notification-alert__content\"\n class=\"t-content\"\n >\n <div\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></div>\n </div>\n</tui-notification>\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiAlertComponent} from './alert.component';\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_OPTIONS, TUI_ALERTS} from './alert.tokens';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)),\n})\nexport class TuiAlertService extends TuiPopoverService<TuiAlertOptions<any>> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport type {TuiAlertOptions} from './alert.interfaces';\nimport {TuiAlertService} from './alert.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiAlert]',\n inputs: ['options: tuiAlertOptions', 'open: tuiAlert'],\n outputs: ['openChange: tuiAlertChange'],\n providers: [tuiAsPopover(TuiAlertService)],\n})\nexport class TuiAlert<T> extends TuiPopoverDirective<TuiAlertOptions<T>> {}\n","import {CommonModule} from '@angular/common';\nimport type {Type} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n INJECTOR,\n Injector,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TuiMapperPipe} from '@taiga-ui/cdk/pipes/mapper';\nimport type {TuiMapper} from '@taiga-ui/cdk/types';\nimport {tuiParentAnimation} from '@taiga-ui/core/animations';\nimport {POLYMORPHEUS_CONTEXT} from '@taiga-ui/polymorpheus';\nimport {identity} from 'rxjs';\n\nimport {TUI_ALERTS_GROUPED} from './alert.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-alerts',\n imports: [CommonModule, TuiMapperPipe],\n templateUrl: './alerts.template.html',\n styleUrls: ['./alerts.style.less'],\n encapsulation: ViewEncapsulation.None,\n // So that we do not force OnPush on custom alerts\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [tuiParentAnimation],\n})\nexport class TuiAlerts {\n private readonly injector = inject(INJECTOR);\n\n protected readonly alerts$ = inject(TUI_ALERTS_GROUPED);\n protected readonly trackBy = identity;\n protected readonly mapper: TuiMapper<[Type<any>], Injector> = (useValue) =>\n Injector.create({\n providers: [\n {\n provide: POLYMORPHEUS_CONTEXT,\n useValue,\n },\n ],\n parent: this.injector,\n });\n}\n","<div\n *ngFor=\"let group of alerts$ | async; trackBy: trackBy\"\n class=\"t-wrapper\"\n @tuiParentAnimation\n>\n <ng-container\n *ngFor=\"let item of group\"\n [ngComponentOutlet]=\"item.component.component\"\n [ngComponentOutletInjector]=\"item | tuiMapper: mapper\"\n />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -155,7 +155,7 @@ class TuiDataListComponent {
155
155
  return Array.from(this.el.querySelectorAll('a[tuiOption],button[tuiOption],input'));
156
156
  }
157
157
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
158
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListComponent, isStandalone: true, selector: "tui-data-list", inputs: { emptyContent: "emptyContent", size: "size" }, host: { attributes: { "role": "listbox" }, listeners: { "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)", "keydown.tab": "handleFocusLossIfNecessary()", "keydown.shift.tab": "handleFocusLossIfNecessary()", "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()" }, properties: { "attr.data-size": "this.size" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }], ngImport: i0, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:after{font-size:1rem;margin:0 -.25rem 0 1rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
158
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListComponent, isStandalone: true, selector: "tui-data-list", inputs: { emptyContent: "emptyContent", size: "size" }, host: { attributes: { "role": "listbox" }, listeners: { "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)", "keydown.tab": "handleFocusLossIfNecessary()", "keydown.shift.tab": "handleFocusLossIfNecessary()", "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()" }, properties: { "attr.data-size": "this.size" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }], ngImport: i0, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=s]>.t-empty:before,tui-data-list[data-size=s] [tuiOption]:before{font-size:1rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:before{margin-inline-end:.5rem}[tuiOption]:after{font-size:1rem;margin:0 -.75rem 0 auto;border-left:.5rem solid;border-right:.5rem solid}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
159
159
  }
160
160
  __decorate([
161
161
  tuiPure
@@ -164,7 +164,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
164
164
  type: Component,
165
165
  args: [{ standalone: true, selector: 'tui-data-list', imports: [NgIf, AsyncPipe, PolymorpheusOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListComponent)], host: {
166
166
  role: 'listbox',
167
- }, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:after{font-size:1rem;margin:0 -.25rem 0 1rem}\n"] }]
167
+ }, template: "<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: ["tui-data-list{--tui-data-list-padding: .25rem;--tui-data-list-margin: .0625rem;display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:calc(var(--tui-data-list-padding) - var(--tui-data-list-margin)) var(--tui-data-list-padding);color:var(--tui-text-tertiary)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list[data-size=s]{--tui-data-list-margin: 0rem}tui-data-list[data-size=s]>.t-empty,tui-data-list[data-size=s] [tuiOption]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .5rem}tui-data-list[data-size=s]>.t-empty:before,tui-data-list[data-size=s] [tuiOption]:before{font-size:1rem}tui-data-list[data-size=m]>.t-empty,tui-data-list[data-size=m] [tuiOption]{font:var(--tui-font-text-s);min-height:2.5rem;padding:.375rem .5rem}tui-data-list[data-size=l]{--tui-data-list-padding: .375rem;--tui-data-list-margin: .125rem}tui-data-list[data-size=l]>.t-empty,tui-data-list[data-size=l] [tuiOption]{font:var(--tui-font-text-m);min-height:2.75rem;padding:.375rem .625rem}tui-data-list>.t-empty{display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-xs);color:var(--tui-text-secondary);flex-direction:column;line-height:1rem}tui-data-list[data-size=l] tui-opt-group{font:var(--tui-font-text-s);line-height:1.25rem}tui-data-list[data-size=l] tui-opt-group:before{padding-left:.625rem;padding-right:.625rem}tui-data-list[data-size=l] tui-opt-group:after{left:.625rem;right:.625rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:var(--tui-data-list-padding) .5rem var(--tui-data-list-padding);margin:var(--tui-data-list-margin) 0;white-space:normal;word-break:break-word}tui-opt-group:after{position:absolute;left:.5rem;right:.5rem;top:var(--tui-data-list-padding);height:1px;background:var(--tui-border-normal)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:calc(.75rem + var(--tui-data-list-padding))}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before,tui-opt-group:not(:empty)~tui-opt-group:not([data-label]):before{padding:var(--tui-data-list-padding) 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\"}tui-opt-group[data-label=\"\"]:before,tui-opt-group:not([data-label]):before{padding:0;margin:0}[tuiOption]{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;align-items:center;box-sizing:border-box;margin:var(--tui-data-list-margin) 0;justify-content:space-between;text-align:left;color:var(--tui-text-primary);border-radius:var(--tui-radius-s);outline:none;cursor:pointer;background-clip:padding-box}[tuiOption]:disabled{opacity:var(--tui-disabled-opacity);cursor:default}[tuiOption]:focus-within,[tuiOption]._with-dropdown{background-color:var(--tui-background-neutral-1)}[tuiOption]:before{margin-inline-end:.5rem}[tuiOption]:after{font-size:1rem;margin:0 -.75rem 0 auto;border-left:.5rem solid;border-right:.5rem solid}\n"] }]
168
168
  }], propDecorators: { options: [{
169
169
  type: ContentChildren,
170
170
  args: [forwardRef(() => TuiOption), { descendants: true }]
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-data-list.mjs","sources":["../../../projects/core/components/data-list/data-list.tokens.ts","../../../projects/core/components/data-list/option.component.ts","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import type {Provider, TemplateRef, Type} from '@angular/core';\nimport {InjectionToken} from '@angular/core';\nimport type {TuiContext, TuiIdentityMatcher, TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiDataListAccessor<T = unknown> {\n getOptions(includeDisabled?: boolean): readonly T[];\n}\n\n// TODO: Consider refactoring checkOption, it is only needed in ComboBox\nexport interface TuiDataListHost<T> {\n checkOption?(option: T): void;\n handleOption(option: T): void;\n readonly identityMatcher?: TuiIdentityMatcher<T>;\n readonly stringify?: TuiStringHandler<T>;\n readonly size?: TuiSizeL | TuiSizeS;\n}\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContext<TemplateRef<Record<string, unknown>>>>\n>('[TUI_OPTION_CONTENT]');\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<TuiContext<TemplateRef<Record<string, unknown>>>>,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n '[TUI_DATA_LIST_ACCESSOR]',\n);\n\nexport function tuiAsDataListAccessor(accessor: Type<TuiDataListAccessor>): Provider {\n return tuiProvide(TUI_DATA_LIST_ACCESSOR, accessor);\n}\n\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n '[TUI_DATA_LIST_HOST]',\n);\n\nexport function tuiAsDataListHost(host: Type<TuiDataListHost<unknown>>): Provider {\n return tuiProvide(TUI_DATA_LIST_HOST, host);\n}\n","import type {OnDestroy, TemplateRef} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n inject,\n Input,\n} from '@angular/core';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport type {TuiDataListHost} from './data-list.tokens';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from './data-list.tokens';\n\n// TODO: Consider all use cases for aria roles\n@Component({\n standalone: true,\n selector: 'button[tuiOption], a[tuiOption], label[tuiOption]',\n imports: [PolymorpheusOutlet],\n template: `\n <ng-container *polymorpheusOutlet=\"content || t as text; context: {$implicit: t}\">\n {{ text }}\n </ng-container>\n <ng-template #t>\n <ng-content />\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiWithIcons],\n host: {\n type: 'button',\n role: 'option',\n '[attr.disabled]': 'disabled || null',\n '[class._with-dropdown]': 'active',\n '(click)': 'onClick()',\n '(mousemove.silent)': 'onMouseMove()',\n },\n})\nexport class TuiOption<T = unknown> implements OnDestroy {\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly el = tuiInjectElement();\n private readonly dataList = inject<TuiDataListComponent<T>>(\n forwardRef(() => TuiDataListComponent),\n {optional: true},\n );\n\n private readonly host = inject<TuiDataListHost<T>>(TUI_DATA_LIST_HOST, {\n optional: true,\n });\n\n protected readonly content: PolymorpheusContent<\n TuiContext<TemplateRef<Record<string, unknown>>>\n > = inject(TUI_OPTION_CONTENT, {optional: true});\n\n protected readonly dropdown = inject(TuiDropdownDirective, {\n self: true,\n optional: true,\n });\n\n @Input()\n public disabled = false;\n\n @Input()\n public value?: T;\n\n // Preventing focus loss upon focused option removal\n public ngOnDestroy(): void {\n this.dataList?.handleFocusLossIfNecessary(this.el);\n }\n\n protected get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n protected onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n protected onMouseMove(): void {\n if (!this.isMobile && !tuiIsNativeFocused(this.el)) {\n this.el.focus({preventScroll: true});\n }\n }\n}\n","import {AsyncPipe, NgIf} from '@angular/common';\nimport type {QueryList} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n forwardRef,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiQueryListChanges} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocusedIn, tuiMoveFocus} from '@taiga-ui/cdk/utils/focus';\nimport {tuiIsPresent, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {map} from 'rxjs';\n\nimport type {TuiDataListAccessor} from './data-list.tokens';\nimport {TUI_DATA_LIST_HOST, tuiAsDataListAccessor} from './data-list.tokens';\nimport {TuiOption} from './option.component';\n\nexport function tuiInjectDataListSize(): TuiSizeL | TuiSizeS {\n const sizes = ['s', 'm', 'l'] as const;\n const size = inject(TUI_DATA_LIST_HOST, {optional: true})?.size;\n\n return size && sizes.includes(size) ? size : 'l';\n}\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n standalone: true,\n selector: 'tui-data-list',\n imports: [NgIf, AsyncPipe, PolymorpheusOutlet],\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListComponent)],\n host: {\n role: 'listbox',\n },\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOption), {descendants: true})\n private readonly options: QueryList<TuiOption<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n private readonly el = tuiInjectElement();\n\n protected readonly defaultEmptyContent$ = inject(TUI_NOTHING_FOUND_MESSAGE);\n\n @Input()\n public emptyContent: PolymorpheusContent;\n\n @Input()\n @HostBinding('attr.data-size')\n public size = tuiInjectDataListSize();\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n public onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n @HostListener('wheel.silent.passive')\n @HostListener('mouseleave', ['$event.target'])\n @HostListener('keydown.tab')\n @HostListener('keydown.shift.tab')\n public handleFocusLossIfNecessary(element: Element = this.el): void {\n if (tuiIsNativeFocusedIn(element)) {\n this.origin?.focus({preventScroll: true});\n }\n }\n\n public getOptions(includeDisabled = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n @tuiPure\n protected get empty$(): Observable<boolean> {\n return tuiQueryListChanges(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n protected onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n protected noop(): void {}\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(\n this.el.querySelectorAll('a[tuiOption],button[tuiOption],input'),\n );\n }\n}\n","<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n","import type {Provider, Type} from '@angular/core';\nimport {Directive} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n\nexport function tuiAsDataList(list: Type<TuiDataListDirective>): Provider {\n return tuiProvide(TuiDataListDirective, list);\n}\n","import {Directive, Input} from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n '[attr.data-label]': 'label',\n },\n})\nexport class TuiOptGroup {\n @Input()\n public label?: string | null;\n}\n","import {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroup} from './opt-group.directive';\nimport {TuiOption} from './option.component';\n\nexport const TuiDataList = [\n TuiDataListComponent,\n TuiDataListDirective,\n TuiOption,\n TuiOptGroup,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-data-list.mjs","sources":["../../../projects/core/components/data-list/data-list.tokens.ts","../../../projects/core/components/data-list/option.component.ts","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import type {Provider, TemplateRef, Type} from '@angular/core';\nimport {InjectionToken} from '@angular/core';\nimport type {TuiContext, TuiIdentityMatcher, TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiDataListAccessor<T = unknown> {\n getOptions(includeDisabled?: boolean): readonly T[];\n}\n\n// TODO: Consider refactoring checkOption, it is only needed in ComboBox\nexport interface TuiDataListHost<T> {\n checkOption?(option: T): void;\n handleOption(option: T): void;\n readonly identityMatcher?: TuiIdentityMatcher<T>;\n readonly stringify?: TuiStringHandler<T>;\n readonly size?: TuiSizeL | TuiSizeS;\n}\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContext<TemplateRef<Record<string, unknown>>>>\n>('[TUI_OPTION_CONTENT]');\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<TuiContext<TemplateRef<Record<string, unknown>>>>,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n '[TUI_DATA_LIST_ACCESSOR]',\n);\n\nexport function tuiAsDataListAccessor(accessor: Type<TuiDataListAccessor>): Provider {\n return tuiProvide(TUI_DATA_LIST_ACCESSOR, accessor);\n}\n\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n '[TUI_DATA_LIST_HOST]',\n);\n\nexport function tuiAsDataListHost(host: Type<TuiDataListHost<unknown>>): Provider {\n return tuiProvide(TUI_DATA_LIST_HOST, host);\n}\n","import type {OnDestroy, TemplateRef} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n inject,\n Input,\n} from '@angular/core';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport type {TuiDataListHost} from './data-list.tokens';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from './data-list.tokens';\n\n// TODO: Consider all use cases for aria roles\n@Component({\n standalone: true,\n selector: 'button[tuiOption], a[tuiOption], label[tuiOption]',\n imports: [PolymorpheusOutlet],\n template: `\n <ng-container *polymorpheusOutlet=\"content || t as text; context: {$implicit: t}\">\n {{ text }}\n </ng-container>\n <ng-template #t>\n <ng-content />\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiWithIcons],\n host: {\n type: 'button',\n role: 'option',\n '[attr.disabled]': 'disabled || null',\n '[class._with-dropdown]': 'active',\n '(click)': 'onClick()',\n '(mousemove.silent)': 'onMouseMove()',\n },\n})\nexport class TuiOption<T = unknown> implements OnDestroy {\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly el = tuiInjectElement();\n private readonly dataList = inject<TuiDataListComponent<T>>(\n forwardRef(() => TuiDataListComponent),\n {optional: true},\n );\n\n private readonly host = inject<TuiDataListHost<T>>(TUI_DATA_LIST_HOST, {\n optional: true,\n });\n\n protected readonly content: PolymorpheusContent<\n TuiContext<TemplateRef<Record<string, unknown>>>\n > = inject(TUI_OPTION_CONTENT, {optional: true});\n\n protected readonly dropdown = inject(TuiDropdownDirective, {\n self: true,\n optional: true,\n });\n\n @Input()\n public disabled = false;\n\n @Input()\n public value?: T;\n\n // Preventing focus loss upon focused option removal\n public ngOnDestroy(): void {\n this.dataList?.handleFocusLossIfNecessary(this.el);\n }\n\n protected get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n protected onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n protected onMouseMove(): void {\n if (!this.isMobile && !tuiIsNativeFocused(this.el)) {\n this.el.focus({preventScroll: true});\n }\n }\n}\n","import {AsyncPipe, NgIf} from '@angular/common';\nimport type {QueryList} from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n forwardRef,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiQueryListChanges} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocusedIn, tuiMoveFocus} from '@taiga-ui/cdk/utils/focus';\nimport {tuiIsPresent, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {map} from 'rxjs';\n\nimport type {TuiDataListAccessor} from './data-list.tokens';\nimport {TUI_DATA_LIST_HOST, tuiAsDataListAccessor} from './data-list.tokens';\nimport {TuiOption} from './option.component';\n\nexport function tuiInjectDataListSize(): TuiSizeL | TuiSizeS {\n const sizes = ['s', 'm', 'l'] as const;\n const size = inject(TUI_DATA_LIST_HOST, {optional: true})?.size;\n\n return size && sizes.includes(size) ? size : 'l';\n}\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n standalone: true,\n selector: 'tui-data-list',\n imports: [NgIf, AsyncPipe, PolymorpheusOutlet],\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListComponent)],\n host: {\n role: 'listbox',\n },\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOption), {descendants: true})\n private readonly options: QueryList<TuiOption<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n private readonly el = tuiInjectElement();\n\n protected readonly defaultEmptyContent$ = inject(TUI_NOTHING_FOUND_MESSAGE);\n\n @Input()\n public emptyContent: PolymorpheusContent;\n\n @Input()\n @HostBinding('attr.data-size')\n public size = tuiInjectDataListSize();\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n public onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n @HostListener('wheel.silent.passive')\n @HostListener('mouseleave', ['$event.target'])\n @HostListener('keydown.tab')\n @HostListener('keydown.shift.tab')\n public handleFocusLossIfNecessary(element: Element = this.el): void {\n if (tuiIsNativeFocusedIn(element)) {\n this.origin?.focus({preventScroll: true});\n }\n }\n\n public getOptions(includeDisabled = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n @tuiPure\n protected get empty$(): Observable<boolean> {\n return tuiQueryListChanges(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n protected onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n protected noop(): void {}\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(\n this.el.querySelectorAll('a[tuiOption],button[tuiOption],input'),\n );\n }\n}\n","<ng-content />\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n","import type {Provider, Type} from '@angular/core';\nimport {Directive} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n\nexport function tuiAsDataList(list: Type<TuiDataListDirective>): Provider {\n return tuiProvide(TuiDataListDirective, list);\n}\n","import {Directive, Input} from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n '[attr.data-label]': 'label',\n },\n})\nexport class TuiOptGroup {\n @Input()\n public label?: string | null;\n}\n","import {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroup} from './opt-group.directive';\nimport {TuiOption} from './option.component';\n\nexport const TuiDataList = [\n TuiDataListComponent,\n TuiDataListDirective,\n TuiOption,\n TuiOptGroup,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -159,11 +159,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
159
159
  }]
160
160
  }] });
161
161
 
162
- class TuiDialogDirective extends TuiPopoverDirective {
163
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
164
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialogDirective, isStandalone: true, selector: "ng-template[tuiDialog]", inputs: { options: ["tuiDialogOptions", "options"], open: ["tuiDialog", "open"] }, outputs: { openChange: "tuiDialogChange" }, providers: [tuiAsPopover(TuiDialogService)], usesInheritance: true, ngImport: i0 }); }
162
+ class TuiDialog extends TuiPopoverDirective {
163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialog, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
164
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDialog, isStandalone: true, selector: "ng-template[tuiDialog]", inputs: { options: ["tuiDialogOptions", "options"], open: ["tuiDialog", "open"] }, outputs: { openChange: "tuiDialogChange" }, providers: [tuiAsPopover(TuiDialogService)], usesInheritance: true, ngImport: i0 }); }
165
165
  }
166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialogDirective, decorators: [{
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDialog, decorators: [{
167
167
  type: Directive,
168
168
  args: [{
169
169
  standalone: true,
@@ -174,8 +174,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
174
174
  }]
175
175
  }] });
176
176
 
177
- const TuiDialog = [TuiDialogComponent, TuiDialogDirective];
178
-
179
177
  class TuiDialogs {
180
178
  constructor() {
181
179
  this.el = tuiInjectElement();
@@ -202,5 +200,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
202
200
  * Generated bundle index. Do not edit.
203
201
  */
204
202
 
205
- export { TUI_DIALOGS, TUI_DIALOGS_CLOSE, TUI_DIALOG_DEFAULT_OPTIONS, TUI_DIALOG_OPTIONS, TuiDialog, TuiDialogCloseService, TuiDialogComponent, TuiDialogDirective, TuiDialogService, TuiDialogs, tuiDialogOptionsProvider };
203
+ export { TUI_DIALOGS, TUI_DIALOGS_CLOSE, TUI_DIALOG_DEFAULT_OPTIONS, TUI_DIALOG_OPTIONS, TuiDialog, TuiDialogCloseService, TuiDialogComponent, TuiDialogService, TuiDialogs, tuiDialogOptionsProvider };
206
204
  //# sourceMappingURL=taiga-ui-core-components-dialog.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-dialog.mjs","sources":["../../../projects/core/components/dialog/dialog.tokens.ts","../../../projects/core/components/dialog/dialog-close.service.ts","../../../projects/core/components/dialog/dialog.component.ts","../../../projects/core/components/dialog/dialog.template.html","../../../projects/core/components/dialog/dialog.service.ts","../../../projects/core/components/dialog/dialog.directive.ts","../../../projects/core/components/dialog/dialog.ts","../../../projects/core/components/dialog/dialogs.component.ts","../../../projects/core/components/dialog/dialogs.template.html","../../../projects/core/components/dialog/taiga-ui-core-components-dialog.ts"],"sourcesContent":["import type {Provider} from '@angular/core';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {Observable} from 'rxjs';\nimport {BehaviorSubject, EMPTY} from 'rxjs';\n\nimport type {TuiDialogOptions} from './dialog.interfaces';\n\nexport const TUI_DIALOGS = tuiCreateToken(\n new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n);\n\nexport const TUI_DIALOG_DEFAULT_OPTIONS: TuiDialogOptions<void> = {\n appearance: '',\n size: 'm',\n required: false,\n closeable: true,\n dismissible: true,\n label: '',\n header: '',\n data: undefined,\n};\n\n/**\n * A stream to close dialogs\n */\nexport const TUI_DIALOGS_CLOSE = tuiCreateToken<Observable<unknown>>(EMPTY);\n\n/**\n * Default parameters for dialog component\n */\nexport const TUI_DIALOG_OPTIONS = tuiCreateToken(TUI_DIALOG_DEFAULT_OPTIONS);\n\nexport function tuiDialogOptionsProvider(\n options: Partial<TuiDialogOptions<unknown>>,\n): Provider {\n return tuiProvideOptions(TUI_DIALOG_OPTIONS, options, TUI_DIALOG_DEFAULT_OPTIONS);\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {\n tuiContainsOrAfter,\n tuiGetActualTarget,\n tuiInjectElement,\n tuiIsElement,\n} from '@taiga-ui/cdk/utils/dom';\nimport {tuiGetViewportWidth} from '@taiga-ui/core/utils';\nimport {filter, map, merge, Observable, switchMap, take} from 'rxjs';\n\nconst SCROLLBAR_PLACEHOLDER = 17;\n\n@Injectable()\nexport class TuiDialogCloseService extends Observable<unknown> {\n private readonly win = inject(WINDOW);\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n\n private readonly esc$ = tuiTypedFromEvent(this.doc, 'keydown').pipe(\n filter((event) => {\n const target = tuiGetActualTarget(event);\n\n return (\n event.key === 'Escape' &&\n !event.defaultPrevented &&\n (this.el.contains(target) || this.isOutside(target))\n );\n }),\n );\n\n private readonly mousedown$ = tuiTypedFromEvent(this.doc, 'mousedown').pipe(\n filter(\n (event) =>\n tuiGetViewportWidth(this.win) - event.clientX > SCROLLBAR_PLACEHOLDER &&\n this.isOutside(tuiGetActualTarget(event)),\n ),\n switchMap(() =>\n tuiTypedFromEvent(this.doc, 'mouseup').pipe(\n take(1),\n map(tuiGetActualTarget),\n filter((target) => this.isOutside(target)),\n ),\n ),\n );\n\n constructor() {\n super((subscriber) => merge(this.esc$, this.mousedown$).subscribe(subscriber));\n }\n\n private isOutside(target: EventTarget): boolean {\n return (\n tuiIsElement(target) &&\n (!tuiContainsOrAfter(this.el, target) || target === this.el)\n );\n }\n}\n","import type {AnimationOptions} from '@angular/animations';\nimport {AsyncPipe, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, HostBinding, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {TuiAutoFocus} from '@taiga-ui/cdk/directives/auto-focus';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n TUI_ANIMATIONS_SPEED,\n TUI_CLOSE_WORD,\n TUI_COMMON_ICONS,\n} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {filter, isObservable, map, merge, of, Subject, switchMap} from 'rxjs';\n\nimport type {TuiDialogOptions, TuiDialogSize} from './dialog.interfaces';\nimport {TUI_DIALOGS_CLOSE} from './dialog.tokens';\nimport {TuiDialogCloseService} from './dialog-close.service';\n\nconst REQUIRED_ERROR = new Error('Required dialog was dismissed');\n\nfunction toObservable<T>(valueOrStream: Observable<T> | T): Observable<T> {\n return isObservable(valueOrStream) ? valueOrStream : of(valueOrStream);\n}\n\n@Component({\n standalone: true,\n selector: 'tui-dialog',\n imports: [NgIf, PolymorpheusOutlet, TuiAutoFocus, TuiButton, AsyncPipe],\n templateUrl: './dialog.template.html',\n styleUrls: ['./dialog.style.less'],\n // So we don't force OnPush on dialog content\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDialogCloseService],\n animations: [tuiSlideInTop, tuiFadeIn],\n host: {\n '[attr.data-appearance]': 'context.appearance',\n },\n})\nexport class TuiDialogComponent<O, I> {\n private readonly speed = inject(TUI_ANIMATIONS_SPEED);\n private readonly isMobile = inject(TUI_IS_MOBILE);\n\n private readonly animation = {\n value: '',\n params: {\n start: '40px',\n duration: tuiGetDuration(this.speed),\n },\n } as const;\n\n private readonly fullscreenAnimation = {\n value: '',\n params: {\n start: '100vh',\n duration: tuiGetDuration(this.speed),\n },\n } as const;\n\n protected readonly close$ = new Subject<void>();\n\n protected readonly context =\n inject<TuiPopover<TuiDialogOptions<I>, O>>(POLYMORPHEUS_CONTEXT);\n\n protected readonly closeWord$ = inject(TUI_CLOSE_WORD);\n protected readonly icons = inject(TUI_COMMON_ICONS);\n\n constructor() {\n merge(\n this.close$.pipe(switchMap(() => toObservable(this.context.closeable))),\n inject(TuiDialogCloseService).pipe(\n switchMap(() => toObservable(this.context.dismissible)),\n ),\n inject(TUI_DIALOGS_CLOSE).pipe(map(TUI_TRUE_HANDLER)),\n )\n .pipe(filter(Boolean), takeUntilDestroyed())\n .subscribe(() => {\n this.close();\n });\n }\n\n @HostBinding('attr.data-size')\n protected get size(): TuiDialogSize {\n return this.context.size;\n }\n\n @HostBinding('class._centered')\n protected get header(): PolymorpheusContent<TuiPopover<TuiDialogOptions<I>, O>> {\n return this.context.header;\n }\n\n @HostBinding('@tuiSlideInTop')\n @HostBinding('@tuiFadeIn')\n protected get slideInTop(): AnimationOptions {\n return this.fullscreen || this.isMobile\n ? this.fullscreenAnimation\n : this.animation;\n }\n\n protected get fullscreen(): boolean {\n return !this.isMobile && (this.size === 'fullscreen' || this.size === 'page');\n }\n\n private close(): void {\n if (this.context.required) {\n this.context.$implicit.error(REQUIRED_ERROR);\n } else {\n this.context.$implicit.complete();\n }\n }\n}\n","<header\n *ngIf=\"header\"\n class=\"t-header\"\n>\n <ng-container *polymorpheusOutlet=\"header as text; context: context\">\n {{ text }}\n </ng-container>\n</header>\n<div class=\"t-content\">\n <h2\n class=\"t-heading\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <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<div\n *ngIf=\"context.closeable\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-dialog__close\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"fullscreen ? 'secondary' : ''\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.silent)=\"(0)\"\n >\n {{ closeWord$ | async }}\n </button>\n</div>\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiDialogComponent} from './dialog.component';\nimport type {TuiDialogOptions} from './dialog.interfaces';\nimport {TUI_DIALOG_OPTIONS, TUI_DIALOGS} from './dialog.tokens';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiDialogService(TUI_DIALOGS, TuiDialogComponent, inject(TUI_DIALOG_OPTIONS)),\n})\nexport class TuiDialogService extends TuiPopoverService<TuiDialogOptions<any>> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport type {TuiDialogOptions} from './dialog.interfaces';\nimport {TuiDialogService} from './dialog.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiDialog]',\n inputs: ['options: tuiDialogOptions', 'open: tuiDialog'],\n outputs: ['openChange: tuiDialogChange'],\n providers: [tuiAsPopover(TuiDialogService)],\n})\nexport class TuiDialogDirective<T> extends TuiPopoverDirective<TuiDialogOptions<T>> {}\n","import {TuiDialogComponent} from './dialog.component';\nimport {TuiDialogDirective} from './dialog.directive';\n\nexport const TuiDialog = [TuiDialogComponent, TuiDialogDirective] as const;\n","import {CommonModule} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiFocusTrap} from '@taiga-ui/cdk/directives/focus-trap';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiHost} from '@taiga-ui/core/animations';\nimport {TuiScrollControls, TuiScrollRef} from '@taiga-ui/core/components/scrollbar';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\n\nimport {TUI_DIALOGS} from './dialog.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-dialogs',\n imports: [\n CommonModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiFocusTrap,\n TuiScrollControls,\n TuiScrollRef,\n ],\n templateUrl: './dialogs.template.html',\n styleUrls: ['./dialogs.style.less'],\n // So that we do not force OnPush on custom dialogs\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [tuiHost],\n host: {\n '(keydown.silent)': 'el.scrollTop = el.scrollHeight / 2',\n },\n})\nexport class TuiDialogs {\n protected readonly el = tuiInjectElement();\n protected readonly dialogs$: Observable<ReadonlyArray<TuiPopover<any, any>>> =\n inject(TUI_DIALOGS);\n}\n","<ng-container *ngIf=\"dialogs$ | async as dialogs\">\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 [class.t-dialog_closing]=\"!dialogs.length\"\n >\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n </section>\n <div\n class=\"t-overlay\"\n [style.opacity]=\"dialogs.length\"\n ></div>\n</ng-container>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-dialog.mjs","sources":["../../../projects/core/components/dialog/dialog.tokens.ts","../../../projects/core/components/dialog/dialog-close.service.ts","../../../projects/core/components/dialog/dialog.component.ts","../../../projects/core/components/dialog/dialog.template.html","../../../projects/core/components/dialog/dialog.service.ts","../../../projects/core/components/dialog/dialog.directive.ts","../../../projects/core/components/dialog/dialogs.component.ts","../../../projects/core/components/dialog/dialogs.template.html","../../../projects/core/components/dialog/taiga-ui-core-components-dialog.ts"],"sourcesContent":["import type {Provider} from '@angular/core';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {Observable} from 'rxjs';\nimport {BehaviorSubject, EMPTY} from 'rxjs';\n\nimport type {TuiDialogOptions} from './dialog.interfaces';\n\nexport const TUI_DIALOGS = tuiCreateToken(\n new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n);\n\nexport const TUI_DIALOG_DEFAULT_OPTIONS: TuiDialogOptions<void> = {\n appearance: '',\n size: 'm',\n required: false,\n closeable: true,\n dismissible: true,\n label: '',\n header: '',\n data: undefined,\n};\n\n/**\n * A stream to close dialogs\n */\nexport const TUI_DIALOGS_CLOSE = tuiCreateToken<Observable<unknown>>(EMPTY);\n\n/**\n * Default parameters for dialog component\n */\nexport const TUI_DIALOG_OPTIONS = tuiCreateToken(TUI_DIALOG_DEFAULT_OPTIONS);\n\nexport function tuiDialogOptionsProvider(\n options: Partial<TuiDialogOptions<unknown>>,\n): Provider {\n return tuiProvideOptions(TUI_DIALOG_OPTIONS, options, TUI_DIALOG_DEFAULT_OPTIONS);\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {\n tuiContainsOrAfter,\n tuiGetActualTarget,\n tuiInjectElement,\n tuiIsElement,\n} from '@taiga-ui/cdk/utils/dom';\nimport {tuiGetViewportWidth} from '@taiga-ui/core/utils';\nimport {filter, map, merge, Observable, switchMap, take} from 'rxjs';\n\nconst SCROLLBAR_PLACEHOLDER = 17;\n\n@Injectable()\nexport class TuiDialogCloseService extends Observable<unknown> {\n private readonly win = inject(WINDOW);\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n\n private readonly esc$ = tuiTypedFromEvent(this.doc, 'keydown').pipe(\n filter((event) => {\n const target = tuiGetActualTarget(event);\n\n return (\n event.key === 'Escape' &&\n !event.defaultPrevented &&\n (this.el.contains(target) || this.isOutside(target))\n );\n }),\n );\n\n private readonly mousedown$ = tuiTypedFromEvent(this.doc, 'mousedown').pipe(\n filter(\n (event) =>\n tuiGetViewportWidth(this.win) - event.clientX > SCROLLBAR_PLACEHOLDER &&\n this.isOutside(tuiGetActualTarget(event)),\n ),\n switchMap(() =>\n tuiTypedFromEvent(this.doc, 'mouseup').pipe(\n take(1),\n map(tuiGetActualTarget),\n filter((target) => this.isOutside(target)),\n ),\n ),\n );\n\n constructor() {\n super((subscriber) => merge(this.esc$, this.mousedown$).subscribe(subscriber));\n }\n\n private isOutside(target: EventTarget): boolean {\n return (\n tuiIsElement(target) &&\n (!tuiContainsOrAfter(this.el, target) || target === this.el)\n );\n }\n}\n","import type {AnimationOptions} from '@angular/animations';\nimport {AsyncPipe, NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, HostBinding, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {TuiAutoFocus} from '@taiga-ui/cdk/directives/auto-focus';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiFadeIn, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n TUI_ANIMATIONS_SPEED,\n TUI_CLOSE_WORD,\n TUI_COMMON_ICONS,\n} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {filter, isObservable, map, merge, of, Subject, switchMap} from 'rxjs';\n\nimport type {TuiDialogOptions, TuiDialogSize} from './dialog.interfaces';\nimport {TUI_DIALOGS_CLOSE} from './dialog.tokens';\nimport {TuiDialogCloseService} from './dialog-close.service';\n\nconst REQUIRED_ERROR = new Error('Required dialog was dismissed');\n\nfunction toObservable<T>(valueOrStream: Observable<T> | T): Observable<T> {\n return isObservable(valueOrStream) ? valueOrStream : of(valueOrStream);\n}\n\n@Component({\n standalone: true,\n selector: 'tui-dialog',\n imports: [NgIf, PolymorpheusOutlet, TuiAutoFocus, TuiButton, AsyncPipe],\n templateUrl: './dialog.template.html',\n styleUrls: ['./dialog.style.less'],\n // So we don't force OnPush on dialog content\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDialogCloseService],\n animations: [tuiSlideInTop, tuiFadeIn],\n host: {\n '[attr.data-appearance]': 'context.appearance',\n },\n})\nexport class TuiDialogComponent<O, I> {\n private readonly speed = inject(TUI_ANIMATIONS_SPEED);\n private readonly isMobile = inject(TUI_IS_MOBILE);\n\n private readonly animation = {\n value: '',\n params: {\n start: '40px',\n duration: tuiGetDuration(this.speed),\n },\n } as const;\n\n private readonly fullscreenAnimation = {\n value: '',\n params: {\n start: '100vh',\n duration: tuiGetDuration(this.speed),\n },\n } as const;\n\n protected readonly close$ = new Subject<void>();\n\n protected readonly context =\n inject<TuiPopover<TuiDialogOptions<I>, O>>(POLYMORPHEUS_CONTEXT);\n\n protected readonly closeWord$ = inject(TUI_CLOSE_WORD);\n protected readonly icons = inject(TUI_COMMON_ICONS);\n\n constructor() {\n merge(\n this.close$.pipe(switchMap(() => toObservable(this.context.closeable))),\n inject(TuiDialogCloseService).pipe(\n switchMap(() => toObservable(this.context.dismissible)),\n ),\n inject(TUI_DIALOGS_CLOSE).pipe(map(TUI_TRUE_HANDLER)),\n )\n .pipe(filter(Boolean), takeUntilDestroyed())\n .subscribe(() => {\n this.close();\n });\n }\n\n @HostBinding('attr.data-size')\n protected get size(): TuiDialogSize {\n return this.context.size;\n }\n\n @HostBinding('class._centered')\n protected get header(): PolymorpheusContent<TuiPopover<TuiDialogOptions<I>, O>> {\n return this.context.header;\n }\n\n @HostBinding('@tuiSlideInTop')\n @HostBinding('@tuiFadeIn')\n protected get slideInTop(): AnimationOptions {\n return this.fullscreen || this.isMobile\n ? this.fullscreenAnimation\n : this.animation;\n }\n\n protected get fullscreen(): boolean {\n return !this.isMobile && (this.size === 'fullscreen' || this.size === 'page');\n }\n\n private close(): void {\n if (this.context.required) {\n this.context.$implicit.error(REQUIRED_ERROR);\n } else {\n this.context.$implicit.complete();\n }\n }\n}\n","<header\n *ngIf=\"header\"\n class=\"t-header\"\n>\n <ng-container *polymorpheusOutlet=\"header as text; context: context\">\n {{ text }}\n </ng-container>\n</header>\n<div class=\"t-content\">\n <h2\n class=\"t-heading\"\n [id]=\"context.id\"\n [textContent]=\"context.label\"\n ></h2>\n <section>\n <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<div\n *ngIf=\"context.closeable\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-dialog__close\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [appearance]=\"fullscreen ? 'secondary' : ''\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"close$.next()\"\n (mousedown.prevent.silent)=\"(0)\"\n >\n {{ closeWord$ | async }}\n </button>\n</div>\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiDialogComponent} from './dialog.component';\nimport type {TuiDialogOptions} from './dialog.interfaces';\nimport {TUI_DIALOG_OPTIONS, TUI_DIALOGS} from './dialog.tokens';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiDialogService(TUI_DIALOGS, TuiDialogComponent, inject(TUI_DIALOG_OPTIONS)),\n})\nexport class TuiDialogService extends TuiPopoverService<TuiDialogOptions<any>> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport type {TuiDialogOptions} from './dialog.interfaces';\nimport {TuiDialogService} from './dialog.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiDialog]',\n inputs: ['options: tuiDialogOptions', 'open: tuiDialog'],\n outputs: ['openChange: tuiDialogChange'],\n providers: [tuiAsPopover(TuiDialogService)],\n})\nexport class TuiDialog<T> extends TuiPopoverDirective<TuiDialogOptions<T>> {}\n","import {CommonModule} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiFocusTrap} from '@taiga-ui/cdk/directives/focus-trap';\nimport type {TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiHost} from '@taiga-ui/core/animations';\nimport {TuiScrollControls, TuiScrollRef} from '@taiga-ui/core/components/scrollbar';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\n\nimport {TUI_DIALOGS} from './dialog.tokens';\n\n@Component({\n standalone: true,\n selector: 'tui-dialogs',\n imports: [\n CommonModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiFocusTrap,\n TuiScrollControls,\n TuiScrollRef,\n ],\n templateUrl: './dialogs.template.html',\n styleUrls: ['./dialogs.style.less'],\n // So that we do not force OnPush on custom dialogs\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [tuiHost],\n host: {\n '(keydown.silent)': 'el.scrollTop = el.scrollHeight / 2',\n },\n})\nexport class TuiDialogs {\n protected readonly el = tuiInjectElement();\n protected readonly dialogs$: Observable<ReadonlyArray<TuiPopover<any, any>>> =\n inject(TUI_DIALOGS);\n}\n","<ng-container *ngIf=\"dialogs$ | async as dialogs\">\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 [class.t-dialog_closing]=\"!dialogs.length\"\n >\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n </section>\n <div\n class=\"t-overlay\"\n [style.opacity]=\"dialogs.length\"\n ></div>\n</ng-container>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ class TuiRoot {
28
28
  inject(DOCUMENT).defaultView?.document.documentElement.setAttribute('data-tui-theme', inject(TUI_THEME).toLowerCase());
29
29
  }
30
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- 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.0.0-rc.4" }, listeners: { "touchstart.passive.silent": "0" }, properties: { "style.--tui-duration.ms": "duration", "class._reduced-motion": "reducedMotion", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n/>\n<tui-dropdowns>\n <div class=\"t-root-content\">\n <ng-content />\n </div>\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", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html[data-tui-theme],.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html[data-tui-theme]::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html[data-tui-theme]::-webkit-scrollbar-thumb,.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;-webkit-tap-highlight-color:transparent}tui-root:before{position:fixed;top:0;left:0;width:100%;height:100%;content:\"\";background:var(--tui-background-base)}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{height:100%;isolation:isolate;transform:translateY(var(--t-root-top))}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
31
+ 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.0.0-rc.5" }, listeners: { "touchstart.passive.silent": "0" }, properties: { "style.--tui-duration.ms": "duration", "class._reduced-motion": "reducedMotion", "class._mobile": "isMobileRes()" } }, hostDirectives: [{ directive: i1.TuiPlatform }], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n/>\n<tui-dropdowns>\n <div class=\"t-root-content\">\n <ng-content />\n </div>\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", styles: ["@keyframes tuiPresent{to{content:\"\"}}@keyframes tuiSkeletonVibe{to{opacity:.5}}html[data-tui-theme],.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html[data-tui-theme]::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html[data-tui-theme]::-webkit-scrollbar-thumb,.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;-webkit-tap-highlight-color:transparent}tui-root:before{position:fixed;top:0;left:0;width:100%;height:100%;content:\"\";background:var(--tui-background-base)}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;display:none;margin:0}[data-tui-theme] tui-root>.t-root-scrollbar{display:block}.t-root-content{height:100%;isolation:isolate;transform:translateY(var(--t-root-top))}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: TuiDropdowns, selector: "tui-dropdowns" }, { kind: "component", type: TuiDialogs, selector: "tui-dialogs" }, { kind: "component", type: TuiAlerts, selector: "tui-alerts" }, { kind: "component", type: TuiHints, selector: "tui-hints" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
32
32
  }
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiRoot, decorators: [{
34
34
  type: Component,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "4.0.0-rc.4",
3
+ "version": "4.0.0-rc.5",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",
@@ -303,7 +303,7 @@
303
303
  }
304
304
  },
305
305
  "dependencies": {
306
- "@taiga-ui/i18n": "^4.0.0-rc.4",
306
+ "@taiga-ui/i18n": "^4.0.0-rc.5",
307
307
  "tslib": "^2.6.3"
308
308
  },
309
309
  "peerDependencies": {
@@ -315,9 +315,9 @@
315
315
  "@angular/router": ">=16.0.0",
316
316
  "@ng-web-apis/common": "^4.1.2",
317
317
  "@ng-web-apis/mutation-observer": "^4.1.2",
318
- "@taiga-ui/cdk": "^4.0.0-rc.4",
318
+ "@taiga-ui/cdk": "^4.0.0-rc.5",
319
319
  "@taiga-ui/event-plugins": "^4.0.1",
320
- "@taiga-ui/i18n": "^4.0.0-rc.4",
320
+ "@taiga-ui/i18n": "^4.0.0-rc.5",
321
321
  "@taiga-ui/polymorpheus": "^4.6.4",
322
322
  "rxjs": ">=7.0.0"
323
323
  },
@@ -15,8 +15,8 @@
15
15
  --tui-background-elevation-2: #222;
16
16
  // Other
17
17
  --tui-service-autofill-background: rgb(85, 74, 42);
18
- --tui-border-normal: #424242;
19
- --tui-border-hover: #b0b0b0;
18
+ --tui-border-normal: rgba(255, 255, 255, 0.14);
19
+ --tui-border-hover: rgba(255, 255, 255, 0.6);
20
20
  --tui-border-focus: rgba(255, 255, 255, 0.64);
21
21
  // Statuses
22
22
  --tui-status-negative: rgba(255, 140, 103, 1);
@@ -1,3 +0,0 @@
1
- import { TuiDialogComponent } from './dialog.component';
2
- import { TuiDialogDirective } from './dialog.directive';
3
- export declare const TuiDialog: readonly [typeof TuiDialogComponent, typeof TuiDialogDirective];
@@ -1,4 +0,0 @@
1
- import { TuiDialogComponent } from './dialog.component';
2
- import { TuiDialogDirective } from './dialog.directive';
3
- export const TuiDialog = [TuiDialogComponent, TuiDialogDirective];
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLENBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHVpRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2RpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlEaWFsb2dEaXJlY3RpdmV9IGZyb20gJy4vZGlhbG9nLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBUdWlEaWFsb2cgPSBbVHVpRGlhbG9nQ29tcG9uZW50LCBUdWlEaWFsb2dEaXJlY3RpdmVdIGFzIGNvbnN0O1xuIl19