@taiga-ui/core 5.23.0 → 5.24.0-canary.51d7c08

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 (75) hide show
  1. package/classes/accessors.d.ts +6 -1
  2. package/components/cell/cell-stretch.directive.d.ts +1 -1
  3. package/components/data-list/option.directive.d.ts +1 -1
  4. package/components/textfield/select-like.directive.d.ts +2 -1
  5. package/components/textfield/textfield.component.d.ts +2 -0
  6. package/fesm2022/taiga-ui-core-classes.mjs +23 -7
  7. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  8. package/fesm2022/taiga-ui-core-components-button.mjs +2 -2
  9. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  10. package/fesm2022/taiga-ui-core-components-calendar.mjs +1 -1
  11. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  12. package/fesm2022/taiga-ui-core-components-cell.mjs +6 -9
  13. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
  14. package/fesm2022/taiga-ui-core-components-checkbox.mjs +2 -2
  15. package/fesm2022/taiga-ui-core-components-checkbox.mjs.map +1 -1
  16. package/fesm2022/taiga-ui-core-components-data-list.mjs +7 -7
  17. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  18. package/fesm2022/taiga-ui-core-components-icon.mjs +2 -2
  19. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  20. package/fesm2022/taiga-ui-core-components-input.mjs +2 -1
  21. package/fesm2022/taiga-ui-core-components-input.mjs.map +1 -1
  22. package/fesm2022/taiga-ui-core-components-label.mjs +3 -3
  23. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  24. package/fesm2022/taiga-ui-core-components-link.mjs +2 -2
  25. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  26. package/fesm2022/taiga-ui-core-components-notification.mjs +2 -2
  27. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  28. package/fesm2022/taiga-ui-core-components-radio.mjs +2 -2
  29. package/fesm2022/taiga-ui-core-components-radio.mjs.map +1 -1
  30. package/fesm2022/taiga-ui-core-components-root.mjs +1 -1
  31. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +5 -5
  33. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  34. package/fesm2022/taiga-ui-core-components-textfield.mjs +25 -10
  35. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-core-components-title.mjs +3 -3
  37. package/fesm2022/taiga-ui-core-components-title.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-core-directives-appearance.mjs +3 -3
  39. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-core-directives-group.mjs +3 -3
  41. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-core-directives-icons.mjs +3 -3
  43. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-core-portals-alert.mjs +3 -3
  45. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-core-portals-dialog.mjs +2 -2
  47. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-core-portals-dropdown.mjs +191 -112
  49. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-core-portals-hint.mjs +171 -82
  51. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-core-portals-modal.mjs +3 -3
  53. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-core-tokens.mjs +4 -2
  55. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  56. package/package.json +12 -12
  57. package/portals/dropdown/dropdown-anchor.directive.d.ts +6 -12
  58. package/portals/dropdown/dropdown-anchored.directive.d.ts +16 -0
  59. package/portals/dropdown/dropdown-context.directive.d.ts +5 -1
  60. package/portals/dropdown/dropdown-selection.directive.d.ts +5 -3
  61. package/portals/dropdown/dropdown.component.d.ts +2 -2
  62. package/portals/dropdown/dropdown.directive.d.ts +6 -4
  63. package/portals/dropdown/dropdown.providers.d.ts +1 -0
  64. package/portals/dropdown/index.d.ts +1 -0
  65. package/portals/hint/hint-anchor.directive.d.ts +12 -0
  66. package/portals/hint/hint-anchored.directive.d.ts +17 -0
  67. package/portals/hint/hint-host.directive.d.ts +4 -1
  68. package/portals/hint/hint-hover.directive.d.ts +1 -1
  69. package/portals/hint/hint-pointer.directive.d.ts +6 -1
  70. package/portals/hint/hint.component.d.ts +3 -10
  71. package/portals/hint/hint.d.ts +1 -2
  72. package/portals/hint/hint.directive.d.ts +5 -4
  73. package/portals/hint/index.d.ts +2 -0
  74. package/tokens/anchor-support.d.ts +2 -0
  75. package/tokens/index.d.ts +1 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "5.23.0",
3
+ "version": "5.24.0-canary.51d7c08",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",
@@ -41,11 +41,11 @@
41
41
  "@ng-web-apis/intersection-observer": "^5.3.0",
42
42
  "@ng-web-apis/mutation-observer": "^5.3.0",
