@celestia-island/hikari 0.55.339 → 0.55.341

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": "@celestia-island/hikari",
3
- "version": "0.55.339",
3
+ "version": "0.55.341",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "Hikari UI library, Vue 3 runtime — one design system for Vue 3 and Rust/WASM applications",
@@ -6,11 +6,15 @@
6
6
  handles ride over it and the reset seat sits on its field. LAYER 2
7
7
  (data-layer="detail") is the lane list: the same segments shown either
8
8
  across the full domain or mapped onto the window (0..100% of the track).
9
- The minimap axis is `1 + headroom` wide, so a host can reserve a blank
10
- trailing tail for a >100% budget; the after scrim dims that tail once a
11
- window exists. The headroom never reaches the detail layer, and minimal
12
- mode — which suppresses the lane rows and the detail layer while the bare
13
- bar still lives in the minimap container — ignores it too.
9
+ The minimap axis is the CALLER's domain (default `[0, 1]`; a host may
10
+ declare `[-0.1, 1]`, `[0, 2]` …), and `headroom` is the deprecated
11
+ `[0, 1 + headroom]` shorthand that IS the axis — no special tail-clamp.
12
+ Content outside the domain is clipped away; space inside it the content
13
+ does not fill stays blank. The detail layer is never rescaled on the
14
+ minimap axis: its axis is the selected window, or the caller's domain when
15
+ no window is selected. Minimal mode, which suppresses the lane rows and
16
+ the detail layer while the bare bar still lives in the minimap container,
17
+ draws the same domain axis.
14
18
 
15
19
  Geometry is part of the contract and pinned by HkRangeRibbon.test.tsx:
16
20
  the strip is 32px tall, a handle is an 8px half-overlapping grip
@@ -30,8 +34,8 @@
30
34
  // ONE label column for both layers: the overview paints through an empty
31
35
  // gutter of this width, so both layers always start at the same inline x.
32
36
  // Their x% agree only in the full-domain view — a window re-normalizes the
33
- // detail against the selected sub-domain, and a headroom compresses the
34
- // strip by `1/span`.
37
+ // detail against the selected sub-domain, and a non-unit domain rescales
38
+ // the strip.
35
39
  // Wave (2026-11-06 raw-records five): the label column is JS-MEASURED —
36
40
  // the component publishes the widest rendered label as a px value on the
37
41
  // root (two-phase free/measure/pin). THIS fixed column is the no-JS /
@@ -266,7 +270,8 @@
266
270
  // A plain column container, nothing else: it exists so the two layers are
267
271
  // explicit in the DOM (and to the stylesheet contract) without disturbing
268
272
  // the lane list's own gap/column layout. Its x-axis is the selected window
269
- // mapped to 0..100% — the headroom tail lives only on the minimap layer.
273
+ // mapped to 0..100% — the caller's domain axis lives on the minimap layer and
274
+ // only drives this layer's no-window (full-view) state.
270
275
  .hk-range-ribbon-detail {
271
276
  display: flex;
272
277
  flex-direction: column;