@mt-gloss/ui 0.1.15 → 0.1.17

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/index.js CHANGED
@@ -1,20 +1,20 @@
1
- import { N as On, T as An, O as Ln, Q as $n, a3 as Bn, b6 as zn, az as Kn, ah as Wn, Z as Gn, an as Hn, K as Vn, a8 as jn, bn as Un, P as Zn, B as Yn, a as qn, y as Qn, H as Xn, bi as Jn, F as er, J as tr, A as ar, z as nr, bh as rr, E as sr, D as or, bw as ir, b as lr, C as cr, L as dr, o as ur, ad as mr, aN as gr, y as pr, H as fr, F as hr, J as br, A as vr, z as yr, E as wr, D as Dr, a$ as Nr, b2 as Cr, b1 as kr, b0 as _r, b3 as xr, aC as Sr, a5 as Mr, a4 as Tr, aq as Rr, k as Ir, m as Pr, aF as Fr, ab as Er, b8 as Or, a9 as Ar, bo as Lr, Y as $r, bG as Br, bF as zr, bH as Kr, ap as Wr, aQ as Gr, ba as Hr, bL as Vr, bu as jr, n as Ur, am as Zr, bA as Yr, br as qr, a0 as Qr, ar as Xr, a2 as Jr, bz as es, G as ts, d as as, aa as ns, bI as rs, aT as ss, r as os, v as is, I as ls, g as cs, aw as ds, bM as us, M as ms, w as gs, U as ps, X as fs, V as hs, W as bs, as as vs, bg as ys, bO as ws, bK as Ds, ao as Ns, t as Cs, bp as ks, aS as _s, aj as xs, aK as Ss, ag as Ms, al as Ts, au as Rs, aR as Is, ac as Ps, at as Fs, c as Es, R as Os, j as As, p as Ls, aH as $s, bx as Bs, by as zs, ai as Ks, ae as Ws, h as Gs, x as Hs, b7 as Vs, af as js, bN as Us, bc as Zs, bf as Ys, bd as qs, be as Qs, i as Xs, b9 as Js, bm as eo, S as to, bk as ao, bl as no, av as ro, bb as so, bP as oo, ak as io, s as lo, bJ as co, l as uo, f as mo, q as go, _ as po, $ as fo, a7 as ho, bj as bo, bv as vo, bC as yo, aA as wo, aB as Do, a6 as No, aO as Co, aP as ko, aD as _o, aE as xo, aG as So, aV as Mo, aW as To, bE as Ro, bD as Io, aY as Po, aZ as Fo, ax as Eo, ay as Oo, b5 as Ao, b4 as Lo, a_ as $o, aL as Bo, aM as zo, aX as Ko, aI as Wo, aJ as Go, u as Ho, bB as Vo, bq as jo, bs as Uo, bt as Zo, aU as Yo, a1 as qo, e as Qo } from "./Expandable-ByRpX7qt.js";
2
- import { jsxs as O, jsx as i, Fragment as be } from "react/jsx-runtime";
3
- import * as qe from "react";
4
- import H, { useRef as R, useEffect as L, useState as W, useCallback as y, forwardRef as Qe, useMemo as se, createContext as Xe, useContext as Je } from "react";
5
- import { motion as de, useMotionValue as et, animate as Se, useDragControls as tt } from "framer-motion";
6
- import { B as at, U as Ce } from "./UIContext-C3E-k7HI.js";
7
- import { a as Jo, u as ei } from "./UIContext-C3E-k7HI.js";
8
- import { createPortal as nt } from "react-dom";
9
- import { DEFAULT_MARKET_PRESETS as ai, DEFAULT_PINNED as ni, PERIOD_OPTIONS as ri, ROLLING_OPTIONS as si, TODAY_PRESET as oi, findPreset as ii, formatDateRange as li, formatMarketDates as ci, formatTrend as di, formatValue as ui, generateMarketId as mi, getAllPresets as gi, getDateRangeForPreset as pi, getPresetLabel as fi, isInRange as hi, isMarketActive as bi, isSameDay as vi, normalizePresetId as yi, toUppercasePresetId as wi } from "@mt-gloss/utils";
10
- import rt from "@mui/icons-material/AccessTime";
11
- import st from "@mui/icons-material/Tune";
12
- import ot from "@mui/icons-material/ViewColumn";
13
- import it from "@mui/icons-material/AspectRatio";
14
- import lt from "@mui/icons-material/Palette";
15
- import ct from "@mui/icons-material/PushPin";
16
- function _a(e = {}) {
17
- const { enabled: t = !0, returnTo: n } = e, a = R(null);
1
+ import { N as $n, T as Bn, O as zn, Q as Kn, a3 as Gn, b6 as Wn, az as Hn, ah as Vn, Z as jn, an as Un, K as Zn, a8 as Yn, bn as qn, P as Qn, B as Xn, a as Jn, y as er, H as tr, bi as ar, F as nr, J as rr, A as sr, z as or, bh as ir, E as lr, D as cr, bw as dr, b as ur, C as mr, L as gr, o as pr, ad as fr, aN as hr, y as br, H as vr, F as yr, J as wr, A as Dr, z as Nr, E as Cr, D as kr, a$ as _r, b2 as xr, b1 as Sr, b0 as Mr, b3 as Tr, aC as Rr, a5 as Ir, a4 as Pr, aq as Fr, k as Er, m as Or, aF as Ar, ab as Lr, b8 as $r, a9 as Br, bo as zr, Y as Kr, bG as Gr, bF as Wr, bH as Hr, ap as Vr, aQ as jr, ba as Ur, bL as Zr, bu as Yr, n as qr, am as Qr, bA as Xr, br as Jr, a0 as es, ar as ts, a2 as as, bz as ns, G as rs, d as ss, aa as os, bI as is, aT as ls, r as cs, v as ds, I as us, g as ms, aw as gs, bM as ps, M as fs, w as hs, U as bs, X as vs, V as ys, W as ws, as as Ds, bg as Ns, bO as Cs, bK as ks, ao as _s, t as xs, bp as Ss, aS as Ms, aj as Ts, aK as Rs, ag as Is, al as Ps, au as Fs, aR as Es, ac as Os, at as As, c as Ls, R as $s, j as Bs, p as zs, aH as Ks, bx as Gs, by as Ws, ai as Hs, ae as Vs, h as js, x as Us, b7 as Zs, af as Ys, bN as qs, bc as Qs, bf as Xs, bd as Js, be as eo, i as to, b9 as ao, bm as no, S as ro, bk as so, bl as oo, av as io, bb as lo, bP as co, ak as uo, s as mo, bJ as go, l as po, f as fo, q as ho, _ as bo, $ as vo, a7 as yo, bj as wo, bv as Do, bC as No, aA as Co, aB as ko, a6 as _o, aO as xo, aP as So, aD as Mo, aE as To, aG as Ro, aV as Io, aW as Po, bE as Fo, bD as Eo, aY as Oo, aZ as Ao, ax as Lo, ay as $o, b5 as Bo, b4 as zo, a_ as Ko, aL as Go, aM as Wo, aX as Ho, aI as Vo, aJ as jo, u as Uo, bB as Zo, bq as Yo, bs as qo, bt as Qo, aU as Xo, a1 as Jo, e as ei } from "./Expandable-BJnacqDL.js";
2
+ import { jsxs as O, jsx as l, Fragment as ve } from "react/jsx-runtime";
3
+ import * as Je from "react";
4
+ import W, { useRef as T, useEffect as L, useState as G, useCallback as y, forwardRef as et, useMemo as ie, createContext as tt, useContext as at } from "react";
5
+ import { motion as ue, useMotionValue as nt, animate as Re, useDragControls as rt } from "framer-motion";
6
+ import { B as st, U as ke } from "./UIContext-C3E-k7HI.js";
7
+ import { a as ai, u as ni } from "./UIContext-C3E-k7HI.js";
8
+ import { createPortal as ot } from "react-dom";
9
+ import { DEFAULT_MARKET_PRESETS as si, DEFAULT_PINNED as oi, PERIOD_OPTIONS as ii, ROLLING_OPTIONS as li, TODAY_PRESET as ci, findPreset as di, formatDateRange as ui, formatMarketDates as mi, formatTrend as gi, formatValue as pi, generateMarketId as fi, getAllPresets as hi, getDateRangeForPreset as bi, getPresetLabel as vi, isInRange as yi, isMarketActive as wi, isSameDay as Di, normalizePresetId as Ni, toUppercasePresetId as Ci } from "@mt-gloss/utils";
10
+ import it from "@mui/icons-material/AccessTime";
11
+ import lt from "@mui/icons-material/Tune";
12
+ import ct from "@mui/icons-material/ViewColumn";
13
+ import dt from "@mui/icons-material/AspectRatio";
14
+ import ut from "@mui/icons-material/Palette";
15
+ import mt from "@mui/icons-material/PushPin";
16
+ function Ma(e = {}) {
17
+ const { enabled: t = !0, returnTo: n } = e, a = T(null);
18
18
  return L(() => {
19
19
  t && (a.current = n || document.activeElement);
20
20
  }, [t, n]), L(() => () => {
@@ -23,7 +23,7 @@ function _a(e = {}) {
23
23
  }, 0);
24
24
  }, [t]), a;
25
25
  }
