@mt-gloss/ui 0.0.48 → 0.1.0

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