43
43
  "@ng-web-apis/platform": "^5.3.0",
44
- "@taiga-ui/cdk": "5.23.0",
44
+ "@taiga-ui/cdk": "5.24.0",
45
45
  "@taiga-ui/event-plugins": "^5.0.0",
46
- "@taiga-ui/i18n": "5.23.0",
46
+ "@taiga-ui/i18n": "5.24.0",
47
47
  "@taiga-ui/polymorpheus": "^5.0.1",
48
- "@taiga-ui/styles": "5.23.0",
48
+ "@taiga-ui/styles": "5.24.0",
49
49
  "rxjs": ">=7.0.0"
50
50
  },
51
51
  "schematics": "./schematics/collection.json",
@@ -103,14 +103,14 @@
103
103
  "types": "./components/calendar/index.d.ts",
104
104
  "default": "./fesm2022/taiga-ui-core-components-calendar.mjs"
105
105
  },
106
- "./components/carousel": {
107
- "types": "./components/carousel/index.d.ts",
108
- "default": "./fesm2022/taiga-ui-core-components-carousel.mjs"
109
- },
110
106
  "./components/cell": {
111
107
  "types": "./components/cell/index.d.ts",
112
108
  "default": "./fesm2022/taiga-ui-core-components-cell.mjs"
113
109
  },
110
+ "./components/carousel": {
111
+ "types": "./components/carousel/index.d.ts",
112
+ "default": "./fesm2022/taiga-ui-core-components-carousel.mjs"
113
+ },
114
114
  "./components/checkbox": {
115
115
  "types": "./components/checkbox/index.d.ts",
116
116
  "default": "./fesm2022/taiga-ui-core-components-checkbox.mjs"
@@ -227,14 +227,14 @@
227
227
  "types": "./portals/dialog/index.d.ts",
228
228
  "default": "./fesm2022/taiga-ui-core-portals-dialog.mjs"
229
229
  },
230
- "./portals/dropdown": {
231
- "types": "./portals/dropdown/index.d.ts",
232
- "default": "./fesm2022/taiga-ui-core-portals-dropdown.mjs"
233
- },
234
230
  "./portals/hint": {
235
231
  "types": "./portals/hint/index.d.ts",
236
232
  "default": "./fesm2022/taiga-ui-core-portals-hint.mjs"
237
233
  },
