@taiga-ui/core 5.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/components/textfield/textfield-content.directive.d.ts +6 -1
  2. package/fesm2022/taiga-ui-core-classes.mjs +3 -3
  3. package/fesm2022/taiga-ui-core-components-button.mjs +7 -7
  4. package/fesm2022/taiga-ui-core-components-calendar.mjs +18 -18
  5. package/fesm2022/taiga-ui-core-components-carousel.mjs +6 -6
  6. package/fesm2022/taiga-ui-core-components-cell.mjs +7 -7
  7. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  8. package/fesm2022/taiga-ui-core-components-checkbox.mjs +4 -4
  9. package/fesm2022/taiga-ui-core-components-data-list.mjs +20 -20
  10. package/fesm2022/taiga-ui-core-components-error.mjs +9 -9
  11. package/fesm2022/taiga-ui-core-components-expand.mjs +3 -3
  12. package/fesm2022/taiga-ui-core-components-icon.mjs +7 -7
  13. package/fesm2022/taiga-ui-core-components-input.mjs +6 -6
  14. package/fesm2022/taiga-ui-core-components-label.mjs +7 -7
  15. package/fesm2022/taiga-ui-core-components-link.mjs +7 -7
  16. package/fesm2022/taiga-ui-core-components-loader.mjs +3 -3
  17. package/fesm2022/taiga-ui-core-components-notification.mjs +16 -16
  18. package/fesm2022/taiga-ui-core-components-radio.mjs +7 -7
  19. package/fesm2022/taiga-ui-core-components-root.mjs +3 -3
  20. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +21 -21
  21. package/fesm2022/taiga-ui-core-components-slider.mjs +16 -17
  22. package/fesm2022/taiga-ui-core-components-slider.mjs.map +1 -1
  23. package/fesm2022/taiga-ui-core-components-spin-button.mjs +3 -3
  24. package/fesm2022/taiga-ui-core-components-textfield.mjs +41 -34
  25. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  26. package/fesm2022/taiga-ui-core-components-title.mjs +7 -7
  27. package/fesm2022/taiga-ui-core-directives-appearance.mjs +10 -10
  28. package/fesm2022/taiga-ui-core-directives-button-x.mjs +3 -3
  29. package/fesm2022/taiga-ui-core-directives-date-format.mjs +3 -3
  30. package/fesm2022/taiga-ui-core-directives-group.mjs +7 -7
  31. package/fesm2022/taiga-ui-core-directives-icons.mjs +10 -10
  32. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +9 -9
  33. package/fesm2022/taiga-ui-core-directives-number-format.mjs +3 -3
  34. package/fesm2022/taiga-ui-core-pipes-filter-by-input.mjs +3 -3
  35. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +4 -4
  36. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  37. package/fesm2022/taiga-ui-core-portals-alert.mjs +10 -10
  38. package/fesm2022/taiga-ui-core-portals-dialog.mjs +13 -13
  39. package/fesm2022/taiga-ui-core-portals-dropdown.mjs +57 -57
  40. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -1
  41. package/fesm2022/taiga-ui-core-portals-hint.mjs +36 -36
  42. package/fesm2022/taiga-ui-core-portals-modal.mjs +8 -8
  43. package/fesm2022/taiga-ui-core-portals-popup.mjs +11 -10
  44. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -1
  45. package/fesm2022/taiga-ui-core-services.mjs +6 -6
  46. package/fesm2022/taiga-ui-core-tokens.mjs +14 -9
  47. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-core-utils-format.mjs +4 -2
  49. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  50. package/package.json +30 -30
@@ -35,10 +35,10 @@ class TuiHintDriver extends TuiDriverDirective {
35
35
  super(...arguments);
36
36
  this.type = 'hint';
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDriver, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
39
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.19", type: TuiHintDriver, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDriver, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
39
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.20", type: TuiHintDriver, isStandalone: true, usesInheritance: true, ngImport: i0 }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDriver, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDriver, decorators: [{
42
42
  type: Directive
43
43
  }] });
44
44
 
