@kolkrabbi/kol-component 0.138.0 → 0.139.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-component",
3
- "version": "0.138.0",
3
+ "version": "0.139.0",
4
4
  "description": "KOL design-system components — atoms through organisms, emitting canonical kol-* classes. Pairs with @kolkrabbi/kol-theme for styling.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -37,10 +37,6 @@ import ContentText from './ContentText.jsx'
37
37
  /* ruled row boxes per variant (the §2 review) — paddings/gaps spell the
38
38
  * --kol-spacing-* tokens (2=8 · 3=12 · 4=16 · 6=24), never a literal */
39
39
  const S2 = 'var(--kol-spacing-2)', S3 = 'var(--kol-spacing-3)', S4 = 'var(--kol-spacing-4)', S6 = 'var(--kol-spacing-6)'
40
- /* the showcase SKIN — fill, frame, hover, pad, rung. Named so the column
41
- * arrangement can derive from it instead of restating it (TypefaceRowSkin). */
42
- const BOX_SHOWCASE = { thumb: 'fill', ratio: '1 / 1', pad: S4, gap: S4, frame: 'transparent', frameHover: 'var(--kol-fg-08)', bg: 'var(--kol-surface-secondary)', minH: 168, align: 'items-stretch', thumbRadius: 'var(--kol-radius-xs)', thumbBorder: false }
43
-
44
40
  const BOX = {
45
41
  /* NO hover wash (user 2026-08-29, on the variant-reference page: "makes a
46
42
  * grey background, remove it"). The default row is a bare ruled line — a
@@ -64,7 +60,7 @@ const BOX = {
64
60
  * the content height (136 in a 168 row) with no hairline, the frame steps
65
61
  * transparent → fg-08 on hover ("0 → 16 is a big jump"). No md step: the rows
66
62
  * were approved at their base values. */
67
- showcase: BOX_SHOWCASE,
63
+ showcase: { thumb: 'fill', ratio: '1 / 1', pad: S4, gap: S4, frame: 'transparent', frameHover: 'var(--kol-fg-08)', bg: 'var(--kol-surface-secondary)', minH: 168, align: 'items-stretch', thumbRadius: 'var(--kol-radius-xs)', thumbBorder: false },
68
64
  /* typeface's row is a COLUMN, not a line: a header (name/styles left,
69
65
  * classification/year right) with a full-width specimen band under it. The
70
66
  * shipped item is `flex-col gap-6`, and forcing it into the horizontal
@@ -80,7 +76,19 @@ const BOX = {
80
76
  * differs: no thumb, and `column` stacks the band under the text instead of
81
77
  * laying a thumb beside it. That arrangement is the only reason this key
82
78
  * exists; `variant="typeface"` and `layout="column"` both resolve here. */
83
- showcaseCanvas: { ...BOX_SHOWCASE, thumb: 0, column: true, align: 'items-start' },
79
+ showcaseCanvas: { thumb: 0, ratio: '1 / 1', pad: S6, gap: S6, column: true, minH: 160, align: 'items-start',
80
+ /* ONLY the fill and the frame come from showcase (TypefaceRowSkinCorrection,
81
+ * kol-website 2026-08-30). 0.138.0 derived the whole box with a spread and
82
+ * carried `pad` 24 → 16 and `minH` 160 → 168 with it — neither was asked for,
83
+ * and both were deliberate for a row whose content is a full-width specimen
84
+ * band. The ask was two values. It is two values.
85
+ *
86
+ * The spread also could not reach `FILL` in ContentText, which is keyed by
87
+ * variant NAME — so the two boxes agreed on every number and still disagreed
88
+ * about the vertical spread. Deriving one box from another while a second map
89
+ * is keyed by name is the drift the derive was meant to end. */
90
+ bg: 'var(--kol-surface-secondary)', frame: 'transparent', frameHover: 'var(--kol-fg-08)',
91
+ hover: 'color-mix(in srgb, var(--kol-surface-on-primary) 1%, transparent)' },
84
92
  }
85
93
 
86
94
  /* `default` → `file` (user 2026-08-29). The variant was named after being the