@mt-gloss/ui 0.0.44 → 0.0.46

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