@kolkrabbi/kol-component 0.120.0 → 0.121.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.
|
|
3
|
+
"version": "0.121.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",
|
|
@@ -44,8 +44,11 @@ const BOX = {
|
|
|
44
44
|
* like I've said that before" — the ListingCardThumbBorder ruling): the selected
|
|
45
45
|
* state reads from the checked ToggleCheckbox, not a fg-64 border */
|
|
46
46
|
default: { layout: 'stack', border: null, bg: 'var(--kol-fg-02)', pad: 'var(--kol-pad-card-sm)' },
|
|
47
|
-
/*
|
|
48
|
-
|
|
47
|
+
/* THE FRAME READS BACKWARDS (CatalogCardFrameAndZoom, kol-website 2026-08-28 — user, on a 212-tile
|
|
48
|
+
* grid: no frame at rest; the old rest value is the hover): a wall of fg-04 frames is a grid of boxes,
|
|
49
|
+
* louder than what they hold. Rest `transparent` (the 1px stays, so the hover step never relayouts),
|
|
50
|
+
* hover fg-04. Was fg-04 → fg-16 (ShellHomeSystem, 2026-08-27). */
|
|
51
|
+
catalog: { layout: 'fill-card', border: 'transparent', bg: 'var(--kol-fg-04)', pad: 'var(--kol-pad-card-sm) var(--kol-pad-card-md)', plateTop: true, plateBg: 'var(--kol-surface-primary)', frameHover: 'var(--kol-fg-04)' },
|
|
49
52
|
/* flip: PrintGridCard's 3D turn on `isFlipped` → `selected` (ContentRowsAndPrintCard, 2026-08-27) */
|
|
50
53
|
print: { layout: 'fill-card', border: null, bg: 'var(--kol-surface-secondary)', pad: 'var(--kol-pad-card-sm) var(--kol-pad-card-md)', plateTop: true, flip: true },
|
|
51
54
|
article: { layout: 'stack', border: null, bg: null, pad: '0', mediaGap: 'var(--kol-spacing-4)' },
|
|
@@ -106,6 +109,9 @@ export default function ContentCard({
|
|
|
106
109
|
frame,
|
|
107
110
|
ring,
|
|
108
111
|
zoom,
|
|
112
|
+
/* plateRule (CatalogCardFrameAndZoom): the plate's top hairline — default the variant's (catalog and
|
|
113
|
+
* print draw it); `false` turns it off without an `!important` in a consumer sheet */
|
|
114
|
+
plateRule,
|
|
109
115
|
control,
|
|
110
116
|
controlStart,
|
|
111
117
|
reveal,
|
|
@@ -162,7 +168,7 @@ export default function ContentCard({
|
|
|
162
168
|
'--kol-plate-pad-md': box.padMd,
|
|
163
169
|
padding,
|
|
164
170
|
marginTop: box.layout === 'stack' ? box.mediaGap : undefined,
|
|
165
|
-
borderTop: box.plateTop ? '1px solid var(--kol-fg-04)' : undefined,
|
|
171
|
+
borderTop: (plateRule ?? box.plateTop) ? '1px solid var(--kol-fg-04)' : undefined,
|
|
166
172
|
background: box.layout === 'drawer' ? 'var(--kol-surface-inverse)' : box.plateBg,
|
|
167
173
|
color: box.layout === 'drawer' ? 'var(--kol-fg-inverse)' : undefined,
|
|
168
174
|
position: 'relative',
|
|
@@ -72,7 +72,9 @@ import AssetPlaceholder from '../utilities/AssetPlaceholder.jsx'
|
|
|
72
72
|
* floating in a tall row.
|
|
73
73
|
* @param {boolean} fade an <img> child fades in on load (500ms, house curve) and
|
|
74
74
|
* takes loading="lazy" — PrintGridCard's move (2026-08-27)
|
|
75
|
-
* @param {ReactNode} children the real media
|
|
75
|
+
* @param {ReactNode} children the real media — ANY element: the zoom scales the wrapper's child
|
|
76
|
+
* whatever it is (CatalogCardFrameAndZoom, 2026-08-28 — a glyph on a
|
|
77
|
+
* specimen plate got the class and no motion while the rule named img/video)
|
|
76
78
|
*/
|
|
77
79
|
const FIT = {
|
|
78
80
|
/* a consumer WRAPPER div fills the frame as an img/video does (ColumnBrowser round, 2026-08-27 — kol-r2b2's wrapped thumb fell back to the image's intrinsic size) */
|
|
@@ -129,7 +131,7 @@ export default function ContentMedia({
|
|
|
129
131
|
{fade ? withFade(children) : children}
|
|
130
132
|
{/* OVER the artwork, and inert — a hairline that must not eat the click
|
|
131
133
|
* the card above it is listening for. */}
|
|
132
|
-
{ring && <div className={`pointer-events-none absolute inset-0 border border-fg-08 ${round}`} />}
|
|
134
|
+
{ring && <div className={`kol-media-ring pointer-events-none absolute inset-0 border border-fg-08 ${round}`} />}
|
|
133
135
|
</div>
|
|
134
136
|
)
|
|
135
137
|
}
|