fold-ng 0.13.0 → 0.14.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/CHANGELOG.md CHANGED
@@ -8,6 +8,69 @@ All notable changes to **fold-ng** are documented here. The format follows
8
8
 
9
9
  _Nothing yet._
10
10
 
11
+ ## [0.14.0] - 2026-08-23
12
+
13
+ ### Changed
14
+
15
+ - **BREAKING — `fold-nav-launcher` a DEUX niveaux.** Une tuile qui contient des
16
+ tuiles est un **groupe** (`fold-nav-group`) : aucun `level` à piloter, aucun
17
+ mode à basculer — le lanceur trouve la profondeur par requête de contenu,
18
+ exactement comme `fold-multiselect` trouve ses `fold-optgroup`. Deux niveaux
19
+ et pas plus : au troisième ce n'est plus un lanceur, c'est une arborescence.
20
+
21
+ Ce qui casse : `icon` devient **facultatif** sur `fold-nav-tile` (une entrée
22
+ de second niveau n'en a pas toujours ; sans icône, la ligne retombe sur un
23
+ point de statut plutôt que de décaler son libellé). La cascade d'entrée n'est
24
+ plus indexée sur `:nth-child` mais sur la **distance à la tuile touchée** —
25
+ c'est le lanceur qui la calcule, parce qu'aucune tuile ne peut connaître
26
+ seule sa distance à un doigt posé sur une autre. `variant` gagne `accent`.
27
+
28
+ Le lanceur se déclare enfin **surface de chrome** : il peignait le sol du
29
+ rail tout en lisant l'encre de la PAGE, ce qui donnait du texte sombre sur
30
+ sombre et des tuiles claires au milieu d'un panneau noir sous tout thème
31
+ mixte. Peindre le sol d'une famille sans en rejoindre la polarité, c'est en
32
+ revendiquer la moitié.
33
+
34
+ Nouveaux réglages : `eyebrow`, `heading`, `glass`, `closeLabel`, `backLabel`,
35
+ et un emplacement `footer` pour ce que l'application possède (le compte, la
36
+ déconnexion) et que la bibliothèque n'a pas à deviner.
37
+
38
+ Ce que la transition doit aux technologies d'assistance, parce que le
39
+ mouvement ne leur dit rien : le **focus suit le niveau** (et ne bouge qu'une
40
+ fois le niveau peint — pris une frame trop tôt il échouait en silence et le
41
+ piège retombait sur le bouton de fermeture, donc le curseur atterrissait sur
42
+ « renvoyer » à chaque descente) ; **Échap devient contextuel** (niveau 2 il
43
+ remonte, niveau 1 il ferme) ; le **niveau est annoncé** par une région vive.
44
+ Le balayage double la flèche, il ne la remplace pas.
45
+
46
+ ### Added
47
+
48
+ - **`fold-menu` — `navLabel`**, le nom du repère `<nav>` du rail. Facultatif
49
+ pour un rail seul : la seule navigation d'une page n'a rien à distinguer.
50
+ Il cesse de l'être dès que la coquille en porte **deux** — un rail
51
+ d'application et un rail d'espace de travail s'annoncent alors tous les deux
52
+ « navigation », et plus rien ne les sépare. La galerie, qui a exactement ces
53
+ deux rails, les nomme désormais.
54
+
55
+ - **`fold-meter`** — une mesure en LECTURE SEULE dans une plage connue (une
56
+ complétude, un quota, un score). Ce n'est ni une barre de progression ni un
57
+ `fold-slider` : ce dernier est un `input type="range"`, focalisable,
58
+ déplaçable, et il s'annonce comme quelque chose qu'on peut changer. Un
59
+ `role="meter"` annonce une valeur déjà décidée. Le raccourci habituel — un
60
+ `div` de 4px — ne donne rien du tout à un lecteur d'écran, et c'est la raison
61
+ d'être du composant. La valeur est **bornée** plutôt que crue : au-delà du max
62
+ elle peindrait hors de la piste, et une plage inversée diviserait par un
63
+ négatif.
64
+
65
+ - **`fold-checklist`** — une liste de conditions et leur état. Troisième
66
+ apparition du motif (les règles d'un champ mot de passe, les préconditions
67
+ d'une zone dangereuse, puis une liste de publication), ce qui est le moment où
68
+ une forme cesse d'être une coïncidence. Chaque état est porté par un **glyphe
69
+ autant que par une couleur** : un point vert et un point ambre sont le même
70
+ point en niveaux de gris, en `forced-colors`, et pour une large part des
71
+ lecteurs. L'état est aussi dit **en toutes lettres** pour un lecteur d'écran,
72
+ qui ne voit aucun glyphe.
73
+
11
74
  ## [0.13.0] - 2026-08-23
12
75
 
13
76
  ### Changed
@@ -1849,7 +1912,8 @@ design-token stylesheet.
1849
1912
  `currentColor`; `prefers-reduced-motion` + `forced-colors` are respected;
1850
1913
  strings localise via inputs / providers (`provideFoldPanelLabels`).
1851
1914
 
1852
- [unreleased]: https://github.com/hugoheynard/fold-ng/compare/v0.13.0...HEAD
1915
+ [unreleased]: https://github.com/hugoheynard/fold-ng/compare/v0.14.0...HEAD
1916
+ [0.14.0]: https://github.com/hugoheynard/fold-ng/releases/tag/v0.14.0
1853
1917
  [0.13.0]: https://github.com/hugoheynard/fold-ng/releases/tag/v0.13.0
1854
1918
  [0.12.1]: https://github.com/hugoheynard/fold-ng/releases/tag/v0.12.1
1855
1919
  [0.12.0]: https://github.com/hugoheynard/fold-ng/releases/tag/v0.12.0