origam 2.18.21 → 2.19.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 +65 -0
- package/dist/src/assets/css/main.css +1 -1
- package/dist/src/assets/css/tokens/dark.css +0 -6
- package/dist/src/assets/css/tokens/light.css +0 -3
- package/dist/src/assets/scss/tokens/_dark.scss +0 -6
- package/dist/src/assets/scss/tokens/_light.scss +0 -3
- package/dist/src/components/Kbd/OrigamKbd.vue +23 -41
- package/dist/src/consts/Commons/variant-preset.const.cjs +4 -1
- package/dist/src/consts/Commons/variant-preset.const.d.ts +22 -13
- package/dist/src/consts/Commons/variant-preset.const.js +4 -1
- package/dist/src/consts/Kbd/kbd.const.cjs +22 -0
- package/dist/src/consts/Kbd/kbd.const.d.ts +102 -0
- package/dist/src/consts/Kbd/kbd.const.js +16 -0
- package/dist/src/consts/index.cjs +11 -0
- package/dist/src/consts/index.d.ts +1 -0
- package/dist/src/consts/index.js +1 -0
- package/dist/src/interfaces/Kbd/kbd.interface.d.ts +2 -1
- package/dist/src/types/tokens.type.d.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -18,6 +18,71 @@ This project follows [Semantic Versioning](https://semver.org).
|
|
|
18
18
|
|
|
19
19
|
## [Unreleased]
|
|
20
20
|
|
|
21
|
+
## [2.19.0] - 2026-09-30
|
|
22
|
+
|
|
23
|
+
### Changed — ADR-005 lot 2 : `OrigamKbd` converti, ⚠️ deux ruptures
|
|
24
|
+
|
|
25
|
+
Le lot 1 avait posé le mécanisme et laissé le registre **vide**. Premier
|
|
26
|
+
composant converti : le variant de Kbd n'est plus un bloc SCSS, c'est
|
|
27
|
+
`KBD_VARIANT_PRESETS`. La garde `no-variant-css` passe de **36 à 32**.
|
|
28
|
+
|
|
29
|
+
Kbd n'était pas convertible mécaniquement, et la cause tient en une phrase :
|
|
30
|
+
**une propriété custom hérite.** `&--combination` posait
|
|
31
|
+
`--origam-kbd---border-width: 0` pour désépaissir l'enveloppe, la valeur
|
|
32
|
+
descendait dans chaque `__key` — dont le mixin `key-surface` lit précisément
|
|
33
|
+
`var(--origam-kbd---border-width, …)` — et les touches perdaient leur bordure.
|
|
34
|
+
C'est **pour la rattraper** que chaque règle de variant devait se redéclarer une
|
|
35
|
+
seconde fois en `&--variant-x &__key`, et c'est ce doublon qui rendait le variant
|
|
36
|
+
inconvertible : une prop de racine ne peut pas peindre un descendant. La
|
|
37
|
+
neutralisation passe donc par `border-width: 0`, propriété physique, qui n'hérite
|
|
38
|
+
pas ; et le composant lie ses déclarations de surface à l'élément qui **est** une
|
|
39
|
+
touche — la racine en forme simple, chaque `__key` en combinaison, les deux ne
|
|
40
|
+
coexistant jamais.
|
|
41
|
+
|
|
42
|
+
Bénéfice non prévu, relevé par une garde : la règle `&--variant-outlined`, **toujours
|
|
43
|
+
active** puisque `outlined` est le défaut de `withDefaults`, **confisquait**
|
|
44
|
+
`--origam-kbd---border-width` à tout thème de marque.
|
|
45
|
+
`theme-channel-confiscation` passe de **37 à 36**.
|
|
46
|
+
|
|
47
|
+
⚠️ **Rupture 1** — sur une combinaison, les props de surface (`bgColor`, `color`,
|
|
48
|
+
`border`, `elevation`) peignent désormais **les touches** et non l'enveloppe.
|
|
49
|
+
`<origam-kbd :combination="['Ctrl','S']" bg-color="primary">` rendait un cadre
|
|
50
|
+
coloré autour de touches non colorées ; il colore les touches.
|
|
51
|
+
|
|
52
|
+
⚠️ **Rupture 2** — `--origam-kbd--outlined---border-width`,
|
|
53
|
+
`--origam-kbd__filled---border-width` et `--origam-kbd__tonal---border-width`
|
|
54
|
+
sont **supprimés**. Ils ne portaient aucune valeur propre : les deux premiers
|
|
55
|
+
valaient `{border.width.thin}`, déjà le défaut de `--origam-kbd---border-width`,
|
|
56
|
+
et le troisième `{border.width.0}`. Pour régler la largeur d'un variant, passer
|
|
57
|
+
par `--origam-kbd---border-width` ou par le prop `border`.
|
|
58
|
+
|
|
59
|
+
`OrigamKbd` gagne `elevation` (`IElevationProps`) — c'est le canal sur lequel
|
|
60
|
+
voyage l'ombre d'embossage de chaque variant.
|
|
61
|
+
|
|
62
|
+
Non-régression **mesurée** et non affirmée : un harnais neuf
|
|
63
|
+
(`pnpm -F @origam/tests audit:kbd-preset`) monte le composant sous les **8
|
|
64
|
+
identités × 2 modes** et relève 11 longhands sur chaque surface peinte, `__key`
|
|
65
|
+
compris — Histoire étant épinglé `data-theme="light"` et n'enregistrant aucune
|
|
66
|
+
marque, l'axe des identités y est immesurable. Sur le variant **nu**, zéro écart
|
|
67
|
+
sur `background-color`, `border-*`, `color`, `border-radius`, `padding`,
|
|
68
|
+
`font-size` et `min-width`. Seul `box-shadow` bouge, en deux familles **prouvées
|
|
69
|
+
non-peignantes au pixel** : la sérialisation du blanc
|
|
70
|
+
(`rgba(255,255,255,a)` → `color(srgb 1 1 1 / a)`, même couleur) et, sur `tonal`,
|
|
71
|
+
le mot-clé `none` → `rgba(0,0,0,0) 0px 0px 0px 0px` — étendue et alpha nuls,
|
|
72
|
+
`elevation` ne pouvant pas émettre le mot-clé.
|
|
73
|
+
|
|
74
|
+
⚠️ La limite du canal `border` découverte en chemin — un
|
|
75
|
+
`border="var(--…---border-width, 1px)"` matchait le groupe `color` de
|
|
76
|
+
`BORDER_REGEX` et émettait un `border-color` — **a été corrigée depuis, en
|
|
77
|
+
2.18.21** (section juste en dessous). Ce qui reste : `IBorderProps` n'expose
|
|
78
|
+
toujours pas de `borderWidth` autonome, et une largeur `var()` **contenant une
|
|
79
|
+
espace** ne voyage que par une prop par côté ou d'axe, la prop globale `border`
|
|
80
|
+
la coupant à son `split(' ')`. Ajouter `borderWidth` avait par ailleurs été
|
|
81
|
+
rejeté sur la mesure, indépendamment de la regex : 24 composants déclarent
|
|
82
|
+
`IBorderProps` sans consommer ses props autonomes, et `unconsumed-props` passait
|
|
83
|
+
de 0 à 24. La suppression des trois tokens de largeur ne repose de toute façon
|
|
84
|
+
pas sur cette limite, mais sur le fait qu'ils ne portaient **aucune valeur
|
|
85
|
+
propre**.
|
|
21
86
|
## [2.18.21] - 2026-09-30
|
|
22
87
|
|
|
23
88
|
### Fixed — `useBorder` supprimait silencieusement une largeur en `var()`
|