@starterlib/ui 0.7.2 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/README.md +95 -42
  2. package/fesm2022/starterlib-ui-arbre.mjs +82 -0
  3. package/fesm2022/starterlib-ui-arbre.mjs.map +1 -0
  4. package/fesm2022/starterlib-ui-donnees.mjs +532 -0
  5. package/fesm2022/starterlib-ui-donnees.mjs.map +1 -0
  6. package/fesm2022/starterlib-ui-formulaires.mjs +2 -1
  7. package/fesm2022/starterlib-ui-formulaires.mjs.map +1 -1
  8. package/fesm2022/starterlib-ui-interactions.mjs +34 -589
  9. package/fesm2022/starterlib-ui-interactions.mjs.map +1 -1
  10. package/fesm2022/starterlib-ui-libelles-en.mjs +142 -0
  11. package/fesm2022/starterlib-ui-libelles-en.mjs.map +1 -0
  12. package/fesm2022/starterlib-ui-listes.mjs +671 -0
  13. package/fesm2022/starterlib-ui-listes.mjs.map +1 -0
  14. package/fesm2022/starterlib-ui-navigation.mjs +246 -0
  15. package/fesm2022/starterlib-ui-navigation.mjs.map +1 -0
  16. package/fesm2022/starterlib-ui-onglets.mjs +137 -0
  17. package/fesm2022/starterlib-ui-onglets.mjs.map +1 -0
  18. package/fesm2022/starterlib-ui-saisie.mjs +1632 -0
  19. package/fesm2022/starterlib-ui-saisie.mjs.map +1 -0
  20. package/fesm2022/starterlib-ui-selection.mjs +269 -0
  21. package/fesm2022/starterlib-ui-selection.mjs.map +1 -0
  22. package/fesm2022/starterlib-ui.mjs +105 -2931
  23. package/fesm2022/starterlib-ui.mjs.map +1 -1
  24. package/package.json +35 -3
  25. package/types/starterlib-ui-arbre.d.ts +51 -0
  26. package/types/starterlib-ui-donnees.d.ts +228 -0
  27. package/types/starterlib-ui-formulaires.d.ts +5 -4
  28. package/types/starterlib-ui-interactions.d.ts +4 -316
  29. package/types/starterlib-ui-libelles-en.d.ts +25 -0
  30. package/types/starterlib-ui-listes.d.ts +432 -0
  31. package/types/starterlib-ui-navigation.d.ts +104 -0
  32. package/types/starterlib-ui-onglets.d.ts +89 -0
  33. package/types/starterlib-ui-saisie.d.ts +924 -0
  34. package/types/starterlib-ui-selection.d.ts +112 -0
  35. package/types/starterlib-ui.d.ts +9 -1575
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starterlib-ui-listes.mjs","sources":["../../../../packages/ui/listes/src/lib/st-pagination.ts","../../../../packages/ui/listes/src/lib/st-pagination.html","../../../../packages/ui/listes/src/lib/st-description-list.ts","../../../../packages/ui/listes/src/lib/st-description-list.html","../../../../packages/ui/listes/src/lib/st-list.ts","../../../../packages/ui/listes/src/lib/st-list.html","../../../../packages/ui/listes/src/lib/st-sort-header.ts","../../../../packages/ui/listes/src/lib/st-sort-header.html","../../../../packages/ui/listes/src/lib/st-data-table.ts","../../../../packages/ui/listes/src/lib/st-data-table.html","../../../../packages/ui/listes/src/lib/st-filter-chip.ts","../../../../packages/ui/listes/src/lib/st-filter-chip.html","../../../../packages/ui/listes/src/lib/st-filter-bar.ts","../../../../packages/ui/listes/src/lib/st-filter-bar.html","../../../../packages/ui/listes/src/public-api.ts","../../../../packages/ui/listes/src/starterlib-ui-listes.ts"],"names":["compteur"],"mappings":"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"}
@@ -0,0 +1,246 @@
1
+ import { BreakpointObserver } from '@angular/cdk/layout';
2
+ import { NgTemplateOutlet } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { inject, Injector, input, computed, signal, viewChild, effect, DestroyRef, ChangeDetectionStrategy, Component, Directive } from '@angular/core';
5
+ import { RUPTURES } from '@starterlib/tokens';
6
+ import { ST_LIBELLES } from '@starterlib/ui';
7
+
8
+ /**
9
+ * Au-dela, la navigation tient a cote du contenu. Meme seuil que `st-app-shell`,
10
+ * lu dans les jetons : ecrit en dur ici, il avait deja diverge une fois de la
11
+ * feuille (F7 du plan de la coquille).
12
+ */
13
+ const ECRAN_LARGE = RUPTURES.lg.requete;
14
+ let compteur = 0;
15
+ /**
16
+ * Navigation laterale : une region a cote du contenu sur grand ecran, un tiroir
17
+ * sur petit ecran.
18
+ *
19
+ * ```html
20
+ * <st-app-shell>
21
+ * <button entete stButton [stSidenavToggle]="navigation">Menu</button>
22
+ * <st-sidenav navigation #navigation etiquette="Navigation principale">
23
+ * <a routerLink="/comptes">Comptes</a>
24
+ * </st-sidenav>
25
+ * …
26
+ * </st-app-shell>
27
+ * ```
28
+ *
29
+ * ⚠️ **Deux modes, jamais confondus.** Persistante, c'est une REGION de la page :
30
+ * aucun piege, rien a ouvrir. Modale, c'est un TIROIR, donc un `StDialog` — role,
31
+ * piegeage du focus, Echap, retour du focus au bouton — et non une region
32
+ * glissee par-dessus la page avec un peu de CSS, qui laisserait le clavier
33
+ * parcourir la page cachee dessous.
34
+ *
35
+ * ⚠️ **Elle porte son propre `<nav>`, et un seul a la fois.** Sur petit ecran,
36
+ * la region en ligne DISPARAIT quand le tiroir prend le relais : laissee en
37
+ * place, elle resterait un repere de navigation vide, que le lecteur d'ecran
38
+ * proposerait sans rien y trouver.
39
+ *
40
+ * Un lien suivi dans le tiroir le ferme : `StDialog` se ferme a toute navigation
41
+ * du routeur.
42
+ */
43
+ class StSidenav {
44
+ // Capture a la construction : apres l'attente du module, le contexte
45
+ // d'injection n'existe plus, et `inject()` y leverait.
46
+ injecteur = inject(Injector);
47
+ libelles = inject(ST_LIBELLES);
48
+ /**
49
+ * Nom du repere. `null` : « Navigation principale », du dictionnaire. A
50
+ * renseigner des qu'une page compte deux navigations, qui doivent se
51
+ * distinguer.
52
+ */
53
+ etiquette = input(null, /* @ts-ignore */
54
+ ...(ngDevMode ? [{ debugName: "etiquette" }] : /* istanbul ignore next */ []));
55
+ etiquetteLue = computed(() => this.etiquette() ?? this.libelles().navigationPrincipale, /* @ts-ignore */
56
+ ...(ngDevMode ? [{ debugName: "etiquetteLue" }] : /* istanbul ignore next */ []));
57
+ /** `auto` : persistante sur grand ecran, tiroir en dessous. */
58
+ mode = input('auto', /* @ts-ignore */
59
+ ...(ngDevMode ? [{ debugName: "mode" }] : /* istanbul ignore next */ []));
60
+ identifiant = `st-sidenav-${(compteur += 1).toString()}`;
61
+ ecranLarge = signal(false, /* @ts-ignore */
62
+ ...(ngDevMode ? [{ debugName: "ecranLarge" }] : /* istanbul ignore next */ []));
63
+ /** Mode reellement applique. Lu par le bouton, qui ne s'affiche qu'en tiroir. */
64
+ modeEffectif = computed(() => {
65
+ const mode = this.mode();
66
+ if (mode !== 'auto')
67
+ return mode;
68
+ return this.ecranLarge() ? 'persistant' : 'modal';
69
+ }, /* @ts-ignore */
70
+ ...(ngDevMode ? [{ debugName: "modeEffectif" }] : /* istanbul ignore next */ []));
71
+ ouvertInterne = signal(false, /* @ts-ignore */
72
+ ...(ngDevMode ? [{ debugName: "ouvertInterne" }] : /* istanbul ignore next */ []));
73
+ ouvert = this.ouvertInterne.asReadonly();
74
+ // Nomme autrement que la variable `#contenu` du gabarit, qui la masquerait.
75
+ gabarit = viewChild.required('contenu', /* @ts-ignore */
76
+ ...(ngDevMode ? [{ debugName: "gabarit" }] : /* istanbul ignore next */ []));
77
+ reference = null;
78
+ // Pose AVANT l'attente du module de surfaces : sans lui, deux clics rapides
79
+ // ouvriraient deux tiroirs, `this.reference` etant encore nul pendant le
80
+ // chargement.
81
+ ouvertureEnCours = false;
82
+ // Le composant peut disparaitre PENDANT l'attente — une navigation, un
83
+ // `@if` qui bascule. `fermer()` ne suffirait pas : il n'y a encore rien a
84
+ // fermer, et le tiroir se poserait apres coup, orphelin.
85
+ detruit = false;
86
+ /**
87
+ * Le service de dialogue, charge a la PREMIERE ouverture et garde ensuite.
88
+ * Rend `null` si le composant a ete detruit pendant l'attente.
89
+ *
90
+ * ⚠️ Le specificateur etant dans la carte d'importation de l'application
91
+ * federee, cet import dynamique resout vers l'INSTANCE PARTAGEE du point
92
+ * d'entree : le tiroir emploie le meme `StDialog`, le meme recouvrement et la
93
+ * meme pile que le reste de l'application. Un import dynamique ne dedouble
94
+ * rien ; il decale seulement le moment du telechargement.
95
+ *
96
+ * ⚠️ **Le controle de destruction est ICI, avant `injecteur.get`, et non chez
97
+ * l'appelant.** Un injecteur detruit ne rend pas `undefined` : il LEVE
98
+ * (NG0205). Le controle place apres la resolution du service arrivait donc
99
+ * trop tard, et une navigation pendant le chargement du module produisait un
100
+ * rejet non gere — invisible en developpement, remonte comme erreur
101
+ * applicative en production, puisque `basculer()` appelle `ouvrir()` sans
102
+ * attendre sa promesse.
103
+ */
104
+ async serviceDeDialogue() {
105
+ const { StDialog: classe } = await import('@starterlib/ui/surfaces');
106
+ if (this.detruit)
107
+ return null;
108
+ return this.injecteur.get(classe);
109
+ }
110
+ constructor() {
111
+ const abonnement = inject(BreakpointObserver)
112
+ .observe(ECRAN_LARGE)
113
+ .subscribe((etat) => {
114
+ this.ecranLarge.set(etat.matches);
115
+ });
116
+ // Un ecran qui s'elargit pendant que le tiroir est ouvert : la navigation
117
+ // redevient une region, et le tiroir n'a plus de raison d'etre.
118
+ effect(() => {
119
+ if (this.modeEffectif() === 'persistant')
120
+ this.fermer();
121
+ });
122
+ inject(DestroyRef).onDestroy(() => {
123
+ this.detruit = true;
124
+ abonnement.unsubscribe();
125
+ this.fermer();
126
+ });
127
+ }
128
+ /**
129
+ * Ouvre le tiroir. Asynchrone depuis la 0.8.0 : le module du dialogue se
130
+ * charge a la demande. La promesse est tenue quand le tiroir est a l'ecran —
131
+ * un test l'attend, l'appelant ordinaire n'a rien a en faire.
132
+ */
133
+ async ouvrir() {
134
+ if (this.modeEffectif() !== 'modal' || this.reference !== null)
135
+ return;
136
+ if (this.ouvertureEnCours)
137
+ return;
138
+ this.ouvertureEnCours = true;
139
+ try {
140
+ const dialogues = await this.serviceDeDialogue();
141
+ // `null` : le composant a disparu pendant l'attente. L'ecran a pu
142
+ // s'elargir aussi — ouvrir maintenant poserait un tiroir que plus rien ne
143
+ // fermerait.
144
+ if (dialogues === null || this.modeEffectif() !== 'modal')
145
+ return;
146
+ const reference = dialogues.ouvrir(this.gabarit(), {
147
+ cote: 'debut',
148
+ etiquette: this.etiquetteLue(),
149
+ });
150
+ this.reference = reference;
151
+ this.ouvertInterne.set(true);
152
+ void reference.ferme.then(() => {
153
+ if (this.reference !== reference)
154
+ return;
155
+ this.reference = null;
156
+ this.ouvertInterne.set(false);
157
+ });
158
+ }
159
+ finally {
160
+ this.ouvertureEnCours = false;
161
+ }
162
+ }
163
+ fermer() {
164
+ const reference = this.reference;
165
+ if (reference === null)
166
+ return;
167
+ this.reference = null;
168
+ this.ouvertInterne.set(false);
169
+ reference.fermer();
170
+ }
171
+ /** Reste synchrone : c'est ce que lit la liaison de clic du bouton. */
172
+ basculer() {
173
+ if (this.ouvertInterne())
174
+ this.fermer();
175
+ else
176
+ void this.ouvrir();
177
+ }
178
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StSidenav, deps: [], target: i0.ɵɵFactoryTarget.Component });
179
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: StSidenav, isStandalone: true, selector: "st-sidenav", inputs: { etiquette: { classPropertyName: "etiquette", publicName: "etiquette", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-mode": "modeEffectif()" }, classAttribute: "st-sidenav" }, viewQueries: [{ propertyName: "gabarit", first: true, predicate: ["contenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-template #contenu>\n <nav class=\"st-sidenav__navigation\" [attr.id]=\"identifiant\" [attr.aria-label]=\"etiquetteLue()\">\n <ng-content />\n </nav>\n</ng-template>\n\n@if (modeEffectif() === 'persistant') {\n <ng-container [ngTemplateOutlet]=\"contenu\" />\n}\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host{display:block}:host([data-mode=modal]){display:none}.st-sidenav__navigation{display:flex;flex-direction:column;gap:var(--st-espacement-1);padding:var(--st-espacement-4)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
180
+ }
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StSidenav, decorators: [{
182
+ type: Component,
183
+ args: [{ selector: 'st-sidenav', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgTemplateOutlet], host: {
184
+ class: 'st-sidenav',
185
+ '[attr.data-mode]': 'modeEffectif()',
186
+ }, template: "<ng-template #contenu>\n <nav class=\"st-sidenav__navigation\" [attr.id]=\"identifiant\" [attr.aria-label]=\"etiquetteLue()\">\n <ng-content />\n </nav>\n</ng-template>\n\n@if (modeEffectif() === 'persistant') {\n <ng-container [ngTemplateOutlet]=\"contenu\" />\n}\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host{display:block}:host([data-mode=modal]){display:none}.st-sidenav__navigation{display:flex;flex-direction:column;gap:var(--st-espacement-1);padding:var(--st-espacement-4)}\n"] }]
187
+ }], ctorParameters: () => [], propDecorators: { etiquette: [{ type: i0.Input, args: [{ isSignal: true, alias: "etiquette", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], gabarit: [{ type: i0.ViewChild, args: ['contenu', { isSignal: true }] }] } });
188
+
189
+ /**
190
+ * Bouton qui ouvre la navigation en tiroir.
191
+ *
192
+ * ⚠️ **Masque quand la navigation est persistante.** Un bouton « Menu » qui ne
193
+ * fait rien, parce que la navigation est deja affichee a cote, est un arret de
194
+ * tabulation inutile et une promesse non tenue.
195
+ *
196
+ * ⚠️ `aria-expanded` suit l'ouverture du tiroir : sans lui, rien ne dit a qui
197
+ * n'en voit pas l'effet que le bouton a agi.
198
+ */
199
+ class StSidenavToggle {
200
+ stSidenavToggle = input.required(/* @ts-ignore */
201
+ ...(ngDevMode ? [{ debugName: "stSidenavToggle" }] : /* istanbul ignore next */ []));
202
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StSidenavToggle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
203
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.6", type: StSidenavToggle, isStandalone: true, selector: "[stSidenavToggle]", inputs: { stSidenavToggle: { classPropertyName: "stSidenavToggle", publicName: "stSidenavToggle", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "aria-haspopup": "dialog" }, listeners: { "click": "stSidenavToggle().basculer()" }, properties: { "attr.aria-expanded": "stSidenavToggle().ouvert()", "attr.hidden": "stSidenavToggle().modeEffectif() === \"modal\" ? null : \"\"" } }, ngImport: i0 });
204
+ }
205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StSidenavToggle, decorators: [{
206
+ type: Directive,
207
+ args: [{
208
+ selector: '[stSidenavToggle]',
209
+ host: {
210
+ 'aria-haspopup': 'dialog',
211
+ '[attr.aria-expanded]': 'stSidenavToggle().ouvert()',
212
+ '[attr.hidden]': 'stSidenavToggle().modeEffectif() === "modal" ? null : ""',
213
+ '(click)': 'stSidenavToggle().basculer()',
214
+ },
215
+ }]
216
+ }], propDecorators: { stSidenavToggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "stSidenavToggle", required: true }] }] } });
217
+
218
+ /**
219
+ * @starterlib/ui/navigation — la navigation laterale : region a cote du
220
+ * contenu sur grand ecran, tiroir sur petit ecran.
221
+ *
222
+ * ⚠️ Detache de `@starterlib/ui/interactions`, qui agregeait quatre familles
223
+ * derriere UN specificateur (ADR 0031, decision 2). La coquille n'y voulait
224
+ * que `StSidenav`, qui n'a besoin que d'`@angular/cdk/layout` — un observateur
225
+ * de rupture, quelques centaines d'octets —, et payait au passage tout
226
+ * `@angular/aria` amene par les onglets, la selection et l'arbre.
227
+ *
228
+ * Pair lourd de ce point d'entree, et le seul : `@angular/cdk/layout`.
229
+ * L'ouverture du tiroir charge `@starterlib/ui/surfaces` A LA DEMANDE : le
230
+ * dialogue n'est plus une arete statique du chemin de peinture (ADR 0031,
231
+ * decision 3).
232
+ *
233
+ * ⚠️ En federation, ce point d'entree se partage SEPAREMENT : c'est un
234
+ * specificateur de module distinct.
235
+ *
236
+ * ```ts
237
+ * import { StSidenav, StSidenavToggle } from '@starterlib/ui/navigation';
238
+ * ```
239
+ */
240
+
241
+ /**
242
+ * Generated bundle index. Do not edit.
243
+ */
244
+
245
+ export { StSidenav, StSidenavToggle };
246
+ //# sourceMappingURL=starterlib-ui-navigation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starterlib-ui-navigation.mjs","sources":["../../../../packages/ui/navigation/src/lib/st-sidenav.ts","../../../../packages/ui/navigation/src/lib/st-sidenav.html","../../../../packages/ui/navigation/src/lib/st-sidenav-toggle.ts","../../../../packages/ui/navigation/src/public-api.ts","../../../../packages/ui/navigation/src/starterlib-ui-navigation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, model, computed, ChangeDetectionStrategy, Component, Directive } from '@angular/core';
3
+ import * as i1 from '@angular/aria/tabs';
4
+ import { TabList, Tab, Tabs, TabPanel, TabContent } from '@angular/aria/tabs';
5
+
6
+ /**
7
+ * Onglets, sur les primitives `@angular/aria/tabs`.
8
+ *
9
+ * ```html
10
+ * <st-tabs etiquette="Compte" [onglets]="onglets" [(selection)]="onglet">
11
+ * <st-tab-panel valeur="operations">
12
+ * <ng-template stTabContent><app-operations /></ng-template>
13
+ * </st-tab-panel>
14
+ * <st-tab-panel valeur="virements">
15
+ * <ng-template stTabContent><app-virements /></ng-template>
16
+ * </st-tab-panel>
17
+ * </st-tabs>
18
+ * ```
19
+ *
20
+ * ⚠️ **La liste d'onglets est rendue par le composant, a partir de donnees**, et
21
+ * non projetee. Les primitives d'Aria relient un onglet a sa liste par
22
+ * INJECTION, et un contenu projete garde l'injecteur de l'endroit ou il est
23
+ * ecrit : c'est la lecon de `st-menu`, ou des elements projetes ne
24
+ * s'enregistraient jamais. Rendue ici, la liste est a coup sur sous la bonne
25
+ * primitive — et ses valeurs peuvent etre dites en francais.
26
+ *
27
+ * Les PANNEAUX, eux, sont projetes : ecrits directement sous `st-tabs`, leur
28
+ * injecteur parent est celui de l'hote, qui porte la primitive `Tabs`.
29
+ *
30
+ * ⚠️ **Activation manuelle par defaut.** En activation automatique, chaque
31
+ * fleche SELECTIONNE l'onglet atteint ; son contenu differe se rend, et charge
32
+ * ses donnees. Parcourir cinq onglets au clavier lancerait cinq requetes pour en
33
+ * lire un. En manuelle, les fleches deplacent le focus et Entree ou Espace
34
+ * selectionne. `automatique` reste le bon choix quand les panneaux sont deja la
35
+ * et s'affichent sans delai.
36
+ */
37
+ class StTabs {
38
+ onglets = input.required(/* @ts-ignore */
39
+ ...(ngDevMode ? [{ debugName: "onglets" }] : /* istanbul ignore next */ []));
40
+ /** Nom accessible de la liste : sans lui, plusieurs listes d'onglets se confondent. */
41
+ etiquette = input.required(/* @ts-ignore */
42
+ ...(ngDevMode ? [{ debugName: "etiquette" }] : /* istanbul ignore next */ []));
43
+ activation = input('manuelle', /* @ts-ignore */
44
+ ...(ngDevMode ? [{ debugName: "activation" }] : /* istanbul ignore next */ []));
45
+ orientation = input('horizontale', /* @ts-ignore */
46
+ ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
47
+ /** Valeur de l'onglet selectionne. `undefined` : le premier onglet disponible. */
48
+ selection = model(undefined, /* @ts-ignore */
49
+ ...(ngDevMode ? [{ debugName: "selection" }] : /* istanbul ignore next */ []));
50
+ /**
51
+ * ⚠️ Toujours un onglet selectionne. Le motif ARIA l'exige : une liste sans
52
+ * selection n'affiche aucun panneau, et la page parait vide sans raison.
53
+ */
54
+ selectionEffective = computed(() => this.selection() ?? this.onglets().find((onglet) => onglet.desactive !== true)?.valeur, /* @ts-ignore */
55
+ ...(ngDevMode ? [{ debugName: "selectionEffective" }] : /* istanbul ignore next */ []));
56
+ modeAria = computed(() => this.activation() === 'automatique' ? 'follow' : 'explicit', /* @ts-ignore */
57
+ ...(ngDevMode ? [{ debugName: "modeAria" }] : /* istanbul ignore next */ []));
58
+ orientationAria = computed(() => this.orientation() === 'verticale' ? 'vertical' : 'horizontal', /* @ts-ignore */
59
+ ...(ngDevMode ? [{ debugName: "orientationAria" }] : /* istanbul ignore next */ []));
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabs, deps: [], target: i0.ɵɵFactoryTarget.Component });
61
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: StTabs, isStandalone: true, selector: "st-tabs", inputs: { onglets: { classPropertyName: "onglets", publicName: "onglets", isSignal: true, isRequired: true, transformFunction: null }, etiquette: { classPropertyName: "etiquette", publicName: "etiquette", isSignal: true, isRequired: true, transformFunction: null }, activation: { classPropertyName: "activation", publicName: "activation", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selection: "selectionChange" }, host: { properties: { "attr.data-orientation": "orientation()" }, classAttribute: "st-tabs" }, hostDirectives: [{ directive: i1.Tabs }], ngImport: i0, template: "<div\n class=\"st-tabs__liste\"\n ngTabList\n [attr.aria-label]=\"etiquette()\"\n [selectionMode]=\"modeAria()\"\n [orientation]=\"orientationAria()\"\n [selectedTab]=\"selectionEffective()\"\n (selectedTabChange)=\"selection.set($event)\"\n>\n @for (onglet of onglets(); track onglet.valeur) {\n <button\n class=\"st-tabs__onglet\"\n type=\"button\"\n ngTab\n [value]=\"onglet.valeur\"\n [disabled]=\"onglet.desactive === true\"\n >\n {{ onglet.libelle }}\n </button>\n }\n</div>\n\n<div class=\"st-tabs__panneaux\">\n <ng-content />\n</div>\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host{display:block}:host([data-orientation=verticale]){display:flex;gap:var(--st-espacement-4)}.st-tabs__liste{display:flex;gap:var(--st-espacement-1);border-block-end:1px solid var(--st-couleur-bordure)}:host([data-orientation=verticale]) .st-tabs__liste{flex-direction:column;border-block-end:0;border-inline-end:1px solid var(--st-couleur-bordure)}.st-tabs__panneaux{flex:1 1 auto;min-inline-size:0}.st-tabs__onglet:focus-visible{outline:2px solid var(--st-couleur-anneau-focus);outline-offset:2px}.st-tabs__onglet{min-block-size:var(--st-cible-tactile-min);padding:var(--st-espacement-2) var(--st-espacement-4);font:inherit;color:var(--st-couleur-texte-discret);cursor:pointer;background:none;border:0;border-block-end:3px solid transparent}@media(hover:hover){.st-tabs__onglet:hover{color:var(--st-couleur-texte)}}.st-tabs__onglet[aria-selected=true]{font-weight:var(--st-graisse-semi);color:var(--st-couleur-texte);border-block-end-color:var(--st-couleur-primaire)}.st-tabs__onglet[aria-disabled=true]{color:var(--st-couleur-texte-desactive);cursor:not-allowed}@media(forced-colors:active){.st-tabs__onglet[aria-selected=true]{border-block-end-color:Highlight}}\n"], dependencies: [{ kind: "directive", type: TabList, selector: "[ngTabList]", inputs: ["orientation", "wrap", "softDisabled", "focusMode", "selectionMode", "selectedTab", "disabled"], outputs: ["selectedTabChange"], exportAs: ["ngTabList"] }, { kind: "directive", type: Tab, selector: "[ngTab]", inputs: ["id", "disabled", "value"], exportAs: ["ngTab"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabs, decorators: [{
64
+ type: Component,
65
+ args: [{ selector: 'st-tabs', changeDetection: ChangeDetectionStrategy.OnPush, imports: [TabList, Tab], hostDirectives: [Tabs], host: {
66
+ class: 'st-tabs',
67
+ '[attr.data-orientation]': 'orientation()',
68
+ }, template: "<div\n class=\"st-tabs__liste\"\n ngTabList\n [attr.aria-label]=\"etiquette()\"\n [selectionMode]=\"modeAria()\"\n [orientation]=\"orientationAria()\"\n [selectedTab]=\"selectionEffective()\"\n (selectedTabChange)=\"selection.set($event)\"\n>\n @for (onglet of onglets(); track onglet.valeur) {\n <button\n class=\"st-tabs__onglet\"\n type=\"button\"\n ngTab\n [value]=\"onglet.valeur\"\n [disabled]=\"onglet.desactive === true\"\n >\n {{ onglet.libelle }}\n </button>\n }\n</div>\n\n<div class=\"st-tabs__panneaux\">\n <ng-content />\n</div>\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host{display:block}:host([data-orientation=verticale]){display:flex;gap:var(--st-espacement-4)}.st-tabs__liste{display:flex;gap:var(--st-espacement-1);border-block-end:1px solid var(--st-couleur-bordure)}:host([data-orientation=verticale]) .st-tabs__liste{flex-direction:column;border-block-end:0;border-inline-end:1px solid var(--st-couleur-bordure)}.st-tabs__panneaux{flex:1 1 auto;min-inline-size:0}.st-tabs__onglet:focus-visible{outline:2px solid var(--st-couleur-anneau-focus);outline-offset:2px}.st-tabs__onglet{min-block-size:var(--st-cible-tactile-min);padding:var(--st-espacement-2) var(--st-espacement-4);font:inherit;color:var(--st-couleur-texte-discret);cursor:pointer;background:none;border:0;border-block-end:3px solid transparent}@media(hover:hover){.st-tabs__onglet:hover{color:var(--st-couleur-texte)}}.st-tabs__onglet[aria-selected=true]{font-weight:var(--st-graisse-semi);color:var(--st-couleur-texte);border-block-end-color:var(--st-couleur-primaire)}.st-tabs__onglet[aria-disabled=true]{color:var(--st-couleur-texte-desactive);cursor:not-allowed}@media(forced-colors:active){.st-tabs__onglet[aria-selected=true]{border-block-end-color:Highlight}}\n"] }]
69
+ }], propDecorators: { onglets: [{ type: i0.Input, args: [{ isSignal: true, alias: "onglets", required: true }] }], etiquette: [{ type: i0.Input, args: [{ isSignal: true, alias: "etiquette", required: true }] }], activation: [{ type: i0.Input, args: [{ isSignal: true, alias: "activation", required: false }] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], selection: [{ type: i0.Input, args: [{ isSignal: true, alias: "selection", required: false }] }, { type: i0.Output, args: ["selectionChange"] }] } });
70
+
71
+ /**
72
+ * Panneau d'un onglet, relie par sa `valeur`.
73
+ *
74
+ * ⚠️ La primitive d'Aria ne masque RIEN : elle pose `inert` sur le panneau
75
+ * inactif, ce qui le retire de l'arbre d'accessibilite et du clavier, mais le
76
+ * laisse a l'ecran. Sa documentation le dit en une ligne. Sans le style de ce
77
+ * composant, tous les panneaux s'affichaient empiles, muets et intouchables.
78
+ */
79
+ /* eslint-disable-next-line @typescript-eslint/no-extraneous-class --
80
+ Vide par construction : tout le comportement vient de la primitive d'Aria
81
+ composee en directive d'hote. La classe porte le selecteur et le style du
82
+ socle, rien d'autre ; y ajouter un membre pour satisfaire la regle serait
83
+ inventer de l'API. */
84
+ class StTabPanel {
85
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
86
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.6", type: StTabPanel, isStandalone: true, selector: "st-tab-panel", host: { classAttribute: "st-tab-panel" }, hostDirectives: [{ directive: i1.TabPanel, inputs: ["value", "valeur"] }], ngImport: i0, template: "<ng-content />\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host:focus-visible{outline:2px solid var(--st-couleur-anneau-focus);outline-offset:2px}:host{display:block;padding-block:var(--st-espacement-4)}:host([inert]){display:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
87
+ }
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabPanel, decorators: [{
89
+ type: Component,
90
+ args: [{ selector: 'st-tab-panel', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [{ directive: TabPanel, inputs: ['value: valeur'] }], host: { class: 'st-tab-panel' }, template: "<ng-content />\n", styles: [".st-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:host([hidden]){display:none!important}:host:focus-visible{outline:2px solid var(--st-couleur-anneau-focus);outline-offset:2px}:host{display:block;padding-block:var(--st-espacement-4)}:host([inert]){display:none}\n"] }]
91
+ }] });
92
+
93
+ /**
94
+ * Contenu differe d'un panneau : rendu a la premiere selection de son onglet.
95
+ *
96
+ * Un ecran a cinq onglets ne charge ainsi que celui qu'on regarde. Voir
97
+ * l'activation manuelle de `st-tabs` : c'est ce qui empeche qu'un simple
98
+ * parcours au clavier les rende tous.
99
+ */
100
+ /* eslint-disable-next-line @typescript-eslint/no-extraneous-class --
101
+ Vide par construction : tout le comportement vient de la primitive d'Aria
102
+ composee en directive d'hote. La classe porte le selecteur et le style du
103
+ socle, rien d'autre ; y ajouter un membre pour satisfaire la regle serait
104
+ inventer de l'API. */
105
+ class StTabContent {
106
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
107
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.6", type: StTabContent, isStandalone: true, selector: "ng-template[stTabContent]", hostDirectives: [{ directive: i1.TabContent }], ngImport: i0 });
108
+ }
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: StTabContent, decorators: [{
110
+ type: Directive,
111
+ args: [{
112
+ selector: 'ng-template[stTabContent]',
113
+ hostDirectives: [TabContent],
114
+ }]
115
+ }] });
116
+
117
+ /**
118
+ * @starterlib/ui/onglets — les onglets et leurs panneaux.
119
+ *
120
+ * ⚠️ Detache de `@starterlib/ui/interactions` (ADR 0031, decision 2) : le
121
+ * decoupage suit la frontiere des pairs reellement observee. Pair lourd de ce
122
+ * point d'entree, et le seul : `@angular/aria/tabs`.
123
+ *
124
+ * ⚠️ En federation, ce point d'entree se partage SEPAREMENT : c'est un
125
+ * specificateur de module distinct.
126
+ *
127
+ * ```ts
128
+ * import { StTabs, StTabPanel, StTabContent } from '@starterlib/ui/onglets';
129
+ * ```
130
+ */
131
+
132
+ /**
133
+ * Generated bundle index. Do not edit.
134
+ */
135
+
136
+ export { StTabContent, StTabPanel, StTabs };
137
+ //# sourceMappingURL=starterlib-ui-onglets.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starterlib-ui-onglets.mjs","sources":["../../../../packages/ui/onglets/src/lib/st-tabs.ts","../../../../packages/ui/onglets/src/lib/st-tabs.html","../../../../packages/ui/onglets/src/lib/st-tab-panel.ts","../../../../packages/ui/onglets/src/lib/st-tab-panel.html","../../../../packages/ui/onglets/src/lib/st-tab-content.ts","../../../../packages/ui/onglets/src/public-api.ts","../../../../packages/ui/onglets/src/starterlib-ui-onglets.ts"],"names":[],"mappings":"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"}