@taiga-ui/core 4.52.0-canary.24b31eb → 4.52.0-canary.2c75afa

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 (166) hide show
  1. package/classes/accessors.d.ts +1 -1
  2. package/components/alert/alert.component.d.ts +5 -6
  3. package/components/alert/alert.directive.d.ts +4 -3
  4. package/components/alert/alert.interfaces.d.ts +6 -6
  5. package/components/alert/alert.service.d.ts +6 -2
  6. package/components/alert/alert.tokens.d.ts +1 -7
  7. package/components/alert/index.d.ts +0 -1
  8. package/components/data-list/data-list.component.d.ts +1 -1
  9. package/components/dialog/dialog.component.d.ts +3 -4
  10. package/components/dialog/dialog.directive.d.ts +4 -3
  11. package/components/dialog/dialog.options.d.ts +2 -3
  12. package/components/dialog/dialog.providers.d.ts +1 -2
  13. package/components/dialog/dialog.service.d.ts +5 -2
  14. package/components/dialog/index.d.ts +0 -1
  15. package/components/error/error.component.d.ts +1 -1
  16. package/components/index.d.ts +1 -1
  17. package/components/link/link.directive.d.ts +2 -2
  18. package/components/loader/loader.component.d.ts +7 -7
  19. package/components/modal/index.d.ts +2 -0
  20. package/components/modal/modal.component.d.ts +17 -0
  21. package/components/modal/modal.service.d.ts +13 -0
  22. package/components/notification/notification.directive.d.ts +6 -11
  23. package/components/root/root.component.d.ts +1 -1
  24. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  25. package/components/scrollbar/scrollbar.component.d.ts +2 -2
  26. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  27. package/components/spin-button/spin-button.component.d.ts +8 -9
  28. package/components/textfield/index.d.ts +1 -3
  29. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +5 -6
  30. package/components/textfield/textfield.component.d.ts +5 -7
  31. package/components/textfield/textfield.d.ts +2 -3
  32. package/components/textfield/textfield.directive.d.ts +10 -13
  33. package/components/textfield/textfield.options.d.ts +8 -11
  34. package/directives/appearance/appearance.directive.d.ts +1 -1
  35. package/directives/appearance/appearance.options.d.ts +1 -1
  36. package/directives/date-format/date-format.directive.d.ts +3 -7
  37. package/directives/dropdown/dropdown-content.directive.d.ts +9 -0
  38. package/directives/dropdown/dropdown-position.directive.d.ts +1 -1
  39. package/directives/dropdown/dropdown.d.ts +2 -2
  40. package/directives/dropdown/dropdown.directive.d.ts +1 -2
  41. package/directives/dropdown/index.d.ts +1 -3
  42. package/directives/hint/hint-describe.directive.d.ts +4 -6
  43. package/directives/hint/hint-host.directive.d.ts +2 -2
  44. package/directives/hint/hint-hover.directive.d.ts +3 -4
  45. package/directives/hint/hint-manual.directive.d.ts +2 -2
  46. package/directives/hint/hint-options.directive.d.ts +1 -1
  47. package/directives/hint/hint-overflow.directive.d.ts +2 -2
  48. package/directives/hint/hint-position.directive.d.ts +4 -5
  49. package/directives/hint/hint-unstyled.component.d.ts +2 -7
  50. package/directives/hint/hint.component.d.ts +7 -6
  51. package/directives/hint/hint.directive.d.ts +9 -11
  52. package/directives/hint/index.d.ts +0 -2
  53. package/directives/index.d.ts +1 -0
  54. package/directives/notification/index.d.ts +2 -0
  55. package/directives/notification/notification.directive.d.ts +11 -0
  56. package/directives/notification/notification.service.d.ts +12 -0
  57. package/directives/number-format/number-format.directive.d.ts +3 -7
  58. package/directives/popup/popup.directive.d.ts +6 -5
  59. package/directives/popup/popup.service.d.ts +1 -1
  60. package/directives/popup/popups.component.d.ts +2 -2
  61. package/fesm2022/taiga-ui-core-classes.mjs +1 -1
  62. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-core-components-alert.mjs +57 -96
  64. package/fesm2022/taiga-ui-core-components-alert.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-core-components-calendar.mjs +7 -8
  67. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  69. package/fesm2022/taiga-ui-core-components-data-list.mjs +4 -11
  70. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  71. package/fesm2022/taiga-ui-core-components-dialog.mjs +34 -91
  72. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +1 -1
  73. package/fesm2022/taiga-ui-core-components-error.mjs +2 -2
  74. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  75. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-core-components-icon.mjs +1 -2
  77. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-core-components-link.mjs +7 -9
  80. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-core-components-loader.mjs +12 -25
  82. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-core-components-modal.mjs +89 -0
  84. package/fesm2022/taiga-ui-core-components-modal.mjs.map +1 -0
  85. package/fesm2022/taiga-ui-core-components-notification.mjs +12 -28
  86. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  87. package/fesm2022/taiga-ui-core-components-root.mjs +3 -14
  88. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +35 -43
  90. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-components-spin-button.mjs +14 -27
  92. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-core-components-textfield.mjs +127 -271
  94. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-core-components.mjs +1 -1
  96. package/fesm2022/taiga-ui-core-directives-appearance.mjs +0 -1
  97. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-core-directives-date-format.mjs +24 -18
  99. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-core-directives-dropdown.mjs +44 -104
  101. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-core-directives-hint.mjs +98 -189
  104. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-core-directives-icons.mjs +0 -1
  106. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +2 -5
  108. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-core-directives-notification.mjs +73 -0
  110. package/fesm2022/taiga-ui-core-directives-notification.mjs.map +1 -0
  111. package/fesm2022/taiga-ui-core-directives-number-format.mjs +30 -18
  112. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  113. package/fesm2022/taiga-ui-core-directives-popup.mjs +13 -20
  114. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +1 -1
  115. package/fesm2022/taiga-ui-core-directives-title.mjs.map +1 -1
  116. package/fesm2022/taiga-ui-core-directives.mjs +1 -0
  117. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -1
  119. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +1 -1
  120. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -1
  121. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -1
  123. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +1 -1
  124. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -1
  125. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -12
  127. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -1
  129. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-core-pipes-month.mjs +2 -2
  131. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -1
  133. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-core-tokens.mjs +19 -9
  135. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -0
  137. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  138. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +1 -1
  139. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  140. package/package.json +13 -6
  141. package/pipes/format-number/format-number.pipe.d.ts +5 -3
  142. package/styles/components/link.less +1 -0
  143. package/styles/mixins/appearance.less +1 -1
  144. package/styles/mixins/mixins.less +0 -5
  145. package/styles/mixins/mixins.scss +0 -5
  146. package/styles/mixins/slider.less +24 -14
  147. package/styles/theme/variables.less +2 -4
  148. package/tokens/date-format.d.ts +2 -3
  149. package/tokens/i18n.d.ts +7 -7
  150. package/tokens/number-format.d.ts +2 -3
  151. package/types/index.d.ts +0 -1
  152. package/components/alert/alerts.component.d.ts +0 -12
  153. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  154. package/components/dialog/dialogs.component.d.ts +0 -8
  155. package/components/header/header.directive.d.ts +0 -17
  156. package/components/header/index.d.ts +0 -1
  157. package/components/textfield/select.directive.d.ts +0 -19
  158. package/components/textfield/textfield-dropdown.directive.d.ts +0 -16
  159. package/directives/dropdown/dropdown-portal.directive.d.ts +0 -14
  160. package/directives/dropdown/dropdown.service.d.ts +0 -6
  161. package/directives/dropdown/dropdowns.component.d.ts +0 -9
  162. package/directives/hint/hint.service.d.ts +0 -13
  163. package/directives/hint/hints.component.d.ts +0 -12
  164. package/fesm2022/taiga-ui-core-components-header.mjs +0 -42
  165. package/fesm2022/taiga-ui-core-components-header.mjs.map +0 -1
  166. package/types/portal-item.d.ts +0 -9