@@ -114,10 +114,10 @@ class TuiHintHover extends TuiDriver {
114
114
  close() {
115
115
  this.toggle$.next(false);
116
116
  }
117
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
118
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintHover, isStandalone: true, inputs: { showDelay: { classPropertyName: "showDelay", publicName: "tuiHintShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "tuiHintHideDelay", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintHover), TuiHoveredService], exportAs: ["tuiHintHover"], usesInheritance: true, ngImport: i0 }); }
117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintHover, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
118
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintHover, isStandalone: true, inputs: { showDelay: { classPropertyName: "showDelay", publicName: "tuiHintShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "tuiHintHideDelay", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintHover), TuiHoveredService], exportAs: ["tuiHintHover"], usesInheritance: true, ngImport: i0 }); }
119
119
  }
120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintHover, decorators: [{
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintHover, decorators: [{
121
121
  type: Directive,
122
122
  args: [{
123
123
  providers: [tuiAsDriver(TuiHintHover), TuiHoveredService],
@@ -198,10 +198,10 @@ class TuiHintPosition extends TuiPositionAccessor {
198
198
  top + height < viewport.bottom - GAP$1 &&
199
199
  left + width < viewport.right - GAP$1);
200
200
  }
201
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
202
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintPosition, isStandalone: true, inputs: { direction: { classPropertyName: "direction", publicName: "tuiHintDirection", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "tuiHintOffset", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiHintDirectionChange: "tuiHintDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintPosition, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
202
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintPosition, isStandalone: true, inputs: { direction: { classPropertyName: "direction", publicName: "tuiHintDirection", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "tuiHintOffset", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiHintDirectionChange: "tuiHintDirectionChange" }, usesInheritance: true, ngImport: i0 }); }
203
203
  }
204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintPosition, decorators: [{
204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintPosition, decorators: [{
205
205
  type: Directive
206
206
  }] });
207
207
  function adjust(direction, rtl) {
@@ -249,8 +249,8 @@ class TuiHintDirective {
249
249
  this.visible.emit(false);
250
250
  }
251
251
  }
252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
253
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintDirective, isStandalone: true, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: { content: { classPropertyName: "content", publicName: "tuiHint", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "tuiHintContext", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "tuiHintAppearance", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visible: "tuiHintVisible" }, providers: [
252
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
253
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintDirective, isStandalone: true, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: { content: { classPropertyName: "content", publicName: "tuiHint", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "tuiHintContext", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "tuiHintAppearance", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visible: "tuiHintVisible" }, providers: [
254
254
  tuiAsVehicle(TuiHintDirective),
255
255
  {
256
256
  provide: PolymorpheusComponent,
@@ -259,7 +259,7 @@ class TuiHintDirective {
259
259
  },
260
260
  ], usesOnChanges: true, hostDirectives: [{ directive: TuiHintDriver }, { directive: TuiHintHover, inputs: ["tuiHintHideDelay", "tuiHintHideDelay", "tuiHintShowDelay", "tuiHintShowDelay"] }, { directive: TuiHintPosition, inputs: ["tuiHintDirection", "tuiHintDirection", "tuiHintOffset", "tuiHintOffset"], outputs: ["tuiHintDirectionChange", "tuiHintDirectionChange"] }], ngImport: i0 }); }
261
261
  }
262
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDirective, decorators: [{
262
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDirective, decorators: [{
263
263
  type: Directive,
264
264
  args: [{
265
265
  selector: '[tuiHint]:not(ng-container):not(ng-template)',
@@ -297,10 +297,10 @@ class TuiHintPointer extends TuiHintHover {
297
297
  onMove({ clientX, clientY }) {
298
298
  this.currentRect = tuiPointToClientRect(clientX, clientY);
299
299
  }
300
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintPointer, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
301
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.19", type: TuiHintPointer, isStandalone: true, selector: "[tuiHint][tuiHintPointer]", host: { listeners: { "mousemove.zoneless": "onMove($event)" } }, providers: [tuiAsRectAccessor(TuiHintPointer), tuiAsDriver(TuiHintPointer)], usesInheritance: true, ngImport: i0 }); }
300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintPointer, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
301
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.20", type: TuiHintPointer, isStandalone: true, selector: "[tuiHint][tuiHintPointer]", host: { listeners: { "mousemove.zoneless": "onMove($event)" } }, providers: [tuiAsRectAccessor(TuiHintPointer), tuiAsDriver(TuiHintPointer)], usesInheritance: true, ngImport: i0 }); }
302
302
  }
303
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintPointer, decorators: [{
303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintPointer, decorators: [{
304
304
  type: Directive,
305
305
  args: [{
306
306
  selector: '[tuiHint][tuiHintPointer]',
@@ -313,10 +313,10 @@ class TuiHintUnstyledComponent {
313
313
  constructor() {
314
314
  this.hint = inject(TuiHintDirective);
315
315
  }
316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintUnstyledComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: TuiHintUnstyledComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '<ng-container *polymorpheusOutlet="hint.content()" />', isInline: true, dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintUnstyledComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
317
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TuiHintUnstyledComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '<ng-container *polymorpheusOutlet="hint.content()" />', isInline: true, dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
318
318
  }
319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintUnstyledComponent, decorators: [{
319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintUnstyledComponent, decorators: [{
320
320
  type: Component,
321
321
  args: [{
322
322
  imports: [PolymorpheusOutlet],
@@ -330,10 +330,10 @@ class TuiHintUnstyled {
330
330
  tuiSetSignal(hint.content, inject((TemplateRef)));
331
331
  hint.component = new PolymorpheusComponent(TuiHintUnstyledComponent, inject(INJECTOR));
332
332
  }
333
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintUnstyled, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
334
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.19", type: TuiHintUnstyled, isStandalone: true, selector: "ng-template[tuiHint]", ngImport: i0 }); }
333
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintUnstyled, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
334
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.20", type: TuiHintUnstyled, isStandalone: true, selector: "ng-template[tuiHint]", ngImport: i0 }); }
335
335
  }
336
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintUnstyled, decorators: [{
336
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintUnstyled, decorators: [{
337
337
  type: Directive,
338
338
  args: [{ selector: 'ng-template[tuiHint]' }]
339
339
  }], ctorParameters: () => [] });
@@ -399,8 +399,8 @@ class TuiHintComponent {
399
399
  ]);
400
400
  this.apply(tuiPx(Math.round(top)), tuiPx(Math.round(safeLeft)), Math.round((tuiClamp(beakTop, 0, clientHeight) / clientHeight) * 100), Math.round((tuiClamp(beakLeft, 0, clientWidth) / clientWidth) * 100));
401
401
  }
402
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
403
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: TuiHintComponent, isStandalone: true, selector: "tui-hint", host: { attributes: { "role": "tooltip" }, listeners: { "document:click": "onClick($event.target)" }, properties: { "class._untouchable": "pointer", "class._mobile": "isMobile", "attr.tuiTheme": "theme" } }, providers: [TUI_HINT_PROVIDERS, tuiButtonOptionsProvider({ size: 's' })], hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiAnimated }, { directive: i3.TuiActiveZone }], ngImport: i0, template: `
402
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
403
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TuiHintComponent, isStandalone: true, selector: "tui-hint", host: { attributes: { "role": "tooltip" }, listeners: { "document:click": "onClick($event.target)" }, properties: { "class._untouchable": "pointer", "class._mobile": "isMobile", "attr.tuiTheme": "theme" } }, providers: [TUI_HINT_PROVIDERS, tuiButtonOptionsProvider({ size: 's' })], hostDirectives: [{ directive: i1.TuiAppearance }, { directive: i2.TuiAnimated }, { directive: i3.TuiActiveZone }], ngImport: i0, template: `
404
404
  <ng-content />
405
405
  <span
406
406
  *polymorpheusOutlet="content() as text; context: hint.context()"
@@ -408,7 +408,7 @@ class TuiHintComponent {
408
408
  ></span>
409
409
  `, isInline: true, styles: [":host{position:absolute;max-inline-size:min(20rem,calc(100% - 1rem));padding:.75rem 1rem;background:var(--tui-background-accent-1);border-radius:var(--tui-radius-l);color:var(--tui-text-primary-on-accent-1);box-sizing:border-box;font:var(--tui-typography-body-s);white-space:pre-line;overflow-wrap:break-word;transform-origin:var(--t-left) var(--t-top);--tui-background-elevation-2: var(--tui-background-elevation-3)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade}:host :host-context(tui-root._mobile).tui-enter{animation:tuiFade var(--tui-duration) ease-in-out,tuiScale var(--tui-duration) cubic-bezier(.34,1.56,.64,1)}:host :host-context(tui-root._mobile).tui-leave{animation:tuiFade var(--tui-duration) ease-in-out reverse,tuiScale var(--tui-duration) ease-in-out reverse}:host:before{content:\"\";position:absolute;inset-block-start:var(--t-top);inset-inline-start:var(--t-left);inline-size:.75rem;block-size:.5rem;background:inherit;-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 12 8\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.61336 1.69607L2.44882 2.96493C1.84795 3.61964 0.949361 3.99951 0.00053941 4C0.000359608 4 0.000179805 4 0 4C0.000179863 4 0.000359764 4 0.000539623 4C0.949362 4.00049 1.84795 4.38036 2.44882 5.03506L3.61336 6.30394C4.55981 7.33517 5.03303 7.85079 5.63254 7.96535C5.87433 8.01155 6.12436 8.01155 6.36616 7.96535C6.96567 7.85079 7.43889 7.33517 8.38534 6.30393L9.54988 5.03507C10.1511 4.37994 11.0505 4 12 4C11.0505 4 10.1511 3.62006 9.54988 2.96493L8.38534 1.69606C7.43889 0.664826 6.96567 0.149207 6.36616 0.0346517C6.12436 -0.0115506 5.87433 -0.0115506 5.63254 0.0346517C5.03303 0.149207 4.55981 0.664827 3.61336 1.69607Z\" /></svg>');transition:none;transform:translate(-50%,-50%) rotate(var(--t-rotate))}:host._mobile{font:var(--tui-typography-body-m)}:host._mobile:before{inline-size:1.5rem;block-size:1.125rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 18\"><path d=\"M7.22854 3.81615L4.89971 6.6711C3.69732 8.14514 1.8988 9 0 9C1.8988 9 3.69732 9.85486 4.89971 11.3289L7.22854 14.1839L7.22854 14.1839C9.12123 16.5041 10.0676 17.6643 11.2665 17.922C11.75 18.026 12.25 18.026 12.7335 17.922C13.9324 17.6643 14.8788 16.5041 16.7715 14.1839L19.1003 11.3289C20.3027 9.85486 22.1012 9 24 9C22.1012 9 20.3027 8.14514 19.1003 6.6711L16.7715 3.81614C14.8788 1.49586 13.9324 0.335716 12.7335 0.0779663C12.25 -0.0259888 11.75 -0.0259888 11.2665 0.0779663C10.0676 0.335716 9.12123 1.49586 7.22854 3.81614L7.22854 3.81615Z\" /></svg>')}:host:not([style*=top]){visibility:hidden}:host._untouchable{pointer-events:none}:host ::ng-deep [tuiTitle]{margin-block-end:.75rem}:host ::ng-deep [tuiTitle]+footer{margin-block-start:.75rem}:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:right;margin-inline-end:-.25rem}@supports (float: inline-end){:host ::ng-deep [tuiIconButton][data-appearance=icon][data-size=xs]{float:inline-end}}:host ::ng-deep img{display:block;border-radius:var(--tui-radius-m)}:host ::ng-deep footer{display:flex;justify-content:flex-end;gap:.5rem;inline-size:18rem;max-inline-size:100%;margin:1rem 0 .25rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
410
410
  }
411
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintComponent, decorators: [{
411
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintComponent, decorators: [{
412
412
  type: Component,
413
413
  args: [{ selector: 'tui-hint', imports: [PolymorpheusOutlet], template: `
414
414
  <ng-content />
@@ -440,10 +440,10 @@ class TuiHintDescribe extends TuiDriver {
440
440
  get focused() {
441
441
  return tuiIsFocused(this.element());
442
442
  }
443
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDescribe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
444
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintDescribe, isStandalone: true, selector: "[tuiHintDescribe]", inputs: { id: { classPropertyName: "id", publicName: "tuiHintDescribe", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintDescribe)], usesInheritance: true, ngImport: i0 }); }
443
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDescribe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
444
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintDescribe, isStandalone: true, selector: "[tuiHintDescribe]", inputs: { id: { classPropertyName: "id", publicName: "tuiHintDescribe", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintDescribe)], usesInheritance: true, ngImport: i0 }); }
445
445
  }
446
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintDescribe, decorators: [{
446
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintDescribe, decorators: [{
447
447
  type: Directive,
448
448
  args: [{
449
449
  selector: '[tuiHintDescribe]',
@@ -460,10 +460,10 @@ class TuiHintHost extends TuiRectAccessor {
460
460
  getClientRect() {
461
461
  return this.tuiHintHost()?.getBoundingClientRect() || EMPTY_CLIENT_RECT;
462
462
  }
463
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintHost, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
464
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintHost, isStandalone: true, selector: "[tuiHint][tuiHintHost]", inputs: { tuiHintHost: { classPropertyName: "tuiHintHost", publicName: "tuiHintHost", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsRectAccessor(TuiHintHost)], usesInheritance: true, ngImport: i0 }); }
463
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintHost, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
464
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintHost, isStandalone: true, selector: "[tuiHint][tuiHintHost]", inputs: { tuiHintHost: { classPropertyName: "tuiHintHost", publicName: "tuiHintHost", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsRectAccessor(TuiHintHost)], usesInheritance: true, ngImport: i0 }); }
465
465
  }
466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintHost, decorators: [{
466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintHost, decorators: [{
467
467
  type: Directive,
468
468
  args: [{
469
469
  selector: '[tuiHint][tuiHintHost]',
@@ -484,10 +484,10 @@ class TuiHintManual extends TuiDriver {
484
484
  this.stream$.next(!!this.visible());
485
485
  this.hover.enabled = this.visible() === null;
486
486
  }
487
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
488
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintManual, isStandalone: true, selector: "[tuiHint][tuiHintManual]", inputs: { visible: { classPropertyName: "visible", publicName: "tuiHintManual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintManual)], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
487
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintManual, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
488
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintManual, isStandalone: true, selector: "[tuiHint][tuiHintManual]", inputs: { visible: { classPropertyName: "visible", publicName: "tuiHintManual", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsDriver(TuiHintManual)], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
489
489
  }
490
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintManual, decorators: [{
490
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintManual, decorators: [{
491
491
  type: Directive,
492
492
  args: [{
493
493
  selector: '[tuiHint][tuiHintManual]',
@@ -505,10 +505,10 @@ class TuiHintOverflow {
505
505
  ? this.content() || textContent
506
506
  : '');
507
507
  }
508
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintOverflow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
509
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiHintOverflow, isStandalone: true, selector: "[tuiHintOverflow]", inputs: { content: { classPropertyName: "content", publicName: "tuiHintOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "onMouseEnter($event.currentTarget)" } }, hostDirectives: [{ directive: TuiHintDirective, inputs: ["tuiHintAppearance", "tuiHintAppearance"] }], ngImport: i0 }); }
508
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintOverflow, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
509
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiHintOverflow, isStandalone: true, selector: "[tuiHintOverflow]", inputs: { content: { classPropertyName: "content", publicName: "tuiHintOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "onMouseEnter($event.currentTarget)" } }, hostDirectives: [{ directive: TuiHintDirective, inputs: ["tuiHintAppearance", "tuiHintAppearance"] }], ngImport: i0 }); }
510
510
  }
511
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiHintOverflow, decorators: [{
511
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiHintOverflow, decorators: [{
512
512
  type: Directive,
513
513
  args: [{
514
514
  selector: '[tuiHintOverflow]',
@@ -26,15 +26,15 @@ class TuiModalComponent {
26
26
  ngOnDestroy() {
27
27
  this.current.tuiActiveZoneParentSetter = null;
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: TuiModalComponent, isStandalone: true, selector: "tui-modal", host: { attributes: { "role": "dialog", "data-tui-version": "5.0.0", "aria-modal": "true" }, listeners: { "animationend.self": "$event.target.classList.remove(\"tui-enter\")" }, properties: { "attr.aria-labelledby": "context.id" }, classAttribute: "tui-enter" }, hostDirectives: [{ directive: i1.TuiActiveZone }, { directive: i2.TuiFocusTrap }], ngImport: i0, template: `
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TuiModalComponent, isStandalone: true, selector: "tui-modal", host: { attributes: { "role": "dialog", "data-tui-version": "5.1.0", "aria-modal": "true" }, listeners: { "animationend.self": "$event.target.classList.remove(\"tui-enter\")" }, properties: { "attr.aria-labelledby": "context.id" }, classAttribute: "tui-enter" }, hostDirectives: [{ directive: i1.TuiActiveZone }, { directive: i2.TuiFocusTrap }], ngImport: i0, template: `
31
31
  <div tuiScrollRef>
32
32
  <ng-container *polymorpheusOutlet="component(); context: context" />
33
33
  <tui-scroll-controls class="t-scrollbars" />
34
34
  </div>
35
- `, isInline: true, styles: ["@keyframes tuiModalBackdrop{0%{-webkit-backdrop-filter:none;backdrop-filter:none}to{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}}@keyframes tuiDummy{to{color:currentColor}}tui-modal:where(*[data-tui-version=\"5.0.0\"]){scrollbar-width:none;-ms-overflow-style:none;position:fixed;inset:0;outline:none;overflow:auto;overscroll-behavior:none;transform:translateY(var(--t-root-top))}tui-modal:where(*[data-tui-version=\"5.0.0\"])::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.0.0\"])::-webkit-scrollbar-thumb{display:none}@supports not (selector(:has(*))) or not (selector(:nth-child(1 of *))){tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type:not(.tui-leave):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-enter,tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-leave{animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-enter:before,tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-leave:before{animation-name:tuiModalBackdrop}}@supports (selector(:has(*))){tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(.tui-leave):not(:has(.tui-backdrop-hidden))):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave){animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave):before{animation-name:tuiModalBackdrop}}tui-modal:where(*[data-tui-version=\"5.0.0\"]):before{transition-property:backdrop-filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:sticky;inset:0;display:block;block-size:200%;transition-timing-function:linear;animation-duration:var(--tui-duration);animation-timing-function:cubic-bezier(.14,.52,.35,.84);perspective:10rem}tui-modal:where(*[data-tui-version=\"5.0.0\"]).tui-leave:before{animation-direction:reverse}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]{scrollbar-width:none;-ms-overflow-style:none;position:sticky;inset:0;display:grid;place-items:center;block-size:100%;overflow:auto;overscroll-behavior:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]::-webkit-scrollbar-thumb{display:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars{position:fixed;inset:0;margin:0;color:#747474}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_horizontal,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_vertical .t-thumb[style*=\"height: 100%\"]{display:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.tui-enter+.t-scrollbars .t-bar_vertical,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.tui-leave+.t-scrollbars .t-bar_vertical{display:none}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: TuiScrollRef, selector: "[tuiScrollRef]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
35
+ `, isInline: true, styles: ["@keyframes tuiModalBackdrop{0%{-webkit-backdrop-filter:none;backdrop-filter:none}to{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}}@keyframes tuiDummy{to{color:currentColor}}tui-modal:where(*[data-tui-version=\"5.1.0\"]){scrollbar-width:none;-ms-overflow-style:none;position:fixed;inset:0;outline:none;overflow:auto;overscroll-behavior:none;transform:translateY(var(--t-root-top))}tui-modal:where(*[data-tui-version=\"5.1.0\"])::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.1.0\"])::-webkit-scrollbar-thumb{display:none}@supports not (selector(:has(*))) or not (selector(:nth-child(1 of *))){tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type:not(.tui-leave):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-enter,tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-leave{animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-enter:before,tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-leave:before{animation-name:tuiModalBackdrop}}@supports (selector(:has(*))){tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(.tui-leave):not(:has(.tui-backdrop-hidden))):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave){animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave):before{animation-name:tuiModalBackdrop}}tui-modal:where(*[data-tui-version=\"5.1.0\"]):before{transition-property:backdrop-filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:sticky;inset:0;display:block;block-size:200%;transition-timing-function:linear;animation-duration:var(--tui-duration);animation-timing-function:cubic-bezier(.14,.52,.35,.84);perspective:10rem}tui-modal:where(*[data-tui-version=\"5.1.0\"]).tui-leave:before{animation-direction:reverse}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]{scrollbar-width:none;-ms-overflow-style:none;position:sticky;inset:0;display:grid;place-items:center;block-size:100%;overflow:auto;overscroll-behavior:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]::-webkit-scrollbar-thumb{display:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars{position:fixed;inset:0;margin:0;color:#747474}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_horizontal,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_vertical .t-thumb[style*=\"height: 100%\"]{display:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.tui-enter+.t-scrollbars .t-bar_vertical,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.tui-leave+.t-scrollbars .t-bar_vertical{display:none}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }, { kind: "directive", type: TuiScrollRef, selector: "[tuiScrollRef]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiModalComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiModalComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{ selector: 'tui-modal', imports: [PolymorpheusOutlet, TuiScrollControls, TuiScrollRef], template: `
40
40
  <div tuiScrollRef>
@@ -48,7 +48,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
48
48
  'aria-modal': 'true',
49
49
  '[attr.aria-labelledby]': 'context.id',
50
50
  '(animationend.self)': '$event.target.classList.remove("tui-enter")',
51
- }, styles: ["@keyframes tuiModalBackdrop{0%{-webkit-backdrop-filter:none;backdrop-filter:none}to{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}}@keyframes tuiDummy{to{color:currentColor}}tui-modal:where(*[data-tui-version=\"5.0.0\"]){scrollbar-width:none;-ms-overflow-style:none;position:fixed;inset:0;outline:none;overflow:auto;overscroll-behavior:none;transform:translateY(var(--t-root-top))}tui-modal:where(*[data-tui-version=\"5.0.0\"])::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.0.0\"])::-webkit-scrollbar-thumb{display:none}@supports not (selector(:has(*))) or not (selector(:nth-child(1 of *))){tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type:not(.tui-leave):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-enter,tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-leave{animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-enter:before,tui-modal:where(*[data-tui-version=\"5.0.0\"]):last-of-type.tui-leave:before{animation-name:tuiModalBackdrop}}@supports (selector(:has(*))){tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(.tui-leave):not(:has(.tui-backdrop-hidden))):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave){animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.0.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave):before{animation-name:tuiModalBackdrop}}tui-modal:where(*[data-tui-version=\"5.0.0\"]):before{transition-property:backdrop-filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:sticky;inset:0;display:block;block-size:200%;transition-timing-function:linear;animation-duration:var(--tui-duration);animation-timing-function:cubic-bezier(.14,.52,.35,.84);perspective:10rem}tui-modal:where(*[data-tui-version=\"5.0.0\"]).tui-leave:before{animation-direction:reverse}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]{scrollbar-width:none;-ms-overflow-style:none;position:sticky;inset:0;display:grid;place-items:center;block-size:100%;overflow:auto;overscroll-behavior:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]::-webkit-scrollbar-thumb{display:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars{position:fixed;inset:0;margin:0;color:#747474}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_horizontal,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_vertical .t-thumb[style*=\"height: 100%\"]{display:none}tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.tui-enter+.t-scrollbars .t-bar_vertical,tui-modal:where(*[data-tui-version=\"5.0.0\"])>[tuiScrollRef]>.tui-leave+.t-scrollbars .t-bar_vertical{display:none}\n"] }]
51
+ }, styles: ["@keyframes tuiModalBackdrop{0%{-webkit-backdrop-filter:none;backdrop-filter:none}to{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}}@keyframes tuiDummy{to{color:currentColor}}tui-modal:where(*[data-tui-version=\"5.1.0\"]){scrollbar-width:none;-ms-overflow-style:none;position:fixed;inset:0;outline:none;overflow:auto;overscroll-behavior:none;transform:translateY(var(--t-root-top))}tui-modal:where(*[data-tui-version=\"5.1.0\"])::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.1.0\"])::-webkit-scrollbar-thumb{display:none}@supports not (selector(:has(*))) or not (selector(:nth-child(1 of *))){tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type:not(.tui-leave):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-enter,tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-leave{animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-enter:before,tui-modal:where(*[data-tui-version=\"5.1.0\"]):last-of-type.tui-leave:before{animation-name:tuiModalBackdrop}}@supports (selector(:has(*))){tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(.tui-leave):not(:has(.tui-backdrop-hidden))):before{-webkit-backdrop-filter:brightness(.25);backdrop-filter:brightness(.25)}tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave){animation-name:tuiDummy}tui-modal:where(*[data-tui-version=\"5.1.0\"]):nth-last-child(1 of tui-modal:not(:has(.tui-backdrop-hidden))):is(.tui-enter,.tui-leave):before{animation-name:tuiModalBackdrop}}tui-modal:where(*[data-tui-version=\"5.1.0\"]):before{transition-property:backdrop-filter;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:sticky;inset:0;display:block;block-size:200%;transition-timing-function:linear;animation-duration:var(--tui-duration);animation-timing-function:cubic-bezier(.14,.52,.35,.84);perspective:10rem}tui-modal:where(*[data-tui-version=\"5.1.0\"]).tui-leave:before{animation-direction:reverse}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]{scrollbar-width:none;-ms-overflow-style:none;position:sticky;inset:0;display:grid;place-items:center;block-size:100%;overflow:auto;overscroll-behavior:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]::-webkit-scrollbar,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]::-webkit-scrollbar-thumb{display:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars{position:fixed;inset:0;margin:0;color:#747474}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_horizontal,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.t-scrollbars .t-bar_vertical .t-thumb[style*=\"height: 100%\"]{display:none}tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.tui-enter+.t-scrollbars .t-bar_vertical,tui-modal:where(*[data-tui-version=\"5.1.0\"])>[tuiScrollRef]>.tui-leave+.t-scrollbars .t-bar_vertical{display:none}\n"] }]
52
52
  }] });
53
53
  function findActive(zone, el) {
54
54
  if (!el || !zone.contains(el)) {
@@ -76,10 +76,10 @@ class TuiModalService extends TuiPortal {
76
76
  .then(() => ref.destroy());
77
77
  };
78
78
  }
79
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
80
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiModalService }); }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
80
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiModalService }); }
81
81
  }
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiModalService, decorators: [{
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiModalService, decorators: [{
83
83
  type: Injectable
84
84
  }], ctorParameters: () => [] });
85
85
  function getAnimations(el) {
@@ -1,13 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, inject, TemplateRef, input, Directive, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import { TuiPortalService, TuiPortals } from '@taiga-ui/cdk/portals';
4
+ import { TuiVCR } from '@taiga-ui/cdk/directives/vcr';
4
5
  import { tuiProvide } from '@taiga-ui/cdk/utils/di';
5
6
 
6
7
  class TuiPopupService extends TuiPortalService {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopupService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopupService, providedIn: 'root' }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopupService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
9
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopupService, providedIn: 'root' }); }
9
10
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopupService, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopupService, decorators: [{
11
12
  type: Injectable,
12
13
  args: [{ providedIn: 'root' }]
13
14
  }] });
@@ -27,21 +28,21 @@ class TuiPopup {
27
28
  ngOnDestroy() {
28
29
  this.ref?.destroy();
29
30
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.19", type: TuiPopup, isStandalone: true, selector: "ng-template[tuiPopup]", inputs: { show: { classPropertyName: "show", publicName: "tuiPopup", isSignal: true, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0 }); }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
32
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.20", type: TuiPopup, isStandalone: true, selector: "ng-template[tuiPopup]", inputs: { show: { classPropertyName: "show", publicName: "tuiPopup", isSignal: true, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0 }); }
32
33
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopup, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopup, decorators: [{
34
35
  type: Directive,
35
36
  args: [{ selector: 'ng-template[tuiPopup]' }]
36
37
  }] });
37
38
 
38
39
  class TuiPopups extends TuiPortals {
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopups, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: TuiPopups, isStandalone: true, selector: "tui-popups", providers: [tuiProvide(TuiPortalService, TuiPopupService)], usesInheritance: true, ngImport: i0, template: '<ng-content/><ng-container #vcr />', isInline: true, styles: [":host{position:fixed;inset-block-start:0;inset-inline-start:0;inline-size:100%;block-size:100%;display:grid;grid-template-rows:repeat(14,min-content) 1fr;pointer-events:none;overflow:hidden;overflow-wrap:break-word;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-left) env(safe-area-inset-bottom) env(safe-area-inset-right)}:host ::ng-deep>*{pointer-events:auto}:host:after{content:\"\";grid-row:15}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopups, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TuiPopups, isStandalone: true, selector: "tui-popups", providers: [tuiProvide(TuiPortalService, TuiPopupService)], usesInheritance: true, ngImport: i0, template: '<ng-content/><ng-container tuiVCR />', isInline: true, styles: [":host{position:fixed;inset-block-start:0;inset-inline-start:0;inline-size:100%;block-size:100%;display:grid;grid-template-rows:repeat(14,min-content) 1fr;pointer-events:none;overflow:hidden;overflow-wrap:break-word;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-left) env(safe-area-inset-bottom) env(safe-area-inset-right)}:host ::ng-deep>*{pointer-events:auto}:host:after{content:\"\";grid-row:15}\n"], dependencies: [{ kind: "directive", type: TuiVCR, selector: "[tuiVCR]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
41
42
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPopups, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPopups, decorators: [{
43
44
  type: Component,
44
- args: [{ selector: 'tui-popups', template: '<ng-content/><ng-container #vcr />', changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TuiPortalService, TuiPopupService)], styles: [":host{position:fixed;inset-block-start:0;inset-inline-start:0;inline-size:100%;block-size:100%;display:grid;grid-template-rows:repeat(14,min-content) 1fr;pointer-events:none;overflow:hidden;overflow-wrap:break-word;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-left) env(safe-area-inset-bottom) env(safe-area-inset-right)}:host ::ng-deep>*{pointer-events:auto}:host:after{content:\"\";grid-row:15}\n"] }]
45
+ args: [{ selector: 'tui-popups', imports: [TuiVCR], template: '<ng-content/><ng-container tuiVCR />', changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TuiPortalService, TuiPopupService)], styles: [":host{position:fixed;inset-block-start:0;inset-inline-start:0;inline-size:100%;block-size:100%;display:grid;grid-template-rows:repeat(14,min-content) 1fr;pointer-events:none;overflow:hidden;overflow-wrap:break-word;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-left) env(safe-area-inset-bottom) env(safe-area-inset-right)}:host ::ng-deep>*{pointer-events:auto}:host:after{content:\"\";grid-row:15}\n"] }]
45
46
  }] });
46
47
 
47
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-portals-popup.mjs","sources":["../../../projects/core/portals/popup/popup.service.ts","../../../projects/core/portals/popup/popup.directive.ts","../../../projects/core/portals/popup/popups.component.ts","../../../projects/core/portals/popup/taiga-ui-core-portals-popup.ts"],"sourcesContent":["import {Injectable} from '@angular/core';\nimport {TuiPortalService} from '@taiga-ui/cdk/portals';\n\n@Injectable({providedIn: 'root'})\nexport class TuiPopupService extends TuiPortalService {}\n","import {\n Directive,\n type EmbeddedViewRef,\n inject,\n input,\n type OnChanges,\n type OnDestroy,\n TemplateRef,\n} from '@angular/core';\n\nimport {TuiPopupService} from './popup.service';\n\n@Directive({selector: 'ng-template[tuiPopup]'})\nexport class TuiPopup implements OnChanges, OnDestroy {\n private readonly template = inject(TemplateRef);\n private readonly service = inject(TuiPopupService);\n private ref?: EmbeddedViewRef<unknown>;\n\n public readonly show = input(false, {alias: 'tuiPopup'});\n\n public ngOnChanges(): void {\n this.ref?.destroy();\n\n if (this.show()) {\n this.ref = this.service.add(this.template);\n }\n }\n\n public ngOnDestroy(): void {\n this.ref?.destroy();\n }\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {TuiPortals, TuiPortalService} from '@taiga-ui/cdk/portals';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nimport {TuiPopupService} from './popup.service';\n\n@Component({\n selector: 'tui-popups',\n template: '<ng-content/><ng-container #vcr />',\n styleUrl: './popups.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(TuiPortalService, TuiPopupService)],\n})\nexport class TuiPopups extends TuiPortals {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAIM,MAAO,eAAgB,SAAQ,gBAAgB,CAAA;+GAAxC,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cADH,MAAM,EAAA,CAAA,CAAA;;4FAClB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;;MCUnB,QAAQ,CAAA;AADrB,IAAA,WAAA,GAAA;AAEqB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9B,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;QAGlC,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC;AAa3D,IAAA;IAXU,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE;AAEnB,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;AACb,YAAA,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC9C;IACJ;IAEO,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE;IACvB;+GAjBS,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBADpB,SAAS;mBAAC,EAAC,QAAQ,EAAE,uBAAuB,EAAC;;;ACCxC,MAAO,SAAU,SAAQ,UAAU,CAAA;+GAA5B,SAAS,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,SAAA,EAFP,CAAC,UAAU,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAHhD,oCAAoC,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,8aAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAKrC,SAAS,EAAA,UAAA,EAAA,CAAA;kBAPrB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EAAA,QAAA,EACZ,oCAAoC,EAAA,eAAA,EAE7B,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC,CAAC,UAAU,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC,EAAA,MAAA,EAAA,CAAA,8aAAA,CAAA,EAAA;;;ACX9D;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-portals-popup.mjs","sources":["../../../projects/core/portals/popup/popup.service.ts","../../../projects/core/portals/popup/popup.directive.ts","../../../projects/core/portals/popup/popups.component.ts","../../../projects/core/portals/popup/taiga-ui-core-portals-popup.ts"],"sourcesContent":["import {Injectable} from '@angular/core';\nimport {TuiPortalService} from '@taiga-ui/cdk/portals';\n\n@Injectable({providedIn: 'root'})\nexport class TuiPopupService extends TuiPortalService {}\n","import {\n Directive,\n type EmbeddedViewRef,\n inject,\n input,\n type OnChanges,\n type OnDestroy,\n TemplateRef,\n} from '@angular/core';\n\nimport {TuiPopupService} from './popup.service';\n\n@Directive({selector: 'ng-template[tuiPopup]'})\nexport class TuiPopup implements OnChanges, OnDestroy {\n private readonly template = inject(TemplateRef);\n private readonly service = inject(TuiPopupService);\n private ref?: EmbeddedViewRef<unknown>;\n\n public readonly show = input(false, {alias: 'tuiPopup'});\n\n public ngOnChanges(): void {\n this.ref?.destroy();\n\n if (this.show()) {\n this.ref = this.service.add(this.template);\n }\n }\n\n public ngOnDestroy(): void {\n this.ref?.destroy();\n }\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {TuiVCR} from '@taiga-ui/cdk/directives/vcr';\nimport {TuiPortals, TuiPortalService} from '@taiga-ui/cdk/portals';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nimport {TuiPopupService} from './popup.service';\n\n@Component({\n selector: 'tui-popups',\n imports: [TuiVCR],\n template: '<ng-content/><ng-container tuiVCR />',\n styleUrl: './popups.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(TuiPortalService, TuiPopupService)],\n})\nexport class TuiPopups extends TuiPortals {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,10 +18,10 @@ class TuiPositionService extends Observable {
18
18
  this.el = tuiInjectElement();
19
19
  this.accessor = inject(TuiPositionAccessor);
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPositionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
22
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPositionService }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPositionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
22
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPositionService }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiPositionService, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiPositionService, decorators: [{
25
25
  type: Injectable
26
26
  }], ctorParameters: () => [] });
27
27
 
@@ -39,10 +39,10 @@ class TuiVisualViewportService {
39
39
  ]
40
40
  : point;
41
41
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiVisualViewportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
43
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiVisualViewportService, providedIn: 'root' }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiVisualViewportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
43
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiVisualViewportService, providedIn: 'root' }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TuiVisualViewportService, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TuiVisualViewportService, decorators: [{
46
46
  type: Injectable,
47
47
  args: [{ providedIn: 'root' }]
48
48
  }] });
@@ -1,13 +1,13 @@
1
- import { InjectionToken, inject, signal, untracked, effect, computed } from '@angular/core';
1
+ import { InjectionToken, inject, computed, signal, untracked, effect } from '@angular/core';
2
2
  import { DOCUMENT } from '@angular/common';
3
3
  import { tuiProvide, tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
4
- import { toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
- import { tuiZoneOptimized, tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
6
- import { TUI_WINDOW_SIZE } from '@taiga-ui/cdk/tokens';
7
- import { map, distinctUntilChanged, fromEvent, filter, merge, switchMap, takeUntil, share } from 'rxjs';
8
- import { WA_LOCAL_STORAGE, WA_WINDOW } from '@ng-web-apis/common';
4
+ import { WA_WINDOW, WA_LOCAL_STORAGE } from '@ng-web-apis/common';
5
+ import { tuiWindowSize } from '@taiga-ui/cdk/utils/dom';
6
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
+ import { fromEvent, filter, merge, switchMap, takeUntil, share } from 'rxjs';
9
8
  import { tuiExtractI18n } from '@taiga-ui/i18n/utils';
10
9
  import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
10
+ import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
11
11
 
12
12
  const TUI_REDUCED_MOTION = new InjectionToken(ngDevMode ? 'TUI_REDUCED_MOTION' : '', {
13
13
  factory: () => inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')
@@ -49,14 +49,19 @@ const TUI_MEDIA = new InjectionToken(ngDevMode ? 'TUI_MEDIA' : '', {
49
49
 
50
50
  const TUI_BREAKPOINT = new InjectionToken(ngDevMode ? 'TUI_BREAKPOINT' : '', {
51
51
  factory: () => {
52
+ const size = tuiWindowSize(inject(WA_WINDOW));
52
53
  const media = inject(TUI_MEDIA);
53
54
  const sorted = Object.values(media).sort((a, b) => a - b);
54
55
  const invert = Object.keys(media).reduce((ret, key) => ({
55
56
  ...ret,
56
57
  [media[key]]: key,
57
58
  }), {});
58
- const stream$ = inject(TUI_WINDOW_SIZE).pipe(map(({ width }) => sorted.find((size) => size > width)), map((key) => invert[key || sorted[sorted.length - 1] || 0] ?? 'desktopLarge'), distinctUntilChanged(), tuiZoneOptimized());
59
- return toSignal(stream$, { initialValue: 'desktopLarge' });
59
+ return computed(() => {
60
+ const { width } = size();
61
+ const key = sorted.find((size) => size > width);
62
+ const index = key || sorted[sorted.length - 1] || 0;
63
+ return invert[index] ?? 'desktopLarge';
64
+ });
60
65
  },
61
66
  });
62
67
 
@@ -222,7 +227,7 @@ function tuiIconResolverProvider(useValue) {
222
227
  }
223
228
 
224
229
  const TUI_DEFAULT_NUMBER_FORMAT = {
225
- precision: NaN,
230
+ precision: Number.NaN,
226
231
  decimalSeparator: '.',
227
232
  thousandSeparator: CHAR_NO_BREAK_SPACE,
228
233
  rounding: 'truncate',
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-tokens.mjs","sources":["../../../projects/core/tokens/reduced-motion.ts","../../../projects/core/tokens/animations-speed.ts","../../../projects/core/tokens/assets-path.ts","../../../projects/core/tokens/auxiliary.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/breakpoint.ts","../../../projects/core/tokens/common-icons.ts","../../../projects/core/tokens/dark-mode.ts","../../../projects/core/tokens/date-format.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icon-resolver.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/textfield.ts","../../../projects/core/tokens/validation-errors.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\nexport const TUI_REDUCED_MOTION = new InjectionToken(\n ngDevMode ? 'TUI_REDUCED_MOTION' : '',\n {\n factory: () =>\n inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')\n .matches ?? false,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_REDUCED_MOTION} from './reduced-motion';\n\n/**\n * Speed of all Taiga UI animations. 1 equals 300ms.\n */\nexport const TUI_ANIMATIONS_SPEED = new InjectionToken<number>(\n ngDevMode ? 'TUI_ANIMATIONS_SPEED' : '',\n {factory: () => (inject(TUI_REDUCED_MOTION) ? 0 : 1)},\n);\n","import {InjectionToken, type ValueProvider} from '@angular/core';\n\nexport const TUI_ASSETS_PATH = new InjectionToken(ngDevMode ? 'TUI_ASSETS_PATH' : '', {\n factory: () => 'assets/taiga-ui/icons',\n});\n\nexport function tuiAssetsPathProvider(useValue: string): ValueProvider {\n return {\n provide: TUI_ASSETS_PATH,\n useValue,\n };\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nexport const TUI_AUXILIARY = new InjectionToken(ngDevMode ? 'TUI_AUXILIARY' : '', {\n factory: () => null,\n});\n\nexport function tuiAsAuxiliary(x: Type<unknown>): Provider {\n return tuiProvide(TUI_AUXILIARY, x);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport interface TuiMedia {\n readonly desktopLarge: number;\n readonly desktopSmall: number;\n readonly mobile: number;\n readonly tablet?: number;\n}\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(ngDevMode ? 'TUI_MEDIA' : '', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1280,\n desktopLarge: Infinity,\n }),\n});\n","import {inject, InjectionToken, type Signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {TUI_WINDOW_SIZE} from '@taiga-ui/cdk/tokens';\nimport {distinctUntilChanged, map} from 'rxjs';\n\nimport {TUI_MEDIA, type TuiMedia} from './media';\n\nexport type TuiBreakpointMediaKey = keyof Omit<TuiMedia, 'tablet'>;\n\nexport const TUI_BREAKPOINT = new InjectionToken<Signal<TuiBreakpointMediaKey>>(\n ngDevMode ? 'TUI_BREAKPOINT' : '',\n {\n factory: () => {\n const media = inject(TUI_MEDIA);\n const sorted: number[] = Object.values(media).sort((a, b) => a - b);\n const invert: Record<number, TuiBreakpointMediaKey> = Object.keys(\n media,\n ).reduce(\n (ret, key) => ({\n ...ret,\n [media[key as TuiBreakpointMediaKey]]: key,\n }),\n {},\n );\n\n const stream$ = inject(TUI_WINDOW_SIZE).pipe(\n map(({width}) => sorted.find((size) => size > width)),\n map(\n (key) =>\n invert[key || sorted[sorted.length - 1] || 0] ?? 'desktopLarge',\n ),\n distinctUntilChanged(),\n tuiZoneOptimized(),\n );\n\n return toSignal(stream$, {initialValue: 'desktopLarge'});\n },\n },\n);\n","import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\n// TODO: Rename `ellipsis` to `more` in the next major version\nconst COMMON_ICONS: TuiCommonIcons = {\n check: '@tui.check',\n close: '@tui.x',\n error: '@tui.circle-alert',\n more: '@tui.chevron-right',\n search: '@tui.search',\n ellipsis: '@tui.ellipsis',\n decrement: '@tui.chevron-left',\n increment: '@tui.chevron-right',\n};\n\nexport interface TuiCommonIcons {\n readonly check: string;\n readonly close: string;\n readonly error: string;\n readonly more: string;\n readonly search: string;\n readonly ellipsis: string;\n readonly decrement: string;\n readonly increment: string;\n}\n\nexport const [TUI_COMMON_ICONS, tuiCommonIconsProvider] = tuiCreateOptions(COMMON_ICONS);\n","import {\n effect,\n inject,\n InjectionToken,\n signal,\n untracked,\n type WritableSignal,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {filter, fromEvent} from 'rxjs';\n\nexport const TUI_DARK_MODE_DEFAULT_KEY = 'tuiDark';\nexport const TUI_DARK_MODE_KEY = new InjectionToken(\n ngDevMode ? 'TUI_DARK_MODE_KEY' : '',\n {factory: () => TUI_DARK_MODE_DEFAULT_KEY},\n);\nexport const TUI_DARK_MODE = new InjectionToken<\n WritableSignal<boolean> & {reset(): void}\n>(ngDevMode ? 'TUI_DARK_MODE' : '', {\n factory: () => {\n let automatic = true;\n\n const storage = inject(WA_LOCAL_STORAGE);\n const key = inject(TUI_DARK_MODE_KEY);\n const saved = storage?.getItem(key);\n const media = inject(WA_WINDOW).matchMedia('(prefers-color-scheme: dark)');\n const result = signal(Boolean((saved && JSON.parse(saved)) ?? media.matches));\n\n fromEvent(media, 'change')\n .pipe(\n filter(() => !storage?.getItem(key)),\n takeUntilDestroyed(),\n )\n .subscribe(() => {\n automatic = true;\n result.set(media.matches);\n });\n\n untracked(() => {\n effect(() => {\n const value = String(result());\n\n if (automatic) {\n automatic = false;\n } else {\n storage?.setItem(key, value);\n }\n });\n });\n\n return Object.assign(result, {\n reset: () => {\n storage?.removeItem(key);\n automatic = true;\n result.set(media.matches);\n },\n });\n },\n});\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {type TuiDateMode} from '@taiga-ui/cdk/date-time';\n\n/**\n * Formatting configuration for displayed dates\n */\nexport interface TuiDateFormatSettings {\n /**\n * Date format mode.\n */\n readonly mode: TuiDateMode;\n /**\n * Separator between date segments\n * @example 10.02 ('.' by default)\n */\n readonly separator: string;\n}\n\nexport const TUI_DEFAULT_DATE_FORMAT: TuiDateFormatSettings = {\n mode: 'dd/mm/yyyy',\n separator: '.',\n};\n\n/**\n * Formatting configuration for displayed dates\n */\nexport const TUI_DATE_FORMAT = new InjectionToken<Signal<TuiDateFormatSettings>>(\n ngDevMode ? 'TUI_DATE_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_DATE_FORMAT)},\n);\n\nexport function tuiDateFormatProvider(options: Partial<TuiDateFormatSettings>): Provider {\n return {\n provide: TUI_DATE_FORMAT,\n useFactory: (): Signal<TuiDateFormatSettings> => {\n const parent = inject(TUI_DATE_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_DATE_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(ngDevMode ? 'TUI_MONTHS' : '', {\n factory: tuiExtractI18n('months'),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(ngDevMode ? 'TUI_CLOSE_WORD' : '', {\n factory: tuiExtractI18n('close'),\n});\n\n/**\n * i18n 'back' word\n */\nexport const TUI_BACK_WORD = new InjectionToken(ngDevMode ? 'TUI_BACK_WORD' : '', {\n factory: tuiExtractI18n('back'),\n});\n\n/**\n * i18n 'clear' word\n */\nexport const TUI_CLEAR_WORD = new InjectionToken(ngDevMode ? 'TUI_CLEAR_WORD' : '', {\n factory: tuiExtractI18n('clear'),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_NOTHING_FOUND_MESSAGE' : '',\n {factory: tuiExtractI18n('nothingFoundMessage')},\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_DEFAULT_ERROR_MESSAGE' : '',\n {factory: tuiExtractI18n('defaultErrorMessage')},\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(ngDevMode ? 'TUI_SPIN_TEXTS' : '', {\n factory: tuiExtractI18n('spinTexts'),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n ngDevMode ? 'TUI_SHORT_WEEK_DAYS' : '',\n {factory: tuiExtractI18n('shortWeekDays')},\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_START = new InjectionToken(ngDevMode ? 'TUI_ICON_START' : '', {\n factory: () => '',\n});\nexport const TUI_ICON_END = new InjectionToken(ngDevMode ? 'TUI_ICON_END' : '', {\n factory: () => '',\n});\n","import {type FactoryProvider, inject, InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_REGISTRY = new InjectionToken<Record<string, string>>(\n ngDevMode ? 'TUI_ICON_REGISTRY' : '',\n {factory: () => ({})},\n);\n\nexport function tuiIconsProvider(icons: Record<string, string>): FactoryProvider {\n return {\n provide: TUI_ICON_REGISTRY,\n useFactory: () => ({\n ...(inject(TUI_ICON_REGISTRY, {skipSelf: true, optional: true}) || {}),\n ...Object.fromEntries(\n Object.entries(icons).map(([key, value]) => [\n key,\n `\"data:image/svg+xml;charset=UTF-8,${encodeURIComponent(value)}\"`,\n ]),\n ),\n }),\n };\n}\n","import {inject, InjectionToken, type Provider} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nimport {TUI_ASSETS_PATH} from './assets-path';\nimport {TUI_ICON_REGISTRY} from './icons';\n\nexport const TUI_ICON_RESOLVER = new InjectionToken<TuiStringHandler<string>>(\n ngDevMode ? 'TUI_ICON_RESOLVER' : '',\n {\n factory: () => {\n const path = inject(TUI_ASSETS_PATH);\n\n // regex for @{any text}. used as a default fallback, returns path to svg from icon pack\n return (icon) =>\n `${path}/${icon.replace(/@[a-z]+\\./i, '').replaceAll('.', '/')}.svg`;\n },\n },\n);\n\nexport function tuiGetIconMode(icon?: string | null): string | undefined {\n return icon?.match(/@([^.]*)\\./)?.[1] || icon || undefined;\n}\n\nexport function tuiInjectIconResolver(): TuiStringHandler<string> {\n const icons = inject(TUI_ICON_REGISTRY);\n const resolver = inject(TUI_ICON_RESOLVER);\n\n return (icon) => {\n if (!icon || icon.includes('/')) {\n return icon.replace(/@[a-z]+\\./i, '');\n }\n\n return icon.startsWith('@font.')\n ? icon.replace('@font.', '')\n : (icons[icon] ?? resolver(icon));\n };\n}\n\nexport function tuiIconResolverProvider(useValue: TuiStringHandler<string>): Provider {\n return {provide: TUI_ICON_RESOLVER, useValue};\n}\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {type TuiRounding} from '@taiga-ui/cdk/types';\n\nexport type TuiDecimalMode = 'always' | 'not-zero' | 'pad';\nexport type TuiDecimalSymbol = ',' | '.';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport interface TuiNumberFormatSettings {\n /**\n * Number of digits of decimal part.\n * @note Use `Infinity` to keep untouched.\n */\n readonly precision: number;\n /**\n * Separator between the integer and the decimal part.\n * @example 0,42 (',' by default)\n */\n readonly decimalSeparator: TuiDecimalSymbol;\n /**\n * Rounding method.\n */\n readonly rounding: TuiRounding;\n /**\n * Separator between thousands.\n * @example 360 000 (' ' by default)\n */\n readonly thousandSeparator: string;\n /**\n * Decimal part display mode. ('pad' by default)\n */\n readonly decimalMode: TuiDecimalMode;\n}\n\nexport const TUI_DEFAULT_NUMBER_FORMAT: TuiNumberFormatSettings = {\n precision: NaN,\n decimalSeparator: '.',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n rounding: 'truncate',\n decimalMode: 'pad',\n};\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<Signal<TuiNumberFormatSettings>>(\n ngDevMode ? 'TUI_NUMBER_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_NUMBER_FORMAT)},\n);\n\nexport function tuiNumberFormatProvider(\n options: Partial<TuiNumberFormatSettings>,\n): Provider {\n return {\n provide: TUI_NUMBER_FORMAT,\n useFactory: (): Signal<TuiNumberFormatSettings> => {\n const parent = inject(TUI_NUMBER_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_NUMBER_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, type Observable, share, switchMap, takeUntil} from 'rxjs';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_SELECTION_STREAM' : '',\n {\n factory: () => {\n const doc = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(doc, 'selectionchange'),\n tuiTypedFromEvent(doc, 'mouseup'),\n tuiTypedFromEvent(doc, 'mousedown').pipe(\n switchMap(() =>\n tuiTypedFromEvent(doc, 'mousemove').pipe(\n takeUntil(tuiTypedFromEvent(doc, 'mouseup')),\n ),\n ),\n ),\n tuiTypedFromEvent(doc, 'keydown'),\n tuiTypedFromEvent(doc, 'keyup'),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken, type Signal} from '@angular/core';\n\nexport const TUI_TEXTFIELD_VALUE = new InjectionToken<Signal<string>>(\n ngDevMode ? 'TUI_TEXTFIELD_VALUE' : '',\n);\n","import {InjectionToken, type Provider, type Signal} from '@angular/core';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>\n>(ngDevMode ? 'TUI_VALIDATION_ERRORS' : '', {factory: () => ({})});\n\nexport const tuiValidationErrorsProvider = (\n useValue: Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>,\n): Provider => ({provide: TUI_VALIDATION_ERRORS, useValue});\n","import {inject, InjectionToken, type Provider, type Type} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {type TuiRectAccessor} from '@taiga-ui/core/classes';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(\n ngDevMode ? 'TUI_VIEWPORT' : '',\n {\n factory: () => {\n const win = inject(WA_WINDOW);\n\n return {\n type: 'viewport',\n getClientRect() {\n const {height = 0, offsetTop = 0} = win.visualViewport || {};\n const rect = {\n top: 0,\n left: 0,\n right: win.innerWidth,\n bottom: win.innerHeight,\n width: win.innerWidth,\n height: height + offsetTop || win.innerHeight,\n x: 0,\n y: 0,\n };\n\n return {\n ...rect,\n toJSON: () => JSON.stringify(rect),\n };\n },\n };\n },\n },\n);\n\nexport function tuiAsViewport(accessor: Type<TuiRectAccessor>): Provider {\n return tuiProvide(TUI_VIEWPORT, accessor);\n}\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-tokens.mjs","sources":["../../../projects/core/tokens/reduced-motion.ts","../../../projects/core/tokens/animations-speed.ts","../../../projects/core/tokens/assets-path.ts","../../../projects/core/tokens/auxiliary.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/breakpoint.ts","../../../projects/core/tokens/common-icons.ts","../../../projects/core/tokens/dark-mode.ts","../../../projects/core/tokens/date-format.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icon-resolver.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/textfield.ts","../../../projects/core/tokens/validation-errors.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\nexport const TUI_REDUCED_MOTION = new InjectionToken(\n ngDevMode ? 'TUI_REDUCED_MOTION' : '',\n {\n factory: () =>\n inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')\n .matches ?? false,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_REDUCED_MOTION} from './reduced-motion';\n\n/**\n * Speed of all Taiga UI animations. 1 equals 300ms.\n */\nexport const TUI_ANIMATIONS_SPEED = new InjectionToken<number>(\n ngDevMode ? 'TUI_ANIMATIONS_SPEED' : '',\n {factory: () => (inject(TUI_REDUCED_MOTION) ? 0 : 1)},\n);\n","import {InjectionToken, type ValueProvider} from '@angular/core';\n\nexport const TUI_ASSETS_PATH = new InjectionToken(ngDevMode ? 'TUI_ASSETS_PATH' : '', {\n factory: () => 'assets/taiga-ui/icons',\n});\n\nexport function tuiAssetsPathProvider(useValue: string): ValueProvider {\n return {\n provide: TUI_ASSETS_PATH,\n useValue,\n };\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nexport const TUI_AUXILIARY = new InjectionToken(ngDevMode ? 'TUI_AUXILIARY' : '', {\n factory: () => null,\n});\n\nexport function tuiAsAuxiliary(x: Type<unknown>): Provider {\n return tuiProvide(TUI_AUXILIARY, x);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport interface TuiMedia {\n readonly desktopLarge: number;\n readonly desktopSmall: number;\n readonly mobile: number;\n readonly tablet?: number;\n}\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(ngDevMode ? 'TUI_MEDIA' : '', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1280,\n desktopLarge: Infinity,\n }),\n});\n","import {computed, inject, InjectionToken, type Signal} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiWindowSize} from '@taiga-ui/cdk/utils/dom';\n\nimport {TUI_MEDIA, type TuiMedia} from './media';\n\nexport type TuiBreakpointMediaKey = keyof Omit<TuiMedia, 'tablet'>;\n\nexport const TUI_BREAKPOINT = new InjectionToken<Signal<TuiBreakpointMediaKey>>(\n ngDevMode ? 'TUI_BREAKPOINT' : '',\n {\n factory: () => {\n const size = tuiWindowSize(inject(WA_WINDOW));\n const media = inject(TUI_MEDIA);\n const sorted: number[] = Object.values(media).sort((a, b) => a - b);\n const invert: Record<number, TuiBreakpointMediaKey> = Object.keys(\n media,\n ).reduce(\n (ret, key) => ({\n ...ret,\n [media[key as TuiBreakpointMediaKey]]: key,\n }),\n {},\n );\n\n return computed(() => {\n const {width} = size();\n const key = sorted.find((size) => size > width);\n const index = key || sorted[sorted.length - 1] || 0;\n\n return invert[index] ?? 'desktopLarge';\n });\n },\n },\n);\n","import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\n// TODO: Rename `ellipsis` to `more` in the next major version\nconst COMMON_ICONS: TuiCommonIcons = {\n check: '@tui.check',\n close: '@tui.x',\n error: '@tui.circle-alert',\n more: '@tui.chevron-right',\n search: '@tui.search',\n ellipsis: '@tui.ellipsis',\n decrement: '@tui.chevron-left',\n increment: '@tui.chevron-right',\n};\n\nexport interface TuiCommonIcons {\n readonly check: string;\n readonly close: string;\n readonly error: string;\n readonly more: string;\n readonly search: string;\n readonly ellipsis: string;\n readonly decrement: string;\n readonly increment: string;\n}\n\nexport const [TUI_COMMON_ICONS, tuiCommonIconsProvider] = tuiCreateOptions(COMMON_ICONS);\n","import {\n effect,\n inject,\n InjectionToken,\n signal,\n untracked,\n type WritableSignal,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {filter, fromEvent} from 'rxjs';\n\nexport const TUI_DARK_MODE_DEFAULT_KEY = 'tuiDark';\nexport const TUI_DARK_MODE_KEY = new InjectionToken(\n ngDevMode ? 'TUI_DARK_MODE_KEY' : '',\n {factory: () => TUI_DARK_MODE_DEFAULT_KEY},\n);\nexport const TUI_DARK_MODE = new InjectionToken<\n WritableSignal<boolean> & {reset(): void}\n>(ngDevMode ? 'TUI_DARK_MODE' : '', {\n factory: () => {\n let automatic = true;\n\n const storage = inject(WA_LOCAL_STORAGE);\n const key = inject(TUI_DARK_MODE_KEY);\n const saved = storage?.getItem(key);\n const media = inject(WA_WINDOW).matchMedia('(prefers-color-scheme: dark)');\n const result = signal(Boolean((saved && JSON.parse(saved)) ?? media.matches));\n\n fromEvent(media, 'change')\n .pipe(\n filter(() => !storage?.getItem(key)),\n takeUntilDestroyed(),\n )\n .subscribe(() => {\n automatic = true;\n result.set(media.matches);\n });\n\n untracked(() => {\n effect(() => {\n const value = String(result());\n\n if (automatic) {\n automatic = false;\n } else {\n storage?.setItem(key, value);\n }\n });\n });\n\n return Object.assign(result, {\n reset: () => {\n storage?.removeItem(key);\n automatic = true;\n result.set(media.matches);\n },\n });\n },\n});\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {type TuiDateMode} from '@taiga-ui/cdk/date-time';\n\n/**\n * Formatting configuration for displayed dates\n */\nexport interface TuiDateFormatSettings {\n /**\n * Date format mode.\n */\n readonly mode: TuiDateMode;\n /**\n * Separator between date segments\n * @example 10.02 ('.' by default)\n */\n readonly separator: string;\n}\n\nexport const TUI_DEFAULT_DATE_FORMAT: TuiDateFormatSettings = {\n mode: 'dd/mm/yyyy',\n separator: '.',\n};\n\n/**\n * Formatting configuration for displayed dates\n */\nexport const TUI_DATE_FORMAT = new InjectionToken<Signal<TuiDateFormatSettings>>(\n ngDevMode ? 'TUI_DATE_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_DATE_FORMAT)},\n);\n\nexport function tuiDateFormatProvider(options: Partial<TuiDateFormatSettings>): Provider {\n return {\n provide: TUI_DATE_FORMAT,\n useFactory: (): Signal<TuiDateFormatSettings> => {\n const parent = inject(TUI_DATE_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_DATE_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(ngDevMode ? 'TUI_MONTHS' : '', {\n factory: tuiExtractI18n('months'),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(ngDevMode ? 'TUI_CLOSE_WORD' : '', {\n factory: tuiExtractI18n('close'),\n});\n\n/**\n * i18n 'back' word\n */\nexport const TUI_BACK_WORD = new InjectionToken(ngDevMode ? 'TUI_BACK_WORD' : '', {\n factory: tuiExtractI18n('back'),\n});\n\n/**\n * i18n 'clear' word\n */\nexport const TUI_CLEAR_WORD = new InjectionToken(ngDevMode ? 'TUI_CLEAR_WORD' : '', {\n factory: tuiExtractI18n('clear'),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_NOTHING_FOUND_MESSAGE' : '',\n {factory: tuiExtractI18n('nothingFoundMessage')},\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_DEFAULT_ERROR_MESSAGE' : '',\n {factory: tuiExtractI18n('defaultErrorMessage')},\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(ngDevMode ? 'TUI_SPIN_TEXTS' : '', {\n factory: tuiExtractI18n('spinTexts'),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n ngDevMode ? 'TUI_SHORT_WEEK_DAYS' : '',\n {factory: tuiExtractI18n('shortWeekDays')},\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_START = new InjectionToken(ngDevMode ? 'TUI_ICON_START' : '', {\n factory: () => '',\n});\nexport const TUI_ICON_END = new InjectionToken(ngDevMode ? 'TUI_ICON_END' : '', {\n factory: () => '',\n});\n","import {type FactoryProvider, inject, InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_REGISTRY = new InjectionToken<Record<string, string>>(\n ngDevMode ? 'TUI_ICON_REGISTRY' : '',\n {factory: () => ({})},\n);\n\nexport function tuiIconsProvider(icons: Record<string, string>): FactoryProvider {\n return {\n provide: TUI_ICON_REGISTRY,\n useFactory: () => ({\n ...(inject(TUI_ICON_REGISTRY, {skipSelf: true, optional: true}) || {}),\n ...Object.fromEntries(\n Object.entries(icons).map(([key, value]) => [\n key,\n `\"data:image/svg+xml;charset=UTF-8,${encodeURIComponent(value)}\"`,\n ]),\n ),\n }),\n };\n}\n","import {inject, InjectionToken, type Provider} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nimport {TUI_ASSETS_PATH} from './assets-path';\nimport {TUI_ICON_REGISTRY} from './icons';\n\nexport const TUI_ICON_RESOLVER = new InjectionToken<TuiStringHandler<string>>(\n ngDevMode ? 'TUI_ICON_RESOLVER' : '',\n {\n factory: () => {\n const path = inject(TUI_ASSETS_PATH);\n\n // regex for @{any text}. used as a default fallback, returns path to svg from icon pack\n return (icon) =>\n `${path}/${icon.replace(/@[a-z]+\\./i, '').replaceAll('.', '/')}.svg`;\n },\n },\n);\n\nexport function tuiGetIconMode(icon?: string | null): string | undefined {\n return icon?.match(/@([^.]*)\\./)?.[1] || icon || undefined;\n}\n\nexport function tuiInjectIconResolver(): TuiStringHandler<string> {\n const icons = inject(TUI_ICON_REGISTRY);\n const resolver = inject(TUI_ICON_RESOLVER);\n\n return (icon) => {\n if (!icon || icon.includes('/')) {\n return icon.replace(/@[a-z]+\\./i, '');\n }\n\n return icon.startsWith('@font.')\n ? icon.replace('@font.', '')\n : (icons[icon] ?? resolver(icon));\n };\n}\n\nexport function tuiIconResolverProvider(useValue: TuiStringHandler<string>): Provider {\n return {provide: TUI_ICON_RESOLVER, useValue};\n}\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {type TuiRounding} from '@taiga-ui/cdk/types';\n\nexport type TuiDecimalMode = 'always' | 'not-zero' | 'pad';\nexport type TuiDecimalSymbol = ',' | '.';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport interface TuiNumberFormatSettings {\n /**\n * Number of digits of decimal part.\n * @note Use `Infinity` to keep untouched.\n */\n readonly precision: number;\n /**\n * Separator between the integer and the decimal part.\n * @example 0,42 (',' by default)\n */\n readonly decimalSeparator: TuiDecimalSymbol;\n /**\n * Rounding method.\n */\n readonly rounding: TuiRounding;\n /**\n * Separator between thousands.\n * @example 360 000 (' ' by default)\n */\n readonly thousandSeparator: string;\n /**\n * Decimal part display mode. ('pad' by default)\n */\n readonly decimalMode: TuiDecimalMode;\n}\n\nexport const TUI_DEFAULT_NUMBER_FORMAT: TuiNumberFormatSettings = {\n precision: Number.NaN,\n decimalSeparator: '.',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n rounding: 'truncate',\n decimalMode: 'pad',\n};\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<Signal<TuiNumberFormatSettings>>(\n ngDevMode ? 'TUI_NUMBER_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_NUMBER_FORMAT)},\n);\n\nexport function tuiNumberFormatProvider(\n options: Partial<TuiNumberFormatSettings>,\n): Provider {\n return {\n provide: TUI_NUMBER_FORMAT,\n useFactory: (): Signal<TuiNumberFormatSettings> => {\n const parent = inject(TUI_NUMBER_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_NUMBER_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, type Observable, share, switchMap, takeUntil} from 'rxjs';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_SELECTION_STREAM' : '',\n {\n factory: () => {\n const doc = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(doc, 'selectionchange'),\n tuiTypedFromEvent(doc, 'mouseup'),\n tuiTypedFromEvent(doc, 'mousedown').pipe(\n switchMap(() =>\n tuiTypedFromEvent(doc, 'mousemove').pipe(\n takeUntil(tuiTypedFromEvent(doc, 'mouseup')),\n ),\n ),\n ),\n tuiTypedFromEvent(doc, 'keydown'),\n tuiTypedFromEvent(doc, 'keyup'),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken, type Signal} from '@angular/core';\n\nexport const TUI_TEXTFIELD_VALUE = new InjectionToken<Signal<string>>(\n ngDevMode ? 'TUI_TEXTFIELD_VALUE' : '',\n);\n","import {InjectionToken, type Provider, type Signal} from '@angular/core';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>\n>(ngDevMode ? 'TUI_VALIDATION_ERRORS' : '', {factory: () => ({})});\n\nexport const tuiValidationErrorsProvider = (\n useValue: Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>,\n): Provider => ({provide: TUI_VALIDATION_ERRORS, useValue});\n","import {inject, InjectionToken, type Provider, type Type} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {type TuiRectAccessor} from '@taiga-ui/core/classes';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(\n ngDevMode ? 'TUI_VIEWPORT' : '',\n {\n factory: () => {\n const win = inject(WA_WINDOW);\n\n return {\n type: 'viewport',\n getClientRect() {\n const {height = 0, offsetTop = 0} = win.visualViewport || {};\n const rect = {\n top: 0,\n left: 0,\n right: win.innerWidth,\n bottom: win.innerHeight,\n width: win.innerWidth,\n height: height + offsetTop || win.innerHeight,\n x: 0,\n y: 0,\n };\n\n return {\n ...rect,\n toJSON: () => JSON.stringify(rect),\n };\n },\n };\n },\n },\n);\n\nexport function tuiAsViewport(accessor: Type<TuiRectAccessor>): Provider {\n return tuiProvide(TUI_VIEWPORT, accessor);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAGO,MAAM,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;AACI,IAAA,OAAO,EAAE,MACL,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,UAAU,GAAG,kCAAkC;AACxE,SAAA,OAAO,IAAI,KAAK;AAC5B,CAAA;;ACLL;;AAEG;AACI,MAAM,oBAAoB,GAAG,IAAI,cAAc,CAClD,SAAS,GAAG,sBAAsB,GAAG,EAAE,EACvC,EAAC,OAAO,EAAE,OAAO,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAC;;ACPlD,MAAM,eAAe,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAAE;AAClF,IAAA,OAAO,EAAE,MAAM,uBAAuB;AACzC,CAAA;AAEK,SAAU,qBAAqB,CAAC,QAAgB,EAAA;IAClD,OAAO;AACH,QAAA,OAAO,EAAE,eAAe;QACxB,QAAQ;KACX;AACL;;ACRO,MAAM,aAAa,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,eAAe,GAAG,EAAE,EAAE;AAC9E,IAAA,OAAO,EAAE,MAAM,IAAI;AACtB,CAAA;AAEK,SAAU,cAAc,CAAC,CAAgB,EAAA;AAC3C,IAAA,OAAO,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;AACvC;;ACAA;;AAEG;AACI,MAAM,SAAS,GAAG,IAAI,cAAc,CAAW,SAAS,GAAG,WAAW,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,MAAM,EAAE,GAAG;AACX,QAAA,YAAY,EAAE,IAAI;AAClB,QAAA,YAAY,EAAE,QAAQ;KACzB,CAAC;AACL,CAAA;;ACVM,MAAM,cAAc,GAAG,IAAI,cAAc,CAC5C,SAAS,GAAG,gBAAgB,GAAG,EAAE,EACjC;IACI,OAAO,EAAE,MAAK;QACV,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7C,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;QAC/B,MAAM,MAAM,GAAa,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnE,QAAA,MAAM,MAAM,GAA0C,MAAM,CAAC,IAAI,CAC7D,KAAK,CACR,CAAC,MAAM,CACJ,CAAC,GAAG,EAAE,GAAG,MAAM;AACX,YAAA,GAAG,GAAG;AACN,YAAA,CAAC,KAAK,CAAC,GAA4B,CAAC,GAAG,GAAG;SAC7C,CAAC,EACF,EAAE,CACL;QAED,OAAO,QAAQ,CAAC,MAAK;AACjB,YAAA,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,EAAE;AACtB,YAAA,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,KAAK,CAAC;AAC/C,YAAA,MAAM,KAAK,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC;AAEnD,YAAA,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,cAAc;AAC1C,QAAA,CAAC,CAAC;IACN,CAAC;AACJ,CAAA;;AC/BL;AACA,MAAM,YAAY,GAAmB;AACjC,IAAA,KAAK,EAAE,YAAY;AACnB,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,KAAK,EAAE,mBAAmB;AAC1B,IAAA,IAAI,EAAE,oBAAoB;AAC1B,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,SAAS,EAAE,mBAAmB;AAC9B,IAAA,SAAS,EAAE,oBAAoB;CAClC;AAaM,MAAM,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,GAAG,gBAAgB,CAAC,YAAY;;ACbhF,MAAM,yBAAyB,GAAG;AAClC,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC,EAAC,OAAO,EAAE,MAAM,yBAAyB,EAAC;AAEvC,MAAM,aAAa,GAAG,IAAI,cAAc,CAE7C,SAAS,GAAG,eAAe,GAAG,EAAE,EAAE;IAChC,OAAO,EAAE,MAAK;QACV,IAAI,SAAS,GAAG,IAAI;AAEpB,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACrC,MAAM,KAAK,GAAG,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,8BAA8B,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC;AAE7E,QAAA,SAAS,CAAC,KAAK,EAAE,QAAQ;AACpB,aAAA,IAAI,CACD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EACpC,kBAAkB,EAAE;aAEvB,SAAS,CAAC,MAAK;YACZ,SAAS,GAAG,IAAI;AAChB,YAAA,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;AAC7B,QAAA,CAAC,CAAC;QAEN,SAAS,CAAC,MAAK;YACX,MAAM,CAAC,MAAK;AACR,gBAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBAE9B,IAAI,SAAS,EAAE;oBACX,SAAS,GAAG,KAAK;gBACrB;qBAAO;AACH,oBAAA,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC;gBAChC;AACJ,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YACzB,KAAK,EAAE,MAAK;AACR,gBAAA,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC;gBACxB,SAAS,GAAG,IAAI;AAChB,gBAAA,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;YAC7B,CAAC;AACJ,SAAA,CAAC;IACN,CAAC;AACJ,CAAA;;AClCM,MAAM,uBAAuB,GAA0B;AAC1D,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,SAAS,EAAE,GAAG;;AAGlB;;AAEG;AACI,MAAM,eAAe,GAAG,IAAI,cAAc,CAC7C,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAClC,EAAC,OAAO,EAAE,MAAM,MAAM,CAAC,uBAAuB,CAAC,EAAC;AAG9C,SAAU,qBAAqB,CAAC,OAAuC,EAAA;IACzE,OAAO;AACH,QAAA,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,MAAoC;AAC5C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;AAExE,YAAA,OAAO,QAAQ,CAAC,OAAO;AACnB,gBAAA,IAAI,MAAM,IAAI,IAAI,uBAAuB,CAAC;AAC1C,gBAAA,GAAG,OAAO;AACb,aAAA,CAAC,CAAC;QACP,CAAC;KACJ;AACL;;AC/CA;;AAEG;AACI,MAAM,UAAU,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,YAAY,GAAG,EAAE,EAAE;AACxE,IAAA,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;AACpC,CAAA;AAED;;AAEG;AACI,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC;AACnC,CAAA;AAED;;AAEG;AACI,MAAM,aAAa,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,eAAe,GAAG,EAAE,EAAE;AAC9E,IAAA,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC;AAClC,CAAA;AAED;;AAEG;AACI,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC;AACnC,CAAA;AAED;;AAEG;AACI,MAAM,yBAAyB,GAAG,IAAI,cAAc,CACvD,SAAS,GAAG,2BAA2B,GAAG,EAAE,EAC5C,EAAC,OAAO,EAAE,cAAc,CAAC,qBAAqB,CAAC,EAAC;AAGpD;;AAEG;AACI,MAAM,yBAAyB,GAAG,IAAI,cAAc,CACvD,SAAS,GAAG,2BAA2B,GAAG,EAAE,EAC5C,EAAC,OAAO,EAAE,cAAc,CAAC,qBAAqB,CAAC,EAAC;AAGpD;;AAEG;AACI,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,cAAc,CAAC,WAAW,CAAC;AACvC,CAAA;AAED;;AAEG;AACI,MAAM,mBAAmB,GAAG,IAAI,cAAc,CACjD,SAAS,GAAG,qBAAqB,GAAG,EAAE,EACtC,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,CAAC,EAAC;;ACzDvC,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,gBAAgB,GAAG,EAAE,EAAE;AAChF,IAAA,OAAO,EAAE,MAAM,EAAE;AACpB,CAAA;AACM,MAAM,YAAY,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,cAAc,GAAG,EAAE,EAAE;AAC5E,IAAA,OAAO,EAAE,MAAM,EAAE;AACpB,CAAA;;ACLM,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC,EAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAC;AAGnB,SAAU,gBAAgB,CAAC,KAA6B,EAAA;IAC1D,OAAO;AACH,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,UAAU,EAAE,OAAO;AACf,YAAA,IAAI,MAAM,CAAC,iBAAiB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,IAAI,EAAE,CAAC;YACtE,GAAG,MAAM,CAAC,WAAW,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;gBACxC,GAAG;AACH,gBAAA,CAAA,kCAAA,EAAqC,kBAAkB,CAAC,KAAK,CAAC,CAAA,CAAA,CAAG;AACpE,aAAA,CAAC,CACL;SACJ,CAAC;KACL;AACL;;ACdO,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC;IACI,OAAO,EAAE,MAAK;AACV,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC;;QAGpC,OAAO,CAAC,IAAI,KACR,GAAG,IAAI,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA,IAAA,CAAM;IAC5E,CAAC;AACJ,CAAA;AAGC,SAAU,cAAc,CAAC,IAAoB,EAAA;AAC/C,IAAA,OAAO,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,SAAS;AAC9D;SAEgB,qBAAqB,GAAA;AACjC,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,CAAC;AACvC,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAE1C,OAAO,CAAC,IAAI,KAAI;QACZ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QACzC;AAEA,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ;cACzB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE;AAC3B,eAAG,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzC,IAAA,CAAC;AACL;AAEM,SAAU,uBAAuB,CAAC,QAAkC,EAAA;AACtE,IAAA,OAAO,EAAC,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAC;AACjD;;ACGO,MAAM,yBAAyB,GAA4B;IAC9D,SAAS,EAAE,MAAM,CAAC,GAAG;AACrB,IAAA,gBAAgB,EAAE,GAAG;AACrB,IAAA,iBAAiB,EAAE,mBAAmB;AACtC,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,WAAW,EAAE,KAAK;;AAGtB;;AAEG;AACI,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC,EAAC,OAAO,EAAE,MAAM,MAAM,CAAC,yBAAyB,CAAC,EAAC;AAGhD,SAAU,uBAAuB,CACnC,OAAyC,EAAA;IAEzC,OAAO;AACH,QAAA,OAAO,EAAE,iBAAiB;QAC1B,UAAU,EAAE,MAAsC;AAC9C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;AAE1E,YAAA,OAAO,QAAQ,CAAC,OAAO;AACnB,gBAAA,IAAI,MAAM,IAAI,IAAI,yBAAyB,CAAC;AAC5C,gBAAA,GAAG,OAAO;AACb,aAAA,CAAC,CAAC;QACP,CAAC;KACJ;AACL;;ACpEA;;AAEG;AACI,MAAM,oBAAoB,GAAG,IAAI,cAAc,CAClD,SAAS,GAAG,sBAAsB,GAAG,EAAE,EACvC;IACI,OAAO,EAAE,MAAK;AACV,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE5B,QAAA,OAAO,KAAK,CACR,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,CAAC,EACzC,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,EACjC,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CACpC,SAAS,CAAC,MACN,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CACpC,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAC/C,CACJ,CACJ,EACD,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,EACjC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAClC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;AACJ,CAAA;;AC1BE,MAAM,mBAAmB,GAAG,IAAI,cAAc,CACjD,SAAS,GAAG,qBAAqB,GAAG,EAAE;;ACAnC,MAAM,qBAAqB,GAAG,IAAI,cAAc,CAErD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EAAE,EAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAC;AAE1D,MAAM,2BAA2B,GAAG,CACvC,QAA2E,MAC/D,EAAC,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAC;;ACJ1D;;AAEG;AACI,MAAM,YAAY,GAAG,IAAI,cAAc,CAC1C,SAAS,GAAG,cAAc,GAAG,EAAE,EAC/B;IACI,OAAO,EAAE,MAAK;AACV,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;QAE7B,OAAO;AACH,YAAA,IAAI,EAAE,UAAU;YAChB,aAAa,GAAA;AACT,gBAAA,MAAM,EAAC,MAAM,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,EAAC,GAAG,GAAG,CAAC,cAAc,IAAI,EAAE;AAC5D,gBAAA,MAAM,IAAI,GAAG;AACT,oBAAA,GAAG,EAAE,CAAC;AACN,oBAAA,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,GAAG,CAAC,UAAU;oBACrB,MAAM,EAAE,GAAG,CAAC,WAAW;oBACvB,KAAK,EAAE,GAAG,CAAC,UAAU;AACrB,oBAAA,MAAM,EAAE,MAAM,GAAG,SAAS,IAAI,GAAG,CAAC,WAAW;AAC7C,oBAAA,CAAC,EAAE,CAAC;AACJ,oBAAA,CAAC,EAAE,CAAC;iBACP;gBAED,OAAO;AACH,oBAAA,GAAG,IAAI;oBACP,MAAM,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;iBACrC;YACL,CAAC;SACJ;IACL,CAAC;AACJ,CAAA;AAGC,SAAU,aAAa,CAAC,QAA+B,EAAA;AACzD,IAAA,OAAO,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC;AAC7C;;ACzCA;;AAEG;;;;"}