@kolkrabbi/kol-theme 0.160.0 → 0.162.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/kol-animation.css
CHANGED
|
@@ -371,6 +371,23 @@
|
|
|
371
371
|
.kol-rail-grab::before { transition: none; }
|
|
372
372
|
}
|
|
373
373
|
|
|
374
|
+
/* THE LINE VARIANT (2026-10-01, `useDragResize({ variant: 'line' })`) — no pill: the whole edge
|
|
375
|
+
* lights up under the pointer and while dragging, the way an editor's pane border does. A
|
|
376
|
+
* double-click toggles the rail; the cursor is the same `col-resize`. */
|
|
377
|
+
.kol-rail-grab--line::before {
|
|
378
|
+
top: 0;
|
|
379
|
+
translate: -50% 0;
|
|
380
|
+
height: 100%;
|
|
381
|
+
border-radius: 0;
|
|
382
|
+
background: var(--kol-oq-48);
|
|
383
|
+
transition: opacity 120ms ease, background-color 120ms ease;
|
|
384
|
+
}
|
|
385
|
+
.kol-rail-grab--line:hover::before,
|
|
386
|
+
.kol-rail-grab--line:focus-visible::before,
|
|
387
|
+
.kol-rail-grab--line.is-dragging::before { opacity: 1; background: var(--kol-oq-96); transition-delay: 0ms; }
|
|
388
|
+
/* near is not enough for a line — it lights on the edge itself, not 20px out */
|
|
389
|
+
.kol-rail-grab--line.is-near:not(:hover):not(.is-dragging):not(:focus-visible)::before { opacity: 0; }
|
|
390
|
+
|
|
374
391
|
/* A RIGHT-HAND RAIL's handle sits on its LEFT edge, facing the page (2026-09-30 — the modifier
|
|
375
392
|
* EditorShell has stamped since 0.x, `kol-rail-grab--${side}`, had no rule, so a right rail's pill
|
|
376
393
|
* sat on its outer edge; the workshop shell's right rail needs the same). */
|
package/kol-components-atoms.css
CHANGED
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
}
|
|
102
102
|
.kol-control--textarea.kol-control-md > textarea { padding: 6px 16px; }
|
|
103
103
|
.kol-control--textarea.kol-control-lg > textarea { padding: 8px 20px; }
|
|
104
|
-
/* The grip — kol-icon-set-
|
|
104
|
+
/* The grip — kol-icon-set-interface `resize-grip` at the native placement. It IS
|
|
105
105
|
* the resize handle (JS corner drag, both axes, in Textarea.jsx); native
|
|
106
106
|
* resize is OFF because Firefox's grip can't be hidden any other way. */
|
|
107
107
|
.kol-textarea-resize-icon {
|
|
@@ -332,6 +332,21 @@
|
|
|
332
332
|
border-color: currentColor;
|
|
333
333
|
}
|
|
334
334
|
|
|
335
|
+
/* hue — a colored chip (W17, 2026-09-30). Tag.jsx sets --kol-tag-hue from its `color` prop; the
|
|
336
|
+
* fill, hover and active are the primary chip's own steps, mixed from the hue instead of the ink.
|
|
337
|
+
* The ink is the hue mixed toward the text color so yellow still reads on a light surface. */
|
|
338
|
+
.kol-tag--primary.kol-tag--hue {
|
|
339
|
+
background-color: color-mix(in srgb, var(--kol-tag-hue) 18%, transparent);
|
|
340
|
+
color: color-mix(in srgb, var(--kol-tag-hue) 70%, var(--kol-surface-on-primary));
|
|
341
|
+
}
|
|
342
|
+
.kol-tag--primary.kol-tag--hue:hover {
|
|
343
|
+
background-color: color-mix(in srgb, var(--kol-tag-hue) 28%, transparent);
|
|
344
|
+
}
|
|
345
|
+
.kol-tag--primary.kol-tag--hue.is-active {
|
|
346
|
+
background-color: color-mix(in srgb, var(--kol-tag-hue) 36%, transparent);
|
|
347
|
+
border-color: currentColor;
|
|
348
|
+
}
|
|
349
|
+
|
|
335
350
|
/* secondary — the outlined chip. Mirrors .pill-outline. */
|
|
336
351
|
.kol-tag--secondary {
|
|
337
352
|
background-color: var(--kol-surface-primary);
|
|
@@ -478,6 +493,8 @@
|
|
|
478
493
|
display: inline-flex;
|
|
479
494
|
align-items: center;
|
|
480
495
|
justify-content: center;
|
|
496
|
+
/* the icon and the label were flush (2026-10-01) — `icon` renders beside the text with nothing between */
|
|
497
|
+
gap: 6px;
|
|
481
498
|
border-radius: 4px;
|
|
482
499
|
font-family: var(--kol-font-family-mono);
|
|
483
500
|
font-weight: 470;
|
|
@@ -180,6 +180,9 @@
|
|
|
180
180
|
.kol-table-wrapper.kol-table--simple { border: none; border-radius: 0; }
|
|
181
181
|
.kol-table-wrapper.kol-table--simple .kol-table-thead { background: none; border-bottom: 1px solid var(--kol-fg-12); }
|
|
182
182
|
.kol-table-wrapper.kol-table--simple .kol-table-row { border-bottom: 1px solid var(--kol-fg-08); }
|
|
183
|
+
/* no rule under the last row unless asked (`lastRule`, 2026-10-01) — whatever follows the table
|
|
184
|
+
* usually brings its own divider, and the pair read as a double line */
|
|
185
|
+
.kol-table-wrapper.kol-table--simple:not(.kol-table--last-rule) tbody .kol-table-row:last-child { border-bottom: none; }
|
|
183
186
|
/* compact — record-surface density (2026-08-09): tighter cell box for the
|
|
184
187
|
* RecordManager table; the reference's rows sit near half the default. */
|
|
185
188
|
.kol-table-wrapper.kol-table--compact .kol-table th,
|
|
@@ -116,6 +116,14 @@
|
|
|
116
116
|
overscroll-behavior: contain;
|
|
117
117
|
}
|
|
118
118
|
|
|
119
|
+
/* THE RAIL FADES OUT AT ITS FOOT (2026-10-01 — user, on shadcn's sidebar: "look how they use
|
|
120
|
+
* gradient fade for information to reveals on scroll"). A long list runs out under a fade instead
|
|
121
|
+
* of being cut by the window edge; the rail's own bottom padding (`pb-14` on the aside) keeps the last row clear of it. */
|
|
122
|
+
.shell-rail {
|
|
123
|
+
-webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 3rem), transparent);
|
|
124
|
+
mask-image: linear-gradient(to bottom, #000 calc(100% - 3rem), transparent);
|
|
125
|
+
}
|
|
126
|
+
|
|
119
127
|
.shell-rail--nav {
|
|
120
128
|
border-right: 1px solid var(--kol-oq-08);
|
|
121
129
|
padding-inline-end: var(--kol-pad-chrome-x);
|
|
@@ -295,6 +303,8 @@
|
|
|
295
303
|
display: flex;
|
|
296
304
|
justify-content: space-between;
|
|
297
305
|
align-items: center;
|
|
306
|
+
/* the count never touches the label (W4, 2026-09-30: "Blog / editorial(28)") */
|
|
307
|
+
gap: var(--kol-spacing-2);
|
|
298
308
|
transition: color 0.15s ease;
|
|
299
309
|
}
|
|
300
310
|
|
|
@@ -357,6 +367,13 @@
|
|
|
357
367
|
margin-top: 4px;
|
|
358
368
|
}
|
|
359
369
|
|
|
370
|
+
/* A CHAPTER INSIDE A CHAPTER (2026-09-30, the showcase review W1 — the rail nests to any depth).
|
|
371
|
+
* The nested group steps in by the ROW's text indent, so its caret sits on its sibling rows' text
|
|
372
|
+
* edge and its own rows land one indent further; the indent is read, never retyped. */
|
|
373
|
+
.shell-nav-nest {
|
|
374
|
+
padding-left: var(--kol-pad-rail-row-x);
|
|
375
|
+
}
|
|
376
|
+
|
|
360
377
|
/* Navigation items — layout only; type/color (+ active) in JSX. */
|
|
361
378
|
/* THE PAGE ROW — L3, the class owns the whole look (user ruling 2026-08-01).
|
|
362
379
|
* PAGE in the rail's vocabulary (`Tokens`); the right rail's rows are SECTIONS
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolkrabbi/kol-theme",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.162.0",
|
|
4
|
+
"description": "Tokens and base CSS",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"sideEffects": [
|