234
+ "./portals/dropdown": {
235
+ "types": "./portals/dropdown/index.d.ts",
236
+ "default": "./fesm2022/taiga-ui-core-portals-dropdown.mjs"
237
+ },
238
238
  "./portals/modal": {
239
239
  "types": "./portals/modal/index.d.ts",
240
240
  "default": "./fesm2022/taiga-ui-core-portals-modal.mjs"
@@ -1,16 +1,10 @@
1
- import { type AfterViewInit } from '@angular/core';
1
+ import { TuiRectAccessor } from '@taiga-ui/core/classes';
2
2
  import * as i0 from "@angular/core";
3
- export declare class TuiDropdownAnchor implements AfterViewInit {
4
- private readonly el;
5
- private readonly directive;
6
- private readonly accessor;
7
- private readonly viewport;
8
- private readonly vvs;
9
- private readonly options;
10
- private readonly position;
11
- private readonly styles$;
12
- ngAfterViewInit(): void;
13
- private getStyles;
3
+ export declare class TuiDropdownAnchor extends TuiRectAccessor {
4
+ protected readonly el: HTMLElement;
5
+ protected readonly anchor: string;
6
+ readonly type = "dropdown";
7
+ getClientRect(): DOMRect;
14
8
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownAnchor, never>;
15
9
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownAnchor, never, never, {}, {}, never, never, true, never>;
16
10
  }
@@ -0,0 +1,16 @@
1
+ import { type AfterViewInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TuiDropdownAnchored implements AfterViewInit {
4
+ private readonly el;
5
+ private readonly directive;
6
+ private readonly accessor;
7
+ private readonly viewport;
8
+ private readonly vvs;
9
+ private readonly options;
10
+ private readonly position;
11
+ private readonly styles$;
12
+ ngAfterViewInit(): void;
13
+ private getStyles;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownAnchored, never>;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownAnchored, never, never, {}, {}, never, never, true, never>;
16
+ }
@@ -1,8 +1,9 @@
1
+ import { type AfterViewInit, type ElementRef, type OnDestroy } from '@angular/core';
1
2
  import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
2
3
  import { TuiRectAccessor } from '@taiga-ui/core/classes';
3
4
  import { TuiDropdownDriver } from './dropdown.driver';
4
5
  import * as i0 from "@angular/core";
5
- export declare class TuiDropdownContext extends TuiRectAccessor {
6
+ export declare class TuiDropdownContext extends TuiRectAccessor implements ElementRef<HTMLElement>, AfterViewInit, OnDestroy {
6
7
  private readonly isTouch;
7
8
  private currentRect;
8
9
  protected readonly userSelect: import("@angular/core").Signal<"none" | null>;
@@ -12,6 +13,9 @@ export declare class TuiDropdownContext extends TuiRectAccessor {
12
13
  protected readonly el: HTMLElement;
13
14
  protected readonly sub: import("rxjs").Subscription;
14
15
  readonly type = "dropdown";
16
+ readonly nativeElement: HTMLDivElement;
17
+ ngAfterViewInit(): void;
18
+ ngOnDestroy(): void;
15
19
  getClientRect(): DOMRect;
16
20
  protected onContextMenu(x: number, y: number): void;
17
21
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownContext, never>;
@@ -1,9 +1,9 @@
1
- import { type OnDestroy, ViewContainerRef } from '@angular/core';
1
+ import { type ElementRef, type OnDestroy, ViewContainerRef } from '@angular/core';
2
2
  import { type TuiBooleanHandler } from '@taiga-ui/cdk/types';
3
3
  import { TuiDriver, type TuiRectAccessor } from '@taiga-ui/core/classes';
4
4
  import { TuiDropdownDirective } from './dropdown.directive';
5
5
  import * as i0 from "@angular/core";
6
- export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAccessor, OnDestroy {
6
+ export declare class TuiDropdownSelection extends TuiDriver implements ElementRef<HTMLElement>, TuiRectAccessor, OnDestroy {
7
7
  private ghost?;
8
8
  protected readonly doc: Document;
9
9
  protected readonly vcr: ViewContainerRef;
@@ -13,11 +13,12 @@ export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAc
13
13
  protected readonly stream$: import("rxjs").Observable<boolean>;
14
14
  protected range: Range;
15
15
  readonly type = "dropdown";
16
+ readonly nativeElement: HTMLDivElement;
16
17
  readonly tuiDropdownSelection: import("@angular/core").InputSignal<string | TuiBooleanHandler<Range>>;
17
18
  readonly tuiDropdownSelectionPosition: import("@angular/core").InputSignal<"selection" | "tag" | "word">;
18
19
  constructor();
19
- getClientRect(): DOMRect;
20
20
  ngOnDestroy(): void;
21
+ getClientRect(): DOMRect;
21
22
  private get ghostHost();
22
23
  private getRange;
23
24
  /**
@@ -38,6 +39,7 @@ export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAc
38
39
  */
39
40
  private initGhost;
40
41
  private isCaretVisible;
42
+ private updateAnchor;
41
43
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownSelection, never>;
42
44
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownSelection, "[tuiDropdownSelection]", never, { "tuiDropdownSelection": { "alias": "tuiDropdownSelection"; "required": false; "isSignal": true; }; "tuiDropdownSelectionPosition": { "alias": "tuiDropdownSelectionPosition"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
43
45
  }
@@ -2,7 +2,7 @@ import { TuiDropdownDirective } from './dropdown.directive';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@taiga-ui/cdk/directives/active-zone";
4
4
  import * as i2 from "@taiga-ui/cdk/directives/animated";
5
- import * as i3 from "./dropdown-anchor.directive";
5
+ import * as i3 from "./dropdown-anchored.directive";
6
6
  /**
7
7
  * @description:
8
8
  * This component is used to show template in a portal
@@ -18,5 +18,5 @@ export declare class TuiDropdownComponent {
18
18
  protected readonly theme: import("@angular/core").Signal<string | null | undefined>;
19
19
  protected readonly close: () => void;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdownComponent, "tui-dropdown", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiActiveZone; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAnimated; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiDropdownAnchor; inputs: {}; outputs: {}; }]>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdownComponent, "tui-dropdown", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiActiveZone; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAnimated; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiDropdownAnchored; inputs: {}; outputs: {}; }]>;
22
22
  }
@@ -3,9 +3,10 @@ import { type TuiContext } from '@taiga-ui/cdk/types';
3
3
  import { TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
4
4
  import { PolymorpheusComponent, type PolymorpheusContent, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "./dropdown.driver";
7
- import * as i2 from "./dropdown-a11y.directive";
8
- import * as i3 from "./dropdown-position.directive";
6
+ import * as i1 from "./dropdown-anchor.directive";
7
+ import * as i2 from "./dropdown.driver";
8
+ import * as i3 from "./dropdown-a11y.directive";
9
+ import * as i4 from "./dropdown-position.directive";
9
10
  export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy, TuiRectAccessor, TuiVehicle {
10
11
  private readonly injector;
11
12
  private readonly refresh$;
@@ -19,6 +20,7 @@ export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy
19
20
  readonly type = "dropdown";
20
21
  readonly component: PolymorpheusComponent<any>;
21
22
  readonly content: import("@angular/core").InputSignalWithTransform<string | number | PolymorpheusComponent<unknown> | import("@angular/platform-browser").SafeValue | import("@taiga-ui/polymorpheus").PolymorpheusHandler<TuiContext<() => void>> | PolymorpheusTemplate<"" | Partial<TuiContext<() => void>>> | TemplateRef<Partial<TuiContext<() => void>>> | null | undefined, PolymorpheusContent<TuiContext<() => void>>>;
23
+ /** @deprecated remove in v6 */
22
24
  get accessor(): TuiRectAccessor;
23
25
  get position(): 'absolute' | 'fixed';
24
26
  ngAfterViewChecked(): void;
@@ -26,5 +28,5 @@ export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy
26
28
  getClientRect(): DOMRect;
27
29
  toggle(show: boolean): void;
28
30
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownDirective, never>;
29
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDirective, "[tuiDropdown]:not(ng-container):not(ng-template)", ["tuiDropdown"], { "content": { "alias": "tuiDropdown"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiDropdownDriverDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiDropdownA11y; inputs: { "tuiDropdownRole": "tuiDropdownRole"; }; outputs: {}; }, { directive: typeof i3.TuiDropdownPosition; inputs: {}; outputs: { "tuiDropdownDirectionChange": "tuiDropdownDirectionChange"; }; }]>;
31
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDirective, "[tuiDropdown]:not(ng-container):not(ng-template)", ["tuiDropdown"], { "content": { "alias": "tuiDropdown"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiDropdownAnchor; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiDropdownDriverDirective; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiDropdownA11y; inputs: { "tuiDropdownRole": "tuiDropdownRole"; }; outputs: {}; }, { directive: typeof i4.TuiDropdownPosition; inputs: {}; outputs: { "tuiDropdownDirectionChange": "tuiDropdownDirectionChange"; }; }]>;
30
32
  }
@@ -5,3 +5,4 @@ import { type ElementRef, InjectionToken, type Type } from '@angular/core';
5
5
  export declare const TUI_DROPDOWN_COMPONENT: InjectionToken<Type<any>>;
6
6
  export declare const TUI_DROPDOWN_CONTEXT: InjectionToken<Record<any, any>>;
7
7
  export declare const TUI_DROPDOWN_HOST: InjectionToken<ElementRef<Element>>;
8
+ export declare const TUI_DROPDOWN_ANCHOR: InjectionToken<ElementRef<Element>>;
@@ -5,6 +5,7 @@ export * from './dropdown.driver';
5
5
  export * from './dropdown.providers';
6
6
  export * from './dropdown-a11y.directive';
7
7
  export * from './dropdown-anchor.directive';
8
+ export * from './dropdown-anchored.directive';
8
9
  export * from './dropdown-close.directive';
9
10
  export * from './dropdown-content.directive';
10
11
  export * from './dropdown-context.directive';
@@ -0,0 +1,12 @@
1
+ import { ElementRef, InjectionToken } from '@angular/core';
2
+ import { TuiRectAccessor } from '@taiga-ui/core/classes';
3
+ import * as i0 from "@angular/core";
4
+ export declare const TUI_HINT_ANCHOR: InjectionToken<ElementRef<Element>>;
5
+ export declare class TuiHintAnchor extends TuiRectAccessor {
6
+ protected readonly el: HTMLElement;
7
+ protected readonly anchor: string;
8
+ readonly type = "hint";
9
+ getClientRect(): DOMRect;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintAnchor, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintAnchor, never, never, {}, {}, never, never, true, never>;
12
+ }
@@ -0,0 +1,17 @@
1
+ import { type AfterViewInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TuiHintAnchored implements AfterViewInit {
4
+ private readonly el;
5
+ private readonly hover;
6
+ private readonly vvs;
7
+ private readonly viewport;
8
+ private readonly accessor;
9
+ private readonly directive;
10
+ private readonly styles$;
11
+ protected readonly sub: import("rxjs").Subscription;
12
+ ngAfterViewInit(): void;
13
+ private update;
14
+ private apply;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintAnchored, never>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintAnchored, never, never, {}, {}, never, never, true, never>;
17
+ }
@@ -1,8 +1,11 @@
1
+ import { type ElementRef } from '@angular/core';
1
2
  import { TuiRectAccessor } from '@taiga-ui/core/classes';
2
3
  import * as i0 from "@angular/core";
3
- export declare class TuiHintHost extends TuiRectAccessor {
4
+ export declare class TuiHintHost extends TuiRectAccessor implements ElementRef<HTMLElement> {
4
5
  readonly tuiHintHost: import("@angular/core").InputSignal<HTMLElement | undefined>;
5
6
  readonly type = "hint";
7
+ nativeElement: HTMLElement;
8
+ protected readonly sync: import("@angular/core").EffectRef;
6
9
  getClientRect(): DOMRect;
7
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintHost, never>;
8
11
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintHost, "[tuiHint][tuiHintHost]", never, { "tuiHintHost": { "alias": "tuiHintHost"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -2,13 +2,13 @@ import { TuiDriver } from '@taiga-ui/core/classes';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiHintHover extends TuiDriver {
4
4
  private readonly isMobile;
5
- private readonly el;
6
5
  private readonly hovered$;
7
6
  private readonly options;
8
7
  private visible;
9
8
  private readonly toggle$;
10
9
  private readonly stream$;
11
10
  private readonly parent;
11
+ protected readonly el: HTMLElement;
12
12
  readonly showDelay: import("@angular/core").InputSignal<number>;
13
13
  readonly hideDelay: import("@angular/core").InputSignal<number>;
14
14
  readonly type = "hint";
@@ -1,8 +1,13 @@
1
+ import { type ElementRef, type OnDestroy } from '@angular/core';
1
2
  import { type TuiRectAccessor } from '@taiga-ui/core/classes';
2
3
  import { TuiHintHover } from './hint-hover.directive';
3
4
  import * as i0 from "@angular/core";
4
- export declare class TuiHintPointer extends TuiHintHover implements TuiRectAccessor {
5
+ export declare class TuiHintPointer extends TuiHintHover implements TuiRectAccessor, ElementRef<HTMLElement>, OnDestroy {
6
+ private readonly doc;
5
7
  private currentRect;
8
+ readonly nativeElement: HTMLDivElement;
9
+ constructor();
10
+ ngOnDestroy(): void;
6
11
  getClientRect(): DOMRect;
7
12
  protected onMove({ clientX, clientY }: MouseEvent): void;
8
13
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintPointer, never>;
@@ -1,4 +1,3 @@
1
- import { type Provider } from '@angular/core';
2
1
  import { TuiRectAccessor } from '@taiga-ui/core/classes';
3
2
  import { TuiHintDirective } from './hint.directive';
4
3
  import { TuiHintPointer } from './hint-pointer.directive';
@@ -6,23 +5,17 @@ import * as i0 from "@angular/core";
6
5
  import * as i1 from "@taiga-ui/core/directives/appearance";
7
6
  import * as i2 from "@taiga-ui/cdk/directives/animated";
8
7
  import * as i3 from "@taiga-ui/cdk/directives/active-zone";
9
- /** @internal */
10
- export declare function tuiGetHintProviders(): Provider[];
8
+ import * as i4 from "./hint-anchored.directive";
11
9
  export declare class TuiHintComponent {
12
10
  private readonly el;
13
11
  private readonly hover;
14
- private readonly vvs;
15
- private readonly viewport;
16
12
  protected readonly pointer: TuiHintPointer | null;
17
13
  protected readonly accessor: TuiRectAccessor;
18
14
  protected readonly hint: TuiHintDirective<any>;
15
+ protected readonly appearance: import("@angular/core").Signal<string>;
19
16
  protected readonly content: import("@angular/core").InputSignal<import("@taiga-ui/polymorpheus").PolymorpheusContent<any>> | import("@angular/core").WritableSignal<string>;
20
17
  protected readonly theme: string | null | undefined;
21
- protected readonly appearance: import("@angular/core").Signal<string>;
22
- constructor();
23
18
  protected onPointerDown(target: HTMLElement): void;
24
- private apply;
25
- private update;
26
19
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintComponent, never>;
27
- 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: {}; }]>;
20
+ 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: {}; }, { directive: typeof i4.TuiHintAnchored; inputs: {}; outputs: {}; }]>;
28
21
  }
@@ -7,6 +7,5 @@ import { TuiHintHover } from './hint-hover.directive';
7
7
  import { TuiHintManual } from './hint-manual.directive';
8
8
  import { TuiHintOverflow } from './hint-overflow.directive';
9
9
  import { TuiHintPointer } from './hint-pointer.directive';
10
- import { TuiHintPosition } from './hint-position.directive';
11
10
  import { TuiHintUnstyled } from './hint-unstyled.component';
12
- export declare const TuiHint: readonly [typeof TuiHintComponent, typeof TuiHintDirective, typeof TuiHintUnstyled, typeof TuiHintDriver, typeof TuiHintPosition, typeof TuiHintHover, typeof TuiHintOverflow, typeof TuiHintDescribe, typeof TuiHintHost, typeof TuiHintManual, typeof TuiHintPointer];
11
+ export declare const TuiHint: readonly [typeof TuiHintComponent, typeof TuiHintDirective, typeof TuiHintUnstyled, typeof TuiHintDriver, typeof TuiHintHover, typeof TuiHintOverflow, typeof TuiHintDescribe, typeof TuiHintHost, typeof TuiHintManual, typeof TuiHintPointer];
@@ -2,9 +2,10 @@ import { type OnChanges, type OnDestroy } from '@angular/core';
2
2
  import { type TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
3
3
  import { PolymorpheusComponent, type PolymorpheusContent } from '@taiga-ui/polymorpheus';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "./hint-driver.directive";
6
- import * as i2 from "./hint-hover.directive";
7
- import * as i3 from "./hint-position.directive";
5
+ import * as i1 from "./hint-anchor.directive";
6
+ import * as i2 from "./hint-driver.directive";
7
+ import * as i3 from "./hint-hover.directive";
8
+ import * as i4 from "./hint-position.directive";
8
9
  export declare class TuiHintDirective<C> implements OnDestroy, OnChanges, TuiRectAccessor, TuiVehicle {
9
10
  private readonly service;
10
11
  private readonly ref;
@@ -20,5 +21,5 @@ export declare class TuiHintDirective<C> implements OnDestroy, OnChanges, TuiRec
20
21
  getClientRect(): DOMRect;
21
22
  toggle(show: boolean): void;
22
23
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintDirective<any>, never>;
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"; "tuiHintCentered": "tuiHintCentered"; "tuiHintOffset": "tuiHintOffset"; }; outputs: { "tuiHintDirectionChange": "tuiHintDirectionChange"; }; }]>;
24
+ 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.TuiHintAnchor; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintDriver; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiHintHover; inputs: { "tuiHintHideDelay": "tuiHintHideDelay"; "tuiHintShowDelay": "tuiHintShowDelay"; }; outputs: {}; }, { directive: typeof i4.TuiHintPosition; inputs: { "tuiHintDirection": "tuiHintDirection"; "tuiHintCentered": "tuiHintCentered"; "tuiHintOffset": "tuiHintOffset"; }; outputs: { "tuiHintDirectionChange": "tuiHintDirectionChange"; }; }]>;
24
25
  }
@@ -2,6 +2,8 @@ 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-anchor.directive';
6
+ export * from './hint-anchored.directive';
5
7
  export * from './hint-describe.directive';
6
8
  export * from './hint-driver.directive';
7
9
  export * from './hint-host.directive';
@@ -0,0 +1,2 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export declare const TUI_ANCHOR_SUPPORT: InjectionToken<boolean>;
package/tokens/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './anchor-support';
1
2
  export * from './animations-speed';
2
3
  export * from './assets-path';
3
4
  export * from './auxiliary';