@@ -4,7 +4,7 @@ import * as i1 from "@taiga-ui/cdk/directives/transitioned";
4
4
  export declare class TuiAppearance {
5
5
  protected readonly nothing: undefined;
6
6
  protected readonly modes: import("@angular/core").Signal<string | null>;
7
- readonly tuiAppearance: import("@angular/core").InputSignal<"accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string)>;
7
+ readonly tuiAppearance: import("@angular/core").InputSignal<"" | ("accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string))>;
8
8
  readonly tuiAppearanceState: import("@angular/core").InputSignal<TuiInteractiveState | null>;
9
9
  readonly tuiAppearanceFocus: import("@angular/core").InputSignal<boolean | null>;
10
10
  readonly tuiAppearanceMode: import("@angular/core").InputSignal<string | readonly string[] | null>;
@@ -5,7 +5,7 @@ import { type TuiLooseUnion } from '@taiga-ui/cdk/types';
5
5
  */
6
6
  type Appearance = TuiLooseUnion<'accent' | 'action-destructive' | 'action-grayscale' | 'action' | 'flat-destructive' | 'flat-grayscale' | 'flat' | 'floating' | 'glass' | 'icon' | 'info' | 'negative' | 'neutral' | 'outline-destructive' | 'outline-grayscale' | 'outline' | 'positive' | 'primary-destructive' | 'primary-grayscale' | 'primary' | 'secondary-destructive' | 'secondary-grayscale' | 'secondary' | 'textfield' | 'warning'>;
7
7
  export interface TuiAppearanceOptions {
8
- readonly appearance: Appearance;
8
+ readonly appearance: Appearance | '';
9
9
  }
10
10
  export declare const TUI_APPEARANCE_DEFAULT_OPTIONS: TuiAppearanceOptions;
11
11
  export declare const TUI_APPEARANCE_OPTIONS: InjectionToken<TuiAppearanceOptions>;
@@ -1,11 +1,7 @@
1
1
  import { type TuiDateFormatSettings } from '@taiga-ui/core/tokens';
2
- import { Observable } from 'rxjs';
3
2
  import * as i0 from "@angular/core";
4
- export declare class TuiDateFormat extends Observable<TuiDateFormatSettings> {
5
- private readonly settings;
6
- private readonly parent;
7
- constructor();
8
- set tuiDateFormat(format: Partial<TuiDateFormatSettings>);
3
+ export declare class TuiDateFormat {
4
+ readonly tuiDateFormat: import("@angular/core").InputSignal<Partial<TuiDateFormatSettings>>;
9
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDateFormat, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDateFormat, "[tuiDateFormat]", never, { "tuiDateFormat": { "alias": "tuiDateFormat"; "required": false; }; }, {}, never, never, true, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDateFormat, "[tuiDateFormat]", never, { "tuiDateFormat": { "alias": "tuiDateFormat"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
11
7
  }
@@ -0,0 +1,9 @@
1
+ import { type OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TuiDropdownContent implements OnDestroy {
4
+ private readonly directive;
5
+ constructor();
6
+ ngOnDestroy(): void;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownContent, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownContent, "ng-template[tuiDropdown]", never, {}, {}, never, never, true, never>;
9
+ }
@@ -10,7 +10,7 @@ export declare class TuiDropdownPosition extends TuiPositionAccessor {
10
10
  private previous?;
11
11
  readonly directionChange: EventEmitter<TuiVerticalDirection>;
12
12
  readonly type = "dropdown";
13
- readonly accessor: TuiRectAccessor | null;
13
+ readonly accessor: TuiRectAccessor;
14
14
  emitDirection(direction: TuiVerticalDirection): void;
15
15
  getPosition({ width, height }: DOMRect): TuiPoint;
16
16
  getAlign(align: TuiDropdownAlign): TuiDropdownAlign;
@@ -1,14 +1,14 @@
1
1
  import { TuiDropdownComponent } from './dropdown.component';
2
2
  import { TuiDropdownDirective } from './dropdown.directive';
3
3
  import { TuiDropdownDriverDirective } from './dropdown.driver';
4
+ import { TuiDropdownContent } from './dropdown-content.directive';
4
5
  import { TuiDropdownContext } from './dropdown-context.directive';
5
6
  import { TuiDropdownHover } from './dropdown-hover.directive';
6
7
  import { TuiDropdownManual } from './dropdown-manual.directive';
7
8
  import { TuiDropdownOpen } from './dropdown-open.directive';
8
9
  import { TuiDropdownOpenLegacy } from './dropdown-open-legacy.directive';
9
10
  import { TuiDropdownOptionsDirective } from './dropdown-options.directive';
10
- import { TuiDropdownPortal } from './dropdown-portal.directive';
11
11
  import { TuiDropdownPosition } from './dropdown-position.directive';
12
12
  import { TuiDropdownPositionSided } from './dropdown-position-sided.directive';
13
13
  import { TuiDropdownSelection } from './dropdown-selection.directive';
14
- export declare const TuiDropdown: readonly [typeof TuiDropdownOptionsDirective, typeof TuiDropdownDriverDirective, typeof TuiDropdownDirective, typeof TuiDropdownComponent, typeof TuiDropdownOpen, typeof TuiDropdownOpenLegacy, typeof TuiDropdownPortal, typeof TuiDropdownManual, typeof TuiDropdownHover, typeof TuiDropdownContext, typeof TuiDropdownPosition, typeof TuiDropdownPositionSided, typeof TuiDropdownSelection];
14
+ export declare const TuiDropdown: readonly [typeof TuiDropdownOptionsDirective, typeof TuiDropdownDriverDirective, typeof TuiDropdownDirective, typeof TuiDropdownComponent, typeof TuiDropdownOpen, typeof TuiDropdownOpenLegacy, typeof TuiDropdownManual, typeof TuiDropdownHover, typeof TuiDropdownContent, typeof TuiDropdownContext, typeof TuiDropdownPosition, typeof TuiDropdownPositionSided, typeof TuiDropdownSelection];
@@ -1,12 +1,11 @@
1
1
  import { type AfterViewChecked, type ComponentRef, type OnDestroy } from '@angular/core';
2
2
  import { type TuiContext } from '@taiga-ui/cdk/types';
3
3
  import { type TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
4
- import { type TuiPortalItem } from '@taiga-ui/core/types';
5
4
  import { PolymorpheusComponent, type PolymorpheusContent } from '@taiga-ui/polymorpheus';
6
5
  import * as i0 from "@angular/core";
7
6
  import * as i1 from "./dropdown.driver";
8
7
  import * as i2 from "./dropdown-position.directive";
9
- export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy, TuiPortalItem, TuiRectAccessor, TuiVehicle {
8
+ export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy, TuiRectAccessor, TuiVehicle {
10
9
  private readonly refresh$;
11
10
  private readonly service;
12
11
  private readonly cdr;
@@ -4,7 +4,7 @@ export * from './dropdown.component';
4
4
  export * from './dropdown.directive';
5
5
  export * from './dropdown.driver';
6
6
  export * from './dropdown.providers';
7
- export * from './dropdown.service';
7
+ export * from './dropdown-content.directive';
8
8
  export * from './dropdown-context.directive';
9
9
  export * from './dropdown-hover.directive';
10
10
  export * from './dropdown-hover.options';
@@ -13,9 +13,7 @@ export * from './dropdown-manual.directive';
13
13
  export * from './dropdown-open.directive';
14
14
  export * from './dropdown-open-legacy.directive';
15
15
  export * from './dropdown-options.directive';
16
- export * from './dropdown-portal.directive';
17
16
  export * from './dropdown-position.directive';
18
17
  export * from './dropdown-position-sided.directive';
19
18
  export * from './dropdown-selection.directive';
20
- export * from './dropdowns.component';
21
19
  export * from './with-dropdown-open.directive';
@@ -3,14 +3,12 @@ import * as i0 from "@angular/core";
3
3
  export declare class TuiHintDescribe extends TuiDriver {
4
4
  private readonly doc;
5
5
  private readonly el;
6
- private readonly zone;
7
- private readonly id$;
8
- private readonly stream$;
6
+ protected readonly element: import("@angular/core").Signal<Element>;
7
+ readonly id: import("@angular/core").InputSignal<string | null | undefined>;
9
8
  readonly type = "hint";
9
+ protected readonly stream$: import("rxjs").Observable<boolean>;
10
10
  constructor();
11
- set tuiHintDescribe(id: string | null | undefined);
12
- private get element();
13
11
  private get focused();
14
12
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintDescribe, never>;
15
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintDescribe, "[tuiHintDescribe]", never, { "tuiHintDescribe": { "alias": "tuiHintDescribe"; "required": false; }; }, {}, never, never, true, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintDescribe, "[tuiHintDescribe]", never, { "id": { "alias": "tuiHintDescribe"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
14
  }
@@ -1,9 +1,9 @@
1
1
  import { TuiRectAccessor } from '@taiga-ui/core/classes';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiHintHost extends TuiRectAccessor {
4
- tuiHintHost?: HTMLElement;
4
+ readonly tuiHintHost: import("@angular/core").InputSignal<HTMLElement | undefined>;
5
5
  readonly type = "hint";
6
6
  getClientRect(): DOMRect;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintHost, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintHost, "[tuiHint][tuiHintHost]", never, { "tuiHintHost": { "alias": "tuiHintHost"; "required": false; }; }, {}, never, never, true, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintHost, "[tuiHint][tuiHintHost]", never, { "tuiHintHost": { "alias": "tuiHintHost"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
9
  }
@@ -1,5 +1,4 @@
1
1
  import { TuiDriver } from '@taiga-ui/core/classes';
2
- import { type TuiHintOptions } from './hint-options.directive';
3
2
  import * as i0 from "@angular/core";
4
3
  export declare class TuiHintHover extends TuiDriver {
5
4
  private readonly isMobile;
@@ -10,13 +9,13 @@ export declare class TuiHintHover extends TuiDriver {
10
9
  private readonly toggle$;
11
10
  private readonly stream$;
12
11
  private readonly parent;
13
- tuiHintShowDelay: TuiHintOptions['showDelay'];
14
- tuiHintHideDelay: TuiHintOptions['hideDelay'];
12
+ readonly showDelay: import("@angular/core").InputSignal<number>;
13
+ readonly hideDelay: import("@angular/core").InputSignal<number>;
15
14
  readonly type = "hint";
16
15
  enabled: boolean;
17
16
  constructor();
18
17
  toggle(visible?: boolean): void;
19
18
  close(): void;
20
19
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintHover, never>;
21
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintHover, never, ["tuiHintHover"], { "tuiHintShowDelay": { "alias": "tuiHintShowDelay"; "required": false; }; "tuiHintHideDelay": { "alias": "tuiHintHideDelay"; "required": false; }; }, {}, never, never, true, never>;
20
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintHover, never, ["tuiHintHover"], { "showDelay": { "alias": "tuiHintShowDelay"; "required": false; "isSignal": true; }; "hideDelay": { "alias": "tuiHintHideDelay"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
22
21
  }
@@ -4,10 +4,10 @@ import * as i0 from "@angular/core";
4
4
  export declare class TuiHintManual extends TuiDriver implements OnChanges {
5
5
  private readonly hover;
6
6
  private readonly stream$;
7
- tuiHintManual: boolean | null;
7
+ readonly visible: import("@angular/core").InputSignal<boolean | null>;
8
8
  readonly type = "hint";
9
9
  constructor();
10
10
  ngOnChanges(): void;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintManual, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintManual, "[tuiHint][tuiHintManual]", never, { "tuiHintManual": { "alias": "tuiHintManual"; "required": false; }; }, {}, never, never, true, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintManual, "[tuiHint][tuiHintManual]", never, { "visible": { "alias": "tuiHintManual"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
13
  }
@@ -25,7 +25,7 @@ export declare class TuiHintOptionsDirective implements TuiHintOptions, OnChange
25
25
  private readonly options;
26
26
  content: PolymorpheusContent;
27
27
  direction: TuiHintDirection | TuiHintDirection[];
28
- appearance: "accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string);
28
+ appearance: "" | ("accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string));
29
29
  showDelay: number;
30
30
  hideDelay: number;
31
31
  icon: string;
@@ -2,8 +2,8 @@ import * as i0 from "@angular/core";
2
2
  import * as i1 from "./hint.directive";
3
3
  export declare class TuiHintOverflow {
4
4
  private readonly hint;
5
- tuiHintOverflow: string | null;
5
+ readonly content: import("@angular/core").InputSignal<string | null>;
6
6
  protected onMouseEnter({ scrollWidth, clientWidth, textContent }: Element): void;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintOverflow, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintOverflow, "[tuiHintOverflow]", never, { "tuiHintOverflow": { "alias": "tuiHintOverflow"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiHintDirective; inputs: { "tuiHintAppearance": "tuiHintAppearance"; }; outputs: {}; }]>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintOverflow, "[tuiHintOverflow]", never, { "content": { "alias": "tuiHintOverflow"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiHintDirective; inputs: { "tuiHintAppearance": "tuiHintAppearance"; }; outputs: {}; }]>;
9
9
  }
@@ -1,7 +1,6 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { TuiPositionAccessor } from '@taiga-ui/core/classes';
3
2
  import { type TuiPoint } from '@taiga-ui/core/types';
4
- import { type TuiHintDirection, type TuiHintOptions } from './hint-options.directive';
3
+ import { type TuiHintDirection } from './hint-options.directive';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class TuiHintPosition extends TuiPositionAccessor {
7
6
  private readonly el;
@@ -9,13 +8,13 @@ export declare class TuiHintPosition extends TuiPositionAccessor {
9
8
  private readonly viewport;
10
9
  private readonly accessor;
11
10
  private readonly points;
12
- direction: TuiHintOptions['direction'];
13
- readonly directionChange: EventEmitter<TuiHintDirection>;
11
+ readonly direction: import("@angular/core").InputSignal<TuiHintDirection | TuiHintDirection[]>;
12
+ readonly directionChange: import("@angular/core").OutputEmitterRef<TuiHintDirection>;
14
13
  readonly type = "hint";
15
14
  emitDirection(direction: TuiHintDirection): void;
16
15
  getPosition(rect: DOMRect, el?: HTMLElement): TuiPoint;
17
16
  private get fallback();
18
17
  private checkPosition;
19
18
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintPosition, never>;
20
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintPosition, never, never, { "direction": { "alias": "tuiHintDirection"; "required": false; }; }, { "directionChange": "tuiHintDirectionChange"; }, never, never, true, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintPosition, never, never, { "direction": { "alias": "tuiHintDirection"; "required": false; "isSignal": true; }; }, { "directionChange": "tuiHintDirectionChange"; }, never, never, true, never>;
21
20
  }
@@ -1,12 +1,7 @@
1
- import { type WritableSignal } from '@angular/core';
2
- import { type TuiContext } from '@taiga-ui/cdk/types';
3
- import { type TuiPortalItem } from '@taiga-ui/core/types';
4
- import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
1
+ import { TuiHintDirective } from './hint.directive';
5
2
  import * as i0 from "@angular/core";
6
3
  export declare class TuiHintUnstyledComponent {
7
- protected readonly context: TuiContext<TuiPortalItem<any> & {
8
- content: WritableSignal<PolymorpheusContent>;
9
- }>;
4
+ protected readonly hint: TuiHintDirective<any>;
10
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintUnstyledComponent, never>;
11
6
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiHintUnstyledComponent, "ng-component", never, {}, {}, never, never, true, never>;
12
7
  }
@@ -6,23 +6,24 @@ import { TuiHintPointer } from './hint-pointer.directive';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@taiga-ui/core/directives/appearance";
8
8
  import * as i2 from "@taiga-ui/cdk/directives/animated";
9
+ import * as i3 from "@taiga-ui/cdk/directives/active-zone";
9
10
  export declare const TUI_HINT_PROVIDERS: (import("@angular/core").FactoryProvider | typeof TuiHoveredService | typeof TuiPositionService)[];
10
- export declare class TuiHintComponent<C = any> {
11
+ export declare class TuiHintComponent {
11
12
  private readonly el;
12
13
  private readonly hover;
13
14
  private readonly vvs;
14
15
  private readonly viewport;
15
16
  protected readonly pointer: TuiHintPointer | null;
16
17
  protected readonly accessor: TuiRectAccessor;
17
- protected readonly hint: TuiHintDirective<C>;
18
+ protected readonly hint: TuiHintDirective<any>;
18
19
  protected readonly isMobile: boolean;
19
- protected readonly content: import("@angular/core").WritableSignal<import("@taiga-ui/polymorpheus").PolymorpheusContent<C>>;
20
+ protected readonly content: import("@angular/core").InputSignal<import("@taiga-ui/polymorpheus").PolymorpheusContent<any>> | import("@angular/core").WritableSignal<string>;
20
21
  protected readonly theme: string | null | undefined;
21
- protected readonly appearance: import("@angular/core").WritableSignal<string>;
22
+ protected readonly appearance: import("@angular/core").Signal<string>;
22
23
  constructor();
23
24
  protected onClick(target: HTMLElement): void;
24
25
  private apply;
25
26
  private update;
26
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintComponent<any>, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiHintComponent<any>, "tui-hint", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.TuiAppearance; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAnimated; inputs: {}; outputs: {}; }]>;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintComponent, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiHintComponent, "tui-hint", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.TuiAppearance; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAnimated; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiActiveZone; inputs: {}; outputs: {}; }]>;
28
29
  }
@@ -1,26 +1,24 @@
1
- import { EventEmitter, type OnDestroy } from '@angular/core';
2
- import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
1
+ import { type OnChanges, type OnDestroy } from '@angular/core';
3
2
  import { type TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
4
- import { type TuiPortalItem } from '@taiga-ui/core/types';
5
3
  import { PolymorpheusComponent, type PolymorpheusContent } from '@taiga-ui/polymorpheus';
6
4
  import * as i0 from "@angular/core";
7
5
  import * as i1 from "./hint-driver.directive";
8
6
  import * as i2 from "./hint-hover.directive";
9
7
  import * as i3 from "./hint-position.directive";
10
- export declare class TuiHintDirective<C> implements OnDestroy, TuiPortalItem<C>, TuiRectAccessor, TuiVehicle {
8
+ export declare class TuiHintDirective<C> implements OnDestroy, OnChanges, TuiRectAccessor, TuiVehicle {
11
9
  private readonly service;
12
- context?: C;
13
- appearance: "accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string);
14
- readonly visible: EventEmitter<boolean>;
15
- content: import("@angular/core").WritableSignal<PolymorpheusContent<C>>;
10
+ private ref?;
11
+ readonly content: import("@angular/core").InputSignal<PolymorpheusContent<C>>;
12
+ readonly context: import("@angular/core").InputSignal<C | undefined>;
13
+ readonly appearance: import("@angular/core").InputSignal<"" | ("accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string))>;
14
+ readonly visible: import("@angular/core").OutputEmitterRef<boolean>;
16
15
  component: PolymorpheusComponent<any>;
17
16
  readonly el: HTMLElement;
18
- readonly activeZone?: TuiActiveZone | null | undefined;
19
17
  readonly type = "hint";
20
- set tuiHint(content: PolymorpheusContent<C>);
18
+ ngOnChanges(): void;
21
19
  ngOnDestroy(): void;
22
20
  getClientRect(): DOMRect;
23
21
  toggle(show: boolean): void;
24
22
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintDirective<any>, never>;
25
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintDirective<any>, "[tuiHint]:not(ng-container):not(ng-template)", never, { "context": { "alias": "tuiHintContext"; "required": false; }; "appearance": { "alias": "tuiHintAppearance"; "required": false; }; "tuiHint": { "alias": "tuiHint"; "required": false; }; }, { "visible": "tuiHintVisible"; }, never, never, true, [{ directive: typeof i1.TuiHintDriver; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintHover; inputs: { "tuiHintHideDelay": "tuiHintHideDelay"; "tuiHintShowDelay": "tuiHintShowDelay"; }; outputs: {}; }, { directive: typeof i3.TuiHintPosition; inputs: { "tuiHintDirection": "tuiHintDirection"; }; outputs: { "tuiHintDirectionChange": "tuiHintDirectionChange"; }; }]>;
23
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintDirective<any>, "[tuiHint]:not(ng-container):not(ng-template)", never, { "content": { "alias": "tuiHint"; "required": false; "isSignal": true; }; "context": { "alias": "tuiHintContext"; "required": false; "isSignal": true; }; "appearance": { "alias": "tuiHintAppearance"; "required": false; "isSignal": true; }; }, { "visible": "tuiHintVisible"; }, never, never, true, [{ directive: typeof i1.TuiHintDriver; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintHover; inputs: { "tuiHintHideDelay": "tuiHintHideDelay"; "tuiHintShowDelay": "tuiHintShowDelay"; }; outputs: {}; }, { directive: typeof i3.TuiHintPosition; inputs: { "tuiHintDirection": "tuiHintDirection"; }; outputs: { "tuiHintDirectionChange": "tuiHintDirectionChange"; }; }]>;
26
24
  }
@@ -2,7 +2,6 @@ export * from './hint';
2
2
  export * from './hint.component';
3
3
  export * from './hint.directive';
4
4
  export * from './hint.providers';
5
- export * from './hint.service';
6
5
  export * from './hint-describe.directive';
7
6
  export * from './hint-driver.directive';
8
7
  export * from './hint-host.directive';
@@ -13,4 +12,3 @@ export * from './hint-overflow.directive';
13
12
  export * from './hint-pointer.directive';
14
13
  export * from './hint-position.directive';
15
14
  export * from './hint-unstyled.component';
16
- export * from './hints.component';
@@ -5,6 +5,7 @@ export * from '@taiga-ui/core/directives/group';
5
5
  export * from '@taiga-ui/core/directives/hint';
6
6
  export * from '@taiga-ui/core/directives/icons';
7
7
  export * from '@taiga-ui/core/directives/items-handlers';
8
+ export * from '@taiga-ui/core/directives/notification';
8
9
  export * from '@taiga-ui/core/directives/number-format';
9
10
  export * from '@taiga-ui/core/directives/popup';
10
11
  export * from '@taiga-ui/core/directives/title';
@@ -0,0 +1,2 @@
1
+ export * from './notification.directive';
2
+ export * from './notification.service';
@@ -0,0 +1,11 @@
1
+ import * as i0 from "@angular/core";
2
+ export interface TuiPositionOptions {
3
+ readonly block: 'end' | 'start';
4
+ readonly inline: 'center' | 'end' | 'start';
5
+ }
6
+ export declare class TuiNotificationDirective {
7
+ protected readonly nothing: undefined;
8
+ protected readonly context: TuiPositionOptions;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiNotificationDirective, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiNotificationDirective, never, never, {}, {}, never, never, true, never>;
11
+ }
@@ -0,0 +1,12 @@
1
+ import { TuiPortal } from '@taiga-ui/cdk/portals';
2
+ import { type PolymorpheusComponent } from '@taiga-ui/polymorpheus';
3
+ import * as i0 from "@angular/core";
4
+ export declare abstract class TuiNotificationService<T, K = void> extends TuiPortal<T, K> {
5
+ private readonly concurrency;
6
+ private readonly current;
7
+ private readonly queue;
8
+ constructor(concurrency: number);
9
+ protected add(component: PolymorpheusComponent<unknown>): () => void;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiNotificationService<any, any>, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<TuiNotificationService<any, any>>;
12
+ }
@@ -1,11 +1,7 @@
1
1
  import { type TuiNumberFormatSettings } from '@taiga-ui/core/tokens';
2
- import { Observable } from 'rxjs';
3
2
  import * as i0 from "@angular/core";
4
- export declare class TuiNumberFormat extends Observable<TuiNumberFormatSettings> {
5
- private readonly settings;
6
- private readonly parent;
7
- constructor();
8
- set tuiNumberFormat(format: Partial<TuiNumberFormatSettings>);
3
+ export declare class TuiNumberFormat {
4
+ readonly tuiNumberFormat: import("@angular/core").InputSignal<Partial<TuiNumberFormatSettings>>;
9
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiNumberFormat, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiNumberFormat, "[tuiNumberFormat]", never, { "tuiNumberFormat": { "alias": "tuiNumberFormat"; "required": false; }; }, {}, never, never, true, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiNumberFormat, "[tuiNumberFormat]", never, { "tuiNumberFormat": { "alias": "tuiNumberFormat"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
11
7
  }
@@ -1,11 +1,12 @@
1
- import { type OnDestroy } from '@angular/core';
1
+ import { type OnChanges, type OnDestroy } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class TuiPopup implements OnDestroy {
3
+ export declare class TuiPopup implements OnChanges, OnDestroy {
4
4
  private readonly template;
5
5
  private readonly service;
6
- private viewRef?;
7
- set tuiPopup(show: boolean);
6
+ private ref?;
7
+ readonly show: import("@angular/core").InputSignal<boolean>;
8
+ ngOnChanges(): void;
8
9
  ngOnDestroy(): void;
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopup, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiPopup, "ng-template[tuiPopup]", never, { "tuiPopup": { "alias": "tuiPopup"; "required": false; }; }, {}, never, never, true, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiPopup, "ng-template[tuiPopup]", never, { "show": { "alias": "tuiPopup"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11
12
  }
@@ -1,4 +1,4 @@
1
- import { TuiPortalService } from '@taiga-ui/cdk/classes';
1
+ import { TuiPortalService } from '@taiga-ui/cdk/portals';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiPopupService extends TuiPortalService {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopupService, never>;
@@ -1,6 +1,6 @@
1
- import { TuiPortals } from '@taiga-ui/cdk/classes';
1
+ import { TuiPortals } from '@taiga-ui/cdk/portals';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiPopups extends TuiPortals {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopups, never>;
5
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiPopups, "tui-popups", never, {}, {}, never, never, true, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiPopups, "tui-popups", never, {}, {}, never, ["*"], true, never>;
6
6
  }
@@ -18,7 +18,7 @@ function tuiProvideAccessor(provide, type, fallback) {
18
18
  };
19
19
  }
20
20
  function tuiFallbackAccessor(type) {
21
- return (accessors, fallback) => accessors?.find?.((accessor) => accessor !== fallback && accessor.type === type) || fallback;
21
+ return (accessors, fallback) => accessors?.find?.((accessor) => accessor !== fallback && accessor.type === type) || Object.create(fallback, { type: { value: type } });
22
22
  }
23
23
  function tuiPositionAccessorFor(type, fallback) {
24
24
  return tuiProvideAccessor(TuiPositionAccessor, type, fallback);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-classes.mjs","sources":["../../../projects/core/classes/accessors.ts","../../../projects/core/classes/vehicle.ts","../../../projects/core/classes/driver.ts","../../../projects/core/classes/taiga-ui-core-classes.ts"],"sourcesContent":["import {\n type AbstractType,\n type ExistingProvider,\n type FactoryProvider,\n Optional,\n SkipSelf,\n type Type,\n} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiPoint} from '@taiga-ui/core/types';\n\nexport abstract class TuiAccessor {\n public abstract readonly type: string;\n}\n\nexport abstract class TuiPositionAccessor extends TuiAccessor {\n /*\n * TODO @deprecated switching from DOMRect to HTMLElement in v5\n */\n public abstract getPosition(rect: DOMRect, element?: HTMLElement): TuiPoint;\n}\n\nexport abstract class TuiRectAccessor extends TuiAccessor {\n public abstract getClientRect(): DOMRect;\n}\n\nexport function tuiProvideAccessor<T extends TuiAccessor>(\n provide: AbstractType<T>,\n type: string,\n fallback: Type<T>,\n): FactoryProvider {\n return {\n provide,\n deps: [[new SkipSelf(), new Optional(), provide], fallback],\n useFactory: tuiFallbackAccessor<T>(type),\n };\n}\n\nexport function tuiFallbackAccessor<T extends TuiAccessor>(\n type: string,\n): (accessors: readonly T[] | null, fallback: T) => T {\n return (accessors, fallback) =>\n accessors?.find?.(\n (accessor) => accessor !== fallback && accessor.type === type,\n ) || fallback;\n}\n\nexport function tuiPositionAccessorFor(\n type: string,\n fallback: Type<TuiPositionAccessor>,\n): FactoryProvider {\n return tuiProvideAccessor(TuiPositionAccessor, type, fallback);\n}\n\nexport function tuiRectAccessorFor(\n type: string,\n fallback: Type<TuiRectAccessor>,\n): FactoryProvider {\n return tuiProvideAccessor(TuiRectAccessor, type, fallback);\n}\n\nexport function tuiAsPositionAccessor(\n accessor: Type<TuiPositionAccessor>,\n): ExistingProvider {\n return tuiProvide(TuiPositionAccessor, accessor, true);\n}\n\nexport function tuiAsRectAccessor(accessor: Type<TuiRectAccessor>): ExistingProvider {\n return tuiProvide(TuiRectAccessor, accessor, true);\n}\n","import {type ExistingProvider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport abstract class TuiVehicle {\n public abstract readonly type: string;\n public abstract toggle(value: boolean): void;\n}\n\nexport function tuiAsVehicle(vehicle: Type<TuiVehicle>): ExistingProvider {\n return tuiProvide(TuiVehicle, vehicle, true);\n}\n","import {\n type AfterViewInit,\n DestroyRef,\n Directive,\n type ExistingProvider,\n inject,\n type Type,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {distinctUntilChanged, merge, Observable} from 'rxjs';\n\nimport {TuiVehicle} from './vehicle';\n\nexport abstract class TuiDriver extends Observable<boolean> {\n public abstract readonly type: string;\n}\n\nexport function tuiAsDriver(driver: Type<TuiDriver>): ExistingProvider {\n return tuiProvide(TuiDriver, driver, true);\n}\n\n@Directive()\nexport abstract class TuiDriverDirective implements AfterViewInit {\n public abstract type: string;\n\n private readonly destroyRef = inject(DestroyRef);\n private readonly drivers: readonly TuiDriver[] =\n inject<any>(TuiDriver, {self: true, optional: true}) || [];\n\n private readonly vehicles: readonly TuiVehicle[] = inject<any>(TuiVehicle, {\n self: true,\n optional: true,\n });\n\n public ngAfterViewInit(): void {\n const vehicle = this.vehicles?.find(({type}) => type === this.type);\n\n merge(...this.drivers.filter(({type}) => type === this.type))\n .pipe(distinctUntilChanged(), takeUntilDestroyed(this.destroyRef))\n .subscribe((value) => {\n vehicle?.toggle(value);\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAWsB,WAAW,CAAA;AAEhC;AAEK,MAAgB,mBAAoB,SAAQ,WAAW,CAAA;AAK5D;AAEK,MAAgB,eAAgB,SAAQ,WAAW,CAAA;AAExD;SAEe,kBAAkB,CAC9B,OAAwB,EACxB,IAAY,EACZ,QAAiB,EAAA;IAEjB,OAAO;QACH,OAAO;AACP,QAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC;AAC3D,QAAA,UAAU,EAAE,mBAAmB,CAAI,IAAI,CAAC;KAC3C;AACL;AAEM,SAAU,mBAAmB,CAC/B,IAAY,EAAA;AAEZ,IAAA,OAAO,CAAC,SAAS,EAAE,QAAQ,KACvB,SAAS,EAAE,IAAI,GACX,CAAC,QAAQ,KAAK,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,CAChE,IAAI,QAAQ;AACrB;AAEgB,SAAA,sBAAsB,CAClC,IAAY,EACZ,QAAmC,EAAA;IAEnC,OAAO,kBAAkB,CAAC,mBAAmB,EAAE,IAAI,EAAE,QAAQ,CAAC;AAClE;AAEgB,SAAA,kBAAkB,CAC9B,IAAY,EACZ,QAA+B,EAAA;IAE/B,OAAO,kBAAkB,CAAC,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC;AAC9D;AAEM,SAAU,qBAAqB,CACjC,QAAmC,EAAA;IAEnC,OAAO,UAAU,CAAC,mBAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC;AAC1D;AAEM,SAAU,iBAAiB,CAAC,QAA+B,EAAA;IAC7D,OAAO,UAAU,CAAC,eAAe,EAAE,QAAQ,EAAE,IAAI,CAAC;AACtD;;MClEsB,UAAU,CAAA;AAG/B;AAEK,SAAU,YAAY,CAAC,OAAyB,EAAA;IAClD,OAAO,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC;AAChD;;ACIM,MAAgB,SAAU,SAAQ,UAAmB,CAAA;AAE1D;AAEK,SAAU,WAAW,CAAC,MAAuB,EAAA;IAC/C,OAAO,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;AAC9C;MAGsB,kBAAkB,CAAA;AADxC,IAAA,WAAA,GAAA;AAIqB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAA,CAAA,OAAO,GACpB,MAAM,CAAM,SAAS,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,IAAI,EAAE;AAE7C,QAAA,IAAA,CAAA,QAAQ,GAA0B,MAAM,CAAM,UAAU,EAAE;AACvE,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,QAAQ,EAAE,IAAI;AACjB,SAAA,CAAC;AAWL;IATU,eAAe,GAAA;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAC,IAAI,EAAC,KAAK,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;QAEnE,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAC,IAAI,EAAC,KAAK,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;aACvD,IAAI,CAAC,oBAAoB,EAAE,EAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AAChE,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;AACjB,YAAA,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;AAC1B,SAAC,CAAC;;+GAnBQ,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBADvC;;;ACtBD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-classes.mjs","sources":["../../../projects/core/classes/accessors.ts","../../../projects/core/classes/vehicle.ts","../../../projects/core/classes/driver.ts","../../../projects/core/classes/taiga-ui-core-classes.ts"],"sourcesContent":["import {\n type AbstractType,\n type ExistingProvider,\n type FactoryProvider,\n Optional,\n SkipSelf,\n type Type,\n} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiPoint} from '@taiga-ui/core/types';\n\nexport abstract class TuiAccessor {\n public abstract readonly type: string;\n}\n\nexport abstract class TuiPositionAccessor extends TuiAccessor {\n /*\n * TODO @deprecated switching from DOMRect to HTMLElement in v5\n */\n public abstract getPosition(rect: DOMRect, element?: HTMLElement): TuiPoint;\n}\n\nexport abstract class TuiRectAccessor extends TuiAccessor {\n public abstract getClientRect(): DOMRect;\n}\n\nexport function tuiProvideAccessor<T extends TuiAccessor>(\n provide: AbstractType<T>,\n type: string,\n fallback: Type<T>,\n): FactoryProvider {\n return {\n provide,\n deps: [[new SkipSelf(), new Optional(), provide], fallback],\n useFactory: tuiFallbackAccessor<T>(type),\n };\n}\n\nexport function tuiFallbackAccessor<T extends TuiAccessor>(\n type: string,\n): (accessors: readonly T[] | null, fallback: Omit<T, 'type'>) => T {\n return (accessors, fallback) =>\n accessors?.find?.(\n (accessor) => accessor !== fallback && accessor.type === type,\n ) || Object.create(fallback, {type: {value: type}});\n}\n\nexport function tuiPositionAccessorFor(\n type: string,\n fallback: Type<TuiPositionAccessor>,\n): FactoryProvider {\n return tuiProvideAccessor(TuiPositionAccessor, type, fallback);\n}\n\nexport function tuiRectAccessorFor(\n type: string,\n fallback: Type<TuiRectAccessor>,\n): FactoryProvider {\n return tuiProvideAccessor(TuiRectAccessor, type, fallback);\n}\n\nexport function tuiAsPositionAccessor(\n accessor: Type<TuiPositionAccessor>,\n): ExistingProvider {\n return tuiProvide(TuiPositionAccessor, accessor, true);\n}\n\nexport function tuiAsRectAccessor(accessor: Type<TuiRectAccessor>): ExistingProvider {\n return tuiProvide(TuiRectAccessor, accessor, true);\n}\n","import {type ExistingProvider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport abstract class TuiVehicle {\n public abstract readonly type: string;\n public abstract toggle(value: boolean): void;\n}\n\nexport function tuiAsVehicle(vehicle: Type<TuiVehicle>): ExistingProvider {\n return tuiProvide(TuiVehicle, vehicle, true);\n}\n","import {\n type AfterViewInit,\n DestroyRef,\n Directive,\n type ExistingProvider,\n inject,\n type Type,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {distinctUntilChanged, merge, Observable} from 'rxjs';\n\nimport {TuiVehicle} from './vehicle';\n\nexport abstract class TuiDriver extends Observable<boolean> {\n public abstract readonly type: string;\n}\n\nexport function tuiAsDriver(driver: Type<TuiDriver>): ExistingProvider {\n return tuiProvide(TuiDriver, driver, true);\n}\n\n@Directive()\nexport abstract class TuiDriverDirective implements AfterViewInit {\n public abstract type: string;\n\n private readonly destroyRef = inject(DestroyRef);\n private readonly drivers: readonly TuiDriver[] =\n inject<any>(TuiDriver, {self: true, optional: true}) || [];\n\n private readonly vehicles: readonly TuiVehicle[] = inject<any>(TuiVehicle, {\n self: true,\n optional: true,\n });\n\n public ngAfterViewInit(): void {\n const vehicle = this.vehicles?.find(({type}) => type === this.type);\n\n merge(...this.drivers.filter(({type}) => type === this.type))\n .pipe(distinctUntilChanged(), takeUntilDestroyed(this.destroyRef))\n .subscribe((value) => {\n vehicle?.toggle(value);\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}