origam 2.21.0 → 2.22.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 +54 -0
- package/dist/src/assets/css/main.css +1 -1
- package/dist/src/assets/css/tokens/dark.css +8 -0
- package/dist/src/assets/css/tokens/light.css +3 -0
- package/dist/src/assets/scss/tokens/_dark.scss +8 -0
- package/dist/src/assets/scss/tokens/_light.scss +3 -0
- package/dist/src/components/CommandPalette/OrigamCommandPalette.vue +8 -2
- package/dist/src/components/ContextualMenu/OrigamContextualMenu.vue +1 -1
- package/dist/src/components/Dialog/OrigamDialog.vue +1 -1
- package/dist/src/components/Dialog/OrigamDialogConfirmation.vue +1 -1
- package/dist/src/components/Drawer/OrigamDrawer.vue +12 -2
- package/dist/src/components/Menu/OrigamMenu.vue +1 -1
- package/dist/src/components/Overlay/OrigamOverlay.vue +2 -2
- package/dist/src/components/Snackbar/OrigamSnackbar.vue +1 -1
- package/dist/src/components/Snackbar/OrigamSnackbarGroup.vue +8 -2
- package/dist/src/components/Tooltip/OrigamTooltip.vue +1 -1
- package/dist/src/composables/Commons/hydration.composable.cjs +8 -3
- package/dist/src/composables/Commons/hydration.composable.d.ts +13 -5
- package/dist/src/composables/Commons/hydration.composable.js +6 -1
- package/dist/src/composables/Commons/teleport.composable.cjs +3 -0
- package/dist/src/composables/Commons/teleport.composable.d.ts +56 -0
- package/dist/src/composables/Commons/teleport.composable.js +3 -0
- package/dist/src/interfaces/CommandPalette/command-palette.interface.d.ts +2 -1
- package/dist/src/interfaces/Commons/attach.interface.cjs +1 -0
- package/dist/src/interfaces/Commons/attach.interface.d.ts +30 -0
- package/dist/src/interfaces/Commons/attach.interface.js +0 -0
- package/dist/src/interfaces/Drawer/drawer.interface.d.ts +24 -1
- package/dist/src/interfaces/Overlay/overlay.interface.d.ts +2 -2
- package/dist/src/interfaces/Snackbar/snackbar-group.interface.d.ts +2 -1
- package/dist/src/interfaces/index.cjs +11 -0
- package/dist/src/interfaces/index.d.ts +1 -0
- package/dist/src/interfaces/index.js +1 -0
- package/dist/src/themes/origam.theme.cjs +10 -1
- package/dist/src/themes/origam.theme.js +10 -1
- package/dist/src/types/tokens.type.d.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -18,6 +18,60 @@ This project follows [Semantic Versioning](https://semver.org).
|
|
|
18
18
|
|
|
19
19
|
## [Unreleased]
|
|
20
20
|
|
|
21
|
+
## [2.22.0] - 2026-10-07
|
|
22
|
+
|
|
23
|
+
### Added — `attach` sur `OrigamCommandPalette`, `OrigamSnackbarGroup` et `OrigamDrawer`
|
|
24
|
+
|
|
25
|
+
Ces trois composants codaient en dur `<teleport to="body">` et n'offraient **aucun moyen de
|
|
26
|
+
rediriger** la cible, alors que toute la famille Overlay — Tooltip, Snackbar, Dialog, Menu, via
|
|
27
|
+
`IOverlayProps` — portait déjà `attach`. C'était une surface à moitié implémentée, et la directive
|
|
28
|
+
d'`adr-007-directional-props.md` est explicite : *si un format existe, il existe partout ; on ne
|
|
29
|
+
fait pas moitié*.
|
|
30
|
+
|
|
31
|
+
La prop est désormais extraite dans `interfaces/Commons/attach.interface.ts` (`IAttachProps`) au
|
|
32
|
+
lieu d'être redéclarée sur chaque interface, et consommée par le point unique existant,
|
|
33
|
+
`useTeleport`.
|
|
34
|
+
|
|
35
|
+
**Vérifié sur le parent DOM réel** du nœud téléporté, pas sur l'acceptation de la prop : les 9
|
|
36
|
+
tests `attach` sont **9/9 rouges sur le commit parent**, verts sur la branche.
|
|
37
|
+
|
|
38
|
+
### Added — `--origam-color__text---tertiary`
|
|
39
|
+
|
|
40
|
+
Troisième niveau de texte sémantique, déclaré dans `light.css` (`neutral-500`) et `dark.css`
|
|
41
|
+
(`neutral-400`), leurs jumeaux SCSS, et l'union `TTokenName`.
|
|
42
|
+
|
|
43
|
+
Il était **lu par 27 fichiers** de `packages/marketing` et déclaré **nulle part** : un canal de
|
|
44
|
+
thème mort depuis toujours, qui rendait correctement par son seul repli. Les pages de référence,
|
|
45
|
+
`HomeThemes`, `WhyOrigamThemeDemo`, les pages d'administration et `apple.theme.ts` le consommaient
|
|
46
|
+
tous dans le vide.
|
|
47
|
+
|
|
48
|
+
⚠️ **Aplatissement assumé** : en mode sombre, `tertiary` et `secondary` résolvent la même valeur
|
|
49
|
+
(`neutral-400`). Il n'existe aucun échelon entre `neutral-400` et `neutral-500`, et `neutral-500`
|
|
50
|
+
sur la surface sombre mesure **4,18:1** — sous le seuil AA de 4,5:1. Un niveau de hiérarchie perdu
|
|
51
|
+
a été préféré à une violation de contraste.
|
|
52
|
+
|
|
53
|
+
### Fixed — `useTeleport` ne réévaluait jamais sa cible après l'hydratation
|
|
54
|
+
|
|
55
|
+
Le `computed` qui résout la cible de téléportation n'avait **aucune dépendance réactive** sur
|
|
56
|
+
`document.querySelector`. Sous SSR — et sous Histoire, où chaque story est enveloppée dans un
|
|
57
|
+
`<Suspense>` — la première évaluation pouvait tomber **avant** que l'arbre voisin soit commité dans
|
|
58
|
+
le DOM, et rien ne la redéclenchait ensuite.
|
|
59
|
+
|
|
60
|
+
Le symptôme n'était pas théorique : quatre tests e2e du site marketing échouaient sur
|
|
61
|
+
« *sans erreur JS console* » et « *pas d'erreur d'hydratation* ».
|
|
62
|
+
|
|
63
|
+
Le correctif réutilise `useHydration()`, qui porte déjà les deux gardes nécessaires — `IN_BROWSER`
|
|
64
|
+
et `ssr` — au lieu d'un compteur de montage local qui les ignorait. Le défaut touchait **toute la
|
|
65
|
+
famille Overlay**, pas seulement les trois composants de ce lot ; c'est `OrigamDrawer` qui l'a
|
|
66
|
+
révélé.
|
|
67
|
+
|
|
68
|
+
### Fixed — le thème `origam` sombre posait un `text---tertiary` qui échoue en AA
|
|
69
|
+
|
|
70
|
+
`origamDarkTheme` fixait `tertiary` à `#737373`, soit **4,18:1** sur la surface sombre. Le défaut
|
|
71
|
+
était invisible parce que le canal n'était alimenté par aucune feuille — mais ce bloc runtime
|
|
72
|
+
**gagne la cascade** sur la feuille, donc déclarer le token sans corriger ce thème n'aurait rien
|
|
73
|
+
réglé en mode sombre. Attrapé par `theme-sheet-parity.spec.ts`, rouge avant / vert après.
|
|
74
|
+
|
|
21
75
|
## [2.21.0] - 2026-10-01
|
|
22
76
|
|
|
23
77
|
### Changed — ⚠️ `OrigamBlockquote` : le `variant` est un preset de props, plus un bloc SCSS
|