@kolkrabbi/kol-theme 0.122.0 → 0.123.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-components-shell.css +43 -0
- package/package.json +1 -1
package/kol-components-shell.css
CHANGED
|
@@ -134,3 +134,46 @@
|
|
|
134
134
|
z-index: calc(var(--kol-z-sticky) - 1);
|
|
135
135
|
background: color-mix(in srgb, var(--kol-color-ab-black) 48%, transparent);
|
|
136
136
|
}
|
|
137
|
+
|
|
138
|
+
/* ── THE TAP OPENER (ShellRailCollapsedWithTapOpen, kol-mirror 2026-09-01) ──
|
|
139
|
+
* `touch="shell"` keeps the collapsed 48px rail visible — the user's ruling
|
|
140
|
+
* for a home that is navigation — but its only opener was the grab strip: 8px
|
|
141
|
+
* on the line, a pill that wakes on pointer PROXIMITY. A thumb never hovers,
|
|
142
|
+
* so on a phone the rail could not be opened. The strip is a <button> now
|
|
143
|
+
* (kol-shell 0.38.0) carrying `.kol-rail-grab-tap`, a 24px disc on the line
|
|
144
|
+
* that exists ONLY under a coarse pointer: fine pointers keep the ruled grab
|
|
145
|
+
* (RailFlatGrabOpen, OneGrabGestureBothRails) and never see this. The strip
|
|
146
|
+
* already toggles on a press with no travel; this gives that press a target.
|
|
147
|
+
* Geometry lives here, the pill's motion stays in kol-animation.css. */
|
|
148
|
+
.kol-rail-grab {
|
|
149
|
+
appearance: none;
|
|
150
|
+
background: transparent;
|
|
151
|
+
border: 0;
|
|
152
|
+
padding: 0;
|
|
153
|
+
color: inherit;
|
|
154
|
+
}
|
|
155
|
+
.kol-rail-grab-tap { display: none; }
|
|
156
|
+
@media (pointer: coarse) {
|
|
157
|
+
.kol-rail-grab {
|
|
158
|
+
width: 24px;
|
|
159
|
+
right: -12px;
|
|
160
|
+
cursor: pointer;
|
|
161
|
+
}
|
|
162
|
+
/* no proximity on touch — the pill would never wake; the disc is the affordance */
|
|
163
|
+
.kol-rail-grab::before { display: none; }
|
|
164
|
+
.kol-rail-grab-tap {
|
|
165
|
+
display: flex;
|
|
166
|
+
align-items: center;
|
|
167
|
+
justify-content: center;
|
|
168
|
+
position: absolute;
|
|
169
|
+
left: 50%;
|
|
170
|
+
top: 50%;
|
|
171
|
+
translate: -50% -50%;
|
|
172
|
+
width: 24px;
|
|
173
|
+
height: 24px;
|
|
174
|
+
border-radius: var(--kol-radius-full);
|
|
175
|
+
background: var(--kol-surface-secondary);
|
|
176
|
+
border: 1px solid var(--kol-fg-16);
|
|
177
|
+
color: var(--kol-oq-96);
|
|
178
|
+
}
|
|
179
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolkrabbi/kol-theme",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.123.0",
|
|
4
4
|
"description": "KOL (Kolkrabbi) design-system tokens + base CSS — brand-neutral. The canonical token/cascade layer every other KOL package and consumer builds on.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|