@ktortu/aaa 0.1.0-beta.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.
- package/LICENSE +21 -0
- package/README.md +151 -0
- package/button/button-tokens.css +152 -0
- package/button/button.css +319 -0
- package/card/card-tokens.css +49 -0
- package/card/card.css +200 -0
- package/cdk/styles/foundation.css +83 -0
- package/cdk/styles/tabs.css +276 -0
- package/dialog/dialog.css +350 -0
- package/fesm2022/ktortu-aaa-button.mjs +128 -0
- package/fesm2022/ktortu-aaa-button.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-card.mjs +209 -0
- package/fesm2022/ktortu-aaa-card.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-cdk.mjs +183 -0
- package/fesm2022/ktortu-aaa-cdk.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-dialog.mjs +512 -0
- package/fesm2022/ktortu-aaa-dialog.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-forms.mjs +3215 -0
- package/fesm2022/ktortu-aaa-forms.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-menu.mjs +315 -0
- package/fesm2022/ktortu-aaa-menu.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-tabs.mjs +79 -0
- package/fesm2022/ktortu-aaa-tabs.mjs.map +1 -0
- package/fesm2022/ktortu-aaa-tooltip.mjs +356 -0
- package/fesm2022/ktortu-aaa-tooltip.mjs.map +1 -0
- package/fesm2022/ktortu-aaa.mjs +17 -0
- package/fesm2022/ktortu-aaa.mjs.map +1 -0
- package/forms/checkbox/checkbox-group.css +55 -0
- package/forms/checkbox/checkbox.css +216 -0
- package/forms/chips/chip-list.css +70 -0
- package/forms/chips/chip.css +92 -0
- package/forms/chips/tokens.css +102 -0
- package/forms/field/field.css +87 -0
- package/forms/multi-select/multi-select.css +136 -0
- package/forms/radio/radio-group.css +55 -0
- package/forms/radio/radio.css +165 -0
- package/forms/styles/field-box.css +171 -0
- package/forms/styles/select-panel.css +464 -0
- package/forms/styles/tokens.css +67 -0
- package/forms/switch/switch.css +188 -0
- package/menu/menu-tokens.css +58 -0
- package/menu/menu.css +224 -0
- package/package.json +96 -0
- package/styles/button.css +6 -0
- package/styles/card.css +6 -0
- package/styles/dialog.css +6 -0
- package/styles/forms.css +13 -0
- package/styles/foundation.css +7 -0
- package/styles/menu.css +6 -0
- package/styles/styles.css +24 -0
- package/styles/tabs.css +5 -0
- package/styles/tooltip.css +5 -0
- package/themes/theme-ant.css +44 -0
- package/themes/theme-architecte.css +83 -0
- package/themes/theme-aurora.css +97 -0
- package/themes/theme-bootstrap.css +46 -0
- package/themes/theme-carbon.css +49 -0
- package/themes/theme-catppuccin.css +66 -0
- package/themes/theme-cyberpunk.css +211 -0
- package/themes/theme-fluent.css +45 -0
- package/themes/theme-material-you.css +74 -0
- package/themes/theme-material.css +48 -0
- package/themes/theme-primer.css +46 -0
- package/themes/theme-vegetal.css +78 -0
- package/tooltip/tooltip.css +129 -0
- package/types/ktortu-aaa-button.d.ts +70 -0
- package/types/ktortu-aaa-card.d.ts +143 -0
- package/types/ktortu-aaa-cdk.d.ts +110 -0
- package/types/ktortu-aaa-dialog.d.ts +286 -0
- package/types/ktortu-aaa-forms.d.ts +1574 -0
- package/types/ktortu-aaa-menu.d.ts +171 -0
- package/types/ktortu-aaa-tabs.d.ts +27 -0
- package/types/ktortu-aaa-tooltip.d.ts +90 -0
- package/types/ktortu-aaa.d.ts +8 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* `[ktMenu]` — marqueur de THÈME posé sur l'hôte `[ngMenu]` d'`@angular/aria`. Style UNIQUEMENT la
|
|
6
|
+
* SURFACE du menu (fond, bord, ombre, rayon, padding, positionnement en dropdown ancré). N'ajoute
|
|
7
|
+
* AUCUN rôle ni comportement : la sémantique (`role="menu"`), le clavier, le focus roving, le
|
|
8
|
+
* retour de focus au trigger, les sous-menus et le typeahead viennent intégralement d'aria
|
|
9
|
+
* (`[ngMenu]`). Même philosophie que `[ktCard]` : la lib thématise, aria gère l'accessibilité.
|
|
10
|
+
*
|
|
11
|
+
* La directive n'a pas de logique propre : tout vit dans `menu.css` via le sélecteur `[ktMenu]`,
|
|
12
|
+
* piloté par l'attribut `data-visible` qu'aria pose sur l'hôte (ouvert/fermé). Le positionnement
|
|
13
|
+
* (CSS Anchor Positioning) est câblé par `[ktMenuTrigger]` (menu racine) et par `[ktMenuItem]`
|
|
14
|
+
* (sous-menus) qui posent les `anchor-name` / `position-anchor`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```html
|
|
18
|
+
* <button ngMenuTrigger ktMenuTrigger [menu]="m">Options</button>
|
|
19
|
+
* <div ngMenu ktMenu #m="ngMenu" (itemSelected)="onSelect($event)" aria-label="Options">
|
|
20
|
+
* <button ngMenuItem ktMenuItem value="new">Nouveau</button>
|
|
21
|
+
* </div>
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
declare class KtMenu {
|
|
25
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenu, never>;
|
|
26
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenu, "[ktMenu]", never, {}, {}, never, never, true, never>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* `[ktMenuItem]` — marqueur de thème posé sur l'hôte `[ngMenuItem]`. Style la RANGÉE (hauteur de
|
|
30
|
+
* cible tactile ≥44px, focus, survol, désactivé, item de sous-menu avec chevron). Comme `[ktMenu]`,
|
|
31
|
+
* sans logique de sélection : l'état stylé est lu sur les attributs ARIA déjà posés par aria
|
|
32
|
+
* (`:focus-visible` pour l'item actif via focus roving, `[aria-disabled]`, `[aria-expanded]`,
|
|
33
|
+
* `[aria-haspopup]`, `[aria-checked]`).
|
|
34
|
+
*
|
|
35
|
+
* SEULE responsabilité technique : si l'item porte un sous-menu (`[submenu]` côté aria), on câble
|
|
36
|
+
* l'ancrage CSS du sous-menu sur cet item (anchor-name sur l'item, position-anchor sur la surface
|
|
37
|
+
* du sous-menu, marqueur `data-kt-submenu` pour l'ouvrir en latéral plutôt qu'en dropdown).
|
|
38
|
+
*
|
|
39
|
+
* EXIGENCE DE STRUCTURE (sous-menus) : le `[ngMenu]` d'un sous-menu DOIT être un DESCENDANT DOM du
|
|
40
|
+
* menu parent (et non un frère). aria décide de maintenir un menu ouvert via `element.contains()`
|
|
41
|
+
* sur la cible du focus/survol ; un sous-menu placé hors du sous-arbre du parent ferait croire à
|
|
42
|
+
* aria que le focus a quitté le menu et provoquerait sa fermeture dès qu'on survole le sous-menu.
|
|
43
|
+
* Le sous-menu reste rendu en place (top-layer non requis : `position: fixed` + ancrage CSS).
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```html
|
|
47
|
+
* <button ngMenuItem ktMenuItem value="open">Ouvrir</button>
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
declare class KtMenuItem {
|
|
51
|
+
private readonly host;
|
|
52
|
+
private readonly ariaItem;
|
|
53
|
+
private readonly platformId;
|
|
54
|
+
protected anchorName: string | undefined;
|
|
55
|
+
private readonly idGen;
|
|
56
|
+
constructor();
|
|
57
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuItem, never>;
|
|
58
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuItem, "[ktMenuItem]", never, {}, {}, never, never, true, never>;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* `[ktMenuSeparator]` — filet de séparation entre groupes d'items. Pose `role="separator"`
|
|
62
|
+
* (sémantique standard d'un séparateur de menu) ; la ligne elle-même vit dans `menu.css`.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```html
|
|
66
|
+
* <hr ktMenuSeparator />
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
declare class KtMenuSeparator {
|
|
70
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuSeparator, never>;
|
|
71
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuSeparator, "[ktMenuSeparator]", never, {}, {}, never, never, true, never>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* `[ktMenuTrigger]` — sucre de POSITIONNEMENT pour le menu racine. À poser SUR le même élément
|
|
76
|
+
* qu'`[ngMenuTrigger]` (le bouton qui ouvre le menu). Il ne réimplémente RIEN du comportement :
|
|
77
|
+
* l'ouverture/fermeture, `aria-expanded`, Échap, le clic-dehors et le retour de focus sont gérés
|
|
78
|
+
* par aria (`[ngMenuTrigger]`). Sa seule tâche : poser un `anchor-name` sur le trigger et le
|
|
79
|
+
* `position-anchor` correspondant sur la surface du menu, pour que `menu.css` l'ancre en dropdown
|
|
80
|
+
* (CSS Anchor Positioning), comme le popup du Select — sans CDK Overlay (styles scopés conservés,
|
|
81
|
+
* et pas de coordination fragile avec le focus qu'aria pose à l'ouverture).
|
|
82
|
+
*
|
|
83
|
+
* Requiert `[ngMenuTrigger]` sur le même hôte (injecté en `self`).
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```html
|
|
87
|
+
* <button ngMenuTrigger ktMenuTrigger [menu]="m">Fichier</button>
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
declare class KtMenuTrigger {
|
|
91
|
+
private readonly host;
|
|
92
|
+
private readonly ariaTrigger;
|
|
93
|
+
private readonly platformId;
|
|
94
|
+
private readonly idGen;
|
|
95
|
+
protected readonly anchorName: string;
|
|
96
|
+
constructor();
|
|
97
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuTrigger, never>;
|
|
98
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuTrigger, "[ktMenuTrigger]", never, {}, {}, never, never, true, never>;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* `[ktMenuItemCheckbox]` — case à cocher de menu (bascule indépendante). À poser sur un
|
|
103
|
+
* `[ngMenuItem] role="menuitemcheckbox"`. Bind `aria-checked` et bascule `checked` à l'activation.
|
|
104
|
+
*
|
|
105
|
+
* @example
|
|
106
|
+
* ```html
|
|
107
|
+
* <button ngMenuItem ktMenuItem ktMenuItemCheckbox role="menuitemcheckbox" [(checked)]="wrap">
|
|
108
|
+
* Retour à la ligne
|
|
109
|
+
* </button>
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
declare class KtMenuItemCheckbox {
|
|
113
|
+
private readonly ariaItem;
|
|
114
|
+
/** État coché, bidirectionnel : `[(checked)]`. */
|
|
115
|
+
readonly checked: i0.ModelSignal<boolean>;
|
|
116
|
+
protected activate(event: Event): void;
|
|
117
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuItemCheckbox, never>;
|
|
118
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuItemCheckbox, "[ktMenuItemCheckbox]", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, never, true, never>;
|
|
119
|
+
}
|
|
120
|
+
/** Source de la valeur sélectionnée d'un groupe radio, exposée aux `[ktMenuItemRadio]` enfants. */
|
|
121
|
+
declare const KT_MENU_RADIO_GROUP: InjectionToken<KtMenuRadioGroup<unknown>>;
|
|
122
|
+
/**
|
|
123
|
+
* `[ktMenuRadioGroup]` — coordinateur d'un groupe d'items radio mutuellement exclusifs. À poser sur
|
|
124
|
+
* un conteneur englobant les `[ktMenuItemRadio]` (typiquement un `role="group"`). Détient la valeur
|
|
125
|
+
* sélectionnée ; chaque radio s'y compare pour son `aria-checked` et la met à jour à l'activation.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* ```html
|
|
129
|
+
* <div role="group" ktMenuRadioGroup [(value)]="sortBy" aria-label="Trier par">
|
|
130
|
+
* <button ngMenuItem ktMenuItem ktMenuItemRadio role="menuitemradio" [value]="'name'">Nom</button>
|
|
131
|
+
* <button ngMenuItem ktMenuItem ktMenuItemRadio role="menuitemradio" [value]="'date'">Date</button>
|
|
132
|
+
* </div>
|
|
133
|
+
* ```
|
|
134
|
+
*/
|
|
135
|
+
declare class KtMenuRadioGroup<V> {
|
|
136
|
+
/** Valeur sélectionnée du groupe, bidirectionnelle : `[(value)]`. */
|
|
137
|
+
readonly value: i0.ModelSignal<V | null>;
|
|
138
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuRadioGroup<any>, never>;
|
|
139
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuRadioGroup<any>, "[ktMenuRadioGroup]", ["ktMenuRadioGroup"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* `[ktMenuItemRadio]` — bouton radio de menu. À poser sur un `[ngMenuItem] role="menuitemradio"`
|
|
143
|
+
* dans un `[ktMenuRadioGroup]`. `aria-checked` reflète l'égalité avec la valeur du groupe ;
|
|
144
|
+
* l'activation sélectionne cette valeur.
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```html
|
|
148
|
+
* <button ngMenuItem ktMenuItem ktMenuItemRadio role="menuitemradio" [value]="'name'">Trier par nom</button>
|
|
149
|
+
* ```
|
|
150
|
+
*/
|
|
151
|
+
declare class KtMenuItemRadio<V> {
|
|
152
|
+
private readonly ariaItem;
|
|
153
|
+
private readonly group;
|
|
154
|
+
/** Valeur portée par ce radio (comparée à celle du groupe). */
|
|
155
|
+
readonly value: i0.InputSignal<V>;
|
|
156
|
+
protected readonly checked: i0.Signal<boolean>;
|
|
157
|
+
constructor();
|
|
158
|
+
protected activate(event: Event): void;
|
|
159
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtMenuItemRadio<any>, never>;
|
|
160
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtMenuItemRadio<any>, "[ktMenuItemRadio]", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Import ergonomique de toute la famille menu (couche de THÈME ktortu) en une fois :
|
|
165
|
+
* `imports: [KT_MENU]` au lieu d'énumérer chaque directive. À composer avec les directives
|
|
166
|
+
* d'`@angular/aria/menu` (`Menu`, `MenuItem`, `MenuTrigger`, `MenuContent`), qui apportent le
|
|
167
|
+
* comportement accessible.
|
|
168
|
+
*/
|
|
169
|
+
declare const KT_MENU: readonly [typeof KtMenu, typeof KtMenuItem, typeof KtMenuSeparator, typeof KtMenuTrigger, typeof KtMenuItemCheckbox, typeof KtMenuItemRadio, typeof KtMenuRadioGroup];
|
|
170
|
+
|
|
171
|
+
export { KT_MENU, KT_MENU_RADIO_GROUP, KtMenu, KtMenuItem, KtMenuItemCheckbox, KtMenuItemRadio, KtMenuRadioGroup, KtMenuSeparator, KtMenuTrigger };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Amène l'onglet sélectionné dans la zone visible quand la liste d'onglets déborde et défile
|
|
5
|
+
* (cf. tabs.css). Le focus clavier d'`@angular/aria` scrolle déjà l'onglet focalisé ; cette
|
|
6
|
+
* directive couvre ce que le CSS seul ne peut pas faire de façon fiable : l'onglet actif
|
|
7
|
+
* **hors-champ au montage** et lors d'un **changement de sélection programmatique**.
|
|
8
|
+
*
|
|
9
|
+
* Opt-in, à poser sur `[ngTabList]` :
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <ul ngTabList ktTabScroll [(selectedTab)]="tab"> … </ul>
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* Intégrée réactivement avec `@angular/aria/tabs` via son `ModelSignal` `selectedTab`.
|
|
17
|
+
*/
|
|
18
|
+
declare class KtTabScroll {
|
|
19
|
+
private readonly list;
|
|
20
|
+
private readonly tabList;
|
|
21
|
+
constructor();
|
|
22
|
+
private scrollSelectedIntoView;
|
|
23
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KtTabScroll, never>;
|
|
24
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KtTabScroll, "[ngTabList][ktTabScroll]", never, {}, {}, never, never, true, never>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export { KtTabScroll };
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { InjectionToken, OnDestroy, TemplateRef, Provider } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
type KtTooltipPosition = 'top' | 'bottom' | 'left' | 'right';
|
|
5
|
+
interface KtTooltipConfig {
|
|
6
|
+
showDelay: number;
|
|
7
|
+
hideDelay: number;
|
|
8
|
+
position: KtTooltipPosition;
|
|
9
|
+
}
|
|
10
|
+
declare const KT_TOOLTIP_CONFIG: InjectionToken<Partial<KtTooltipConfig>>;
|
|
11
|
+
/**
|
|
12
|
+
* Fournit des défauts d'infobulle (délais, position) pour un sous-arbre ou l'application entière.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* providers: [provideKtTooltip({ showDelay: 300, position: 'bottom' })]
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
declare function provideKtTooltip(config: Partial<KtTooltipConfig>): Provider;
|
|
20
|
+
/**
|
|
21
|
+
* Infobulle accessible posée sur n'importe quel élément focusable/survolable.
|
|
22
|
+
* Apparaît au survol et au focus, reste « hoverable » (WCAG 1.4.13) et se ferme
|
|
23
|
+
* par Échap. Le contenu peut être un texte simple ou un `TemplateRef` **non interactif**
|
|
24
|
+
* (un `role="tooltip"` ne doit pas contenir de lien/bouton/champ).
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```html
|
|
28
|
+
* <button ktTooltip="Enregistrer le brouillon">Enregistrer</button>
|
|
29
|
+
* <span ktTooltip="Aide" tooltipPosition="right" [showDelay]="300">?</span>
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare class KtTooltip implements OnDestroy {
|
|
33
|
+
private readonly config;
|
|
34
|
+
private readonly doc;
|
|
35
|
+
private readonly host;
|
|
36
|
+
private readonly renderer;
|
|
37
|
+
private readonly vcr;
|
|
38
|
+
private readonly ngZone;
|
|
39
|
+
private readonly platformId;
|
|
40
|
+
/** Contenu de l'infobulle : texte simple (injecté en `textContent`) ou `TemplateRef` non interactif. */
|
|
41
|
+
readonly ktTooltip: _angular_core.InputSignal<string | TemplateRef<unknown>>;
|
|
42
|
+
/** Position de l'infobulle autour de la cible. @default 'top' (ou KT_TOOLTIP_CONFIG.position) */
|
|
43
|
+
readonly tooltipPosition: _angular_core.InputSignal<KtTooltipPosition>;
|
|
44
|
+
/** Désactive l'affichage de l'infobulle. @default false */
|
|
45
|
+
readonly tooltipDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
46
|
+
/** Délai (ms) avant apparition au survol/focus. @default 150 (ou KT_TOOLTIP_CONFIG.showDelay) */
|
|
47
|
+
readonly showDelay: _angular_core.InputSignal<number>;
|
|
48
|
+
/** Délai (ms) avant masquage ; laisse le temps d'amener le pointeur sur l'infobulle (WCAG « hoverable »). @default 100 (ou KT_TOOLTIP_CONFIG.hideDelay) */
|
|
49
|
+
readonly hideDelay: _angular_core.InputSignal<number>;
|
|
50
|
+
private readonly idGen;
|
|
51
|
+
private readonly uid;
|
|
52
|
+
private readonly tooltipId;
|
|
53
|
+
readonly idForA11y: string;
|
|
54
|
+
private readonly anchorName;
|
|
55
|
+
/** Vrai quand l'infobulle est susceptible de s'afficher (contenu non vide et non désactivée).
|
|
56
|
+
Public : lu par `KtField` pour câbler `aria-describedby` du contrôle sur l'infobulle d'aide. */
|
|
57
|
+
readonly isActive: _angular_core.Signal<boolean>;
|
|
58
|
+
protected describedById: _angular_core.Signal<string | null>;
|
|
59
|
+
private tip;
|
|
60
|
+
private view;
|
|
61
|
+
private listeners;
|
|
62
|
+
private showTimer;
|
|
63
|
+
private hideTimer;
|
|
64
|
+
private readonly isShown;
|
|
65
|
+
private _supportsAnchor;
|
|
66
|
+
private get supportsAnchor();
|
|
67
|
+
private fallbackListeners;
|
|
68
|
+
private activeTemplate;
|
|
69
|
+
private escListener;
|
|
70
|
+
constructor();
|
|
71
|
+
ngOnDestroy(): void;
|
|
72
|
+
protected show(): void;
|
|
73
|
+
protected hide(): void;
|
|
74
|
+
protected onEscape(event: Event): void;
|
|
75
|
+
private dismiss;
|
|
76
|
+
private ensureTip;
|
|
77
|
+
private registerEscapeListener;
|
|
78
|
+
private syncContent;
|
|
79
|
+
private clearContent;
|
|
80
|
+
private warnIfInteractive;
|
|
81
|
+
private destroyTip;
|
|
82
|
+
private positionFallback;
|
|
83
|
+
private registerFallbackListeners;
|
|
84
|
+
private clearFallbackListeners;
|
|
85
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<KtTooltip, never>;
|
|
86
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<KtTooltip, "[ktTooltip]", never, { "ktTooltip": { "alias": "ktTooltip"; "required": true; "isSignal": true; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; "isSignal": true; }; "tooltipDisabled": { "alias": "tooltipDisabled"; "required": false; "isSignal": true; }; "showDelay": { "alias": "showDelay"; "required": false; "isSignal": true; }; "hideDelay": { "alias": "hideDelay"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export { KT_TOOLTIP_CONFIG, KtTooltip, provideKtTooltip };
|
|
90
|
+
export type { KtTooltipConfig, KtTooltipPosition };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from '@ktortu/aaa/button';
|
|
2
|
+
export * from '@ktortu/aaa/card';
|
|
3
|
+
export * from '@ktortu/aaa/cdk';
|
|
4
|
+
export * from '@ktortu/aaa/dialog';
|
|
5
|
+
export * from '@ktortu/aaa/forms';
|
|
6
|
+
export * from '@ktortu/aaa/menu';
|
|
7
|
+
export * from '@ktortu/aaa/tabs';
|
|
8
|
+
export * from '@ktortu/aaa/tooltip';
|