@mt-gloss/ui 0.0.43 → 0.0.45

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