26
- function xa(e) {
26
+ function Ta(e) {
27
27
  const {
28
28
  items: t,
29
29
  activeIndex: n,
@@ -31,132 +31,132 @@ function xa(e) {
31
31
  loop: r = !0,
32
32
  orientation: s = "vertical",
33
33
  enabled: o = !0,
34
- isItemDisabled: d,
35
- onSelect: b,
36
- onEscape: u
37
- } = e, [g, C] = W(-1), m = n !== void 0 ? n : g, c = y(
38
- (l) => {
39
- n === void 0 && C(l), a?.(l);
34
+ isItemDisabled: c,
35
+ onSelect: f,
36
+ onEscape: d
37
+ } = e, [g, w] = G(-1), u = n !== void 0 ? n : g, m = y(
38
+ (i) => {
39
+ n === void 0 && w(i), a?.(i);
40
40
  },
41
41
  [n, a]
42
- ), h = y(() => t.map((l, v) => ({ item: l, index: v })).filter(({ item: l, index: v }) => !d?.(l, v)).map(({ index: l }) => l), [t, d]), x = y(
43
- (l, v) => {
44
- const p = h();
45
- if (p.length === 0) return -1;
46
- const w = p.indexOf(l);
47
- if (w === -1)
48
- return v === 1 ? p.find((M) => M > l) ?? (r ? p[0] : -1) : [...p].reverse().find((E) => E < l) ?? (r ? p[p.length - 1] : -1);
49
- let k = w + v;
50
- return r ? k = (k + p.length) % p.length : k = Math.max(0, Math.min(p.length - 1, k)), p[k];
42
+ ), h = y(() => t.map((i, b) => ({ item: i, index: b })).filter(({ item: i, index: b }) => !c?.(i, b)).map(({ index: i }) => i), [t, c]), k = y(
43
+ (i, b) => {
44
+ const D = h();
45
+ if (D.length === 0) return -1;
46
+ const x = D.indexOf(i);
47
+ if (x === -1)
48
+ return b === 1 ? D.find((_) => _ > i) ?? (r ? D[0] : -1) : [...D].reverse().find((P) => P < i) ?? (r ? D[D.length - 1] : -1);
49
+ let v = x + b;
50
+ return r ? v = (v + D.length) % D.length : v = Math.max(0, Math.min(D.length - 1, v)), D[v];
51
51
  },
52
52
  [h, r]
53
- ), f = y(() => {
54
- const l = h();
55
- l.length > 0 && c(l[0]);
56
- }, [h, c]), S = y(() => {
57
- const l = h();
58
- l.length > 0 && c(l[l.length - 1]);
59
- }, [h, c]), I = y(() => {
60
- const l = x(m, 1);
61
- l !== -1 && c(l);
62
- }, [m, x, c]), N = y(() => {
63
- const l = x(m, -1);
64
- l !== -1 && c(l);
65
- }, [m, x, c]), _ = y(() => {
66
- c(-1);
67
- }, [c]), T = y(
68
- (l) => {
53
+ ), p = y(() => {
54
+ const i = h();
55
+ i.length > 0 && m(i[0]);
56
+ }, [h, m]), S = y(() => {
57
+ const i = h();
58
+ i.length > 0 && m(i[i.length - 1]);
59
+ }, [h, m]), I = y(() => {
60
+ const i = k(u, 1);
61
+ i !== -1 && m(i);
62
+ }, [u, k, m]), C = y(() => {
63
+ const i = k(u, -1);
64
+ i !== -1 && m(i);
65
+ }, [u, k, m]), M = y(() => {
66
+ m(-1);
67
+ }, [m]), R = y(
68
+ (i) => {
69
69
  if (!o) return;
70
- const { key: v } = l, p = v === "ArrowUp" && (s === "vertical" || s === "both"), w = v === "ArrowDown" && (s === "vertical" || s === "both"), k = v === "ArrowLeft" && (s === "horizontal" || s === "both"), M = v === "ArrowRight" && (s === "horizontal" || s === "both");
71
- if (p || k) {
72
- l.preventDefault(), m === -1 ? S() : N();
70
+ const { key: b } = i, D = b === "ArrowUp" && (s === "vertical" || s === "both"), x = b === "ArrowDown" && (s === "vertical" || s === "both"), v = b === "ArrowLeft" && (s === "horizontal" || s === "both"), _ = b === "ArrowRight" && (s === "horizontal" || s === "both");
71
+ if (D || v) {
72
+ i.preventDefault(), u === -1 ? S() : C();
73
73
  return;
74
74
  }
75
- if (w || M) {
76
- l.preventDefault(), m === -1 ? f() : I();
75
+ if (x || _) {
76
+ i.preventDefault(), u === -1 ? p() : I();
77
77
  return;
78
78
  }
79
- if (v === "Home") {
80
- l.preventDefault(), f();
79
+ if (b === "Home") {
80
+ i.preventDefault(), p();
81
81
  return;
82
82
  }
83
- if (v === "End") {
84
- l.preventDefault(), S();
83
+ if (b === "End") {
84
+ i.preventDefault(), S();
85
85
  return;
86
86
  }
87
- if ((v === "Enter" || v === " ") && m >= 0 && m < t.length) {
88
- l.preventDefault();
89
- const E = t[m];
90
- d?.(E, m) || b?.(E, m);
87
+ if ((b === "Enter" || b === " ") && u >= 0 && u < t.length) {
88
+ i.preventDefault();
89
+ const P = t[u];
90
+ c?.(P, u) || f?.(P, u);
91
91
  return;
92
92
  }
93
- if (v === "Escape") {
94
- u?.();
93
+ if (b === "Escape") {
94
+ d?.();
95
95
  return;
96
96
  }
97
97
  },
98
98
  [
99
99
  o,
100
100
  s,
101
- m,
101
+ u,
102
102
  t,
103
- f,
103
+ p,
104
104
  S,
105
105
  I,
106
- N,
107
- d,
108
- b,
109
- u
106
+ C,
107
+ c,
108
+ f,
109
+ d
110
110
  ]
111
111
  );
112
112
  return {
113
- focusedIndex: m,
114
- setFocusedIndex: c,
115
- handleKeyDown: T,
116
- focusFirst: f,
113
+ focusedIndex: u,
114
+ setFocusedIndex: m,
115
+ handleKeyDown: R,
116
+ focusFirst: p,
117
117
  focusLast: S,
118
118
  focusNext: I,
119
- focusPrevious: N,
120
- resetFocus: _
119
+ focusPrevious: C,
120
+ resetFocus: M
121
121
  };
122
122
  }
123
- const ue = (e) => {
124
- }, dt = {
123
+ const me = (e) => {
124
+ }, gt = {
125
125
  id: "entity-filter-1",
126
126
  label: "Customer: Acme Corp",
127
127
  field: "customer",
128
128
  value: "acme-corp-123",
129
- onRemove: ue
130
- }, ut = {
129
+ onRemove: me
130
+ }, pt = {
131
131
  id: "status-filter-1",
132
132
  label: "Status: Open",
133
133
  field: "status",
134
134
  value: "open",
135
- onRemove: ue
136
- }, mt = {
135
+ onRemove: me
136
+ }, ft = {
137
137
  id: "date-filter-1",
138
138
  label: "Date: Mar 1 - Mar 15",
139
139
  field: "dateRange",
140
140
  value: "2026-03-01..2026-03-15",
141
- onRemove: ue
142
- }, gt = {
141
+ onRemove: me
142
+ }, ht = {
143
143
  id: "mfg-filter-1",
144
144
  label: "Manufacturer: Widget Co",
145
145
  field: "manufacturer",
146
146
  value: "widget-co-456",
147
- onRemove: ue
148
- }, Sa = [
149
- dt,
150
- ut,
151
- mt,
152
- gt
153
- ], Ma = {
147
+ onRemove: me
148
+ }, Ra = [
149
+ gt,
150
+ pt,
151
+ ft,
152
+ ht
153
+ ], Ia = {
154
154
  id: "metric-toggle",
155
155
  tabs: [
156
156
  { id: "$", label: "$", mono: !0 },
157
157
  { id: "#", label: "#", mono: !0 }
158
158
  ]
159
- }, Ta = {
159
+ }, Pa = {
160
160
  id: "entity-type",
161
161
  tabs: [
162
162
  { id: "orders", label: "Orders" },
@@ -164,7 +164,7 @@ const ue = (e) => {
164
164
  { id: "customers", label: "Customers" },
165
165
  { id: "manufacturers", label: "Manufacturers" }
166
166
  ]
167
- }, Ra = {
167
+ }, Fa = {
168
168
  id: "time-frame",
169
169
  tabs: [
170
170
  { id: "MTD", label: "MTD" },
@@ -172,30 +172,30 @@ const ue = (e) => {
172
172
  { id: "YTD", label: "YTD" },
173
173
  { id: "LYTD", label: "LYTD" }
174
174
  ]
175
- }, Ia = [
175
+ }, Ea = [
176
176
  { variant: "block", width: "100%", height: 16 },
177
177
  { variant: "block", width: 200, height: 32, borderRadius: 8 },
178
178
  { variant: "block", width: "80%", height: 12, borderRadius: "4px" },
179
179
  { variant: "block", width: 120, height: 44, borderRadius: 22 }
180
- ], Pa = [
180
+ ], Oa = [
181
181
  { variant: "text", lines: 3, lineHeight: 14, gap: 8 },
182
182
  { variant: "text", lines: 2, lineHeight: 16, gap: 10 },
183
183
  { variant: "text", lines: 5, lineHeight: 12, gap: 6 }
184
- ], Fa = [
184
+ ], Aa = [
185
185
  { variant: "circle", size: 24 },
186
186
  { variant: "circle", size: 40 },
187
187
  { variant: "circle", size: 64 }
188
- ], Ea = [
188
+ ], La = [
189
189
  { bars: 10, maxHeight: 120 },
190
190
  { bars: 5, maxHeight: 80 }
191
- ], Oa = [
191
+ ], $a = [
192
192
  { rows: 5, columns: 3, hasCheckbox: !1, rowHeight: 44 },
193
193
  { rows: 8, columns: 5, hasCheckbox: !0, rowHeight: 44 }
194
- ], Aa = [
194
+ ], Ba = [
195
195
  { variant: "value", colSpan: 1 },
196
196
  { variant: "trend", colSpan: 2 },
197
197
  { variant: "target", colSpan: 1 }
198
- ], Me = {
198
+ ], Ie = {
199
199
  position: "fixed",
200
200
  zIndex: 9999,
201
201
  background: "rgba(255,255,255,0.92)",
@@ -207,7 +207,7 @@ const ue = (e) => {
207
207
  minWidth: 148,
208
208
  paddingTop: 4,
209
209
  paddingBottom: 4
210
- }, ve = (e) => ({
210
+ }, ye = (e) => ({
211
211
  padding: "6px 12px",
212
212
  fontSize: 12,
213
213
  lineHeight: 1.4,
@@ -221,16 +221,16 @@ const ue = (e) => {
221
221
  width: "100%",
222
222
  textAlign: "left",
223
223
  border: "none"
224
- }), pt = (e) => ({
225
- ...ve(e),
224
+ }), bt = (e) => ({
225
+ ...ye(e),
226
226
  color: e ? "#4338ca" : "#4f46e5",
227
227
  fontWeight: 600
228
- }), ft = {
228
+ }), vt = {
229
229
  height: 1,
230
230
  background: "rgba(0,0,0,0.06)",
231
231
  margin: "3px 10px"
232
232
  };
233
- function ht({
233
+ function yt({
234
234
  open: e,
235
235
  anchorEl: t,
236
236
  statusId: n,
@@ -239,108 +239,108 @@ function ht({
239
239
  overflowActions: s,
240
240
  onClose: o
241
241
  }) {
242
- const [d, b] = W(null), u = R(null), g = y(() => {
243
- if (!t) return { ...Me, top: 0, left: 0 };
244
- const c = t.getBoundingClientRect();
242
+ const [c, f] = G(null), d = T(null), g = y(() => {
243
+ if (!t) return { ...Ie, top: 0, left: 0 };
244
+ const m = t.getBoundingClientRect();
245
245
  return {
246
- ...Me,
247
- top: c.bottom + 4,
248
- left: c.left
246
+ ...Ie,
247
+ top: m.bottom + 4,
248
+ left: m.left
249
249
  };
250
250
  }, [t]);
251
251
  if (L(() => {
252
252
  if (!e) return;
253
- const c = (h) => {
253
+ const m = (h) => {
254
254
  h.key === "Escape" && o();
255
255
  };
256
- return document.addEventListener("keydown", c), () => document.removeEventListener("keydown", c);
256
+ return document.addEventListener("keydown", m), () => document.removeEventListener("keydown", m);
257
257
  }, [e, o]), L(() => {
258
258
  if (!e) return;
259
- const c = (h) => {
260
- u.current && !u.current.contains(h.target) && o();
259
+ const m = (h) => {
260
+ d.current && !d.current.contains(h.target) && o();
261
261
  };
262
- return document.addEventListener("pointerdown", c, !0), () => document.removeEventListener("pointerdown", c, !0);
262
+ return document.addEventListener("pointerdown", m, !0), () => document.removeEventListener("pointerdown", m, !0);
263
263
  }, [e, o]), !e) return null;
264
- const C = s && s.length > 0, m = /* @__PURE__ */ O(
264
+ const w = s && s.length > 0, u = /* @__PURE__ */ O(
265
265
  "div",
266
266
  {
267
- ref: u,
267
+ ref: d,
268
268
  "data-status-chip-menu": n,
269
269
  role: "menu",
270
270
  "aria-label": "Status actions",
271
271
  style: g(),
272
272
  children: [
273
- /* @__PURE__ */ i(
273
+ /* @__PURE__ */ l(
274
274
  "button",
275
275
  {
276
276
  role: "menuitem",
277
- style: pt(d === "__primary"),
278
- onMouseEnter: () => b("__primary"),
279
- onMouseLeave: () => b(null),
277
+ style: bt(c === "__primary"),
278
+ onMouseEnter: () => f("__primary"),
279
+ onMouseLeave: () => f(null),
280
280
  onClick: () => {
281
281
  a(n), o();
282
282
  },
283
283
  children: "Open in table"
284
284
  }
285
285
  ),
286
- /* @__PURE__ */ i(
286
+ /* @__PURE__ */ l(
287
287
  "button",
288
288
  {
289
289
  role: "menuitem",
290
- style: ve(d === "__graph"),
291
- onMouseEnter: () => b("__graph"),
292
- onMouseLeave: () => b(null),
290
+ style: ye(c === "__graph"),
291
+ onMouseEnter: () => f("__graph"),
292
+ onMouseLeave: () => f(null),
293
293
  onClick: () => {
294
294
  r(n), o();
295
295
  },
296
296
  children: "Show on graph"
297
297
  }
298
298
  ),
299
- C && /* @__PURE__ */ i("div", { style: ft }),
300
- C && s?.map((c) => /* @__PURE__ */ i(
299
+ w && /* @__PURE__ */ l("div", { style: vt }),
300
+ w && s?.map((m) => /* @__PURE__ */ l(
301
301
  "button",
302
302
  {
303
303
  role: "menuitem",
304
- style: ve(d === c.id),
305
- onMouseEnter: () => b(c.id),
306
- onMouseLeave: () => b(null),
304
+ style: ye(c === m.id),
305
+ onMouseEnter: () => f(m.id),
306
+ onMouseLeave: () => f(null),
307
307
  onClick: () => {
308
- c.onSelect(n), o();
308
+ m.onSelect(n), o();
309
309
  },
310
- children: c.label
310
+ children: m.label
311
311
  },
312
- c.id
312
+ m.id
313
313
  ))
314
314
  ]
315
315
  }
316
316
  );
317
- return nt(m, document.body);
317
+ return ot(u, document.body);
318
318
  }
319
- ht.displayName = "StatusSlotChipMenu";
320
- const La = {
319
+ yt.displayName = "StatusSlotChipMenu";
320
+ const za = {
321
321
  forwardStaggerMs: 50,
322
322
  reverseStaggerMs: 30,
323
323
  springStiffness: 380,
324
324
  springDamping: 32,
325
325
  reverseVelocityMultiplier: 1.4
326
- }, ae = {
326
+ }, re = {
327
327
  enterDurationMs: 220,
328
328
  exitDurationMs: 140,
329
329
  enterEasing: "cubic-bezier(0.34, 1.56, 0.64, 1)",
330
330
  exitEasing: "cubic-bezier(0.4, 0, 1, 1)",
331
- translateOffsetPx: 4
332
- }, $a = {
331
+ translateOffsetPx: 8
332
+ }, Ka = {
333
333
  shiverCycles: 3,
334
334
  shiverAmplitudePx: 2,
335
335
  shiverDurationMs: 180,
336
336
  validCellOpacity: 0.6
337
- }, Ba = {
337
+ }, Ga = {
338
338
  materializeMs: 180,
339
339
  dematerializeMs: 140,
340
340
  easing: "cubic-bezier(0.22, 1, 0.36, 1)",
341
341
  dotStrokePx: 2,
342
342
  dividerDashGapPx: 4
343
- }, za = {
343
+ }, Wa = {
344
344
  cascadeStaggerMs: 0,
345
345
  cascadeSpringCapMs: 120,
346
346
  swingEnterMs: 100,
@@ -349,7 +349,7 @@ const La = {
349
349
  provisionalStyle: "opacity",
350
350
  shiverMs: 200,
351
351
  shiverStyle: "color-flash"
352
- }, Ka = !0, Wa = {
352
+ }, Ha = !0, Va = {
353
353
  rejectionFill: "var(--gloss-rejection-fill)",
354
354
  rejectionStroke: "var(--gloss-rejection-stroke)",
355
355
  validFill: "var(--gloss-valid-fill)",
@@ -357,7 +357,7 @@ const La = {
357
357
  validCellStroke: "var(--gloss-valid-cell-stroke)",
358
358
  provisionalWash: "var(--gloss-provisional-wash)"
359
359
  };
360
- function Ga() {
360
+ function ja() {
361
361
  if (typeof window > "u") return "full";
362
362
  try {
363
363
  return window.matchMedia("(prefers-reduced-motion: reduce)").matches ? "reduced" : "full";
@@ -365,20 +365,20 @@ function Ga() {
365
365
  return "full";
366
366
  }
367
367
  }
368
- const Fe = ({ visible: e, variant: t, trigger: n, children: a, className: r }) => {
368
+ const Ae = ({ visible: e, variant: t, trigger: n, children: a, className: r }) => {
369
369
  const s = {
370
- "--gloss-swing-enter-ms": `${ae.enterDurationMs}ms`,
371
- "--gloss-swing-exit-ms": `${ae.exitDurationMs}ms`,
372
- "--gloss-swing-offset": `${ae.translateOffsetPx}px`,
373
- "--gloss-swing-enter-easing": ae.enterEasing,
374
- "--gloss-swing-exit-easing": ae.exitEasing
370
+ "--gloss-swing-enter-ms": `${re.enterDurationMs}ms`,
371
+ "--gloss-swing-exit-ms": `${re.exitDurationMs}ms`,
372
+ "--gloss-swing-offset": `${re.translateOffsetPx}px`,
373
+ "--gloss-swing-enter-easing": re.enterEasing,
374
+ "--gloss-swing-exit-easing": re.exitEasing
375
375
  }, o = [
376
376
  "gloss-swing-reveal",
377
377
  `gloss-swing-reveal--${t}`,
378
378
  n === "hover+focus" ? "gloss-swing-reveal--hover-focus" : "",
379
379
  r ?? ""
380
380
  ].filter(Boolean).join(" ");
381
- return /* @__PURE__ */ i(
381
+ return /* @__PURE__ */ l(
382
382
  "span",
383
383
  {
384
384
  "data-testid": "gloss-swing-reveal",
@@ -389,56 +389,56 @@ const Fe = ({ visible: e, variant: t, trigger: n, children: a, className: r }) =
389
389
  children: a
390
390
  }
391
391
  );
392
- }, bt = Qe(
393
- function({ state: t, onPointerDown: n, onPointerUp: a, onPointerEnter: r, onPointerLeave: s, onKeyboardStep: o, edge: d = "right", ariaLabel: b = "Resize card" }, u) {
394
- const g = t === "handle-visible" || t === "dragging" || t === "settling", C = (h) => {
392
+ }, wt = et(
393
+ function({ state: t, onPointerDown: n, onPointerUp: a, onPointerEnter: r, onPointerLeave: s, onKeyboardStep: o, edge: c = "right", ariaLabel: f = "Resize card" }, d) {
394
+ const g = t === "handle-visible" || t === "dragging" || t === "settling", w = (h) => {
395
395
  try {
396
396
  h.currentTarget.setPointerCapture(h.pointerId);
397
397
  } catch {
398
398
  }
399
399
  n(h);
400
- }, m = (h) => {
400
+ }, u = (h) => {
401
401
  try {
402
402
  h.currentTarget.hasPointerCapture?.(h.pointerId) && h.currentTarget.releasePointerCapture(h.pointerId);
403
403
  } catch {
404
404
  }
405
405
  a(h);
406
- }, c = (h) => {
406
+ }, m = (h) => {
407
407
  !g || !o || (h.key === "ArrowRight" ? (h.preventDefault(), o("grow")) : h.key === "ArrowLeft" && (h.preventDefault(), o("shrink")));
408
408
  };
409
- return /* @__PURE__ */ i(Fe, { visible: g, variant: "handle", trigger: "hover", children: /* @__PURE__ */ i(
409
+ return /* @__PURE__ */ l(Ae, { visible: g, variant: "handle", trigger: "hover", children: /* @__PURE__ */ l(
410
410
  "button",
411
411
  {
412
- ref: u,
412
+ ref: d,
413
413
  type: "button",
414
- "aria-label": b,
415
- "data-edge": d,
414
+ "aria-label": f,
415
+ "data-edge": c,
416
416
  "data-resize-state": t,
417
417
  className: [
418
418
  "gloss-edge-handle",
419
- `gloss-edge-handle--${d}`,
419
+ `gloss-edge-handle--${c}`,
420
420
  g ? "gloss-edge-handle--visible" : ""
421
421
  ].filter(Boolean).join(" "),
422
- onPointerDown: C,
423
- onPointerUp: m,
422
+ onPointerDown: w,
423
+ onPointerUp: u,
424
424
  onPointerEnter: r,
425
425
  onPointerLeave: s,
426
- onKeyDown: c,
426
+ onKeyDown: m,
427
427
  tabIndex: g ? 0 : -1
428
428
  }
429
429
  ) });
430
430
  }
431
431
  );
432
- bt.displayName = "EdgeHoverHandle";
433
- function vt({
432
+ wt.displayName = "EdgeHoverHandle";
433
+ function Dt({
434
434
  visible: e,
435
435
  targetColSpan: t,
436
436
  ghostWidth: n,
437
437
  enterMs: a = 180,
438
438
  exitMs: r = 120
439
439
  }) {
440
- return /* @__PURE__ */ i(
441
- de.div,
440
+ return /* @__PURE__ */ l(
441
+ ue.div,
442
442
  {
443
443
  "aria-hidden": "true",
444
444
  "data-ghost-preview": e ? "visible" : "hidden",
@@ -454,8 +454,8 @@ function vt({
454
454
  }
455
455
  );
456
456
  }
457
- vt.displayName = "GhostPreview";
458
- class yt {
457
+ Dt.displayName = "GhostPreview";
458
+ class Nt {
459
459
  constructor() {
460
460
  this.samples = [], this.capacity = 3;
461
461
  }
@@ -479,14 +479,14 @@ class yt {
479
479
  const t = this.samples.length;
480
480
  if (t < 2) return 0;
481
481
  if (t === 2) {
482
- const [b, u] = this.samples, g = Math.max(1, u.t - b.t);
483
- return (u.x - b.x) / g * 1e3;
482
+ const [f, d] = this.samples, g = Math.max(1, d.t - f.t);
483
+ return (d.x - f.x) / g * 1e3;
484
484
  }
485
- const [n, a, r] = this.samples, s = (r.x - a.x) / Math.max(1, r.t - a.t) * 1e3, o = (a.x - n.x) / Math.max(1, a.t - n.t) * 1e3, d = o;
486
- return (s * 3 + o * 2 + d * 1) / 6;
485
+ const [n, a, r] = this.samples, s = (r.x - a.x) / Math.max(1, r.t - a.t) * 1e3, o = (a.x - n.x) / Math.max(1, a.t - n.t) * 1e3, c = o;
486
+ return (s * 3 + o * 2 + c * 1) / 6;
487
487
  }
488
488
  }
489
- const Ee = {
489
+ const Le = {
490
490
  // Spring (D-08). Retuned 260419 — damping 35 → 22 so the commit spring
491
491
  // has visible overshoot (ζ ≈ 0.49, ~13–17% overshoot, ~350ms settle). The
492
492
  // prior ζ ≈ 0.78 was imperceptible to users. Debug slug:
@@ -506,7 +506,7 @@ const Ee = {
506
506
  // Velocity multiplier (D-03b panel)
507
507
  velocityMultiplier: 1
508
508
  };
509
- function Ha({
509
+ function Ua({
510
510
  currentColSpan: e,
511
511
  stackable: t,
512
512
  onResize: n,
@@ -514,204 +514,211 @@ function Ha({
514
514
  step: r = 180,
515
515
  gap: s = 0,
516
516
  tuning: o,
517
- dwellMs: d = 120,
518
- enterMs: b = 180,
519
- exitMs: u = 120,
520
- maxColSpan: g = 3,
521
- containerRef: C,
517
+ dwellMs: c = 60,
518
+ graceExitMs: f = 150,
519
+ enterMs: d = 180,
520
+ exitMs: g = 120,
521
+ maxColSpan: w = 3,
522
+ containerRef: u,
522
523
  forceIdle: m
523
524
  }) {
524
- const [c, h] = W("idle"), [x, f] = W(e), S = R(null), I = R(null), N = R(null), _ = R(r), T = R(s), l = R(g), v = R(0), p = R("idle");
525
+ const [h, k] = G("idle"), [p, S] = G(e), I = T(null), C = T(null), M = T(null), R = T(null), i = T(r), b = T(s), D = T(w), x = T(0), v = T("idle");
525
526
  L(() => {
526
- p.current = c;
527
- }, [c]);
528
- const w = et(0), k = R(null), M = y(() => {
529
- const D = k.current;
530
- if (D) {
527
+ v.current = h;
528
+ }, [h]);
529
+ const _ = nt(0), P = T(null), H = y(() => {
530
+ const N = P.current;
531
+ if (N) {
531
532
  try {
532
- D.stop();
533
+ N.stop();
533
534
  } catch {
534
535
  }
535
- k.current = null;
536
+ P.current = null;
536
537
  }
537
- }, []), E = y(
538
- (D) => {
539
- const P = _.current, F = T.current;
540
- return D * P + (D - 1) * F;
538
+ }, []), U = y(
539
+ (N) => {
540
+ const F = i.current, E = b.current;
541
+ return N * F + (N - 1) * E;
541
542
  },
542
543
  []
543
- ), G = R(new yt()), V = R(e);
544
+ ), j = T(new Nt()), K = T(e);
544
545
  L(() => {
545
- V.current = x;
546
- }, [x]);
547
- const $ = se(() => ({ ...Ee, ...o ?? {} }), [o]), A = y(() => {
548
- S.current && (clearTimeout(S.current), S.current = null);
549
- }, []), j = y(() => {
546
+ K.current = p;
547
+ }, [p]);
548
+ const $ = ie(() => ({ ...Le, ...o ?? {} }), [o]), V = y(() => {
550
549
  I.current && (clearTimeout(I.current), I.current = null);
550
+ }, []), A = y(() => {
551
+ C.current && (clearTimeout(C.current), C.current = null);
552
+ }, []), Y = y(() => {
553
+ M.current && (clearTimeout(M.current), M.current = null);
551
554
  }, []);
552
555
  L(() => {
553
- m && (p.current === "dragging" || p.current === "settling" || (A(), j(), p.current = "idle", h("idle")));
554
- }, [m, A, j]);
555
- const oe = y(() => {
556
- h((D) => D === "settling" || D !== "idle" ? D : (S.current = setTimeout(() => h("handle-visible"), d), "dwelling"));
557
- }, [d]), K = y(() => {
558
- A(), h((D) => D === "dwelling" || D === "handle-visible" ? "idle" : D);
559
- }, [A]), ie = y(
560
- (D, P, F) => {
561
- const B = _.current, Q = B * $.snapInFraction, Z = B * $.snapOutFraction, Y = P - F, q = Math.max(
562
- F,
563
- l.current ?? g
556
+ m && (v.current === "dragging" || v.current === "settling" || (V(), A(), Y(), v.current = "idle", k("idle")));
557
+ }, [m, V, A, Y]);
558
+ const _e = y(() => {
559
+ A(), k((N) => N === "settling" || N !== "idle" ? N : (I.current = setTimeout(() => k("handle-visible"), c), "dwelling"));
560
+ }, [c, A]), xe = y(() => {
561
+ V();
562
+ const N = v.current;
563
+ N !== "dwelling" && N !== "handle-visible" || (C.current = setTimeout(() => {
564
+ v.current = "idle", k("idle");
565
+ }, f));
566
+ }, [V, f]), le = y(
567
+ (N, F, E) => {
568
+ const B = i.current, J = B * $.snapInFraction, q = B * $.snapOutFraction, Q = F - E, X = Math.max(
569
+ E,
570
+ D.current ?? w
564
571
  );
565
- let z = Y;
566
- for (; F + z < q; ) {
567
- const te = z * B + (z < 0 ? Z : Q);
568
- if (D >= te) z += 1;
572
+ let z = Q;
573
+ for (; E + z < X; ) {
574
+ const ne = z * B + (z < 0 ? q : J);
575
+ if (N >= ne) z += 1;
569
576
  else break;
570
577
  }
571
- if (z === Y)
572
- for (; F + z > 1; ) {
573
- const te = z * B - (z > 0 ? Z : Q);
574
- if (D <= te) z -= 1;
578
+ if (z === Q)
579
+ for (; E + z > 1; ) {
580
+ const ne = z * B - (z > 0 ? q : J);
581
+ if (N <= ne) z -= 1;
575
582
  else break;
576
583
  }
577
- return Math.min(q, Math.max(1, F + z));
584
+ return Math.min(X, Math.max(1, E + z));
578
585
  },
579
- [$.snapInFraction, $.snapOutFraction, g]
580
- ), He = y(
581
- (D) => {
582
- if (p.current !== "handle-visible") return;
583
- M(), N.current = D.clientX, _.current = r, T.current = s, l.current = g;
584
- const P = e * r + (e - 1) * s;
585
- v.current = P, G.current.clear(), G.current.push({ x: D.clientX, t: performance.now() }), w.jump(P), p.current = "dragging", h("dragging");
586
+ [$.snapInFraction, $.snapOutFraction, w]
587
+ ), Ue = y(
588
+ (N) => {
589
+ if (v.current !== "handle-visible") return;
590
+ H(), R.current = N.clientX, i.current = r, b.current = s, D.current = w;
591
+ const F = e * r + (e - 1) * s;
592
+ x.current = F, j.current.clear(), j.current.push({ x: N.clientX, t: performance.now() }), _.jump(F), v.current = "dragging", k("dragging");
586
593
  },
587
- [r, s, g, e, w, M]
588
- ), ke = y(
589
- (D) => D * _.current + (D - 1) * T.current,
594
+ [r, s, w, e, _, H]
595
+ ), Se = y(
596
+ (N) => N * i.current + (N - 1) * b.current,
590
597
  []
591
- ), le = y(
592
- (D, P) => {
593
- const F = ke(D), B = D !== e;
598
+ ), ce = y(
599
+ (N, F) => {
600
+ const E = Se(N), B = N !== e;
594
601
  if (typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
595
- w.jump(F), B && P ? n({ direction: P, targetColSpan: D, mode: t ? "slot-fill" : "sparkline-fidelity" }) : B || a?.(), w.jump(0), p.current = "idle", h("idle");
602
+ _.jump(E), B && F ? n({ direction: F, targetColSpan: N, mode: t ? "slot-fill" : "sparkline-fidelity" }) : B || a?.(), _.jump(0), v.current = "idle", k("idle");
596
603
  return;
597
604
  }
598
- const Z = G.current.getWeightedVelocity() * $.velocityMultiplier;
599
- p.current = "settling", h("settling"), M(), k.current = Se(w, F, {
605
+ const q = j.current.getWeightedVelocity() * $.velocityMultiplier;
606
+ v.current = "settling", k("settling"), H(), P.current = Re(_, E, {
600
607
  type: "spring",
601
608
  stiffness: $.stiffness,
602
609
  damping: $.damping,
603
610
  mass: $.mass,
604
- velocity: Z,
611
+ velocity: q,
605
612
  onComplete: () => {
606
- k.current = null, B && P ? n({ direction: P, targetColSpan: D, mode: t ? "slot-fill" : "sparkline-fidelity" }) : B || a?.(), w.jump(0), p.current = "idle", h("idle");
613
+ P.current = null, B && F ? n({ direction: F, targetColSpan: N, mode: t ? "slot-fill" : "sparkline-fidelity" }) : B || a?.(), _.jump(0), v.current = "idle", k("idle");
607
614
  }
608
615
  });
609
616
  },
610
- [ke, e, t, n, a, w, $, M]
611
- ), Ve = y(
612
- (D) => {
613
- if (p.current !== "dragging") return;
614
- const P = D.clientX - (N.current ?? D.clientX), F = _.current, Q = ((l.current ?? g) - e) * F, Z = (1 - e) * F, Y = Math.max(Z, Math.min(Q, P));
615
- G.current.push({ x: D.clientX, t: performance.now() });
616
- const q = ie(Y, V.current, e), z = q > e ? "grow" : q < e ? "shrink" : null;
617
- le(q, z);
617
+ [Se, e, t, n, a, _, $, H]
618
+ ), Ze = y(
619
+ (N) => {
620
+ if (v.current !== "dragging") return;
621
+ const F = N.clientX - (R.current ?? N.clientX), E = i.current, J = ((D.current ?? w) - e) * E, q = (1 - e) * E, Q = Math.max(q, Math.min(J, F));
622
+ j.current.push({ x: N.clientX, t: performance.now() });
623
+ const X = le(Q, K.current, e), z = X > e ? "grow" : X < e ? "shrink" : null;
624
+ ce(X, z);
618
625
  },
619
- [ie, e, g, le]
620
- ), me = y(() => {
621
- if (A(), p.current === "dragging") {
622
- const D = v.current;
626
+ [le, e, w, ce]
627
+ ), ge = y(() => {
628
+ if (V(), v.current === "dragging") {
629
+ const N = x.current;
623
630
  if (typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
624
- w.jump(D), a?.(), w.jump(0), p.current = "idle", h("idle");
631
+ _.jump(N), a?.(), _.jump(0), v.current = "idle", k("idle");
625
632
  return;
626
633
  }
627
- const F = G.current.getWeightedVelocity();
628
- p.current = "settling", h("settling"), M(), k.current = Se(w, D, {
634
+ const E = j.current.getWeightedVelocity();
635
+ v.current = "settling", k("settling"), H(), P.current = Re(_, N, {
629
636
  type: "spring",
630
637
  stiffness: $.stiffness,
631
638
  damping: $.damping,
632
639
  mass: $.mass,
633
- velocity: F,
640
+ velocity: E,
634
641
  onComplete: () => {
635
- k.current = null, a?.(), w.jump(0), p.current = "idle", h("idle");
642
+ P.current = null, a?.(), _.jump(0), v.current = "idle", k("idle");
636
643
  }
637
644
  });
638
645
  return;
639
646
  }
640
- p.current === "handle-visible" && (a?.(), p.current = "cancelled", h("cancelled"));
641
- }, [A, w, a, $, M]);
647
+ v.current === "handle-visible" && (a?.(), v.current = "cancelled", k("cancelled"));
648
+ }, [V, _, a, $, H]);
642
649
  L(() => {
643
- if (c !== "dragging" && c !== "handle-visible") return;
644
- const D = (P) => {
645
- P.key === "Escape" && me();
650
+ if (h !== "dragging" && h !== "handle-visible") return;
651
+ const N = (F) => {
652
+ F.key === "Escape" && ge();
646
653
  };
647
- return window.addEventListener("keydown", D), () => window.removeEventListener("keydown", D);
648
- }, [c, me]), L(() => {
649
- if (c !== "dragging") {
650
- f(e);
654
+ return window.addEventListener("keydown", N), () => window.removeEventListener("keydown", N);
655
+ }, [h, ge]), L(() => {
656
+ if (h !== "dragging") {
657
+ S(e);
651
658
  return;
652
659
  }
653
- const D = (P) => {
654
- const F = P.clientX - (N.current ?? P.clientX), B = v.current, Q = E(1), Z = E(g), Y = B + F, q = Math.max(Q, Math.min(Z, Y));
655
- w.set(q);
656
- const z = _.current, xe = (g - e) * z, te = (1 - e) * z, Ye = Math.max(te, Math.min(xe, F));
657
- G.current.push({ x: P.clientX, t: performance.now() });
658
- const ge = ie(Ye, V.current, e);
659
- ge !== V.current && (V.current = ge, f(ge));
660
+ const N = (F) => {
661
+ const E = F.clientX - (R.current ?? F.clientX), B = x.current, J = U(1), q = U(w), Q = B + E, X = Math.max(J, Math.min(q, Q));
662
+ _.set(X);
663
+ const z = i.current, Te = (w - e) * z, ne = (1 - e) * z, Xe = Math.max(ne, Math.min(Te, E));
664
+ j.current.push({ x: F.clientX, t: performance.now() });
665
+ const pe = le(Xe, K.current, e);
666
+ pe !== K.current && (K.current = pe, S(pe));
660
667
  };
661
- return window.addEventListener("pointermove", D), () => window.removeEventListener("pointermove", D);
662
- }, [c, e, w, ie, g, E]), L(() => () => {
663
- A(), j();
664
- }, [A, j]), L(() => {
665
- if (c !== "cancelled") return;
666
- const D = setTimeout(() => h("idle"), u);
667
- return () => clearTimeout(D);
668
- }, [c, u]);
669
- const je = y(
670
- (D) => {
671
- if (p.current === "settling") return;
672
- const F = Math.min(g, Math.max(1, e + (D === "grow" ? 1 : -1)));
673
- if (F === e) return;
674
- _.current = r, T.current = s, l.current = g, G.current.clear();
668
+ return window.addEventListener("pointermove", N), () => window.removeEventListener("pointermove", N);
669
+ }, [h, e, _, le, w, U]), L(() => () => {
670
+ V(), A(), Y();
671
+ }, [V, A, Y]), L(() => {
672
+ if (h !== "cancelled") return;
673
+ const N = setTimeout(() => k("idle"), g);
674
+ return () => clearTimeout(N);
675
+ }, [h, g]);
676
+ const Ye = y(
677
+ (N) => {
678
+ if (v.current === "settling") return;
679
+ const E = Math.min(w, Math.max(1, e + (N === "grow" ? 1 : -1)));
680
+ if (E === e) return;
681
+ i.current = r, b.current = s, D.current = w, j.current.clear();
675
682
  const B = e * r + (e - 1) * s;
676
- v.current = B, w.jump(B), le(F, D);
683
+ x.current = B, _.jump(B), ce(E, N);
677
684
  },
678
- [e, r, s, g, w, le]
679
- ), _e = y(() => {
680
- j(), I.current = setTimeout(() => {
681
- p.current === "handle-visible" && (p.current = "idle", h("idle"));
685
+ [e, r, s, w, _, ce]
686
+ ), Me = y(() => {
687
+ Y(), M.current = setTimeout(() => {
688
+ v.current === "handle-visible" && (v.current = "idle", k("idle"));
682
689
  }, 5e3);
683
- }, [j]), Ue = y(() => {
684
- p.current === "idle" && (A(), p.current = "handle-visible", h("handle-visible"), _e());
685
- }, [A, _e]), Ze = y(() => {
686
- j(), p.current === "handle-visible" && (p.current = "idle", h("idle"));
687
- }, [j]);
690
+ }, [Y]), qe = y(() => {
691
+ v.current === "idle" && (V(), v.current = "handle-visible", k("handle-visible"), Me());
692
+ }, [V, Me]), Qe = y(() => {
693
+ Y(), v.current === "handle-visible" && (v.current = "idle", k("idle"));
694
+ }, [Y]);
688
695
  return {
689
- state: c,
690
- enterEdgeZone: oe,
691
- leaveEdgeZone: K,
696
+ state: h,
697
+ enterEdgeZone: _e,
698
+ leaveEdgeZone: xe,
692
699
  handleProps: {
693
- onPointerDown: He,
694
- onPointerUp: Ve,
700
+ onPointerDown: Ue,
701
+ onPointerUp: Ze,
695
702
  // Bug E: handle continues zone presence so pointer crossing sentinel→handle
696
703
  // doesn't collapse state. handle's pointerenter = stay in zone.
697
- onPointerEnter: oe,
698
- onPointerLeave: K
704
+ onPointerEnter: _e,
705
+ onPointerLeave: xe
699
706
  },
700
- previewColSpan: x,
707
+ previewColSpan: p,
701
708
  ghostProps: {
702
- visible: c === "dragging" || c === "settling",
703
- targetColSpan: x,
704
- ghostWidth: w,
705
- enterMs: b,
706
- exitMs: u
709
+ visible: h === "dragging" || h === "settling",
710
+ targetColSpan: p,
711
+ ghostWidth: _,
712
+ enterMs: d,
713
+ exitMs: g
707
714
  },
708
- onKeyboardStep: je,
709
- onTouchReveal: Ue,
710
- onTouchDismiss: Ze,
711
- cancel: me
715
+ onKeyboardStep: Ye,
716
+ onTouchReveal: qe,
717
+ onTouchDismiss: Qe,
718
+ cancel: ge
712
719
  };
713
720
  }
714
- const ee = {
721
+ const ae = {
715
722
  // Cascade (D-08, D-10)
716
723
  staggerMs: 50,
717
724
  reverseStaggerMs: 30,
@@ -736,14 +743,14 @@ const ee = {
736
743
  sectionDividerFadeOutMs: 80,
737
744
  sectionDividerStaggerMs: 40
738
745
  };
739
- function Va(e) {
746
+ function Za(e) {
740
747
  const { cardWidthPx: t, slotCount: n, activeSlotIdx: a, pillWidthPx: r } = e;
741
748
  if (a == null || !Number.isFinite(t) || t <= 0 || !Number.isFinite(n) || n <= 0 || !Number.isInteger(a) || a < 0 || a >= n)
742
749
  return;
743
750
  const s = (a + 0.5) * (t / n);
744
751
  return r != null && Number.isFinite(r) && r > 0 ? s - r / 2 : s;
745
752
  }
746
- const ja = [
753
+ const Ya = [
747
754
  // 1. Standard: Total Revenue
748
755
  {
749
756
  variant: "standard",
@@ -847,24 +854,24 @@ const ja = [
847
854
  { value: 9, color: "#6b7280", label: "Other" }
848
855
  ]
849
856
  }
850
- ], wt = {
857
+ ], Ct = {
851
858
  variant: "standard",
852
859
  label: "Total Revenue",
853
860
  isLoading: !0
854
- }, Dt = {
861
+ }, kt = {
855
862
  variant: "standard",
856
863
  label: "Total Revenue",
857
864
  value: 125430,
858
865
  valueFormat: { prefix: "$", abbreviated: !0 },
859
866
  isError: !0
860
- }, Nt = {
867
+ }, _t = {
861
868
  variant: "standard",
862
869
  label: "Total Revenue",
863
870
  value: null,
864
871
  valueFormat: { prefix: "$", abbreviated: !0 },
865
872
  isEmpty: !0,
866
873
  subtitle: "No data"
867
- }, Ct = {
874
+ }, xt = {
868
875
  variant: "standard",
869
876
  label: "Total Revenue",
870
877
  value: 125430,
@@ -872,7 +879,7 @@ const ja = [
872
879
  trend: { value: 12.5, direction: "up" },
873
880
  subtitle: "MTD",
874
881
  isStale: !0
875
- }, kt = {
882
+ }, St = {
876
883
  variant: "sparkline",
877
884
  label: "Daily Orders",
878
885
  value: 847,
@@ -881,7 +888,7 @@ const ja = [
881
888
  sparklineData: [42, 38, 51, 47, 55, 60, 58, 63, 57, 62, 68, 71, 65, 59],
882
889
  accentColor: "#6366f1",
883
890
  isStale: !0
884
- }, _t = {
891
+ }, Mt = {
885
892
  variant: "donut",
886
893
  label: "Order Fill Rate",
887
894
  value: 78,
@@ -892,14 +899,14 @@ const ja = [
892
899
  donutMax: 100,
893
900
  accentColor: "#10b981",
894
901
  isStale: !0
895
- }, Ua = [
896
- wt,
897
- Dt,
898
- Nt,
902
+ }, qa = [
899
903
  Ct,
900
904
  kt,
901
- _t
902
- ], Za = {
905
+ _t,
906
+ xt,
907
+ St,
908
+ Mt
909
+ ], Qa = {
903
910
  variant: "sparkline",
904
911
  label: "Daily Orders",
905
912
  value: 847,
@@ -922,7 +929,7 @@ const ja = [
922
929
  59
923
930
  ],
924
931
  accentColor: "#6366f1"
925
- }, Ya = {
932
+ }, Xa = {
926
933
  variant: "sparkline",
927
934
  label: "New Customers",
928
935
  value: 23,
@@ -961,21 +968,21 @@ const ja = [
961
968
  19
962
969
  ],
963
970
  accentColor: "#10b981"
964
- }, qa = {
971
+ }, Ja = {
965
972
  variant: "standard",
966
973
  label: "Total Revenue",
967
974
  value: 125430,
968
975
  valueFormat: { prefix: "$", abbreviated: !0 },
969
976
  trend: { value: 12.5, direction: "up" },
970
977
  subtitle: "MTD"
971
- }, Qa = {
978
+ }, en = {
972
979
  variant: "standard",
973
980
  label: "Returns",
974
981
  value: 3280,
975
982
  valueFormat: { prefix: "$", abbreviated: !0 },
976
983
  trend: { value: -8.3, direction: "down" },
977
984
  subtitle: "MTD"
978
- }, Xa = {
985
+ }, tn = {
979
986
  variant: "standard",
980
987
  label: "Avg Order Value",
981
988
  value: 487,
@@ -983,7 +990,7 @@ const ja = [
983
990
  trend: { value: 0, direction: "flat" },
984
991
  subtitle: "QTD"
985
992
  };
986
- function Oe({
993
+ function $e({
987
994
  open: e,
988
995
  onDismiss: t,
989
996
  anchorRef: n,
@@ -991,25 +998,25 @@ function Oe({
991
998
  activePageId: r,
992
999
  onPageChange: s,
993
1000
  onCreatePage: o,
994
- onManagePages: d
1001
+ onManagePages: c
995
1002
  }) {
996
- const b = y(
997
- (m) => {
998
- s(m), t();
1003
+ const f = y(
1004
+ (u) => {
1005
+ s(u), t();
999
1006
  },
1000
1007
  [s, t]
1001
- ), u = y(
1002
- (m, c) => {
1003
- (c.key === "Enter" || c.key === " ") && (c.preventDefault(), b(m));
1008
+ ), d = y(
1009
+ (u, m) => {
1010
+ (m.key === "Enter" || m.key === " ") && (m.preventDefault(), f(u));
1004
1011
  },
1005
- [b]
1012
+ [f]
1006
1013
  ), g = y(() => {
1007
1014
  o(), t();
1008
- }, [o, t]), C = y(() => {
1009
- d(), t();
1010
- }, [d, t]);
1015
+ }, [o, t]), w = y(() => {
1016
+ c(), t();
1017
+ }, [c, t]);
1011
1018
  return /* @__PURE__ */ O(
1012
- at,
1019
+ st,
1013
1020
  {
1014
1021
  definition: {
1015
1022
  placement: "bottom-end",
@@ -1022,40 +1029,40 @@ function Oe({
1022
1029
  anchorRef: n,
1023
1030
  className: "gloss-page-dropdown",
1024
1031
  children: [
1025
- /* @__PURE__ */ i("ul", { role: "menu", className: "gloss-page-dropdown__list", children: a.map((m) => {
1026
- const c = m.id === r;
1032
+ /* @__PURE__ */ l("ul", { role: "menu", className: "gloss-page-dropdown__list", children: a.map((u) => {
1033
+ const m = u.id === r;
1027
1034
  return /* @__PURE__ */ O(
1028
1035
  "li",
1029
1036
  {
1030
1037
  role: "menuitemradio",
1031
- "aria-checked": c,
1032
- "aria-current": c ? "page" : void 0,
1038
+ "aria-checked": m,
1039
+ "aria-current": m ? "page" : void 0,
1033
1040
  tabIndex: 0,
1034
- className: `gloss-page-dropdown__item${c ? " gloss-page-dropdown__item--active" : ""}`,
1035
- onClick: () => b(m.id),
1036
- onKeyDown: (h) => u(m.id, h),
1041
+ className: `gloss-page-dropdown__item${m ? " gloss-page-dropdown__item--active" : ""}`,
1042
+ onClick: () => f(u.id),
1043
+ onKeyDown: (h) => d(u.id, h),
1037
1044
  children: [
1038
- /* @__PURE__ */ i(
1045
+ /* @__PURE__ */ l(
1039
1046
  "span",
1040
1047
  {
1041
- className: `gloss-page-dropdown__dot${c ? " gloss-page-dropdown__dot--active" : ""}`
1048
+ className: `gloss-page-dropdown__dot${m ? " gloss-page-dropdown__dot--active" : ""}`
1042
1049
  }
1043
1050
  ),
1044
- /* @__PURE__ */ i(
1051
+ /* @__PURE__ */ l(
1045
1052
  "span",
1046
1053
  {
1047
- className: `gloss-page-dropdown__name${m.named ? "" : " gloss-page-dropdown__name--unnamed"}`,
1048
- children: m.name
1054
+ className: `gloss-page-dropdown__name${u.named ? "" : " gloss-page-dropdown__name--unnamed"}`,
1055
+ children: u.name
1049
1056
  }
1050
1057
  ),
1051
- /* @__PURE__ */ i("span", { className: "gloss-page-dropdown__count", children: m.cardCount })
1058
+ /* @__PURE__ */ l("span", { className: "gloss-page-dropdown__count", children: u.cardCount })
1052
1059
  ]
1053
1060
  },
1054
- m.id
1061
+ u.id
1055
1062
  );
1056
1063
  }) }),
1057
- /* @__PURE__ */ i("hr", { className: "gloss-page-dropdown__separator" }),
1058
- /* @__PURE__ */ i(
1064
+ /* @__PURE__ */ l("hr", { className: "gloss-page-dropdown__separator" }),
1065
+ /* @__PURE__ */ l(
1059
1066
  "button",
1060
1067
  {
1061
1068
  role: "menuitem",
@@ -1064,13 +1071,13 @@ function Oe({
1064
1071
  children: "+ New page"
1065
1072
  }
1066
1073
  ),
1067
- /* @__PURE__ */ i("hr", { className: "gloss-page-dropdown__separator" }),
1068
- /* @__PURE__ */ i(
1074
+ /* @__PURE__ */ l("hr", { className: "gloss-page-dropdown__separator" }),
1075
+ /* @__PURE__ */ l(
1069
1076
  "button",
1070
1077
  {
1071
1078
  role: "menuitem",
1072
1079
  className: "gloss-page-dropdown__action gloss-page-dropdown__action--muted",
1073
- onClick: C,
1080
+ onClick: w,
1074
1081
  children: "Manage pages"
1075
1082
  }
1076
1083
  )
@@ -1078,64 +1085,64 @@ function Oe({
1078
1085
  }
1079
1086
  );
1080
1087
  }
1081
- Oe.displayName = "PageDropdown";
1082
- const xt = function({
1088
+ $e.displayName = "PageDropdown";
1089
+ const Tt = function({
1083
1090
  currentIndex: t,
1084
1091
  total: n,
1085
1092
  pages: a,
1086
1093
  onPageChange: r,
1087
1094
  onCreatePage: s,
1088
1095
  onManagePages: o,
1089
- maskRadius: d = "var(--gloss-radius-md)",
1090
- displayMode: b = "count",
1091
- activePage: u
1096
+ maskRadius: c = "var(--gloss-radius-md)",
1097
+ displayMode: f = "count",
1098
+ activePage: d
1092
1099
  }) {
1093
- const g = R(null), [C, m] = W(!1), c = y(() => {
1094
- m((f) => !f);
1100
+ const g = T(null), [w, u] = G(!1), m = y(() => {
1101
+ u((S) => !S);
1095
1102
  }, []), h = y(() => {
1096
- m(!1);
1097
- }, []), x = a[t]?.id ?? "";
1103
+ u(!1);
1104
+ }, []), k = a[t]?.id ?? "";
1098
1105
  return /* @__PURE__ */ O(
1099
1106
  "div",
1100
1107
  {
1101
1108
  className: "gloss-page-chip",
1102
1109
  ref: g,
1103
- style: { position: "absolute", top: 0, right: 0 },
1110
+ style: f === "name" ? { position: "relative" } : { position: "absolute", top: 0, right: 0 },
1104
1111
  "data-page-chip": !0,
1105
1112
  children: [
1106
- /* @__PURE__ */ i(
1113
+ f !== "name" && /* @__PURE__ */ l(
1107
1114
  "div",
1108
1115
  {
1109
1116
  className: "gloss-page-chip__nuzzle",
1110
- style: { "--_nuzzle-r": d }
1117
+ style: { "--_nuzzle-r": c }
1111
1118
  }
1112
1119
  ),
1113
- /* @__PURE__ */ i(
1120
+ /* @__PURE__ */ l(
1114
1121
  "button",
1115
1122
  {
1116
1123
  className: "gloss-page-chip__trigger",
1117
1124
  "aria-haspopup": "menu",
1118
- "aria-expanded": C,
1119
- "aria-label": b === "name" ? `${u ?? "Page"}. Click to switch pages.` : `Page ${t + 1} of ${n}. Click to switch pages.`,
1120
- onClick: c,
1121
- children: b === "name" ? /* @__PURE__ */ O(be, { children: [
1122
- /* @__PURE__ */ i("span", { className: "gloss-page-chip__trigger-name", children: u ?? "" }),
1123
- /* @__PURE__ */ i("span", { className: "gloss-page-chip__trigger-chevron", "aria-hidden": "true", children: "▾" })
1124
- ] }) : /* @__PURE__ */ O(be, { children: [
1125
+ "aria-expanded": w,
1126
+ "aria-label": f === "name" ? `${d ?? "Page"}. Click to switch pages.` : `Page ${t + 1} of ${n}. Click to switch pages.`,
1127
+ onClick: m,
1128
+ children: f === "name" ? /* @__PURE__ */ O(ve, { children: [
1129
+ /* @__PURE__ */ l("span", { className: "gloss-page-chip__trigger-name", children: d ?? "" }),
1130
+ /* @__PURE__ */ l("span", { className: "gloss-page-chip__trigger-chevron", "aria-hidden": "true", children: "▾" })
1131
+ ] }) : /* @__PURE__ */ O(ve, { children: [
1125
1132
  t + 1,
1126
1133
  " / ",
1127
1134
  n
1128
1135
  ] })
1129
1136
  }
1130
1137
  ),
1131
- /* @__PURE__ */ i(
1132
- Oe,
1138
+ /* @__PURE__ */ l(
1139
+ $e,
1133
1140
  {
1134
- open: C,
1141
+ open: w,
1135
1142
  onDismiss: h,
1136
1143
  anchorRef: g,
1137
1144
  pages: a,
1138
- activePageId: x,
1145
+ activePageId: k,
1139
1146
  onPageChange: r,
1140
1147
  onCreatePage: s,
1141
1148
  onManagePages: o
@@ -1145,8 +1152,8 @@ const xt = function({
1145
1152
  }
1146
1153
  );
1147
1154
  };
1148
- xt.displayName = "PageChip";
1149
- const Ja = [
1155
+ Tt.displayName = "PageChip";
1156
+ const an = [
1150
1157
  {
1151
1158
  id: "ORD-1001",
1152
1159
  orderNumber: "ORD-1001",
@@ -1279,7 +1286,7 @@ const Ja = [
1279
1286
  date: "2026-03-01",
1280
1287
  skuCount: 9
1281
1288
  }
1282
- ], en = [
1289
+ ], nn = [
1283
1290
  {
1284
1291
  id: "ITEM-001",
1285
1292
  sku: "PB-4520",
@@ -1413,16 +1420,16 @@ const Ja = [
1413
1420
  lastDate: "2026-03-01"
1414
1421
  }
1415
1422
  ];
1416
- function ye(e) {
1423
+ function we(e) {
1417
1424
  return "$" + e.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2 });
1418
1425
  }
1419
- function Ae(e) {
1426
+ function Be(e) {
1420
1427
  return e.toLocaleString("en-US");
1421
1428
  }
1422
- function Le(e) {
1429
+ function ze(e) {
1423
1430
  return new Date(e).toLocaleDateString("en-US", { month: "short", day: "numeric", year: "numeric" });
1424
1431
  }
1425
- const re = H.createElement("span", { style: { color: "var(--color-text-muted)" } }, "—"), tn = [
1432
+ const oe = W.createElement("span", { style: { color: "var(--color-text-muted)" } }, "—"), rn = [
1426
1433
  {
1427
1434
  field: "id",
1428
1435
  headerName: "Order",
@@ -1452,7 +1459,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1452
1459
  align: "right",
1453
1460
  headerAlign: "right",
1454
1461
  cellClassName: "gloss-tabular-nums",
1455
- renderCell: ({ row: e }) => e.skuCount ? Ae(e.skuCount) : re
1462
+ renderCell: ({ row: e }) => e.skuCount ? Be(e.skuCount) : oe
1456
1463
  },
1457
1464
  {
1458
1465
  field: "total",
@@ -1462,7 +1469,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1462
1469
  align: "right",
1463
1470
  headerAlign: "right",
1464
1471
  cellClassName: "gloss-tabular-nums",
1465
- renderCell: ({ row: e }) => e.total ? ye(e.total) : re
1472
+ renderCell: ({ row: e }) => e.total ? we(e.total) : oe
1466
1473
  },
1467
1474
  {
1468
1475
  field: "date",
@@ -1472,9 +1479,9 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1472
1479
  align: "right",
1473
1480
  headerAlign: "right",
1474
1481
  cellClassName: "gloss-tabular-nums",
1475
- renderCell: ({ row: e }) => e.date ? Le(e.date) : ""
1482
+ renderCell: ({ row: e }) => e.date ? ze(e.date) : ""
1476
1483
  }
1477
- ], an = [
1484
+ ], sn = [
1478
1485
  {
1479
1486
  field: "sku",
1480
1487
  headerName: "Item ID",
@@ -1506,7 +1513,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1506
1513
  align: "right",
1507
1514
  headerAlign: "right",
1508
1515
  cellClassName: "gloss-tabular-nums",
1509
- renderCell: ({ row: e }) => e.price ? ye(e.price) : re
1516
+ renderCell: ({ row: e }) => e.price ? we(e.price) : oe
1510
1517
  },
1511
1518
  {
1512
1519
  field: "quantity",
@@ -1516,7 +1523,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1516
1523
  align: "right",
1517
1524
  headerAlign: "right",
1518
1525
  cellClassName: "gloss-tabular-nums gloss-drillable",
1519
- renderCell: ({ row: e }) => e.quantity ? Ae(e.quantity) : re
1526
+ renderCell: ({ row: e }) => e.quantity ? Be(e.quantity) : oe
1520
1527
  },
1521
1528
  {
1522
1529
  field: "total",
@@ -1526,7 +1533,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1526
1533
  align: "right",
1527
1534
  headerAlign: "right",
1528
1535
  cellClassName: "gloss-tabular-nums gloss-drillable",
1529
- renderCell: ({ row: e }) => e.total ? ye(e.total) : re
1536
+ renderCell: ({ row: e }) => e.total ? we(e.total) : oe
1530
1537
  },
1531
1538
  {
1532
1539
  field: "lastDate",
@@ -1536,24 +1543,24 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1536
1543
  align: "right",
1537
1544
  headerAlign: "right",
1538
1545
  cellClassName: "gloss-tabular-nums",
1539
- renderCell: ({ row: e }) => e.lastDate ? Le(e.lastDate) : ""
1546
+ renderCell: ({ row: e }) => e.lastDate ? ze(e.lastDate) : ""
1540
1547
  }
1541
- ], St = [
1548
+ ], Rt = [
1542
1549
  { id: "c-001", label: "ABC Home Goods" },
1543
1550
  { id: "c-002", label: "Riverside Retail" },
1544
1551
  { id: "c-003", label: "Mountain View Store" },
1545
1552
  { id: "c-004", label: "Downtown Decor" },
1546
1553
  { id: "c-005", label: "Pacific Coast Imports" }
1547
- ], Mt = [
1554
+ ], It = [
1548
1555
  { id: "i-001", label: "Classic Linen Throw Pillow" },
1549
1556
  { id: "i-002", label: "Coastal Wave Candle Set" },
1550
1557
  { id: "i-003", label: "Walnut Console Table" },
1551
1558
  { id: "i-004", label: "Hand-Blown Glass Vase" },
1552
1559
  { id: "i-005", label: "Velvet Accent Cushion" }
1553
- ], pe = (e) => {
1554
- }, Tt = (e) => {
1555
- }, Te = (e, t) => {
1556
- }, $e = {
1560
+ ], fe = (e) => {
1561
+ }, Pt = (e) => {
1562
+ }, Pe = (e, t) => {
1563
+ }, Ke = {
1557
1564
  vizState: {
1558
1565
  type: "orders",
1559
1566
  quant: "$",
@@ -1561,17 +1568,17 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1561
1568
  byItem: { id: null, name: null },
1562
1569
  timeFrame: "MTD"
1563
1570
  },
1564
- onTypeChange: pe,
1565
- onQuantChange: Tt,
1566
- onEntityTypeChange: pe,
1567
- onEntitySelect: Te,
1568
- onItemSelect: Te,
1569
- onTimeFrameChange: pe,
1571
+ onTypeChange: fe,
1572
+ onQuantChange: Pt,
1573
+ onEntityTypeChange: fe,
1574
+ onEntitySelect: Pe,
1575
+ onItemSelect: Pe,
1576
+ onTimeFrameChange: fe,
1570
1577
  userType: "sales-agency",
1571
- entityFilterOptions: St,
1572
- itemFilterOptions: Mt
1573
- }, nn = {
1574
- ...$e,
1578
+ entityFilterOptions: Rt,
1579
+ itemFilterOptions: It
1580
+ }, on = {
1581
+ ...Ke,
1575
1582
  vizState: {
1576
1583
  type: "items",
1577
1584
  quant: "$",
@@ -1579,8 +1586,8 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1579
1586
  byItem: { id: "i-003", name: "Walnut Console Table" },
1580
1587
  timeFrame: "YTD"
1581
1588
  }
1582
- }, rn = {
1583
- ...$e,
1589
+ }, ln = {
1590
+ ...Ke,
1584
1591
  vizState: {
1585
1592
  type: "orders",
1586
1593
  quant: "#",
@@ -1592,7 +1599,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1592
1599
  entityFilterOptions: [
1593
1600
  { id: "customers", label: "Customers" }
1594
1601
  ]
1595
- }, Rt = [
1602
+ }, Ft = [
1596
1603
  {
1597
1604
  id: "recent-orders",
1598
1605
  label: "Recent Orders",
@@ -1638,7 +1645,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1638
1645
  routeKey: "customer.profile",
1639
1646
  subtitle: "Opens in RepTime"
1640
1647
  }
1641
- ], It = [
1648
+ ], Et = [
1642
1649
  {
1643
1650
  id: "order-items",
1644
1651
  label: "Items in Order",
@@ -1667,7 +1674,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1667
1674
  cellKinds: ["orderId"],
1668
1675
  graphType: "timeline"
1669
1676
  }
1670
- ], Pt = [
1677
+ ], Ot = [
1671
1678
  {
1672
1679
  id: "graph-metric",
1673
1680
  label: "Graph This Metric",
@@ -1695,14 +1702,14 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1695
1702
  cellKinds: ["numeric"],
1696
1703
  tabType: "orders"
1697
1704
  }
1698
- ], sn = {
1699
- entityName: Rt,
1700
- orderId: It,
1701
- numeric: Pt
1702
- }, on = [
1705
+ ], cn = {
1706
+ entityName: Ft,
1707
+ orderId: Et,
1708
+ numeric: Ot
1709
+ }, dn = [
1703
1710
  new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), (/* @__PURE__ */ new Date()).getDate() - 29),
1704
1711
  /* @__PURE__ */ new Date()
1705
- ], ln = {
1712
+ ], un = {
1706
1713
  rangeA: [
1707
1714
  new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1),
1708
1715
  /* @__PURE__ */ new Date()
@@ -1715,7 +1722,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1715
1722
  new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth() - 2, 1),
1716
1723
  new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth() - 1, 0)
1717
1724
  ]
1718
- }, cn = {
1725
+ }, mn = {
1719
1726
  version: 4,
1720
1727
  lastPreset: "mtd",
1721
1728
  pinnedPreset: "mtd",
@@ -1723,7 +1730,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1723
1730
  rangeCount: 1,
1724
1731
  lastPresetB: null,
1725
1732
  lastPresetC: null
1726
- }, dn = [
1733
+ }, gn = [
1727
1734
  {
1728
1735
  id: "atlanta-jan",
1729
1736
  label: "Atlanta Market",
@@ -1745,7 +1752,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1745
1752
  endDate: new Date(2026, 3, 22),
1746
1753
  location: "Chicago, IL"
1747
1754
  }
1748
- ], un = [
1755
+ ], pn = [
1749
1756
  {
1750
1757
  id: "custom-regional-1",
1751
1758
  label: "Southeast Regional Expo",
@@ -1762,7 +1769,7 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1762
1769
  location: "Portland, OR",
1763
1770
  isCustom: !0
1764
1771
  }
1765
- ], mn = [
1772
+ ], fn = [
1766
1773
  {
1767
1774
  id: "atlanta-jan",
1768
1775
  label: "Atlanta Market",
@@ -1779,36 +1786,36 @@ const re = H.createElement("span", { style: { color: "var(--color-text-muted)" }
1779
1786
  location: "New York, NY",
1780
1787
  active: !0
1781
1788
  }
1782
- ], gn = [
1789
+ ], hn = [
1783
1790
  { id: "7d", label: "7D" },
1784
1791
  { id: "30d", label: "30D" },
1785
1792
  { id: "60d", label: "60D" },
1786
1793
  { id: "90d", label: "90D" }
1787
- ], pn = [
1794
+ ], bn = [
1788
1795
  { id: "mtd", label: "MTD" },
1789
1796
  { id: "qtd", label: "QTD" },
1790
1797
  { id: "ytd", label: "YTD" },
1791
1798
  { id: "lytd", label: "LYTD" }
1792
- ], Ft = {
1799
+ ], At = {
1793
1800
  timeframe: "Time Frame",
1794
1801
  threshold: "Thresholds",
1795
1802
  slots: "Slots",
1796
1803
  size: "Size",
1797
1804
  color: "Color",
1798
1805
  pinned: "Pinned"
1799
- }, Et = {
1800
- timeframe: rt,
1801
- threshold: st,
1802
- slots: ot,
1803
- size: it,
1804
- color: lt,
1805
- pinned: ct
1806
+ }, Lt = {
1807
+ timeframe: it,
1808
+ threshold: lt,
1809
+ slots: ct,
1810
+ size: dt,
1811
+ color: ut,
1812
+ pinned: mt
1806
1813
  };
1807
- function Re(...e) {
1814
+ function Fe(...e) {
1808
1815
  return e.filter(Boolean).join(" ");
1809
1816
  }
1810
- function Ot() {
1811
- const [e, t] = W(() => typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia("(prefers-reduced-motion: reduce)").matches);
1817
+ function $t() {
1818
+ const [e, t] = G(() => typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia("(prefers-reduced-motion: reduce)").matches);
1812
1819
  return L(() => {
1813
1820
  if (typeof window > "u" || typeof window.matchMedia != "function") return;
1814
1821
  const n = window.matchMedia("(prefers-reduced-motion: reduce)"), a = (r) => t(r.matches);
@@ -1817,99 +1824,99 @@ function Ot() {
1817
1824
  });
1818
1825
  }, []), e;
1819
1826
  }
1820
- const At = ({
1827
+ const Bt = ({
1821
1828
  dimensions: e,
1822
1829
  onDimensionSelect: t,
1823
1830
  activeDimension: n,
1824
1831
  ariaCardTypeLabel: a,
1825
1832
  className: r
1826
1833
  }) => {
1827
- const s = R(null), o = R([]), d = Ot(), b = se(() => Array.from(e), [e]);
1828
- if (b.length === 0) return null;
1829
- const u = a ? `Configure ${a}: choose a dimension` : void 0, g = d ? "10ms" : "200ms", C = (m, c) => {
1830
- const h = b.length - 1, x = (f) => {
1831
- const S = o.current[f];
1834
+ const s = T(null), o = T([]), c = $t(), f = ie(() => Array.from(e), [e]);
1835
+ if (f.length === 0) return null;
1836
+ const d = a ? `Configure ${a}: choose a dimension` : void 0, g = c ? "10ms" : "200ms", w = (u, m) => {
1837
+ const h = f.length - 1, k = (p) => {
1838
+ const S = o.current[p];
1832
1839
  S && S.focus();
1833
1840
  };
1834
- switch (m.key) {
1841
+ switch (u.key) {
1835
1842
  case "ArrowRight":
1836
1843
  case "ArrowDown": {
1837
- m.preventDefault(), x(c === h ? 0 : c + 1);
1844
+ u.preventDefault(), k(m === h ? 0 : m + 1);
1838
1845
  break;
1839
1846
  }
1840
1847
  case "ArrowLeft":
1841
1848
  case "ArrowUp": {
1842
- m.preventDefault(), x(c === 0 ? h : c - 1);
1849
+ u.preventDefault(), k(m === 0 ? h : m - 1);
1843
1850
  break;
1844
1851
  }
1845
1852
  case "Home": {
1846
- m.preventDefault(), x(0);
1853
+ u.preventDefault(), k(0);
1847
1854
  break;
1848
1855
  }
1849
1856
  case "End": {
1850
- m.preventDefault(), x(h);
1857
+ u.preventDefault(), k(h);
1851
1858
  break;
1852
1859
  }
1853
1860
  case "Enter":
1854
1861
  case " ": {
1855
- m.preventDefault(), t(b[c]);
1862
+ u.preventDefault(), t(f[m]);
1856
1863
  break;
1857
1864
  }
1858
1865
  }
1859
1866
  };
1860
- return /* @__PURE__ */ i(
1867
+ return /* @__PURE__ */ l(
1861
1868
  "div",
1862
1869
  {
1863
1870
  ref: s,
1864
1871
  role: "group",
1865
- "aria-label": u,
1866
- className: Re("gloss-reconfig-backside-buttons", r),
1872
+ "aria-label": d,
1873
+ className: Fe("gloss-reconfig-backside-buttons", r),
1867
1874
  style: {
1868
1875
  // Expose the reduced-motion-resolved duration as a CSS custom prop
1869
1876
  // so the SCSS transition rule can consume it without a nested media
1870
1877
  // query in the JS. Also surfaces the value for the unit test.
1871
1878
  "--gloss-reconfig-backside-buttons-transition-duration": g
1872
1879
  },
1873
- children: b.map((m, c) => {
1874
- const h = Et[m], x = n === m;
1880
+ children: f.map((u, m) => {
1881
+ const h = Lt[u], k = n === u;
1875
1882
  return /* @__PURE__ */ O(
1876
1883
  "button",
1877
1884
  {
1878
- ref: (f) => {
1879
- o.current[c] = f;
1885
+ ref: (p) => {
1886
+ o.current[m] = p;
1880
1887
  },
1881
1888
  type: "button",
1882
- "data-dimension": m,
1883
- className: Re(
1889
+ "data-dimension": u,
1890
+ className: Fe(
1884
1891
  "gloss-reconfig-backside-buttons__button",
1885
- x && "gloss-reconfig-backside-buttons__button--active"
1892
+ k && "gloss-reconfig-backside-buttons__button--active"
1886
1893
  ),
1887
- "aria-current": x ? "true" : void 0,
1888
- onClick: () => t(m),
1889
- onKeyDown: (f) => C(f, c),
1894
+ "aria-current": k ? "true" : void 0,
1895
+ onClick: () => t(u),
1896
+ onKeyDown: (p) => w(p, m),
1890
1897
  children: [
1891
- /* @__PURE__ */ i(
1898
+ /* @__PURE__ */ l(
1892
1899
  h,
1893
1900
  {
1894
1901
  className: "gloss-reconfig-backside-buttons__button-icon",
1895
1902
  "aria-hidden": "true"
1896
1903
  }
1897
1904
  ),
1898
- /* @__PURE__ */ i("span", { className: "gloss-reconfig-backside-buttons__button-label", children: Ft[m] })
1905
+ /* @__PURE__ */ l("span", { className: "gloss-reconfig-backside-buttons__button-label", children: At[u] })
1899
1906
  ]
1900
1907
  },
1901
- m
1908
+ u
1902
1909
  );
1903
1910
  })
1904
1911
  }
1905
1912
  );
1906
1913
  };
1907
- At.displayName = "ReconfigBacksideButtons";
1908
- function U(e, t) {
1914
+ Bt.displayName = "ReconfigBacksideButtons";
1915
+ function Z(e, t) {
1909
1916
  return {
1910
1917
  id: e,
1911
1918
  colSpan: 1,
1912
- content: H.createElement("div", {
1919
+ content: W.createElement("div", {
1913
1920
  style: {
1914
1921
  width: "100%",
1915
1922
  height: "100%",
@@ -1925,38 +1932,38 @@ function U(e, t) {
1925
1932
  }, t)
1926
1933
  };
1927
1934
  }
1928
- function Ie(e, t) {
1935
+ function Ee(e, t) {
1929
1936
  return {
1930
- ...U(e, t),
1937
+ ...Z(e, t),
1931
1938
  colSpan: 2
1932
1939
  };
1933
1940
  }
1934
- const fn = [
1935
- U("total-revenue", "Total Revenue"),
1936
- U("total-orders", "Total Orders"),
1937
- Ie("revenue-trend", "Revenue Trend (2x)"),
1938
- U("avg-order", "Avg Order Value"),
1939
- U("new-customers", "New Customers"),
1940
- U("top-salesperson", "Top Salesperson"),
1941
- Ie("order-trend", "Order Trend (2x)"),
1942
- U("repeat-rate", "Repeat Rate"),
1943
- U("open-orders", "Open Orders"),
1944
- U("shipped-orders", "Shipped Orders")
1945
- ], hn = {
1941
+ const vn = [
1942
+ Z("total-revenue", "Total Revenue"),
1943
+ Z("total-orders", "Total Orders"),
1944
+ Ee("revenue-trend", "Revenue Trend (2x)"),
1945
+ Z("avg-order", "Avg Order Value"),
1946
+ Z("new-customers", "New Customers"),
1947
+ Z("top-salesperson", "Top Salesperson"),
1948
+ Ee("order-trend", "Order Trend (2x)"),
1949
+ Z("repeat-rate", "Repeat Rate"),
1950
+ Z("open-orders", "Open Orders"),
1951
+ Z("shipped-orders", "Shipped Orders")
1952
+ ], yn = {
1946
1953
  columns: 6,
1947
1954
  rowHeight: 120,
1948
1955
  gap: 15,
1949
1956
  maxRows: 3,
1950
1957
  currentPage: 0,
1951
1958
  totalPages: 1
1952
- }, bn = {
1959
+ }, wn = {
1953
1960
  columns: 9,
1954
1961
  rowHeight: 120,
1955
1962
  gap: 15,
1956
1963
  maxRows: 3,
1957
1964
  currentPage: 0,
1958
1965
  totalPages: 2
1959
- }, vn = {
1966
+ }, Dn = {
1960
1967
  columns: 12,
1961
1968
  rowHeight: 120,
1962
1969
  gap: 15,
@@ -1964,15 +1971,15 @@ const fn = [
1964
1971
  currentPage: 0,
1965
1972
  totalPages: 3
1966
1973
  };
1967
- function fe(e) {
1968
- return H.createElement("span", { style: { fontSize: 14 } }, e);
1974
+ function he(e) {
1975
+ return W.createElement("span", { style: { fontSize: 14 } }, e);
1969
1976
  }
1970
- const yn = [
1977
+ const Nn = [
1971
1978
  {
1972
1979
  id: "all-orders",
1973
1980
  type: "orders",
1974
1981
  name: "All Orders",
1975
- icon: fe("📋"),
1982
+ icon: he("📋"),
1976
1983
  closable: !1,
1977
1984
  autoCreated: !0
1978
1985
  },
@@ -1980,17 +1987,17 @@ const yn = [
1980
1987
  id: "open-orders",
1981
1988
  type: "orders",
1982
1989
  name: "Open Orders",
1983
- icon: fe("📦"),
1990
+ icon: he("📦"),
1984
1991
  closable: !0
1985
1992
  },
1986
1993
  {
1987
1994
  id: "shipped-orders",
1988
1995
  type: "orders",
1989
1996
  name: "Shipped Orders",
1990
- icon: fe("🚚"),
1997
+ icon: he("🚚"),
1991
1998
  closable: !0
1992
1999
  }
1993
- ], wn = [
2000
+ ], Cn = [
1994
2001
  {
1995
2002
  id: "orders-main",
1996
2003
  type: "orders",
@@ -2016,7 +2023,7 @@ const yn = [
2016
2023
  name: "Customers",
2017
2024
  closable: !0
2018
2025
  }
2019
- ], Dn = [
2026
+ ], kn = [
2020
2027
  {
2021
2028
  id: "only-tab",
2022
2029
  type: "orders",
@@ -2024,7 +2031,7 @@ const yn = [
2024
2031
  closable: !1,
2025
2032
  autoCreated: !0
2026
2033
  }
2027
- ], Nn = [
2034
+ ], _n = [
2028
2035
  { id: "tab-1", type: "orders", name: "All Orders", closable: !1, autoCreated: !0 },
2029
2036
  { id: "tab-2", type: "orders", name: "Open Orders", closable: !0 },
2030
2037
  { id: "tab-3", type: "orders", name: "Shipped Orders", closable: !0 },
@@ -2036,7 +2043,7 @@ const yn = [
2036
2043
  { id: "tab-9", type: "order-items", name: "Order #12345", closable: !0 },
2037
2044
  { id: "tab-10", type: "orders", name: "Recent 30D", closable: !0 }
2038
2045
  ];
2039
- function we(e) {
2046
+ function De(e) {
2040
2047
  switch (e) {
2041
2048
  case "wide":
2042
2049
  return { cols: 2, rows: 1 };
@@ -2047,24 +2054,24 @@ function we(e) {
2047
2054
  return { cols: 1, rows: 1 };
2048
2055
  }
2049
2056
  }
2050
- function Lt(e) {
2057
+ function zt(e) {
2051
2058
  let t = 0;
2052
2059
  for (const a of e) {
2053
- const r = we(a.size), s = a.gridPosition.col + r.cols - 1;
2060
+ const r = De(a.size), s = a.gridPosition.col + r.cols - 1;
2054
2061
  s > t && (t = s);
2055
2062
  }
2056
2063
  return `repeat(${t > 0 ? t : Math.max(e.length, 1)}, minmax(0, 1fr))`;
2057
2064
  }
2058
- const $t = function(t) {
2065
+ const Kt = function(t) {
2059
2066
  if (t.renderMode === "discrete")
2060
- return /* @__PURE__ */ i(
2067
+ return /* @__PURE__ */ l(
2061
2068
  "div",
2062
2069
  {
2063
2070
  className: "gloss-metric-group gloss-metric-group--discrete",
2064
2071
  style: { display: "contents" },
2065
2072
  children: t.cards.map((r) => {
2066
- const s = we(r.size);
2067
- return /* @__PURE__ */ i(
2073
+ const s = De(r.size);
2074
+ return /* @__PURE__ */ l(
2068
2075
  "div",
2069
2076
  {
2070
2077
  className: "gloss-metric-group__slot",
@@ -2099,7 +2106,7 @@ const $t = function(t) {
2099
2106
  "aria-label": a?.label,
2100
2107
  tabIndex: void 0,
2101
2108
  children: [
2102
- a?.accentColor && /* @__PURE__ */ i(
2109
+ a?.accentColor && /* @__PURE__ */ l(
2103
2110
  "div",
2104
2111
  {
2105
2112
  className: "gloss-metric-group__accent",
@@ -2107,8 +2114,8 @@ const $t = function(t) {
2107
2114
  }
2108
2115
  ),
2109
2116
  a?.label && /* @__PURE__ */ O("div", { className: "gloss-metric-group__label", children: [
2110
- /* @__PURE__ */ i("span", { children: a.label }),
2111
- a?.trend && /* @__PURE__ */ i(
2117
+ /* @__PURE__ */ l("span", { children: a.label }),
2118
+ a?.trend && /* @__PURE__ */ l(
2112
2119
  "span",
2113
2120
  {
2114
2121
  className: "gloss-metric-group__trend",
@@ -2117,18 +2124,18 @@ const $t = function(t) {
2117
2124
  }
2118
2125
  )
2119
2126
  ] }),
2120
- /* @__PURE__ */ i(
2127
+ /* @__PURE__ */ l(
2121
2128
  "div",
2122
2129
  {
2123
2130
  className: "gloss-metric-group__slots",
2124
2131
  style: {
2125
2132
  display: "grid",
2126
2133
  gap: "var(--gloss-spacing-2, 8px)",
2127
- gridTemplateColumns: Lt(n)
2134
+ gridTemplateColumns: zt(n)
2128
2135
  },
2129
2136
  children: n.map((r) => {
2130
- const s = we(r.size);
2131
- return /* @__PURE__ */ i(
2137
+ const s = De(r.size);
2138
+ return /* @__PURE__ */ l(
2132
2139
  "div",
2133
2140
  {
2134
2141
  className: "gloss-metric-group__slot--composite",
@@ -2147,48 +2154,48 @@ const $t = function(t) {
2147
2154
  }
2148
2155
  );
2149
2156
  };
2150
- $t.displayName = "MetricGroupContainer";
2151
- const Be = "resize.tuning.dev", Bt = {
2152
- ...Ee,
2157
+ Kt.displayName = "MetricGroupContainer";
2158
+ const Ge = "resize.tuning.dev", Gt = {
2159
+ ...Le,
2153
2160
  snapInPx: 60,
2154
2161
  snapOutPx: 90
2155
- }, J = Bt;
2156
- function zt() {
2157
- if (typeof window > "u") return { ...J };
2162
+ }, te = Gt;
2163
+ function Wt() {
2164
+ if (typeof window > "u") return { ...te };
2158
2165
  try {
2159
- const e = window.localStorage.getItem(Be);
2160
- if (!e) return { ...J };
2166
+ const e = window.localStorage.getItem(Ge);
2167
+ if (!e) return { ...te };
2161
2168
  const t = JSON.parse(e);
2162
- return !t || typeof t != "object" || Array.isArray(t) ? { ...J } : { ...J, ...t };
2169
+ return !t || typeof t != "object" || Array.isArray(t) ? { ...te } : { ...te, ...t };
2163
2170
  } catch {
2164
- return { ...J };
2171
+ return { ...te };
2165
2172
  }
2166
2173
  }
2167
- function Kt() {
2168
- const [e, t] = W(() => zt());
2174
+ function Ht() {
2175
+ const [e, t] = G(() => Wt());
2169
2176
  L(() => {
2170
2177
  if (!(typeof window > "u"))
2171
2178
  try {
2172
- window.localStorage.setItem(Be, JSON.stringify(e));
2179
+ window.localStorage.setItem(Ge, JSON.stringify(e));
2173
2180
  } catch {
2174
2181
  }
2175
2182
  }, [e]);
2176
2183
  const n = y(
2177
2184
  (s, o) => {
2178
- t((d) => ({ ...d, [s]: o }));
2185
+ t((c) => ({ ...c, [s]: o }));
2179
2186
  },
2180
2187
  []
2181
2188
  ), a = y(
2182
2189
  (s) => {
2183
- t((o) => ({ ...o, [s]: J[s] }));
2190
+ t((o) => ({ ...o, [s]: te[s] }));
2184
2191
  },
2185
2192
  []
2186
2193
  ), r = y(() => {
2187
- t({ ...J });
2194
+ t({ ...te });
2188
2195
  }, []);
2189
2196
  return { values: e, setValue: n, resetRow: a, resetAll: r };
2190
2197
  }
2191
- const Wt = [
2198
+ const Vt = [
2192
2199
  { key: "stiffness", label: "Spring stiffness", unit: "", min: 100, max: 1e3, step: 10 },
2193
2200
  { key: "damping", label: "Spring damping", unit: "", min: 10, max: 60, step: 1 },
2194
2201
  { key: "mass", label: "Spring mass", unit: "", min: 0.5, max: 2, step: 0.1 },
@@ -2199,10 +2206,10 @@ const Wt = [
2199
2206
  { key: "blueprintFadeOutMs", label: "Blueprint fade out", unit: "ms", min: 60, max: 400, step: 10 },
2200
2207
  { key: "velocityMultiplier", label: "Velocity multiplier", unit: "×", min: 0, max: 2, step: 0.05 }
2201
2208
  ];
2202
- function Gt(e, t) {
2209
+ function jt(e, t) {
2203
2210
  return t >= 1 ? String(Math.round(e)) : t >= 0.1 ? e.toFixed(1) : e.toFixed(2);
2204
2211
  }
2205
- function Ht() {
2212
+ function Ut() {
2206
2213
  return /* @__PURE__ */ O(
2207
2214
  "svg",
2208
2215
  {
@@ -2216,13 +2223,13 @@ function Ht() {
2216
2223
  strokeLinejoin: "round",
2217
2224
  "aria-hidden": "true",
2218
2225
  children: [
2219
- /* @__PURE__ */ i("path", { d: "M3 12a9 9 0 1 0 3-6.7L3 8" }),
2220
- /* @__PURE__ */ i("polyline", { points: "3 3 3 8 8 8" })
2226
+ /* @__PURE__ */ l("path", { d: "M3 12a9 9 0 1 0 3-6.7L3 8" }),
2227
+ /* @__PURE__ */ l("polyline", { points: "3 3 3 8 8 8" })
2221
2228
  ]
2222
2229
  }
2223
2230
  );
2224
2231
  }
2225
- function Vt({ spec: e, value: t, onChange: n, onReset: a, flashing: r }) {
2232
+ function Zt({ spec: e, value: t, onChange: n, onReset: a, flashing: r }) {
2226
2233
  const s = y(
2227
2234
  (o) => {
2228
2235
  (o.key === "r" || o.key === "R") && (o.preventDefault(), a());
@@ -2236,12 +2243,12 @@ function Vt({ spec: e, value: t, onChange: n, onReset: a, flashing: r }) {
2236
2243
  "data-tuning-row": e.key,
2237
2244
  onKeyDown: s,
2238
2245
  children: [
2239
- /* @__PURE__ */ i("label", { className: "gloss-dev-tuning-panel__label", htmlFor: `gloss-dtp-${e.key}`, children: e.label }),
2246
+ /* @__PURE__ */ l("label", { className: "gloss-dev-tuning-panel__label", htmlFor: `gloss-dtp-${e.key}`, children: e.label }),
2240
2247
  /* @__PURE__ */ O("span", { className: "gloss-dev-tuning-panel__value", "aria-live": "off", children: [
2241
- Gt(t, e.step),
2248
+ jt(t, e.step),
2242
2249
  e.unit ? ` ${e.unit}` : ""
2243
2250
  ] }),
2244
- /* @__PURE__ */ i(
2251
+ /* @__PURE__ */ l(
2245
2252
  "input",
2246
2253
  {
2247
2254
  id: `gloss-dtp-${e.key}`,
@@ -2255,21 +2262,21 @@ function Vt({ spec: e, value: t, onChange: n, onReset: a, flashing: r }) {
2255
2262
  onChange: (o) => n(Number(o.target.value))
2256
2263
  }
2257
2264
  ),
2258
- /* @__PURE__ */ i(
2265
+ /* @__PURE__ */ l(
2259
2266
  "button",
2260
2267
  {
2261
2268
  type: "button",
2262
2269
  className: "gloss-dev-tuning-panel__reset",
2263
2270
  "aria-label": `Reset ${e.label}`,
2264
2271
  onClick: a,
2265
- children: /* @__PURE__ */ i(Ht, {})
2272
+ children: /* @__PURE__ */ l(Ut, {})
2266
2273
  }
2267
2274
  )
2268
2275
  ]
2269
2276
  }
2270
2277
  );
2271
2278
  }
2272
- function jt() {
2279
+ function Yt() {
2273
2280
  if (typeof process < "u" && process.env && process.env.NODE_ENV === "production" || typeof window > "u") return !1;
2274
2281
  try {
2275
2282
  return new URLSearchParams(window.location.search).has("devtune");
@@ -2277,23 +2284,23 @@ function jt() {
2277
2284
  return !1;
2278
2285
  }
2279
2286
  }
2280
- function Ut(e = {}) {
2281
- return jt() ? /* @__PURE__ */ i(Zt, {}) : null;
2287
+ function qt(e = {}) {
2288
+ return Yt() ? /* @__PURE__ */ l(Qt, {}) : null;
2282
2289
  }
2283
- Ut.displayName = "DevTuningPanel";
2284
- function Zt() {
2285
- const e = Kt(), { values: t, setValue: n, resetRow: a, resetAll: r } = e, [s, o] = W(null), d = R(null), b = y((m) => {
2286
- d.current && clearTimeout(d.current), o(m), d.current = setTimeout(() => {
2287
- o(null), d.current = null;
2290
+ qt.displayName = "DevTuningPanel";
2291
+ function Qt() {
2292
+ const e = Ht(), { values: t, setValue: n, resetRow: a, resetAll: r } = e, [s, o] = G(null), c = T(null), f = y((u) => {
2293
+ c.current && clearTimeout(c.current), o(u), c.current = setTimeout(() => {
2294
+ o(null), c.current = null;
2288
2295
  }, 200);
2289
- }, []), u = y(
2290
- (m, c) => {
2291
- n(m, c), m === "snapInPx" && c > t.snapOutPx && (n("snapOutPx", c), b("snapOutPx"));
2296
+ }, []), d = y(
2297
+ (u, m) => {
2298
+ n(u, m), u === "snapInPx" && m > t.snapOutPx && (n("snapOutPx", m), f("snapOutPx"));
2292
2299
  },
2293
- [n, t.snapOutPx, b]
2294
- ), g = se(() => Wt, []), C = tt();
2300
+ [n, t.snapOutPx, f]
2301
+ ), g = ie(() => Vt, []), w = rt();
2295
2302
  return /* @__PURE__ */ O(
2296
- de.div,
2303
+ ue.div,
2297
2304
  {
2298
2305
  className: "gloss-dev-tuning-panel",
2299
2306
  role: "region",
@@ -2301,32 +2308,32 @@ function Zt() {
2301
2308
  "data-testid": "gloss-dev-tuning-panel",
2302
2309
  drag: !0,
2303
2310
  dragListener: !1,
2304
- dragControls: C,
2311
+ dragControls: w,
2305
2312
  dragMomentum: !1,
2306
2313
  children: [
2307
2314
  /* @__PURE__ */ O(
2308
2315
  "div",
2309
2316
  {
2310
2317
  className: "gloss-dev-tuning-panel__header",
2311
- onPointerDown: (m) => C.start(m),
2318
+ onPointerDown: (u) => w.start(u),
2312
2319
  children: [
2313
- /* @__PURE__ */ i("span", { className: "gloss-dev-tuning-panel__title", children: "Resize Tuning — dev only" }),
2314
- /* @__PURE__ */ i("span", { className: "gloss-dev-tuning-panel__hint", children: "?devtune=1" })
2320
+ /* @__PURE__ */ l("span", { className: "gloss-dev-tuning-panel__title", children: "Resize Tuning — dev only" }),
2321
+ /* @__PURE__ */ l("span", { className: "gloss-dev-tuning-panel__hint", children: "?devtune=1" })
2315
2322
  ]
2316
2323
  }
2317
2324
  ),
2318
- /* @__PURE__ */ i("div", { className: "gloss-dev-tuning-panel__body", children: g.map((m) => /* @__PURE__ */ i(
2319
- Vt,
2325
+ /* @__PURE__ */ l("div", { className: "gloss-dev-tuning-panel__body", children: g.map((u) => /* @__PURE__ */ l(
2326
+ Zt,
2320
2327
  {
2321
- spec: m,
2322
- value: t[m.key],
2323
- onChange: (c) => u(m.key, c),
2324
- onReset: () => a(m.key),
2325
- flashing: s === m.key
2328
+ spec: u,
2329
+ value: t[u.key],
2330
+ onChange: (m) => d(u.key, m),
2331
+ onReset: () => a(u.key),
2332
+ flashing: s === u.key
2326
2333
  },
2327
- m.key
2334
+ u.key
2328
2335
  )) }),
2329
- /* @__PURE__ */ i("div", { className: "gloss-dev-tuning-panel__footer", children: /* @__PURE__ */ i(
2336
+ /* @__PURE__ */ l("div", { className: "gloss-dev-tuning-panel__footer", children: /* @__PURE__ */ l(
2330
2337
  "button",
2331
2338
  {
2332
2339
  type: "button",
@@ -2339,7 +2346,7 @@ function Zt() {
2339
2346
  }
2340
2347
  );
2341
2348
  }
2342
- function Cn({
2349
+ function xn({
2343
2350
  state: e,
2344
2351
  originX: t,
2345
2352
  originY: n,
@@ -2347,35 +2354,35 @@ function Cn({
2347
2354
  rightEdgeX: r,
2348
2355
  minBoundaryX: s,
2349
2356
  snapBoundariesX: o,
2350
- topY: d,
2351
- bottomY: b,
2352
- enterMs: u = ee.envelopeEnterMs,
2353
- exitMs: g = ee.envelopeExitMs,
2354
- className: C,
2355
- style: m
2357
+ topY: c,
2358
+ bottomY: f,
2359
+ enterMs: d = ae.envelopeEnterMs,
2360
+ exitMs: g = ae.envelopeExitMs,
2361
+ className: w,
2362
+ style: u
2356
2363
  }) {
2357
2364
  if (e === "hidden") return null;
2358
- const c = Math.max(0, r - a), h = Math.max(0, b - d), x = {
2359
- "--gloss-resize-envelope-enter-ms": `${u}ms`,
2365
+ const m = Math.max(0, r - a), h = Math.max(0, f - c), k = {
2366
+ "--gloss-resize-envelope-enter-ms": `${d}ms`,
2360
2367
  "--gloss-resize-envelope-exit-ms": `${g}ms`,
2361
2368
  "--gloss-resize-envelope-origin-x": `${t - a}px`,
2362
- "--gloss-resize-envelope-origin-y": `${n - d}px`,
2369
+ "--gloss-resize-envelope-origin-y": `${n - c}px`,
2363
2370
  left: a,
2364
- top: d,
2365
- width: c,
2371
+ top: c,
2372
+ width: m,
2366
2373
  height: h,
2367
- ...m
2374
+ ...u
2368
2375
  };
2369
2376
  return /* @__PURE__ */ O(
2370
2377
  "div",
2371
2378
  {
2372
- className: ["gloss-resize-envelope", `gloss-resize-envelope--state-${e}`, C].filter(Boolean).join(" "),
2379
+ className: ["gloss-resize-envelope", `gloss-resize-envelope--state-${e}`, w].filter(Boolean).join(" "),
2373
2380
  "data-state": e,
2374
2381
  "data-testid": "gloss-resize-envelope",
2375
- style: x,
2382
+ style: k,
2376
2383
  "aria-hidden": "true",
2377
2384
  children: [
2378
- /* @__PURE__ */ i(
2385
+ /* @__PURE__ */ l(
2379
2386
  "div",
2380
2387
  {
2381
2388
  className: "gloss-resize-envelope__edge gloss-resize-envelope__edge--left",
@@ -2383,7 +2390,7 @@ function Cn({
2383
2390
  style: { left: 0 }
2384
2391
  }
2385
2392
  ),
2386
- /* @__PURE__ */ i(
2393
+ /* @__PURE__ */ l(
2387
2394
  "div",
2388
2395
  {
2389
2396
  className: "gloss-resize-envelope__edge gloss-resize-envelope__edge--min-boundary",
@@ -2391,28 +2398,28 @@ function Cn({
2391
2398
  style: { left: s - a }
2392
2399
  }
2393
2400
  ),
2394
- /* @__PURE__ */ i(
2401
+ /* @__PURE__ */ l(
2395
2402
  "div",
2396
2403
  {
2397
2404
  className: "gloss-resize-envelope__edge gloss-resize-envelope__edge--right",
2398
2405
  "data-edge": "right",
2399
- style: { left: c - 1 }
2406
+ style: { left: m - 1 }
2400
2407
  }
2401
2408
  ),
2402
- o.filter((f) => f > s && f < r).map((f) => /* @__PURE__ */ i(
2409
+ o.filter((p) => p > s && p < r).map((p) => /* @__PURE__ */ l(
2403
2410
  "div",
2404
2411
  {
2405
2412
  className: "gloss-resize-envelope__snap-line",
2406
2413
  "data-snap-line": !0,
2407
- style: { left: f - a }
2414
+ style: { left: p - a }
2408
2415
  },
2409
- f
2416
+ p
2410
2417
  ))
2411
2418
  ]
2412
2419
  }
2413
2420
  );
2414
2421
  }
2415
- function kn({
2422
+ function Sn({
2416
2423
  density: e,
2417
2424
  canAccept: t,
2418
2425
  blocked: n = !1,
@@ -2421,12 +2428,12 @@ function kn({
2421
2428
  children: s,
2422
2429
  ...o
2423
2430
  }) {
2424
- const d = a != null ? { ...o.style, "--_proximity-opacity": String(a) } : o.style;
2425
- return /* @__PURE__ */ i(
2431
+ const c = a != null ? { ...o.style, "--_proximity-opacity": String(a) } : o.style;
2432
+ return /* @__PURE__ */ l(
2426
2433
  "div",
2427
2434
  {
2428
2435
  ...o,
2429
- style: d,
2436
+ style: c,
2430
2437
  "data-density": e,
2431
2438
  "data-can-accept": t ? "true" : "false",
2432
2439
  "data-blocked": n ? "true" : void 0,
@@ -2441,18 +2448,18 @@ function kn({
2441
2448
  }
2442
2449
  );
2443
2450
  }
2444
- function Yt(e, t, n, a) {
2451
+ function Xt(e, t, n, a) {
2445
2452
  const r = (e + n) / 2, s = Math.min(t, a) - 40;
2446
2453
  return `M${e},${t} Q${r},${s} ${n},${a}`;
2447
2454
  }
2448
- function _n({
2455
+ function Mn({
2449
2456
  segments: e,
2450
- durationMs: t = ee.spilloverArcDurationMs,
2451
- staggerMs: n = ee.spilloverStaggerMs,
2457
+ durationMs: t = ae.spilloverArcDurationMs,
2458
+ staggerMs: n = ae.spilloverStaggerMs,
2452
2459
  className: a,
2453
2460
  style: r
2454
2461
  }) {
2455
- return e.length === 0 ? null : /* @__PURE__ */ i(
2462
+ return e.length === 0 ? null : /* @__PURE__ */ l(
2456
2463
  "svg",
2457
2464
  {
2458
2465
  className: ["gloss-spillover-arc", a].filter(Boolean).join(" "),
@@ -2460,12 +2467,12 @@ function _n({
2460
2467
  "aria-hidden": "true",
2461
2468
  overflow: "visible",
2462
2469
  style: { position: "absolute", inset: 0, pointerEvents: "none", ...r },
2463
- children: e.map((s, o) => /* @__PURE__ */ i(
2470
+ children: e.map((s, o) => /* @__PURE__ */ l(
2464
2471
  "path",
2465
2472
  {
2466
2473
  "data-arc-id": s.id,
2467
2474
  className: "gloss-spillover-arc__path",
2468
- d: Yt(s.fromX, s.fromY, s.toX, s.toY),
2475
+ d: Xt(s.fromX, s.fromY, s.toX, s.toY),
2469
2476
  style: {
2470
2477
  animationDelay: `${o * n}ms`,
2471
2478
  animationDuration: `${t}ms`
@@ -2476,27 +2483,27 @@ function _n({
2476
2483
  }
2477
2484
  );
2478
2485
  }
2479
- function xn({
2486
+ function Tn({
2480
2487
  state: e,
2481
2488
  staggerIndex: t = 0,
2482
- fadeInMs: n = ee.sectionDividerFadeInMs,
2483
- fadeOutMs: a = ee.sectionDividerFadeOutMs,
2484
- staggerMs: r = ee.sectionDividerStaggerMs,
2489
+ fadeInMs: n = ae.sectionDividerFadeInMs,
2490
+ fadeOutMs: a = ae.sectionDividerFadeOutMs,
2491
+ staggerMs: r = ae.sectionDividerStaggerMs,
2485
2492
  variant: s = "dashed",
2486
2493
  className: o,
2487
- style: d,
2488
- ...b
2494
+ style: c,
2495
+ ...f
2489
2496
  }) {
2490
- const u = {
2497
+ const d = {
2491
2498
  "--gloss-section-divider-fade-in-ms": `${n}ms`,
2492
2499
  "--gloss-section-divider-fade-out-ms": `${a}ms`,
2493
2500
  "--gloss-section-divider-stagger-delay": `${t * r}ms`,
2494
- ...d
2501
+ ...c
2495
2502
  };
2496
- return /* @__PURE__ */ i(
2503
+ return /* @__PURE__ */ l(
2497
2504
  "div",
2498
2505
  {
2499
- ...b,
2506
+ ...f,
2500
2507
  "data-state": e,
2501
2508
  "data-testid": "gloss-section-divider",
2502
2509
  "aria-hidden": "true",
@@ -2506,18 +2513,18 @@ function xn({
2506
2513
  s === "seam-bleed" ? "gloss-section-divider--variant-seam-bleed" : "",
2507
2514
  o
2508
2515
  ].filter(Boolean).join(" "),
2509
- style: u
2516
+ style: d
2510
2517
  }
2511
2518
  );
2512
2519
  }
2513
- function Sn({
2520
+ function Rn({
2514
2521
  enabled: e,
2515
2522
  onPack: t,
2516
2523
  ariaLabel: n = "Pack row (shift cards left)",
2517
2524
  className: a,
2518
2525
  style: r
2519
2526
  }) {
2520
- return /* @__PURE__ */ i(Fe, { visible: e, variant: "pack", trigger: "hover+focus", children: /* @__PURE__ */ i(
2527
+ return /* @__PURE__ */ l(Ae, { visible: e, variant: "pack", trigger: "hover+focus", children: /* @__PURE__ */ l(
2521
2528
  "button",
2522
2529
  {
2523
2530
  type: "button",
@@ -2525,12 +2532,14 @@ function Sn({
2525
2532
  "aria-label": n,
2526
2533
  className: ["gloss-empty-cell-pack-affordance", a].filter(Boolean).join(" "),
2527
2534
  style: r,
2528
- onClick: t,
2529
- children: /* @__PURE__ */ i("span", { "aria-hidden": "true", className: "gloss-empty-cell-pack-affordance__glyph", children: "×" })
2535
+ onClick: (s) => {
2536
+ s.stopPropagation(), t();
2537
+ },
2538
+ children: /* @__PURE__ */ l("span", { "aria-hidden": "true", className: "gloss-empty-cell-pack-affordance__glyph", children: "×" })
2530
2539
  }
2531
2540
  ) });
2532
2541
  }
2533
- function Mn({
2542
+ function In({
2534
2543
  tint: e,
2535
2544
  colSpan: t,
2536
2545
  colWidth: n,
@@ -2538,12 +2547,12 @@ function Mn({
2538
2547
  gap: r,
2539
2548
  x: s,
2540
2549
  y: o,
2541
- children: d,
2542
- className: b
2550
+ children: c,
2551
+ className: f
2543
2552
  }) {
2544
- const u = t * n + (t - 1) * r;
2545
- return /* @__PURE__ */ i(
2546
- de.div,
2553
+ const d = t * n + (t - 1) * r;
2554
+ return /* @__PURE__ */ l(
2555
+ ue.div,
2547
2556
  {
2548
2557
  "data-testid": "gloss-drag-ghost",
2549
2558
  "data-tint": e,
@@ -2551,14 +2560,14 @@ function Mn({
2551
2560
  className: [
2552
2561
  "gloss-drag-ghost",
2553
2562
  `gloss-drag-ghost--tint-${e}`,
2554
- b
2563
+ f
2555
2564
  ].filter(Boolean).join(" "),
2556
- style: { x: s, y: o, width: u, height: a },
2557
- children: d
2565
+ style: { x: s, y: o, width: d, height: a },
2566
+ children: c
2558
2567
  }
2559
2568
  );
2560
2569
  }
2561
- function Tn({
2570
+ function Pn({
2562
2571
  cell: e,
2563
2572
  colSpan: t,
2564
2573
  colWidth: n,
@@ -2567,29 +2576,29 @@ function Tn({
2567
2576
  transitionMs: s = 120,
2568
2577
  className: o
2569
2578
  }) {
2570
- const d = t * n + (t - 1) * a, b = e.col * (n + a), u = e.row * (r + a);
2571
- return /* @__PURE__ */ i(
2579
+ const c = t * n + (t - 1) * a, f = e.col * (n + a), d = e.row * (r + a);
2580
+ return /* @__PURE__ */ l(
2572
2581
  "div",
2573
2582
  {
2574
2583
  className: ["gloss-drag-feedback-snap-outline", o].filter(Boolean).join(" "),
2575
2584
  "data-testid": "gloss-snap-outline",
2576
2585
  "aria-hidden": "true",
2577
2586
  style: {
2578
- transform: `translate(${b}px, ${u}px)`,
2579
- width: d,
2587
+ transform: `translate(${f}px, ${d}px)`,
2588
+ width: c,
2580
2589
  height: r,
2581
2590
  transition: `transform ${s}ms cubic-bezier(0.4, 0, 0.2, 1)`
2582
2591
  }
2583
2592
  }
2584
2593
  );
2585
2594
  }
2586
- function Rn({
2595
+ function Fn({
2587
2596
  items: e,
2588
2597
  children: t,
2589
2598
  className: n
2590
2599
  }) {
2591
- return e.length === 0 ? null : /* @__PURE__ */ i(be, { children: e.map((a) => /* @__PURE__ */ i(
2592
- de.div,
2600
+ return e.length === 0 ? null : /* @__PURE__ */ l(ve, { children: e.map((a) => /* @__PURE__ */ l(
2601
+ ue.div,
2593
2602
  {
2594
2603
  "data-card-id": a.cardId,
2595
2604
  "data-testid": "gloss-cascade-preview-item",
@@ -2601,7 +2610,7 @@ function Rn({
2601
2610
  a.cardId
2602
2611
  )) });
2603
2612
  }
2604
- const X = {
2613
+ const ee = {
2605
2614
  "gloss-inline-nudge": "_gloss-inline-nudge_kdk88_34",
2606
2615
  "gloss-inline-nudge__message": "_gloss-inline-nudge__message_kdk88_65",
2607
2616
  "gloss-inline-nudge__actions": "_gloss-inline-nudge__actions_kdk88_72",
@@ -2609,57 +2618,57 @@ const X = {
2609
2618
  "gloss-inline-nudge__btn--action": "_gloss-inline-nudge__btn--action_kdk88_88",
2610
2619
  "gloss-inline-nudge__btn--dismiss": "_gloss-inline-nudge__btn--dismiss_kdk88_96"
2611
2620
  };
2612
- function qt({
2621
+ function Jt({
2613
2622
  message: e,
2614
2623
  primaryAction: t,
2615
2624
  onDismiss: n,
2616
2625
  anchorEl: a,
2617
2626
  anchorSelector: r
2618
2627
  }) {
2619
- const [s, o] = H.useState(null), d = H.useMemo(
2628
+ const [s, o] = W.useState(null), c = W.useMemo(
2620
2629
  () => typeof window < "u" && window.matchMedia ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : !1,
2621
2630
  []
2622
2631
  );
2623
- H.useEffect(() => {
2632
+ W.useEffect(() => {
2624
2633
  !a && !r && (typeof process > "u" || process.env.NODE_ENV !== "production") && console.error(
2625
2634
  "[InlineNudge] requires anchorEl or anchorSelector. AP-07: Do not mount InlineNudge in Layout/** or _app.tsx."
2626
2635
  );
2627
- }, [a, r]), H.useLayoutEffect(() => {
2628
- let u = null;
2629
- if (a ? u = a : r && (u = document.querySelector(r)), u) {
2630
- const g = u.getBoundingClientRect();
2636
+ }, [a, r]), W.useLayoutEffect(() => {
2637
+ let d = null;
2638
+ if (a ? d = a : r && (d = document.querySelector(r)), d) {
2639
+ const g = d.getBoundingClientRect();
2631
2640
  o({
2632
2641
  top: g.bottom + window.scrollY + 6,
2633
2642
  left: g.left + window.scrollX
2634
2643
  });
2635
2644
  }
2636
2645
  }, [a, r]);
2637
- const b = s ? { top: s.top, left: s.left } : {};
2646
+ const f = s ? { top: s.top, left: s.left } : {};
2638
2647
  return /* @__PURE__ */ O(
2639
2648
  "div",
2640
2649
  {
2641
- className: X["gloss-inline-nudge"],
2642
- style: b,
2650
+ className: ee["gloss-inline-nudge"],
2651
+ style: f,
2643
2652
  role: "status",
2644
2653
  "aria-live": "polite",
2645
- "data-reduced-motion": d ? "true" : void 0,
2654
+ "data-reduced-motion": c ? "true" : void 0,
2646
2655
  children: [
2647
- /* @__PURE__ */ i("span", { className: X["gloss-inline-nudge__message"], children: e }),
2648
- /* @__PURE__ */ O("div", { className: X["gloss-inline-nudge__actions"], children: [
2649
- /* @__PURE__ */ i(
2656
+ /* @__PURE__ */ l("span", { className: ee["gloss-inline-nudge__message"], children: e }),
2657
+ /* @__PURE__ */ O("div", { className: ee["gloss-inline-nudge__actions"], children: [
2658
+ /* @__PURE__ */ l(
2650
2659
  "button",
2651
2660
  {
2652
2661
  type: "button",
2653
- className: `${X["gloss-inline-nudge__btn"]} ${X["gloss-inline-nudge__btn--action"]}`,
2662
+ className: `${ee["gloss-inline-nudge__btn"]} ${ee["gloss-inline-nudge__btn--action"]}`,
2654
2663
  onClick: t.onClick,
2655
2664
  children: t.label
2656
2665
  }
2657
2666
  ),
2658
- /* @__PURE__ */ i(
2667
+ /* @__PURE__ */ l(
2659
2668
  "button",
2660
2669
  {
2661
2670
  type: "button",
2662
- className: `${X["gloss-inline-nudge__btn"]} ${X["gloss-inline-nudge__btn--dismiss"]}`,
2671
+ className: `${ee["gloss-inline-nudge__btn"]} ${ee["gloss-inline-nudge__btn--dismiss"]}`,
2663
2672
  onClick: n,
2664
2673
  "aria-label": "Dismiss",
2665
2674
  children: "Dismiss"
@@ -2670,25 +2679,25 @@ function qt({
2670
2679
  }
2671
2680
  );
2672
2681
  }
2673
- qt.displayName = "InlineNudge";
2674
- function De(e) {
2682
+ Jt.displayName = "InlineNudge";
2683
+ function Ne(e) {
2675
2684
  return e.colorToken ? `var(--gloss-color-${e.colorToken}, ${e.color ?? "#888"})` : e.color ?? "#888";
2676
2685
  }
2677
- function Qt(e, t, n) {
2686
+ function ea(e, t, n) {
2678
2687
  if (n <= t) {
2679
- const o = e[0], d = o ? De(o) : "#888";
2680
- return `linear-gradient(to right, ${d}, ${d})`;
2688
+ const o = e[0], c = o ? Ne(o) : "#888";
2689
+ return `linear-gradient(to right, ${c}, ${c})`;
2681
2690
  }
2682
- const a = n - t, s = [...e].sort((o, d) => o.value - d.value).map((o) => {
2683
- const d = (o.value - t) / a * 100;
2684
- return `${De(o)} ${d.toFixed(2)}%`;
2691
+ const a = n - t, s = [...e].sort((o, c) => o.value - c.value).map((o) => {
2692
+ const c = (o.value - t) / a * 100;
2693
+ return `${Ne(o)} ${c.toFixed(2)}%`;
2685
2694
  });
2686
2695
  return s.length === 0 ? "linear-gradient(to right, #888 0%, #888 100%)" : s.length === 1 ? `linear-gradient(to right, ${s[0]}, ${s[0]})` : `linear-gradient(to right, ${s.join(", ")})`;
2687
2696
  }
2688
- function Xt(e) {
2697
+ function ta(e) {
2689
2698
  return e.map((t) => `${t.id}:${t.value}`).join("|");
2690
2699
  }
2691
- function Jt({
2700
+ function aa({
2692
2701
  stops: e,
2693
2702
  onChange: t,
2694
2703
  min: n = 0,
@@ -2698,20 +2707,20 @@ function Jt({
2698
2707
  }) {
2699
2708
  const o = r === void 0 ? 0.01 : !Number.isFinite(r) || r <= 0 ? (process.env.NODE_ENV !== "production" && console.warn(
2700
2709
  `ThresholdRamp: step (${r}) must be a positive finite number; falling back to 0.01.`
2701
- ), 0.01) : r, d = y(
2702
- (l) => Math.round(l / o) * o,
2710
+ ), 0.01) : r, c = y(
2711
+ (i) => Math.round(i / o) * o,
2703
2712
  [o]
2704
- ), b = R(null), [u, g] = W(null), [C, m] = W(e), c = Xt(e), h = R(c);
2713
+ ), f = T(null), [d, g] = G(null), [w, u] = G(e), m = ta(e), h = T(m);
2705
2714
  L(() => {
2706
- h.current !== c && (h.current = c, !u && m(e));
2707
- }, [c, e, u]);
2708
- const x = se(() => Qt(C, n, a), [C, n, a]), f = y(
2709
- (l) => {
2710
- if (!b.current) return n;
2711
- const v = b.current.getBoundingClientRect(), p = v.width || 1, w = Math.max(0, Math.min(1, (l - v.left) / p)), k = n + w * (a - n);
2712
- return d(k);
2715
+ h.current !== m && (h.current = m, !d && u(e));
2716
+ }, [m, e, d]);
2717
+ const k = ie(() => ea(w, n, a), [w, n, a]), p = y(
2718
+ (i) => {
2719
+ if (!f.current) return n;
2720
+ const b = f.current.getBoundingClientRect(), D = b.width || 1, x = Math.max(0, Math.min(1, (i - b.left) / D)), v = n + x * (a - n);
2721
+ return c(v);
2713
2722
  },
2714
- [n, a, d]
2723
+ [n, a, c]
2715
2724
  );
2716
2725
  L(() => {
2717
2726
  a <= n && process.env.NODE_ENV !== "production" && console.warn(
@@ -2719,118 +2728,118 @@ function Jt({
2719
2728
  );
2720
2729
  }, [n, a]);
2721
2730
  const S = y(
2722
- (l, v) => {
2723
- const p = C.find((w) => w.id === v);
2724
- s || p?.disabled || (l.preventDefault(), g(v));
2731
+ (i, b) => {
2732
+ const D = w.find((x) => x.id === b);
2733
+ s || D?.disabled || (i.preventDefault(), g(b));
2725
2734
  },
2726
- [s, C]
2727
- ), I = R(C);
2728
- I.current = C;
2729
- const N = R(t);
2730
- N.current = t, L(() => {
2731
- if (!u) return;
2732
- const l = (p) => {
2733
- const w = f(p.clientX);
2734
- m(
2735
- (k) => k.map((M) => M.id === u ? { ...M, value: w } : M)
2735
+ [s, w]
2736
+ ), I = T(w);
2737
+ I.current = w;
2738
+ const C = T(t);
2739
+ C.current = t, L(() => {
2740
+ if (!d) return;
2741
+ const i = (D) => {
2742
+ const x = p(D.clientX);
2743
+ u(
2744
+ (v) => v.map((_) => _.id === d ? { ..._, value: x } : _)
2736
2745
  );
2737
- }, v = (p) => {
2738
- const w = f(p.clientX), k = I.current.map(
2739
- (M) => M.id === u ? { ...M, value: w } : M
2746
+ }, b = (D) => {
2747
+ const x = p(D.clientX), v = I.current.map(
2748
+ (_) => _.id === d ? { ..._, value: x } : _
2740
2749
  );
2741
- m(k), g(null), N.current(k);
2750
+ u(v), g(null), C.current(v);
2742
2751
  };
2743
- return window.addEventListener("pointermove", l), window.addEventListener("pointerup", v), window.addEventListener("pointercancel", v), () => {
2744
- window.removeEventListener("pointermove", l), window.removeEventListener("pointerup", v), window.removeEventListener("pointercancel", v);
2752
+ return window.addEventListener("pointermove", i), window.addEventListener("pointerup", b), window.addEventListener("pointercancel", b), () => {
2753
+ window.removeEventListener("pointermove", i), window.removeEventListener("pointerup", b), window.removeEventListener("pointercancel", b);
2745
2754
  };
2746
- }, [u, f]);
2747
- const _ = a - n > 0 ? a - n : 1, T = y(
2748
- (l, v) => {
2749
- if (s || v.disabled) return;
2750
- const p = a - n;
2751
- if (p <= 0) return;
2752
- const w = l.shiftKey ? p / 20 : p / 100;
2753
- let k = v.value;
2754
- switch (l.key) {
2755
+ }, [d, p]);
2756
+ const M = a - n > 0 ? a - n : 1, R = y(
2757
+ (i, b) => {
2758
+ if (s || b.disabled) return;
2759
+ const D = a - n;
2760
+ if (D <= 0) return;
2761
+ const x = i.shiftKey ? D / 20 : D / 100;
2762
+ let v = b.value;
2763
+ switch (i.key) {
2755
2764
  case "ArrowRight":
2756
2765
  case "ArrowUp":
2757
- k = v.value + w;
2766
+ v = b.value + x;
2758
2767
  break;
2759
2768
  case "ArrowLeft":
2760
2769
  case "ArrowDown":
2761
- k = v.value - w;
2770
+ v = b.value - x;
2762
2771
  break;
2763
2772
  case "Home":
2764
- k = n;
2773
+ v = n;
2765
2774
  break;
2766
2775
  case "End":
2767
- k = a;
2776
+ v = a;
2768
2777
  break;
2769
2778
  default:
2770
2779
  return;
2771
2780
  }
2772
- l.preventDefault();
2773
- const M = Math.max(n, Math.min(a, k)), E = d(M);
2774
- if (E === v.value) return;
2775
- const G = C.map(
2776
- (V) => V.id === v.id ? { ...V, value: E } : V
2781
+ i.preventDefault();
2782
+ const _ = Math.max(n, Math.min(a, v)), P = c(_);
2783
+ if (P === b.value) return;
2784
+ const H = w.map(
2785
+ (U) => U.id === b.id ? { ...U, value: P } : U
2777
2786
  );
2778
- m(G), t(G);
2787
+ u(H), t(H);
2779
2788
  },
2780
- [s, n, a, C, t, d]
2789
+ [s, n, a, w, t, c]
2781
2790
  );
2782
- return /* @__PURE__ */ i("div", { className: "gloss-threshold-ramp", "data-disabled": s || void 0, children: /* @__PURE__ */ i(
2791
+ return /* @__PURE__ */ l("div", { className: "gloss-threshold-ramp", "data-disabled": s || void 0, children: /* @__PURE__ */ l(
2783
2792
  "div",
2784
2793
  {
2785
- ref: b,
2794
+ ref: f,
2786
2795
  className: "gloss-threshold-ramp__track",
2787
- style: { background: x },
2788
- children: C.map((l) => {
2789
- const v = (l.value - n) / _ * 100;
2790
- return /* @__PURE__ */ i(
2796
+ style: { background: k },
2797
+ children: w.map((i) => {
2798
+ const b = (i.value - n) / M * 100;
2799
+ return /* @__PURE__ */ l(
2791
2800
  "span",
2792
2801
  {
2793
2802
  className: "gloss-threshold-ramp__stop",
2794
2803
  style: {
2795
- left: `${v}%`,
2796
- color: De(l)
2804
+ left: `${b}%`,
2805
+ color: Ne(i)
2797
2806
  },
2798
- "data-disabled": l.disabled || void 0,
2799
- "data-dragging": u === l.id || void 0,
2800
- onPointerDown: (p) => S(p, l.id),
2801
- onKeyDown: (p) => T(p, l),
2802
- "aria-label": l.label ?? `Stop at ${l.value}`,
2807
+ "data-disabled": i.disabled || void 0,
2808
+ "data-dragging": d === i.id || void 0,
2809
+ onPointerDown: (D) => S(D, i.id),
2810
+ onKeyDown: (D) => R(D, i),
2811
+ "aria-label": i.label ?? `Stop at ${i.value}`,
2803
2812
  role: "slider",
2804
- "aria-valuenow": l.value,
2813
+ "aria-valuenow": i.value,
2805
2814
  "aria-valuemin": n,
2806
2815
  "aria-valuemax": a,
2807
- "aria-disabled": l.disabled || s || void 0,
2808
- tabIndex: l.disabled || s ? -1 : 0
2816
+ "aria-disabled": i.disabled || s || void 0,
2817
+ tabIndex: i.disabled || s ? -1 : 0
2809
2818
  },
2810
- l.id
2819
+ i.id
2811
2820
  );
2812
2821
  })
2813
2822
  }
2814
2823
  ) });
2815
2824
  }
2816
- Jt.displayName = "ThresholdRamp";
2817
- const ze = Xe(null);
2818
- function ea() {
2819
- return Je(ze);
2825
+ aa.displayName = "ThresholdRamp";
2826
+ const We = tt(null);
2827
+ function na() {
2828
+ return at(We);
2820
2829
  }
2821
- function ta({ option: e }) {
2822
- const t = ea(), n = t?.isSelected(e.value) ?? !1, a = e.disabled || t?.groupDisabled, r = y(() => {
2830
+ function ra({ option: e }) {
2831
+ const t = na(), n = t?.isSelected(e.value) ?? !1, a = e.disabled || t?.groupDisabled, r = y(() => {
2823
2832
  a || t?.select(e.value);
2824
2833
  }, [a, t, e.value]), s = y(
2825
- (u) => {
2826
- a || t?.onKeyNav(u, e.value);
2834
+ (d) => {
2835
+ a || t?.onKeyNav(d, e.value);
2827
2836
  },
2828
2837
  [a, t, e.value]
2829
- ), o = e.colorToken ? `var(--gloss-color-${e.colorToken}, ${e.color ?? "#888"})` : e.color ?? "#888", d = t?.firstFocusableValue === e.value, b = a ? -1 : d ? 0 : -1;
2830
- return /* @__PURE__ */ i(
2838
+ ), o = e.colorToken ? `var(--gloss-color-${e.colorToken}, ${e.color ?? "#888"})` : e.color ?? "#888", c = t?.firstFocusableValue === e.value, f = a ? -1 : c ? 0 : -1;
2839
+ return /* @__PURE__ */ l(
2831
2840
  "button",
2832
2841
  {
2833
- ref: (u) => t?.registerRef(e.value, u),
2842
+ ref: (d) => t?.registerRef(e.value, d),
2834
2843
  type: "button",
2835
2844
  role: "radio",
2836
2845
  "aria-checked": n,
@@ -2842,13 +2851,13 @@ function ta({ option: e }) {
2842
2851
  "aria-label": e.label ?? e.value,
2843
2852
  "aria-disabled": a,
2844
2853
  disabled: a,
2845
- tabIndex: b,
2854
+ tabIndex: f,
2846
2855
  onClick: r,
2847
2856
  onKeyDown: s
2848
2857
  }
2849
2858
  );
2850
2859
  }
2851
- function aa({
2860
+ function sa({
2852
2861
  swatches: e,
2853
2862
  value: t,
2854
2863
  defaultValue: n,
@@ -2856,65 +2865,65 @@ function aa({
2856
2865
  disabled: r = !1,
2857
2866
  name: s
2858
2867
  }) {
2859
- const o = t !== void 0, [d, b] = W(n), u = o ? t : d, g = y(
2860
- (N) => {
2861
- o || b(N), a?.(N);
2868
+ const o = t !== void 0, [c, f] = G(n), d = o ? t : c, g = y(
2869
+ (C) => {
2870
+ o || f(C), a?.(C);
2862
2871
  },
2863
2872
  [o, a]
2864
- ), C = y(
2865
- (N) => u === N,
2866
- [u]
2867
- ), m = R(/* @__PURE__ */ new Map()), c = y((N, _) => {
2868
- _ ? m.current.set(N, _) : m.current.delete(N);
2869
- }, []), h = e.filter((N) => !N.disabled && !r), x = h.find((N) => N.value === u)?.value ?? h[0]?.value, f = y((N) => {
2870
- const _ = m.current.get(N);
2871
- _ && _.focus();
2873
+ ), w = y(
2874
+ (C) => d === C,
2875
+ [d]
2876
+ ), u = T(/* @__PURE__ */ new Map()), m = y((C, M) => {
2877
+ M ? u.current.set(C, M) : u.current.delete(C);
2878
+ }, []), h = e.filter((C) => !C.disabled && !r), k = h.find((C) => C.value === d)?.value ?? h[0]?.value, p = y((C) => {
2879
+ const M = u.current.get(C);
2880
+ M && M.focus();
2872
2881
  }, []), S = y(
2873
- (N, _) => {
2882
+ (C, M) => {
2874
2883
  if (r) return;
2875
- const T = e.filter((w) => !w.disabled);
2876
- if (T.length === 0) return;
2877
- const l = T.findIndex((w) => w.value === _);
2878
- if (l === -1) return;
2879
- let v = l;
2880
- switch (N.key) {
2884
+ const R = e.filter((x) => !x.disabled);
2885
+ if (R.length === 0) return;
2886
+ const i = R.findIndex((x) => x.value === M);
2887
+ if (i === -1) return;
2888
+ let b = i;
2889
+ switch (C.key) {
2881
2890
  case "ArrowRight":
2882
2891
  case "ArrowDown":
2883
- v = (l + 1) % T.length;
2892
+ b = (i + 1) % R.length;
2884
2893
  break;
2885
2894
  case "ArrowLeft":
2886
2895
  case "ArrowUp":
2887
- v = (l - 1 + T.length) % T.length;
2896
+ b = (i - 1 + R.length) % R.length;
2888
2897
  break;
2889
2898
  case "Home":
2890
- v = 0;
2899
+ b = 0;
2891
2900
  break;
2892
2901
  case "End":
2893
- v = T.length - 1;
2902
+ b = R.length - 1;
2894
2903
  break;
2895
2904
  case " ":
2896
2905
  case "Enter":
2897
- N.preventDefault(), g(_);
2906
+ C.preventDefault(), g(M);
2898
2907
  return;
2899
2908
  default:
2900
2909
  return;
2901
2910
  }
2902
- N.preventDefault();
2903
- const p = T[v].value;
2904
- f(p), g(p);
2911
+ C.preventDefault();
2912
+ const D = R[b].value;
2913
+ p(D), g(D);
2905
2914
  },
2906
- [r, e, g, f]
2915
+ [r, e, g, p]
2907
2916
  ), I = {
2908
- selectedValue: u,
2917
+ selectedValue: d,
2909
2918
  select: g,
2910
- isSelected: C,
2919
+ isSelected: w,
2911
2920
  groupDisabled: r,
2912
2921
  name: s,
2913
- registerRef: c,
2914
- firstFocusableValue: x,
2922
+ registerRef: m,
2923
+ firstFocusableValue: k,
2915
2924
  onKeyNav: S
2916
2925
  };
2917
- return /* @__PURE__ */ i(ze.Provider, { value: I, children: /* @__PURE__ */ i(
2926
+ return /* @__PURE__ */ l(We.Provider, { value: I, children: /* @__PURE__ */ l(
2918
2927
  "div",
2919
2928
  {
2920
2929
  className: "gloss-preset-swatch-row",
@@ -2922,125 +2931,125 @@ function aa({
2922
2931
  "aria-label": s,
2923
2932
  "aria-disabled": r,
2924
2933
  "data-disabled": r || void 0,
2925
- children: e.map((N) => /* @__PURE__ */ i(ta, { option: N }, N.value))
2934
+ children: e.map((C) => /* @__PURE__ */ l(ra, { option: C }, C.value))
2926
2935
  }
2927
2936
  ) });
2928
2937
  }
2929
- aa.displayName = "PresetSwatchRow";
2930
- function Ne(e, t) {
2938
+ sa.displayName = "PresetSwatchRow";
2939
+ function Ce(e, t) {
2931
2940
  for (const n of e)
2932
2941
  if (n.items.some((a) => a.id === t))
2933
2942
  return n.zoneKey;
2934
2943
  return null;
2935
2944
  }
2936
- function Pe(e, t) {
2945
+ function Oe(e, t) {
2937
2946
  const n = e.find((a) => a.zoneKey === t);
2938
- return n ? n.zoneKey : Ne(e, t);
2947
+ return n ? n.zoneKey : Ce(e, t);
2939
2948
  }
2940
- function na(e, t, n) {
2949
+ function oa(e, t, n) {
2941
2950
  const a = [...e], [r] = a.splice(t, 1);
2942
2951
  return a.splice(n, 0, r), a;
2943
2952
  }
2944
- function ra(e) {
2953
+ function ia(e) {
2945
2954
  return e.map((t) => `${t.zoneKey}:${t.items.map((n) => n.id).join(",")}`).join("|");
2946
2955
  }
2947
- function sa(e) {
2948
- const [t, n] = W(
2949
- () => e.zones.map((f) => f.maxItems !== void 0 && f.items.length > f.maxItems ? (process.env.NODE_ENV !== "production" && console.warn(
2950
- `useSortableZones: zone "${f.zoneKey}" exceeds maxItems (${f.items.length} > ${f.maxItems}); trimming to cap.`
2951
- ), { ...f, items: f.items.slice(0, f.maxItems) }) : f)
2952
- ), [a, r] = W(null), [s, o] = W(null), d = R(null), b = R(e.onZoneChange);
2953
- b.current = e.onZoneChange;
2954
- const u = se(
2955
- () => ra(e.zones),
2956
+ function la(e) {
2957
+ const [t, n] = G(
2958
+ () => e.zones.map((p) => p.maxItems !== void 0 && p.items.length > p.maxItems ? (process.env.NODE_ENV !== "production" && console.warn(
2959
+ `useSortableZones: zone "${p.zoneKey}" exceeds maxItems (${p.items.length} > ${p.maxItems}); trimming to cap.`
2960
+ ), { ...p, items: p.items.slice(0, p.maxItems) }) : p)
2961
+ ), [a, r] = G(null), [s, o] = G(null), c = T(null), f = T(e.onZoneChange);
2962
+ f.current = e.onZoneChange;
2963
+ const d = ie(
2964
+ () => ia(e.zones),
2956
2965
  [e.zones]
2957
- ), g = R(u);
2966
+ ), g = T(d);
2958
2967
  L(() => {
2959
- g.current !== u && (g.current = u, !a && n(
2960
- e.zones.map((f) => f.maxItems !== void 0 && f.items.length > f.maxItems ? (process.env.NODE_ENV !== "production" && console.warn(
2961
- `useSortableZones: zone "${f.zoneKey}" exceeds maxItems (${f.items.length} > ${f.maxItems}); trimming to cap.`
2962
- ), { ...f, items: f.items.slice(0, f.maxItems) }) : f)
2968
+ g.current !== d && (g.current = d, !a && n(
2969
+ e.zones.map((p) => p.maxItems !== void 0 && p.items.length > p.maxItems ? (process.env.NODE_ENV !== "production" && console.warn(
2970
+ `useSortableZones: zone "${p.zoneKey}" exceeds maxItems (${p.items.length} > ${p.maxItems}); trimming to cap.`
2971
+ ), { ...p, items: p.items.slice(0, p.maxItems) }) : p)
2963
2972
  ));
2964
- }, [u, e.zones, a]);
2965
- const C = y(
2966
- (f) => {
2967
- const S = f.active.id;
2968
- let I = null, N = null;
2969
- for (const _ of t) {
2970
- const T = _.items.find((l) => l.id === S);
2971
- if (T) {
2972
- I = T, N = _.zoneKey;
2973
+ }, [d, e.zones, a]);
2974
+ const w = y(
2975
+ (p) => {
2976
+ const S = p.active.id;
2977
+ let I = null, C = null;
2978
+ for (const M of t) {
2979
+ const R = M.items.find((i) => i.id === S);
2980
+ if (R) {
2981
+ I = R, C = M.zoneKey;
2973
2982
  break;
2974
2983
  }
2975
2984
  }
2976
- d.current = N, r(I), o(N);
2985
+ c.current = C, r(I), o(C);
2977
2986
  },
2978
2987
  [t]
2979
- ), m = y(
2980
- (f) => {
2981
- if (!f.over) {
2982
- o(d.current);
2988
+ ), u = y(
2989
+ (p) => {
2990
+ if (!p.over) {
2991
+ o(c.current);
2983
2992
  return;
2984
2993
  }
2985
- const S = Pe(t, f.over.id);
2994
+ const S = Oe(t, p.over.id);
2986
2995
  o(S);
2987
2996
  },
2988
2997
  [t]
2989
- ), c = y(
2990
- (f) => {
2991
- const { active: S, over: I } = f, N = () => {
2992
- d.current = null, r(null), o(null);
2998
+ ), m = y(
2999
+ (p) => {
3000
+ const { active: S, over: I } = p, C = () => {
3001
+ c.current = null, r(null), o(null);
2993
3002
  };
2994
3003
  if (!I) {
2995
- N();
3004
+ C();
2996
3005
  return;
2997
3006
  }
2998
- const _ = Ne(t, S.id), T = Pe(t, I.id);
2999
- if (!_ || !T) {
3000
- N();
3007
+ const M = Ce(t, S.id), R = Oe(t, I.id);
3008
+ if (!M || !R) {
3009
+ C();
3001
3010
  return;
3002
3011
  }
3003
- let l = t.map((v) => ({ ...v, items: [...v.items] }));
3004
- if (_ === T) {
3005
- const v = l.findIndex((E) => E.zoneKey === _), p = l[v], w = p.items.findIndex((E) => E.id === S.id), k = p.items.findIndex((E) => E.id === I.id), M = k >= 0 ? k : Math.max(0, p.items.length - 1);
3006
- l[v] = {
3007
- ...p,
3008
- items: na(p.items, w, M)
3012
+ let i = t.map((b) => ({ ...b, items: [...b.items] }));
3013
+ if (M === R) {
3014
+ const b = i.findIndex((P) => P.zoneKey === M), D = i[b], x = D.items.findIndex((P) => P.id === S.id), v = D.items.findIndex((P) => P.id === I.id), _ = v >= 0 ? v : Math.max(0, D.items.length - 1);
3015
+ i[b] = {
3016
+ ...D,
3017
+ items: oa(D.items, x, _)
3009
3018
  };
3010
3019
  } else {
3011
- const v = l.findIndex((K) => K.zoneKey === _), p = l.findIndex((K) => K.zoneKey === T), w = l[v], k = l[p], M = w.items.find((K) => K.id === S.id);
3012
- if (!M) {
3013
- N();
3020
+ const b = i.findIndex((A) => A.zoneKey === M), D = i.findIndex((A) => A.zoneKey === R), x = i[b], v = i[D], _ = x.items.find((A) => A.id === S.id);
3021
+ if (!_) {
3022
+ C();
3014
3023
  return;
3015
3024
  }
3016
- const E = w.items.filter((K) => K.id !== S.id), G = k.items.findIndex((K) => K.id === I.id), V = G >= 0 ? G : k.items.length;
3017
- let $ = E, A = [...k.items];
3018
- if (k.maxItems !== void 0 && A.length >= k.maxItems) {
3019
- const K = A[A.length - 1];
3020
- A = A.slice(0, k.maxItems - 1), $ = [...E, K];
3025
+ const P = x.items.filter((A) => A.id !== S.id), H = v.items.findIndex((A) => A.id === I.id), U = H >= 0 ? H : v.items.length;
3026
+ let j = P, K = [...v.items];
3027
+ if (v.maxItems !== void 0 && K.length >= v.maxItems) {
3028
+ const A = K[K.length - 1];
3029
+ K = K.slice(0, v.maxItems - 1), j = [...P, A];
3021
3030
  }
3022
- const j = Math.min(V, A.length), oe = [
3023
- ...A.slice(0, j),
3024
- M,
3025
- ...A.slice(j)
3031
+ const $ = Math.min(U, K.length), V = [
3032
+ ...K.slice(0, $),
3033
+ _,
3034
+ ...K.slice($)
3026
3035
  ];
3027
- l[v] = { ...w, items: $ }, l[p] = { ...k, items: oe };
3036
+ i[b] = { ...x, items: j }, i[D] = { ...v, items: V };
3028
3037
  }
3029
- n(l), b.current?.(l), N();
3038
+ n(i), f.current?.(i), C();
3030
3039
  },
3031
3040
  [t]
3032
3041
  ), h = y(
3033
- (f) => ({
3034
- id: f,
3035
- "data-zone-key": f
3042
+ (p) => ({
3043
+ id: p,
3044
+ "data-zone-key": p
3036
3045
  }),
3037
3046
  []
3038
- ), x = y(
3039
- (f) => {
3040
- const S = Ne(t, f.id) ?? "";
3047
+ ), k = y(
3048
+ (p) => {
3049
+ const S = Ce(t, p.id) ?? "";
3041
3050
  return {
3042
- id: f.id,
3043
- "data-item-id": f.id,
3051
+ id: p.id,
3052
+ "data-item-id": p.id,
3044
3053
  "data-zone-key": S
3045
3054
  };
3046
3055
  },
@@ -3051,14 +3060,14 @@ function sa(e) {
3051
3060
  activeZone: s,
3052
3061
  activeItem: a,
3053
3062
  getZoneProps: h,
3054
- getItemProps: x,
3055
- handleDragStart: C,
3056
- handleDragOver: m,
3057
- handleDragEnd: c
3063
+ getItemProps: k,
3064
+ handleDragStart: w,
3065
+ handleDragOver: u,
3066
+ handleDragEnd: m
3058
3067
  };
3059
3068
  }
3060
- let ne = null, ce = null, he = !1;
3061
- const oa = [
3069
+ let se = null, de = null, be = !1;
3070
+ const ca = [
3062
3071
  "DndContext",
3063
3072
  "DragOverlay",
3064
3073
  "useSensors",
@@ -3067,22 +3076,22 @@ const oa = [
3067
3076
  "PointerSensor",
3068
3077
  "KeyboardSensor",
3069
3078
  "closestCenter"
3070
- ], ia = [
3079
+ ], da = [
3071
3080
  "SortableContext",
3072
3081
  "useSortable",
3073
3082
  "verticalListSortingStrategy"
3074
3083
  ];
3075
- function la(e, t) {
3084
+ function ua(e, t) {
3076
3085
  const n = [], a = e ?? {};
3077
- for (const s of oa)
3086
+ for (const s of ca)
3078
3087
  a[s] === void 0 && n.push(`@dnd-kit/core:${s}`);
3079
3088
  const r = t ?? {};
3080
- for (const s of ia)
3089
+ for (const s of da)
3081
3090
  r[s] === void 0 && n.push(`@dnd-kit/sortable:${s}`);
3082
3091
  return n.length === 0 ? { ok: !0 } : { ok: !1, missing: n };
3083
3092
  }
3084
- function ca() {
3085
- return ne ? Promise.resolve(ne) : he ? Promise.resolve(null) : ce || (ce = (async () => {
3093
+ function ma() {
3094
+ return se ? Promise.resolve(se) : be ? Promise.resolve(null) : de || (de = (async () => {
3086
3095
  try {
3087
3096
  const [e, t, n] = await Promise.all([
3088
3097
  import("@dnd-kit/core"),
@@ -3090,112 +3099,112 @@ function ca() {
3090
3099
  import("@dnd-kit/utilities").catch(() => (process.env.NODE_ENV !== "production" && console.warn(
3091
3100
  "SortableZones: @dnd-kit/utilities failed to load; drag-overlay positioning will fall back (items may teleport instead of slide)."
3092
3101
  ), {}))
3093
- ]), a = la(e, t);
3094
- return a.ok ? (ne = {
3102
+ ]), a = ua(e, t);
3103
+ return a.ok ? (se = {
3095
3104
  core: e,
3096
3105
  sortable: t,
3097
3106
  utilities: n
3098
- }, ne) : (he = !0, process.env.NODE_ENV !== "production" && console.error(
3107
+ }, se) : (be = !0, process.env.NODE_ENV !== "production" && console.error(
3099
3108
  `SortableZones: @dnd-kit shape mismatch — missing exports: ${a.missing.join(", ")}. Check installed versions against optionalDependencies in @mt-gloss/ui.`
3100
3109
  ), null);
3101
3110
  } catch {
3102
- return he = !0, null;
3111
+ return be = !0, null;
3103
3112
  }
3104
- })(), ce);
3113
+ })(), de);
3105
3114
  }
3106
- function da(e) {
3107
- const { zones: t, onZoneChange: n, renderZone: a, renderItem: r, renderDragOverlay: s } = e, o = sa({ zones: t, onZoneChange: n }), [d, b] = H.useState(ne);
3108
- return H.useEffect(() => {
3109
- if (d) return;
3110
- let u = !0;
3111
- return ca().then((g) => {
3112
- u && b(g);
3115
+ function ga(e) {
3116
+ const { zones: t, onZoneChange: n, renderZone: a, renderItem: r, renderDragOverlay: s } = e, o = la({ zones: t, onZoneChange: n }), [c, f] = W.useState(se);
3117
+ return W.useEffect(() => {
3118
+ if (c) return;
3119
+ let d = !0;
3120
+ return ma().then((g) => {
3121
+ d && f(g);
3113
3122
  }), () => {
3114
- u = !1;
3123
+ d = !1;
3115
3124
  };
3116
- }, [d]), d ? /* @__PURE__ */ i(
3117
- Ke,
3125
+ }, [c]), c ? /* @__PURE__ */ l(
3126
+ He,
3118
3127
  {
3119
3128
  state: o,
3120
- modules: d,
3129
+ modules: c,
3121
3130
  renderZone: a,
3122
3131
  renderItem: r,
3123
3132
  renderDragOverlay: s
3124
3133
  }
3125
- ) : /* @__PURE__ */ i("div", { "data-sortable-zones-passive": "true", children: o.zones.map((u) => {
3126
- const g = u.items.map((C) => /* @__PURE__ */ i(H.Fragment, { children: r(C) }, C.id));
3127
- return /* @__PURE__ */ i("div", { ...o.getZoneProps(u.zoneKey), children: a(u.zoneKey, u.items, g) }, u.zoneKey);
3134
+ ) : /* @__PURE__ */ l("div", { "data-sortable-zones-passive": "true", children: o.zones.map((d) => {
3135
+ const g = d.items.map((w) => /* @__PURE__ */ l(W.Fragment, { children: r(w) }, w.id));
3136
+ return /* @__PURE__ */ l("div", { ...o.getZoneProps(d.zoneKey), children: a(d.zoneKey, d.items, g) }, d.zoneKey);
3128
3137
  }) });
3129
3138
  }
3130
- da.displayName = "SortableZones";
3131
- function Ke({
3139
+ ga.displayName = "SortableZones";
3140
+ function He({
3132
3141
  state: e,
3133
3142
  modules: t,
3134
3143
  renderZone: n,
3135
3144
  renderItem: a,
3136
3145
  renderDragOverlay: r
3137
3146
  }) {
3138
- const { core: s, sortable: o, utilities: d } = t, { DndContext: b, DragOverlay: u, useSensors: g, useSensor: C, useDroppable: m, PointerSensor: c, KeyboardSensor: h, closestCenter: x } = s, { SortableContext: f, verticalListSortingStrategy: S } = o, I = g(
3139
- C(c, { activationConstraint: { distance: 5 } }),
3140
- C(h)
3141
- ), N = b, _ = u, T = f;
3147
+ const { core: s, sortable: o, utilities: c } = t, { DndContext: f, DragOverlay: d, useSensors: g, useSensor: w, useDroppable: u, PointerSensor: m, KeyboardSensor: h, closestCenter: k } = s, { SortableContext: p, verticalListSortingStrategy: S } = o, I = g(
3148
+ w(m, { activationConstraint: { distance: 5 } }),
3149
+ w(h)
3150
+ ), C = f, M = d, R = p;
3142
3151
  return /* @__PURE__ */ O(
3143
- N,
3152
+ C,
3144
3153
  {
3145
3154
  sensors: I,
3146
- collisionDetection: x,
3155
+ collisionDetection: k,
3147
3156
  onDragStart: e.handleDragStart,
3148
3157
  onDragOver: e.handleDragOver,
3149
3158
  onDragEnd: e.handleDragEnd,
3150
3159
  children: [
3151
- e.zones.map((l) => {
3152
- const v = l.items.map((w) => w.id), p = l.items.map((w) => /* @__PURE__ */ i(
3153
- We,
3160
+ e.zones.map((i) => {
3161
+ const b = i.items.map((x) => x.id), D = i.items.map((x) => /* @__PURE__ */ l(
3162
+ Ve,
3154
3163
  {
3155
- id: w.id,
3164
+ id: x.id,
3156
3165
  useSortable: o.useSortable,
3157
- cssHelper: d.CSS,
3158
- children: a(w)
3166
+ cssHelper: c.CSS,
3167
+ children: a(x)
3159
3168
  },
3160
- w.id
3169
+ x.id
3161
3170
  ));
3162
- return /* @__PURE__ */ i(
3163
- Ge,
3171
+ return /* @__PURE__ */ l(
3172
+ je,
3164
3173
  {
3165
- zoneKey: l.zoneKey,
3166
- zoneProps: e.getZoneProps(l.zoneKey),
3167
- useDroppable: m,
3168
- children: /* @__PURE__ */ i(T, { items: v, strategy: S, children: n(l.zoneKey, l.items, p) })
3174
+ zoneKey: i.zoneKey,
3175
+ zoneProps: e.getZoneProps(i.zoneKey),
3176
+ useDroppable: u,
3177
+ children: /* @__PURE__ */ l(R, { items: b, strategy: S, children: n(i.zoneKey, i.items, D) })
3169
3178
  },
3170
- l.zoneKey
3179
+ i.zoneKey
3171
3180
  );
3172
3181
  }),
3173
- /* @__PURE__ */ i(_, { children: e.activeItem ? r?.(e.activeItem) ?? a(e.activeItem) : null })
3182
+ /* @__PURE__ */ l(M, { children: e.activeItem ? r?.(e.activeItem) ?? a(e.activeItem) : null })
3174
3183
  ]
3175
3184
  }
3176
3185
  );
3177
3186
  }
3178
- Ke.displayName = "SortableZonesInner";
3179
- function We({ id: e, useSortable: t, cssHelper: n, children: a }) {
3180
- const { attributes: r, listeners: s, setNodeRef: o, transform: d, transition: b, isDragging: u } = t({ id: e }), g = {
3181
- transform: n?.Transform?.toString(d) ?? void 0,
3182
- transition: b,
3183
- opacity: u ? 0.5 : 1
3187
+ He.displayName = "SortableZonesInner";
3188
+ function Ve({ id: e, useSortable: t, cssHelper: n, children: a }) {
3189
+ const { attributes: r, listeners: s, setNodeRef: o, transform: c, transition: f, isDragging: d } = t({ id: e }), g = {
3190
+ transform: n?.Transform?.toString(c) ?? void 0,
3191
+ transition: f,
3192
+ opacity: d ? 0.5 : 1
3184
3193
  };
3185
- return /* @__PURE__ */ i("div", { ref: o, style: g, "data-sortable-item-id": e, ...r, ...s, children: a });
3194
+ return /* @__PURE__ */ l("div", { ref: o, style: g, "data-sortable-item-id": e, ...r, ...s, children: a });
3186
3195
  }
3187
- We.displayName = "SortableItem";
3188
- function Ge({
3196
+ Ve.displayName = "SortableItem";
3197
+ function je({
3189
3198
  zoneKey: e,
3190
3199
  zoneProps: t,
3191
3200
  useDroppable: n,
3192
3201
  children: a
3193
3202
  }) {
3194
3203
  const { setNodeRef: r, isOver: s } = n({ id: e });
3195
- return /* @__PURE__ */ i("div", { ref: r, "data-zone-is-over": s || void 0, ...t, children: a });
3204
+ return /* @__PURE__ */ l("div", { ref: r, "data-zone-is-over": s || void 0, ...t, children: a });
3196
3205
  }
3197
- Ge.displayName = "ZoneDroppable";
3198
- function In({
3206
+ je.displayName = "ZoneDroppable";
3207
+ function En({
3199
3208
  slotLeft: e,
3200
3209
  slotCenter: t,
3201
3210
  slotRight: n,
@@ -3204,7 +3213,7 @@ function In({
3204
3213
  style: s,
3205
3214
  "aria-label": o = "Dashboard navigation"
3206
3215
  }) {
3207
- const d = {
3216
+ const c = {
3208
3217
  "--gloss-bottom-toolbar-height": `${a}px`,
3209
3218
  ...s
3210
3219
  };
@@ -3215,9 +3224,9 @@ function In({
3215
3224
  "aria-label": o,
3216
3225
  "data-testid": "gloss-bottom-toolbar",
3217
3226
  className: ["gloss-bottom-toolbar", r].filter(Boolean).join(" "),
3218
- style: d,
3227
+ style: c,
3219
3228
  children: [
3220
- /* @__PURE__ */ i(
3229
+ /* @__PURE__ */ l(
3221
3230
  "div",
3222
3231
  {
3223
3232
  className: "gloss-bottom-toolbar__slot gloss-bottom-toolbar__slot--left",
@@ -3225,7 +3234,7 @@ function In({
3225
3234
  children: e
3226
3235
  }
3227
3236
  ),
3228
- /* @__PURE__ */ i(
3237
+ /* @__PURE__ */ l(
3229
3238
  "div",
3230
3239
  {
3231
3240
  className: "gloss-bottom-toolbar__slot gloss-bottom-toolbar__slot--center",
@@ -3233,7 +3242,7 @@ function In({
3233
3242
  children: t
3234
3243
  }
3235
3244
  ),
3236
- /* @__PURE__ */ i(
3245
+ /* @__PURE__ */ l(
3237
3246
  "div",
3238
3247
  {
3239
3248
  className: "gloss-bottom-toolbar__slot gloss-bottom-toolbar__slot--right",
@@ -3245,7 +3254,7 @@ function In({
3245
3254
  }
3246
3255
  );
3247
3256
  }
3248
- function Pn({
3257
+ function On({
3249
3258
  count: e,
3250
3259
  currentIndex: t,
3251
3260
  onSelect: n,
@@ -3254,32 +3263,32 @@ function Pn({
3254
3263
  pulseIndex: s,
3255
3264
  pulseNonce: o
3256
3265
  }) {
3257
- const d = qe.useRef([]);
3258
- return d.current.length = e, /* @__PURE__ */ i(
3266
+ const c = Je.useRef([]);
3267
+ return c.current.length = e, /* @__PURE__ */ l(
3259
3268
  "div",
3260
3269
  {
3261
3270
  role: "tablist",
3262
3271
  "aria-label": a,
3263
3272
  "data-testid": "gloss-section-dots",
3264
3273
  className: "gloss-section-dots",
3265
- onKeyDown: (u) => {
3274
+ onKeyDown: (d) => {
3266
3275
  if (e !== 0) {
3267
- if (u.key === "ArrowRight") {
3268
- u.preventDefault();
3276
+ if (d.key === "ArrowRight") {
3277
+ d.preventDefault();
3269
3278
  const g = (t + 1) % e;
3270
- n(g), requestAnimationFrame(() => d.current[g]?.focus());
3271
- } else if (u.key === "ArrowLeft") {
3272
- u.preventDefault();
3279
+ n(g), requestAnimationFrame(() => c.current[g]?.focus());
3280
+ } else if (d.key === "ArrowLeft") {
3281
+ d.preventDefault();
3273
3282
  const g = (t - 1 + e) % e;
3274
- n(g), requestAnimationFrame(() => d.current[g]?.focus());
3283
+ n(g), requestAnimationFrame(() => c.current[g]?.focus());
3275
3284
  }
3276
3285
  }
3277
3286
  },
3278
- children: Array.from({ length: e }, (u, g) => /* @__PURE__ */ i(
3287
+ children: Array.from({ length: e }, (d, g) => /* @__PURE__ */ l(
3279
3288
  "button",
3280
3289
  {
3281
- ref: (C) => {
3282
- d.current[g] = C;
3290
+ ref: (w) => {
3291
+ c.current[g] = w;
3283
3292
  },
3284
3293
  type: "button",
3285
3294
  role: "tab",
@@ -3298,324 +3307,324 @@ function Pn({
3298
3307
  }
3299
3308
  );
3300
3309
  }
3301
- const ua = H.forwardRef(({ density: e = "compact", children: t, ...n }, a) => {
3310
+ const pa = W.forwardRef(({ density: e = "compact", children: t, ...n }, a) => {
3302
3311
  const r = { ...n };
3303
- return delete r.className, delete r.style, /* @__PURE__ */ i("div", { ref: a, className: "gloss-container-toolbar", role: "toolbar", ...r, children: /* @__PURE__ */ i(Ce, { region: "toolbar", density: e, children: t }) });
3312
+ return delete r.className, delete r.style, /* @__PURE__ */ l("div", { ref: a, className: "gloss-container-toolbar", role: "toolbar", ...r, children: /* @__PURE__ */ l(ke, { region: "toolbar", density: e, children: t }) });
3304
3313
  });
3305
- ua.displayName = "ContainerToolbar";
3306
- const ma = H.forwardRef(({ legend: e, description: t, density: n = "default", children: a, ...r }, s) => {
3314
+ pa.displayName = "ContainerToolbar";
3315
+ const fa = W.forwardRef(({ legend: e, description: t, density: n = "default", children: a, ...r }, s) => {
3307
3316
  const o = { ...r };
3308
3317
  return delete o.className, delete o.style, /* @__PURE__ */ O("fieldset", { ref: s, className: "gloss-container-form-section", ...o, children: [
3309
- e && /* @__PURE__ */ i("legend", { className: "gloss-container-form-section__legend", children: e }),
3310
- t && /* @__PURE__ */ i("p", { className: "gloss-container-form-section__description", children: t }),
3311
- /* @__PURE__ */ i(Ce, { region: "form-section", density: n, children: a })
3318
+ e && /* @__PURE__ */ l("legend", { className: "gloss-container-form-section__legend", children: e }),
3319
+ t && /* @__PURE__ */ l("p", { className: "gloss-container-form-section__description", children: t }),
3320
+ /* @__PURE__ */ l(ke, { region: "form-section", density: n, children: a })
3312
3321
  ] });
3313
3322
  });
3314
- ma.displayName = "ContainerFormSection";
3315
- const ga = H.forwardRef(({ density: e = "compact", children: t, ...n }, a) => {
3323
+ fa.displayName = "ContainerFormSection";
3324
+ const ha = W.forwardRef(({ density: e = "compact", children: t, ...n }, a) => {
3316
3325
  const r = { ...n };
3317
- return delete r.className, delete r.style, /* @__PURE__ */ i("div", { ref: a, className: "gloss-container-table", ...r, children: /* @__PURE__ */ i(Ce, { region: "table", density: e, children: t }) });
3326
+ return delete r.className, delete r.style, /* @__PURE__ */ l("div", { ref: a, className: "gloss-container-table", ...r, children: /* @__PURE__ */ l(ke, { region: "table", density: e, children: t }) });
3318
3327
  });
3319
- ga.displayName = "ContainerTable";
3328
+ ha.displayName = "ContainerTable";
3320
3329
  export {
3321
- On as Accordion,
3322
- An as AccordionContent,
3323
- Ln as AccordionItem,
3324
- $n as AccordionTrigger,
3325
- Bn as ActionStrip,
3326
- zn as Actionable,
3327
- Kn as AddressGroup,
3328
- Wn as AddressSelect,
3329
- Gn as AsyncLoader,
3330
- Hn as Autocomplete,
3331
- Vn as Badge,
3332
- jn as BarChartCard,
3333
- Un as BarsBg,
3334
- In as BottomToolbar,
3335
- Zn as Button,
3336
- Yn as ButtonGroup,
3337
- qn as ButtonGroupContext,
3338
- Qn as Card,
3339
- Xn as CardActions,
3340
- Jn as CardBack,
3341
- er as CardBody,
3342
- tr as CardFooter,
3343
- ar as CardHeader,
3344
- nr as CardMedia,
3345
- rr as CardShell,
3346
- sr as CardSubtitle,
3347
- or as CardTitle,
3348
- Rn as CascadePreview,
3349
- ir as ChartControlBar,
3350
- lr as Checkbox,
3351
- cr as CheckboxGroup,
3352
- dr as Chip,
3353
- ur as ColorPicker,
3354
- mr as ComparisonCard,
3355
- gr as ContactForm,
3356
- pr as ContainerCard,
3357
- fr as ContainerCardActions,
3358
- hr as ContainerCardBody,
3359
- br as ContainerCardFooter,
3360
- vr as ContainerCardHeader,
3361
- yr as ContainerCardMedia,
3362
- wr as ContainerCardSubtitle,
3363
- Dr as ContainerCardTitle,
3364
- Nr as ContainerDialog,
3365
- Cr as ContainerDialogActions,
3366
- kr as ContainerDialogBody,
3367
- _r as ContainerDialogHeader,
3368
- ma as ContainerFormSection,
3369
- xr as ContainerPanel,
3370
- ga as ContainerTable,
3371
- ua as ContainerToolbar,
3372
- Sr as CreditCardForm,
3373
- Mr as DEFAULT_FOOTER_IDS,
3374
- ee as DEFAULT_GRID_INTERACTION_PHYSICS,
3375
- ai as DEFAULT_MARKET_PRESETS,
3376
- Tr as DEFAULT_OVERFLOW_IDS,
3377
- ni as DEFAULT_PINNED,
3378
- Ee as DEFAULT_RESIZE_PHYSICS,
3379
- Rr as DataTable,
3380
- Ir as DatePicker,
3381
- Pr as DateRangePicker,
3382
- Fr as DestructiveModal,
3383
- Ut as DevTuningPanel,
3384
- Er as DirectionCard,
3385
- Or as Dismissible,
3386
- Ar as DistributionCard,
3387
- Lr as DonutChart,
3388
- Mn as DragGhost,
3389
- kn as DropAnchorCell,
3390
- $r as Dropdown,
3391
- Br as ENTITY_FILTER_KEYS,
3392
- zr as ENTITY_PROFILE_ROUTES,
3393
- Kr as ENTITY_TYPE_PLURAL,
3394
- bt as EdgeHoverHandle,
3395
- Sn as EmptyCellPackAffordance,
3396
- Wr as EntityPicker,
3397
- Gr as EntitySearchPanel,
3398
- Hr as Expandable,
3399
- Vr as ExpandableChip,
3400
- jr as FLIP_AND_STAGE_TIMINGS,
3401
- Ur as FileUpload,
3402
- Zr as FilterChip,
3403
- Yr as FilterInput,
3404
- qr as FlipAndStageProvider,
3405
- Qr as Form,
3406
- Xr as FormDialog,
3407
- Jr as FormField,
3408
- es as FusedShape,
3409
- vt as GhostPreview,
3410
- ts as GroupCheckbox,
3411
- as as GroupRadio,
3412
- Ka as HARD_CLIP,
3413
- ns as HighlightCard,
3414
- rs as HybridDatePicker,
3415
- ss as ImportWizard,
3416
- qt as InlineNudge,
3417
- os as Input,
3418
- is as InputAddon,
3419
- ls as InputGroup,
3420
- cs as Link,
3421
- ds as LoginForm,
3422
- us as MarketPresetRow,
3423
- ms as MaskPresets,
3424
- gs as MaskedInput,
3425
- ps as Menu,
3426
- fs as MenuDivider,
3427
- hs as MenuGroup,
3428
- bs as MenuItem,
3429
- vs as MergePrompt,
3430
- ys as MetricCard,
3431
- ws as MetricCardGrid,
3432
- $t as MetricGroupContainer,
3433
- Ds as MiniCalendar,
3434
- Ns as MultiSelect,
3435
- Cs as NumberInput,
3436
- ks as ObjectArrow,
3437
- _s as OrderFilterBar,
3438
- ri as PERIOD_OPTIONS,
3439
- xt as PageChip,
3440
- Oe as PageDropdown,
3441
- xs as PasswordInput,
3442
- Ss as PaymentForm,
3443
- Ms as PaymentMethodSelect,
3444
- Ts as PhoneInput,
3445
- Rs as PinToMetric,
3446
- aa as PresetSwatchRow,
3447
- Is as ProfileCard,
3448
- Ps as ProgressCard,
3449
- Fs as QuickConfigPanel,
3450
- Ft as RECONFIG_BACKSIDE_LABELS,
3451
- si as ROLLING_OPTIONS,
3452
- Es as Radio,
3453
- Os as RadioGroup,
3454
- As as RangeSlider,
3455
- Ls as Rating,
3456
- At as ReconfigBacksideButtons,
3457
- $s as RegistrationForm,
3458
- Cn as ResizeEnvelope,
3459
- Bs as Row1Controls,
3460
- zs as Row2FilterTray,
3461
- Ks as SearchInput,
3462
- xn as SectionDivider,
3463
- Pn as SectionDots,
3464
- Ws as SegmentCard,
3465
- Gs as SegmentedControl,
3466
- Hs as Select,
3467
- Vs as Selectable,
3468
- js as SimpleMetricCard,
3469
- Us as SimpleSelector,
3470
- Zs as Skeleton,
3471
- Ys as SkeletonCard,
3472
- qs as SkeletonChart,
3473
- Qs as SkeletonTable,
3474
- Xs as Slider,
3475
- Tn as SnapOutline,
3476
- Js as Sortable,
3477
- da as SortableZones,
3478
- eo as SparklineBg,
3479
- _n as SpilloverArc,
3480
- to as SplitButton,
3481
- ao as StackedGroupCard,
3482
- no as StatusModeCard,
3483
- ht as StatusSlotChipMenu,
3484
- ro as Stepper,
3485
- Fe as SwingReveal,
3486
- oi as TODAY_PRESET,
3487
- J as TUNING_DEFAULTS,
3488
- Be as TUNING_STORAGE_KEY,
3489
- so as TabGroup,
3490
- oo as TabbedDataView,
3491
- io as TagInput,
3492
- lo as Textarea,
3493
- Jt as ThresholdRamp,
3494
- co as TimeFrame,
3495
- uo as TimePicker,
3496
- mo as Toggle,
3497
- go as Tooltip,
3498
- po as Transition,
3499
- fo as TransitionGroup,
3500
- ho as TrendCard,
3501
- bo as TrendIndicator,
3502
- Jo as UIContext,
3503
- Ce as UIContextProvider,
3504
- vo as UnifiedBreakdownTable,
3505
- yo as UnifiedContextMenu,
3506
- yt as VelocityBuffer,
3507
- wo as addressGroupMetadata,
3508
- Do as addressSchema,
3509
- Sa as allChips,
3510
- Ua as allStateFixtures,
3511
- ja as allVariantFixtures,
3512
- Ia as blockSamples,
3513
- No as buildDefaultOverflow,
3514
- Aa as cardSamples,
3515
- La as cascadePhysics,
3516
- Ea as chartSamples,
3517
- Fa as circleSamples,
3518
- Wa as colorTokens,
3519
- hn as compactLayout,
3520
- rn as compactState,
3521
- Va as computeGutterAnchorX,
3522
- Co as contactFormMetadata,
3523
- ko as contactSchema,
3524
- sn as contextMenuFixtures,
3525
- _o as creditCardFormMetadata,
3526
- xo as creditCardSchema,
3527
- mt as dateChip,
3528
- $e as defaultControlBarState,
3529
- So as destructiveModalMetadata,
3530
- Mo as durations,
3531
- To as easings,
3532
- Nt as emptyFixture,
3533
- dt as entityChip,
3534
- Rt as entityNameActions,
3535
- Ta as entityTabGroup,
3536
- Dt as errorFixture,
3537
- nn as filteredState,
3538
- ii as findPreset,
3539
- li as formatDateRange,
3540
- ci as formatMarketDates,
3541
- di as formatTrend,
3542
- ui as formatValue,
3543
- vn as fullLayout,
3544
- mi as generateMarketId,
3545
- Ro as generateTabId,
3546
- gi as getAllPresets,
3547
- pi as getDateRangeForPreset,
3548
- Io as getMenuActions,
3549
- Ga as getMotionMode,
3550
- fi as getPresetLabel,
3551
- Po as getTransitionStyle,
3552
- fn as gridCards,
3553
- Fo as interpolate,
3554
- hi as isInRange,
3555
- bi as isMarketActive,
3556
- vi as isSameDay,
3557
- an as itemColumns,
3558
- en as itemRows,
3559
- wt as loadingFixture,
3560
- Eo as loginFormMetadata,
3561
- Oo as loginSchema,
3562
- gt as manufacturerChip,
3563
- Nn as manyTabs,
3564
- Ao as mergeHandlers,
3565
- Lo as mergeRefs,
3566
- Ma as metricTabGroup,
3567
- wn as mixedTabs,
3568
- yi as normalizePresetId,
3569
- Pt as numericActions,
3570
- tn as orderColumns,
3571
- It as orderIdActions,
3572
- Ja as orderRows,
3573
- yn as ordersTabs,
3574
- $o as parseNumericValue,
3575
- Bo as paymentFormMetadata,
3576
- zo as paymentSchema,
3577
- Ko as presets,
3578
- Ba as provisional,
3579
- za as reducedMotion,
3580
- Wo as registrationFormMetadata,
3581
- Go as registrationSchema,
3582
- $a as rejectionFeedback,
3583
- ln as sampleCompareRanges,
3584
- un as sampleCustomMarkets,
3585
- on as sampleDateRange,
3586
- mn as sampleMarketPresetData,
3587
- dn as sampleMarkets,
3588
- pn as samplePeriodPresets,
3589
- cn as samplePreferences,
3590
- gn as samplePresets,
3591
- Dn as singleTab,
3592
- Za as sparklineFixture,
3593
- Ya as sparklineUpFixture,
3594
- _t as staleDonutFixture,
3595
- Ct as staleFixture,
3596
- kt as staleSparklineFixture,
3597
- qa as standardFixture,
3598
- Xa as standardFlatFixture,
3599
- bn as standardLayout,
3600
- Qa as standardNegativeFixture,
3601
- ut as statusChip,
3602
- ae as swingReveal,
3603
- Oa as tableSamples,
3604
- Pa as textSamples,
3605
- Ra as timeFrameTabGroup,
3606
- wi as toUppercasePresetId,
3607
- xa as useArrowNavigation,
3608
- Ho as useCheckboxGroupContext,
3609
- Ha as useEdgeHoverResize,
3610
- Vo as useFilterLayout,
3611
- jo as useFlipAndStage,
3612
- Uo as useFlipAndStageContext,
3613
- Zo as useFlipAndStageContextOptional,
3614
- _a as useFocusReturn,
3615
- Yo as useFocusTrap,
3616
- qo as useFormContext,
3617
- Qo as useRadioGroupContext,
3618
- Kt as useResizeTuning,
3619
- sa as useSortableZones,
3620
- ei as useUIContext
3330
+ $n as Accordion,
3331
+ Bn as AccordionContent,
3332
+ zn as AccordionItem,
3333
+ Kn as AccordionTrigger,
3334
+ Gn as ActionStrip,
3335
+ Wn as Actionable,
3336
+ Hn as AddressGroup,
3337
+ Vn as AddressSelect,
3338
+ jn as AsyncLoader,
3339
+ Un as Autocomplete,
3340
+ Zn as Badge,
3341
+ Yn as BarChartCard,
3342
+ qn as BarsBg,
3343
+ En as BottomToolbar,
3344
+ Qn as Button,
3345
+ Xn as ButtonGroup,
3346
+ Jn as ButtonGroupContext,
3347
+ er as Card,
3348
+ tr as CardActions,
3349
+ ar as CardBack,
3350
+ nr as CardBody,
3351
+ rr as CardFooter,
3352
+ sr as CardHeader,
3353
+ or as CardMedia,
3354
+ ir as CardShell,
3355
+ lr as CardSubtitle,
3356
+ cr as CardTitle,
3357
+ Fn as CascadePreview,
3358
+ dr as ChartControlBar,
3359
+ ur as Checkbox,
3360
+ mr as CheckboxGroup,
3361
+ gr as Chip,
3362
+ pr as ColorPicker,
3363
+ fr as ComparisonCard,
3364
+ hr as ContactForm,
3365
+ br as ContainerCard,
3366
+ vr as ContainerCardActions,
3367
+ yr as ContainerCardBody,
3368
+ wr as ContainerCardFooter,
3369
+ Dr as ContainerCardHeader,
3370
+ Nr as ContainerCardMedia,
3371
+ Cr as ContainerCardSubtitle,
3372
+ kr as ContainerCardTitle,
3373
+ _r as ContainerDialog,
3374
+ xr as ContainerDialogActions,
3375
+ Sr as ContainerDialogBody,
3376
+ Mr as ContainerDialogHeader,
3377
+ fa as ContainerFormSection,
3378
+ Tr as ContainerPanel,
3379
+ ha as ContainerTable,
3380
+ pa as ContainerToolbar,
3381
+ Rr as CreditCardForm,
3382
+ Ir as DEFAULT_FOOTER_IDS,
3383
+ ae as DEFAULT_GRID_INTERACTION_PHYSICS,
3384
+ si as DEFAULT_MARKET_PRESETS,
3385
+ Pr as DEFAULT_OVERFLOW_IDS,
3386
+ oi as DEFAULT_PINNED,
3387
+ Le as DEFAULT_RESIZE_PHYSICS,
3388
+ Fr as DataTable,
3389
+ Er as DatePicker,
3390
+ Or as DateRangePicker,
3391
+ Ar as DestructiveModal,
3392
+ qt as DevTuningPanel,
3393
+ Lr as DirectionCard,
3394
+ $r as Dismissible,
3395
+ Br as DistributionCard,
3396
+ zr as DonutChart,
3397
+ In as DragGhost,
3398
+ Sn as DropAnchorCell,
3399
+ Kr as Dropdown,
3400
+ Gr as ENTITY_FILTER_KEYS,
3401
+ Wr as ENTITY_PROFILE_ROUTES,
3402
+ Hr as ENTITY_TYPE_PLURAL,
3403
+ wt as EdgeHoverHandle,
3404
+ Rn as EmptyCellPackAffordance,
3405
+ Vr as EntityPicker,
3406
+ jr as EntitySearchPanel,
3407
+ Ur as Expandable,
3408
+ Zr as ExpandableChip,
3409
+ Yr as FLIP_AND_STAGE_TIMINGS,
3410
+ qr as FileUpload,
3411
+ Qr as FilterChip,
3412
+ Xr as FilterInput,
3413
+ Jr as FlipAndStageProvider,
3414
+ es as Form,
3415
+ ts as FormDialog,
3416
+ as as FormField,
3417
+ ns as FusedShape,
3418
+ Dt as GhostPreview,
3419
+ rs as GroupCheckbox,
3420
+ ss as GroupRadio,
3421
+ Ha as HARD_CLIP,
3422
+ os as HighlightCard,
3423
+ is as HybridDatePicker,
3424
+ ls as ImportWizard,
3425
+ Jt as InlineNudge,
3426
+ cs as Input,
3427
+ ds as InputAddon,
3428
+ us as InputGroup,
3429
+ ms as Link,
3430
+ gs as LoginForm,
3431
+ ps as MarketPresetRow,
3432
+ fs as MaskPresets,
3433
+ hs as MaskedInput,
3434
+ bs as Menu,
3435
+ vs as MenuDivider,
3436
+ ys as MenuGroup,
3437
+ ws as MenuItem,
3438
+ Ds as MergePrompt,
3439
+ Ns as MetricCard,
3440
+ Cs as MetricCardGrid,
3441
+ Kt as MetricGroupContainer,
3442
+ ks as MiniCalendar,
3443
+ _s as MultiSelect,
3444
+ xs as NumberInput,
3445
+ Ss as ObjectArrow,
3446
+ Ms as OrderFilterBar,
3447
+ ii as PERIOD_OPTIONS,
3448
+ Tt as PageChip,
3449
+ $e as PageDropdown,
3450
+ Ts as PasswordInput,
3451
+ Rs as PaymentForm,
3452
+ Is as PaymentMethodSelect,
3453
+ Ps as PhoneInput,
3454
+ Fs as PinToMetric,
3455
+ sa as PresetSwatchRow,
3456
+ Es as ProfileCard,
3457
+ Os as ProgressCard,
3458
+ As as QuickConfigPanel,
3459
+ At as RECONFIG_BACKSIDE_LABELS,
3460
+ li as ROLLING_OPTIONS,
3461
+ Ls as Radio,
3462
+ $s as RadioGroup,
3463
+ Bs as RangeSlider,
3464
+ zs as Rating,
3465
+ Bt as ReconfigBacksideButtons,
3466
+ Ks as RegistrationForm,
3467
+ xn as ResizeEnvelope,
3468
+ Gs as Row1Controls,
3469
+ Ws as Row2FilterTray,
3470
+ Hs as SearchInput,
3471
+ Tn as SectionDivider,
3472
+ On as SectionDots,
3473
+ Vs as SegmentCard,
3474
+ js as SegmentedControl,
3475
+ Us as Select,
3476
+ Zs as Selectable,
3477
+ Ys as SimpleMetricCard,
3478
+ qs as SimpleSelector,
3479
+ Qs as Skeleton,
3480
+ Xs as SkeletonCard,
3481
+ Js as SkeletonChart,
3482
+ eo as SkeletonTable,
3483
+ to as Slider,
3484
+ Pn as SnapOutline,
3485
+ ao as Sortable,
3486
+ ga as SortableZones,
3487
+ no as SparklineBg,
3488
+ Mn as SpilloverArc,
3489
+ ro as SplitButton,
3490
+ so as StackedGroupCard,
3491
+ oo as StatusModeCard,
3492
+ yt as StatusSlotChipMenu,
3493
+ io as Stepper,
3494
+ Ae as SwingReveal,
3495
+ ci as TODAY_PRESET,
3496
+ te as TUNING_DEFAULTS,
3497
+ Ge as TUNING_STORAGE_KEY,
3498
+ lo as TabGroup,
3499
+ co as TabbedDataView,
3500
+ uo as TagInput,
3501
+ mo as Textarea,
3502
+ aa as ThresholdRamp,
3503
+ go as TimeFrame,
3504
+ po as TimePicker,
3505
+ fo as Toggle,
3506
+ ho as Tooltip,
3507
+ bo as Transition,
3508
+ vo as TransitionGroup,
3509
+ yo as TrendCard,
3510
+ wo as TrendIndicator,
3511
+ ai as UIContext,
3512
+ ke as UIContextProvider,
3513
+ Do as UnifiedBreakdownTable,
3514
+ No as UnifiedContextMenu,
3515
+ Nt as VelocityBuffer,
3516
+ Co as addressGroupMetadata,
3517
+ ko as addressSchema,
3518
+ Ra as allChips,
3519
+ qa as allStateFixtures,
3520
+ Ya as allVariantFixtures,
3521
+ Ea as blockSamples,
3522
+ _o as buildDefaultOverflow,
3523
+ Ba as cardSamples,
3524
+ za as cascadePhysics,
3525
+ La as chartSamples,
3526
+ Aa as circleSamples,
3527
+ Va as colorTokens,
3528
+ yn as compactLayout,
3529
+ ln as compactState,
3530
+ Za as computeGutterAnchorX,
3531
+ xo as contactFormMetadata,
3532
+ So as contactSchema,
3533
+ cn as contextMenuFixtures,
3534
+ Mo as creditCardFormMetadata,
3535
+ To as creditCardSchema,
3536
+ ft as dateChip,
3537
+ Ke as defaultControlBarState,
3538
+ Ro as destructiveModalMetadata,
3539
+ Io as durations,
3540
+ Po as easings,
3541
+ _t as emptyFixture,
3542
+ gt as entityChip,
3543
+ Ft as entityNameActions,
3544
+ Pa as entityTabGroup,
3545
+ kt as errorFixture,
3546
+ on as filteredState,
3547
+ di as findPreset,
3548
+ ui as formatDateRange,
3549
+ mi as formatMarketDates,
3550
+ gi as formatTrend,
3551
+ pi as formatValue,
3552
+ Dn as fullLayout,
3553
+ fi as generateMarketId,
3554
+ Fo as generateTabId,
3555
+ hi as getAllPresets,
3556
+ bi as getDateRangeForPreset,
3557
+ Eo as getMenuActions,
3558
+ ja as getMotionMode,
3559
+ vi as getPresetLabel,
3560
+ Oo as getTransitionStyle,
3561
+ vn as gridCards,
3562
+ Ao as interpolate,
3563
+ yi as isInRange,
3564
+ wi as isMarketActive,
3565
+ Di as isSameDay,
3566
+ sn as itemColumns,
3567
+ nn as itemRows,
3568
+ Ct as loadingFixture,
3569
+ Lo as loginFormMetadata,
3570
+ $o as loginSchema,
3571
+ ht as manufacturerChip,
3572
+ _n as manyTabs,
3573
+ Bo as mergeHandlers,
3574
+ zo as mergeRefs,
3575
+ Ia as metricTabGroup,
3576
+ Cn as mixedTabs,
3577
+ Ni as normalizePresetId,
3578
+ Ot as numericActions,
3579
+ rn as orderColumns,
3580
+ Et as orderIdActions,
3581
+ an as orderRows,
3582
+ Nn as ordersTabs,
3583
+ Ko as parseNumericValue,
3584
+ Go as paymentFormMetadata,
3585
+ Wo as paymentSchema,
3586
+ Ho as presets,
3587
+ Ga as provisional,
3588
+ Wa as reducedMotion,
3589
+ Vo as registrationFormMetadata,
3590
+ jo as registrationSchema,
3591
+ Ka as rejectionFeedback,
3592
+ un as sampleCompareRanges,
3593
+ pn as sampleCustomMarkets,
3594
+ dn as sampleDateRange,
3595
+ fn as sampleMarketPresetData,
3596
+ gn as sampleMarkets,
3597
+ bn as samplePeriodPresets,
3598
+ mn as samplePreferences,
3599
+ hn as samplePresets,
3600
+ kn as singleTab,
3601
+ Qa as sparklineFixture,
3602
+ Xa as sparklineUpFixture,
3603
+ Mt as staleDonutFixture,
3604
+ xt as staleFixture,
3605
+ St as staleSparklineFixture,
3606
+ Ja as standardFixture,
3607
+ tn as standardFlatFixture,
3608
+ wn as standardLayout,
3609
+ en as standardNegativeFixture,
3610
+ pt as statusChip,
3611
+ re as swingReveal,
3612
+ $a as tableSamples,
3613
+ Oa as textSamples,
3614
+ Fa as timeFrameTabGroup,
3615
+ Ci as toUppercasePresetId,
3616
+ Ta as useArrowNavigation,
3617
+ Uo as useCheckboxGroupContext,
3618
+ Ua as useEdgeHoverResize,
3619
+ Zo as useFilterLayout,
3620
+ Yo as useFlipAndStage,
3621
+ qo as useFlipAndStageContext,
3622
+ Qo as useFlipAndStageContextOptional,
3623
+ Ma as useFocusReturn,
3624
+ Xo as useFocusTrap,
3625
+ Jo as useFormContext,
3626
+ ei as useRadioGroupContext,
3627
+ Ht as useResizeTuning,
3628
+ la as useSortableZones,
3629
+ ni as useUIContext
3621
3630
  };