@freedom-code-compliance/fcc-redesign 0.1.41 → 0.1.42

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/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { createContext as e, createElement as t, forwardRef as n, isValidElement as r, useCallback as i, useContext as a, useEffect as o, useId as s, useLayoutEffect as c, useMemo as l, useRef as u, useState as d } from "react";
2
- import { AlertCircle as f, AlertTriangle as p, Bell as m, Calendar as h, Check as g, CheckCheck as _, CheckCircle as v, ChevronDown as y, ChevronRight as b, ChevronUp as x, ChevronsUpDown as S, Clock as C, Columns3 as w, Filter as T, GripVertical as E, Hash as D, Info as O, LayoutGrid as k, List as A, Loader2 as j, LogOut as M, Map as N, Menu as P, Mic as F, MicOff as I, Minus as L, Moon as R, MoreHorizontal as z, Pause as ee, Phone as te, PhoneForwarded as ne, PhoneIncoming as re, PhoneMissed as ie, PhoneOff as ae, Pin as oe, PinOff as se, Play as ce, Search as B, Sun as le, TrendingDown as ue, TrendingUp as de, UserPlus as fe, Voicemail as pe, X as V } from "lucide-react";
3
- import { Fragment as me, jsx as H, jsxs as U } from "react/jsx-runtime";
2
+ import { AlertCircle as f, AlertTriangle as p, Bell as m, Calendar as h, Check as g, CheckCheck as _, CheckCircle as v, ChevronDown as y, ChevronLeft as b, ChevronRight as x, ChevronUp as S, ChevronsUpDown as C, Clock as w, Columns3 as T, Filter as E, GripVertical as D, Hash as O, Info as k, LayoutGrid as A, List as j, Loader2 as M, LogOut as N, Map as P, Menu as F, Mic as I, MicOff as L, Minus as R, Moon as z, MoreHorizontal as ee, Pause as te, Phone as ne, PhoneForwarded as re, PhoneIncoming as ie, PhoneMissed as ae, PhoneOff as oe, Pin as se, PinOff as ce, Play as le, Search as B, Sun as ue, TrendingDown as de, TrendingUp as fe, UserPlus as pe, Voicemail as me, X as V } from "lucide-react";
3
+ import { Fragment as he, jsx as H, jsxs as U } from "react/jsx-runtime";
4
4
  import { createPortal as W } from "react-dom";
5
5
  //#region src/components/ui/Toast.jsx
6
- var he = e(null), ge = {
6
+ var ge = e(null), _e = {
7
7
  success: /* @__PURE__ */ H(v, {
8
8
  size: 16,
9
9
  style: { color: "var(--accent-green)" }
@@ -16,12 +16,12 @@ var he = e(null), ge = {
16
16
  size: 16,
17
17
  style: { color: "var(--accent-yellow)" }
18
18
  }),
19
- info: /* @__PURE__ */ H(O, {
19
+ info: /* @__PURE__ */ H(k, {
20
20
  size: 16,
21
21
  style: { color: "var(--accent-blue)" }
22
22
  })
23
23
  };
24
- function _e({ toast: e, onDismiss: t }) {
24
+ function ve({ toast: e, onDismiss: t }) {
25
25
  return o(() => {
26
26
  if (!(e.sticky || e.duration === 0)) {
27
27
  let n = setTimeout(() => t(e.id), e.duration || 4e3);
@@ -38,7 +38,7 @@ function _e({ toast: e, onDismiss: t }) {
38
38
  children: [
39
39
  /* @__PURE__ */ H("span", {
40
40
  className: "toast-icon",
41
- children: ge[e.type] || ge.info
41
+ children: _e[e.type] || _e.info
42
42
  }),
43
43
  /* @__PURE__ */ U("div", {
44
44
  className: "toast-content",
@@ -68,7 +68,7 @@ function _e({ toast: e, onDismiss: t }) {
68
68
  ]
69
69
  });
70
70
  }
71
- function ve({ children: e }) {
71
+ function ye({ children: e }) {
72
72
  let [t, n] = d([]), r = i((e) => {
73
73
  let t = Date.now() + Math.random();
74
74
  n((n) => [...n.slice(-4), {
@@ -78,35 +78,35 @@ function ve({ children: e }) {
78
78
  }, []), a = i((e) => {
79
79
  n((t) => t.filter((t) => t.id !== e));
80
80
  }, []);
81
- return /* @__PURE__ */ U(he.Provider, {
81
+ return /* @__PURE__ */ U(ge.Provider, {
82
82
  value: { addToast: r },
83
83
  children: [e, /* @__PURE__ */ H("div", {
84
84
  className: "toast-container",
85
- children: t.map((e) => /* @__PURE__ */ H(_e, {
85
+ children: t.map((e) => /* @__PURE__ */ H(ve, {
86
86
  toast: e,
87
87
  onDismiss: a
88
88
  }, e.id))
89
89
  })]
90
90
  });
91
91
  }
92
- function ye() {
93
- let e = a(he);
92
+ function be() {
93
+ let e = a(ge);
94
94
  if (!e) throw Error("useToast must be used within ToastProvider");
95
95
  return e;
96
96
  }
97
97
  //#endregion
98
98
  //#region src/context/ThemeContext.jsx
99
- var be = e(void 0), xe = "dark", Se = "fcc-theme";
100
- function Ce(e) {
99
+ var xe = e(void 0), Se = "dark", Ce = "fcc-theme";
100
+ function we(e) {
101
101
  if (typeof document > "u") return;
102
102
  let t = document.documentElement;
103
103
  t.classList.remove("dark", "light"), e === "light" && t.classList.add("light");
104
104
  }
105
- function we({ children: e, defaultTheme: t = xe, storageKey: n = Se }) {
105
+ function Te({ children: e, defaultTheme: t = Se, storageKey: n = Ce }) {
106
106
  let [r, i] = d(() => typeof window > "u" ? t : window.localStorage.getItem(n) || t);
107
107
  return o(() => {
108
- typeof window < "u" && window.localStorage.setItem(n, r), Ce(r);
109
- }, [n, r]), /* @__PURE__ */ H(be.Provider, {
108
+ typeof window < "u" && window.localStorage.setItem(n, r), we(r);
109
+ }, [n, r]), /* @__PURE__ */ H(xe.Provider, {
110
110
  value: {
111
111
  theme: r,
112
112
  setTheme: i,
@@ -117,22 +117,22 @@ function we({ children: e, defaultTheme: t = xe, storageKey: n = Se }) {
117
117
  children: e
118
118
  });
119
119
  }
120
- function Te() {
121
- let e = a(be);
120
+ function Ee() {
121
+ let e = a(xe);
122
122
  if (!e) throw Error("useTheme must be used within a ThemeProvider");
123
123
  return e;
124
124
  }
125
125
  //#endregion
126
126
  //#region src/lib/FCCDesignProvider.jsx
127
- function Ee({ children: e, ...t }) {
128
- return /* @__PURE__ */ H(we, {
127
+ function De({ children: e, ...t }) {
128
+ return /* @__PURE__ */ H(Te, {
129
129
  ...t,
130
- children: /* @__PURE__ */ H(ve, { children: e })
130
+ children: /* @__PURE__ */ H(ye, { children: e })
131
131
  });
132
132
  }
133
133
  //#endregion
134
134
  //#region src/components/layout/FCCAppShellContext.jsx
135
- var G = () => {}, De = e({
135
+ var G = () => {}, Oe = e({
136
136
  sidebarPinned: !1,
137
137
  setSidebarPinned: G,
138
138
  toggleSidebarPinned: G,
@@ -144,13 +144,13 @@ var G = () => {}, De = e({
144
144
  pinnable: !1,
145
145
  mobileMenuEnabled: !1
146
146
  });
147
- function Oe() {
148
- return a(De);
147
+ function ke() {
148
+ return a(Oe);
149
149
  }
150
150
  //#endregion
151
151
  //#region src/components/layout/FCCSidePanel.jsx
152
- var K = (...e) => e.filter(Boolean).join(" "), ke = 300;
153
- function Ae({ open: e = !1, width: t = 320, expandedWidth: n, expanded: r = !1, panel: i, children: a, className: s = "", contentClassName: c = "", panelClassName: l = "" }) {
152
+ var K = (...e) => e.filter(Boolean).join(" "), Ae = 300;
153
+ function je({ open: e = !1, width: t = 320, expandedWidth: n, expanded: r = !1, panel: i, children: a, className: s = "", contentClassName: c = "", panelClassName: l = "" }) {
154
154
  let f = r && n ? n : t, p = u(null), m = u(null), [h, g] = d(e ? i : null), [_, v] = d(f), [y, b] = d(e && !!i);
155
155
  o(() => () => {
156
156
  p.current &&= (window.cancelAnimationFrame(p.current), null), m.current &&= (window.clearTimeout(m.current), null);
@@ -168,7 +168,7 @@ function Ae({ open: e = !1, width: t = 320, expandedWidth: n, expanded: r = !1,
168
168
  ]), o(() => {
169
169
  if (!(e || !y)) return m.current = window.setTimeout(() => {
170
170
  b(!1), g(null), m.current = null;
171
- }, ke), () => {
171
+ }, Ae), () => {
172
172
  m.current &&= (window.clearTimeout(m.current), null);
173
173
  };
174
174
  }, [e, y]);
@@ -188,7 +188,7 @@ function Ae({ open: e = !1, width: t = 320, expandedWidth: n, expanded: r = !1,
188
188
  })]
189
189
  });
190
190
  }
191
- function je({ title: e, subtitle: t, onClose: n, actions: r, className: i = "" }) {
191
+ function Me({ title: e, subtitle: t, onClose: n, actions: r, className: i = "" }) {
192
192
  return /* @__PURE__ */ U("div", {
193
193
  className: K("fcc-side-panel-header", i),
194
194
  children: [/* @__PURE__ */ U("div", {
@@ -211,13 +211,13 @@ function je({ title: e, subtitle: t, onClose: n, actions: r, className: i = "" }
211
211
  })]
212
212
  });
213
213
  }
214
- function Me({ children: e, className: t = "" }) {
214
+ function Ne({ children: e, className: t = "" }) {
215
215
  return /* @__PURE__ */ H("div", {
216
216
  className: K("fcc-side-panel-body", t),
217
217
  children: e
218
218
  });
219
219
  }
220
- function Ne({ tabs: e = [], activeTab: t = 0, onTabChange: n, className: r = "" }) {
220
+ function Pe({ tabs: e = [], activeTab: t = 0, onTabChange: n, className: r = "" }) {
221
221
  return /* @__PURE__ */ H("div", {
222
222
  className: K("fcc-side-panel-tabs", r),
223
223
  children: e.map((e, r) => /* @__PURE__ */ H("button", {
@@ -227,7 +227,7 @@ function Ne({ tabs: e = [], activeTab: t = 0, onTabChange: n, className: r = ""
227
227
  }, e))
228
228
  });
229
229
  }
230
- function Pe({ placeholder: e = "Search...", value: t, onChange: n, className: r = "" }) {
230
+ function Fe({ placeholder: e = "Search...", value: t, onChange: n, className: r = "" }) {
231
231
  return /* @__PURE__ */ U("div", {
232
232
  className: K("fcc-side-panel-search", r),
233
233
  children: [/* @__PURE__ */ H(B, { size: 13 }), n ? /* @__PURE__ */ H("input", {
@@ -242,13 +242,13 @@ function Pe({ placeholder: e = "Search...", value: t, onChange: n, className: r
242
242
  })]
243
243
  });
244
244
  }
245
- function Fe({ children: e, className: t = "" }) {
245
+ function Ie({ children: e, className: t = "" }) {
246
246
  return /* @__PURE__ */ H("div", {
247
247
  className: K("fcc-side-panel-group-label", t),
248
248
  children: e
249
249
  });
250
250
  }
251
- function Ie({ dot: e, label: t, detail: n, time: r, onClick: i, className: a = "" }) {
251
+ function Le({ dot: e, label: t, detail: n, time: r, onClick: i, className: a = "" }) {
252
252
  return /* @__PURE__ */ U("div", {
253
253
  className: K("fcc-side-panel-item", a),
254
254
  onClick: i,
@@ -274,7 +274,7 @@ function Ie({ dot: e, label: t, detail: n, time: r, onClick: i, className: a = "
274
274
  ]
275
275
  });
276
276
  }
277
- function Le({ avatar: e, title: t, detail: n, time: r, unread: i, onClick: a, className: o = "" }) {
277
+ function Re({ avatar: e, title: t, detail: n, time: r, unread: i, onClick: a, className: o = "" }) {
278
278
  return /* @__PURE__ */ U("div", {
279
279
  className: K("fcc-side-panel-card", o),
280
280
  onClick: a,
@@ -300,7 +300,7 @@ function Le({ avatar: e, title: t, detail: n, time: r, unread: i, onClick: a, cl
300
300
  })]
301
301
  });
302
302
  }
303
- function Re({ avatar: e, name: t, time: n, active: r, online: i, onClick: a, className: o = "" }) {
303
+ function ze({ avatar: e, name: t, time: n, active: r, online: i, onClick: a, className: o = "" }) {
304
304
  return /* @__PURE__ */ U("div", {
305
305
  className: K("fcc-side-panel-contact", r && "active", o),
306
306
  onClick: a,
@@ -320,20 +320,20 @@ function Re({ avatar: e, name: t, time: n, active: r, online: i, onClick: a, cla
320
320
  ]
321
321
  });
322
322
  }
323
- function ze({ children: e, onClick: t, className: n = "" }) {
323
+ function Be({ children: e, onClick: t, className: n = "" }) {
324
324
  return /* @__PURE__ */ H("div", {
325
325
  className: K("fcc-side-panel-action", n),
326
326
  onClick: t,
327
327
  children: e
328
328
  });
329
329
  }
330
- function Be({ children: e, className: t = "" }) {
330
+ function Ve({ children: e, className: t = "" }) {
331
331
  return /* @__PURE__ */ H("div", {
332
332
  className: K("fcc-side-panel-chat-wrap", t),
333
333
  children: e
334
334
  });
335
335
  }
336
- function Ve({ title: e, headerActions: t, messages: n = [], input: r, className: i = "" }) {
336
+ function He({ title: e, headerActions: t, messages: n = [], input: r, className: i = "" }) {
337
337
  return /* @__PURE__ */ U("div", {
338
338
  className: K("fcc-side-panel-conversation", i),
339
339
  children: [
@@ -358,7 +358,7 @@ function Ve({ title: e, headerActions: t, messages: n = [], input: r, className:
358
358
  ]
359
359
  });
360
360
  }
361
- function He({ from: e = "other", meta: t, children: n, className: r = "" }) {
361
+ function Ue({ from: e = "other", meta: t, children: n, className: r = "" }) {
362
362
  let i = e === "you";
363
363
  return /* @__PURE__ */ U("div", {
364
364
  className: K("fcc-side-panel-msg-row", i ? "fcc-msg-right" : "fcc-msg-left", r),
@@ -373,7 +373,7 @@ function He({ from: e = "other", meta: t, children: n, className: r = "" }) {
373
373
  }
374
374
  //#endregion
375
375
  //#region src/components/layout/FCCBreadcrumbs.jsx
376
- function Ue(e, t) {
376
+ function We(e, t) {
377
377
  let n = [
378
378
  "fcc-breadcrumb-item",
379
379
  t ? "current" : "",
@@ -396,7 +396,7 @@ function Ue(e, t) {
396
396
  children: e.label
397
397
  });
398
398
  }
399
- function We({ items: e = [], className: t = "" }) {
399
+ function Ge({ items: e = [], className: t = "" }) {
400
400
  let n = e.filter((e) => e?.label);
401
401
  return n.length === 0 ? null : /* @__PURE__ */ H("nav", {
402
402
  className: ["fcc-breadcrumbs", t].filter(Boolean).join(" "),
@@ -408,25 +408,25 @@ function We({ items: e = [], className: t = "" }) {
408
408
  children: [t > 0 && /* @__PURE__ */ H("span", {
409
409
  className: "fcc-breadcrumb-sep",
410
410
  children: "/"
411
- }), Ue(e, r)]
411
+ }), We(e, r)]
412
412
  }, e.key || e.label || t);
413
413
  })
414
414
  });
415
415
  }
416
416
  //#endregion
417
417
  //#region src/components/layout/FCCHeaderStatus.jsx
418
- var Ge = {
418
+ var Ke = {
419
419
  success: "fcc-header-status-success",
420
420
  warning: "fcc-header-status-warning",
421
421
  danger: "fcc-header-status-danger",
422
422
  info: "fcc-header-status-info",
423
423
  neutral: "fcc-header-status-neutral"
424
424
  };
425
- function Ke({ label: e, tone: t = "success", dotColor: n, className: r = "" }) {
425
+ function qe({ label: e, tone: t = "success", dotColor: n, className: r = "" }) {
426
426
  return e ? /* @__PURE__ */ U("div", {
427
427
  className: [
428
428
  "fcc-header-status",
429
- Ge[t] || Ge.neutral,
429
+ Ke[t] || Ke.neutral,
430
430
  r
431
431
  ].filter(Boolean).join(" "),
432
432
  children: [/* @__PURE__ */ H("span", {
@@ -437,8 +437,8 @@ function Ke({ label: e, tone: t = "success", dotColor: n, className: r = "" }) {
437
437
  }
438
438
  //#endregion
439
439
  //#region src/components/layout/FCCWorkspaceHeader.jsx
440
- function qe({ breadcrumbs: e = [], status: t, actions: n, leftSlot: r, rightSlot: i, className: a = "", showMobileMenuToggle: o = !0 }) {
441
- let { isMobileViewport: s, mobileMenuEnabled: c, mobileMenuOpen: l, toggleMobileMenu: u } = Oe(), d = o && c && s;
440
+ function Je({ breadcrumbs: e = [], status: t, actions: n, leftSlot: r, rightSlot: i, className: a = "", showMobileMenuToggle: o = !0 }) {
441
+ let { isMobileViewport: s, mobileMenuEnabled: c, mobileMenuOpen: l, toggleMobileMenu: u } = ke(), d = o && c && s;
442
442
  return /* @__PURE__ */ U("header", {
443
443
  className: ["fcc-workspace-header", a].filter(Boolean).join(" "),
444
444
  children: [/* @__PURE__ */ U("div", {
@@ -450,12 +450,12 @@ function qe({ breadcrumbs: e = [], status: t, actions: n, leftSlot: r, rightSlot
450
450
  "aria-label": l ? "Close menu" : "Open menu",
451
451
  "aria-expanded": l,
452
452
  title: l ? "Close menu" : "Open menu",
453
- children: /* @__PURE__ */ H(P, { size: 18 })
454
- }), r || /* @__PURE__ */ H(We, { items: e })]
453
+ children: /* @__PURE__ */ H(F, { size: 18 })
454
+ }), r || /* @__PURE__ */ H(Ge, { items: e })]
455
455
  }), /* @__PURE__ */ U("div", {
456
456
  className: "fcc-workspace-header-right",
457
457
  children: [
458
- t && /* @__PURE__ */ H(Ke, { ...t }),
458
+ t && /* @__PURE__ */ H(qe, { ...t }),
459
459
  n,
460
460
  i
461
461
  ]
@@ -464,8 +464,8 @@ function qe({ breadcrumbs: e = [], status: t, actions: n, leftSlot: r, rightSlot
464
464
  }
465
465
  //#endregion
466
466
  //#region src/components/layout/FCCMainWindow.jsx
467
- function Je({ breadcrumbs: e = [], status: t, headerActions: n, header: r, children: i, overlay: a, sidePanel: o, callbar: s = null, className: c = "", headerClassName: l = "", contentClassName: u = "" }) {
468
- let d = o ? /* @__PURE__ */ H(Ae, {
467
+ function Ye({ breadcrumbs: e = [], status: t, headerActions: n, header: r, children: i, overlay: a, sidePanel: o, callbar: s = null, className: c = "", headerClassName: l = "", contentClassName: u = "" }) {
468
+ let d = o ? /* @__PURE__ */ H(je, {
469
469
  open: o.open,
470
470
  width: o.width,
471
471
  expandedWidth: o.expandedWidth,
@@ -479,7 +479,7 @@ function Je({ breadcrumbs: e = [], status: t, headerActions: n, header: r, child
479
479
  return /* @__PURE__ */ U("div", {
480
480
  className: ["fcc-main-window", c].filter(Boolean).join(" "),
481
481
  children: [
482
- r || /* @__PURE__ */ H(qe, {
482
+ r || /* @__PURE__ */ H(Je, {
483
483
  breadcrumbs: e,
484
484
  status: t,
485
485
  actions: n,
@@ -500,7 +500,7 @@ function Je({ breadcrumbs: e = [], status: t, headerActions: n, header: r, child
500
500
  }
501
501
  //#endregion
502
502
  //#region src/components/layout/FCCSidebar.jsx
503
- function Ye(e, t) {
503
+ function Xe(e, t) {
504
504
  if (!e.disabled) {
505
505
  if (e.onClick) {
506
506
  e.onClick(e);
@@ -509,10 +509,10 @@ function Ye(e, t) {
509
509
  t?.(e);
510
510
  }
511
511
  }
512
- function Xe(e, t) {
512
+ function Ze(e, t) {
513
513
  return !e.childrenSections?.length || !t ? !1 : e.childrenSections.some((e) => e.items?.some((e) => e.key === t));
514
514
  }
515
- function Ze(e, t) {
515
+ function Qe(e, t) {
516
516
  if (!t.trim()) return e;
517
517
  let n = t.trim().toLowerCase();
518
518
  return e.map((e) => ({
@@ -520,8 +520,8 @@ function Ze(e, t) {
520
520
  items: e.items.filter((e) => e.label.toLowerCase().includes(n) || e.pageTitle?.toLowerCase().includes(n) || e.summary?.toLowerCase().includes(n))
521
521
  })).filter((e) => e.items.length > 0);
522
522
  }
523
- function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, onNavigate: i, user: a, footer: o, onLogout: s, className: c = "" }) {
524
- let [l, u] = d({}), [f, p] = d({}), { pinnable: m, sidebarPinned: h, toggleSidebarPinned: g, isMobileViewport: _, mobileMenuEnabled: v, closeMobileMenu: b } = Oe(), x = m && !_, S = v && _;
523
+ function $e({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, onNavigate: i, user: a, footer: o, onLogout: s, className: c = "" }) {
524
+ let [l, u] = d({}), [f, p] = d({}), { pinnable: m, sidebarPinned: h, toggleSidebarPinned: g, isMobileViewport: _, mobileMenuEnabled: v, closeMobileMenu: b } = ke(), x = m && !_, S = v && _;
525
525
  function C(e, t) {
526
526
  p((n) => ({
527
527
  ...n,
@@ -556,7 +556,7 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
556
556
  "aria-label": h ? "Unpin sidebar" : "Pin sidebar open",
557
557
  title: h ? "Unpin sidebar" : "Pin sidebar open",
558
558
  "aria-pressed": h,
559
- children: H(h ? se : oe, { size: 14 })
559
+ children: H(h ? ce : se, { size: 14 })
560
560
  }) : null
561
561
  ]
562
562
  }),
@@ -564,7 +564,7 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
564
564
  className: "fcc-sidebar-nav",
565
565
  "aria-label": `${e} navigation`,
566
566
  children: n.map((e) => {
567
- let t = e.childrenSections?.length > 0, n = Xe(e, r), a = e.key === r || n || (r?.startsWith?.(`${e.key}/`) ?? !1), o = t && (f[e.key] ?? a), s = l[e.key] || "", c = t ? Ze(e.childrenSections, s) : [];
567
+ let t = e.childrenSections?.length > 0, n = Ze(e, r), a = e.key === r || n || (r?.startsWith?.(`${e.key}/`) ?? !1), o = t && (f[e.key] ?? a), s = l[e.key] || "", c = t ? Qe(e.childrenSections, s) : [];
568
568
  return /* @__PURE__ */ U("div", {
569
569
  className: [
570
570
  "fcc-sidebar-entry",
@@ -579,7 +579,7 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
579
579
  e.disabled ? "disabled" : ""
580
580
  ].filter(Boolean).join(" "),
581
581
  onClick: () => {
582
- t && C(e.key, !0), Ye(e, i);
582
+ t && C(e.key, !0), Xe(e, i);
583
583
  },
584
584
  "aria-current": a ? "page" : void 0,
585
585
  disabled: e.disabled,
@@ -641,7 +641,7 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
641
641
  children: e.items.map((e) => /* @__PURE__ */ H("button", {
642
642
  type: "button",
643
643
  className: ["fcc-sidebar-child-item", e.key === r ? "active" : ""].filter(Boolean).join(" "),
644
- onClick: () => Ye(e, i),
644
+ onClick: () => Xe(e, i),
645
645
  title: e.label,
646
646
  children: /* @__PURE__ */ H("span", {
647
647
  className: "fcc-sidebar-label",
@@ -682,7 +682,7 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
682
682
  title: "Logout",
683
683
  "aria-label": "Logout",
684
684
  onClick: s,
685
- children: /* @__PURE__ */ H(M, { size: 16 })
685
+ children: /* @__PURE__ */ H(N, { size: 16 })
686
686
  })]
687
687
  })
688
688
  ]
@@ -690,8 +690,8 @@ function Qe({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
690
690
  }
691
691
  //#endregion
692
692
  //#region src/components/layout/FCCAppShell.jsx
693
- var $e = "fcc-sidebar-pinned", et = 1024;
694
- function tt(e) {
693
+ var et = "fcc-sidebar-pinned", tt = 1024;
694
+ function nt(e) {
695
695
  if (typeof window > "u") return !1;
696
696
  try {
697
697
  return window.localStorage.getItem(e) === "true";
@@ -699,13 +699,13 @@ function tt(e) {
699
699
  return !1;
700
700
  }
701
701
  }
702
- function nt(e, t) {
702
+ function rt(e, t) {
703
703
  if (!(typeof window > "u")) try {
704
704
  window.localStorage.setItem(e, t ? "true" : "false");
705
705
  } catch {}
706
706
  }
707
- function rt({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, onNavigate: a, user: s, footer: c, onLogout: u, breadcrumbs: f = [], status: p, headerActions: m, header: h, children: g, overlay: _, sidePanel: v, callbar: y = null, className: b = "", sidebarClassName: x = "", mainClassName: S = "", headerClassName: C = "", contentClassName: w = "", pinnable: T = !0, mobileMenuEnabled: E = !0, mobileBreakpoint: D = et, pinStorageKey: O = $e }) {
708
- let [k, A] = d(() => T ? tt(O) : !1), [j, M] = d(!1), [N, P] = d(() => typeof window > "u" ? 1920 : window.innerWidth);
707
+ function it({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, onNavigate: a, user: s, footer: c, onLogout: u, breadcrumbs: f = [], status: p, headerActions: m, header: h, children: g, overlay: _, sidePanel: v, callbar: y = null, className: b = "", sidebarClassName: x = "", mainClassName: S = "", headerClassName: C = "", contentClassName: w = "", pinnable: T = !0, mobileMenuEnabled: E = !0, mobileBreakpoint: D = tt, pinStorageKey: O = et }) {
708
+ let [k, A] = d(() => T ? nt(O) : !1), [j, M] = d(!1), [N, P] = d(() => typeof window > "u" ? 1920 : window.innerWidth);
709
709
  o(() => {
710
710
  if (typeof window > "u") return;
711
711
  let e = () => P(window.innerWidth);
@@ -713,7 +713,7 @@ function rt({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
713
713
  }, []);
714
714
  let F = E && N < D, I = F && j;
715
715
  o(() => {
716
- T && nt(O, k);
716
+ T && rt(O, k);
717
717
  }, [
718
718
  T,
719
719
  O,
@@ -752,12 +752,12 @@ function rt({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
752
752
  I && "fcc-mobile-menu-open",
753
753
  b
754
754
  ].filter(Boolean).join(" ");
755
- return /* @__PURE__ */ H(De.Provider, {
755
+ return /* @__PURE__ */ H(Oe.Provider, {
756
756
  value: ee,
757
757
  children: /* @__PURE__ */ U("div", {
758
758
  className: te,
759
759
  children: [
760
- /* @__PURE__ */ H(Qe, {
760
+ /* @__PURE__ */ H($e, {
761
761
  appName: e,
762
762
  logo: t,
763
763
  navItems: n,
@@ -768,7 +768,7 @@ function rt({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
768
768
  onLogout: u,
769
769
  className: x
770
770
  }),
771
- /* @__PURE__ */ H(Je, {
771
+ /* @__PURE__ */ H(Ye, {
772
772
  breadcrumbs: f,
773
773
  status: p,
774
774
  headerActions: m,
@@ -792,8 +792,8 @@ function rt({ appName: e = "FCC", logo: t, navItems: n = [], activeNavKey: r, on
792
792
  }
793
793
  //#endregion
794
794
  //#region src/components/layout/FCCBrandLogo.jsx
795
- function it({ darkSrc: e, lightSrc: t, alt: n = "FCC", className: r = "", ...i }) {
796
- let { theme: a } = Te(), o = a === "dark" ? e || t : t || e;
795
+ function at({ darkSrc: e, lightSrc: t, alt: n = "FCC", className: r = "", ...i }) {
796
+ let { theme: a } = Ee(), o = a === "dark" ? e || t : t || e;
797
797
  return o ? /* @__PURE__ */ H("img", {
798
798
  src: o,
799
799
  alt: n,
@@ -803,8 +803,8 @@ function it({ darkSrc: e, lightSrc: t, alt: n = "FCC", className: r = "", ...i }
803
803
  }
804
804
  //#endregion
805
805
  //#region src/components/layout/FCCThemeToggle.jsx
806
- function at({ className: e = "" }) {
807
- let { theme: t, toggleTheme: n } = Te(), r = t === "dark";
806
+ function ot({ className: e = "" }) {
807
+ let { theme: t, toggleTheme: n } = Ee(), r = t === "dark";
808
808
  return /* @__PURE__ */ H("button", {
809
809
  type: "button",
810
810
  onClick: n,
@@ -817,15 +817,15 @@ function at({ className: e = "" }) {
817
817
  ].filter(Boolean).join(" "),
818
818
  title: r ? "Switch to light mode" : "Switch to dark mode",
819
819
  "aria-label": r ? "Switch to light mode" : "Switch to dark mode",
820
- children: H(r ? R : le, { size: 16 })
820
+ children: H(r ? z : ue, { size: 16 })
821
821
  });
822
822
  }
823
823
  //#endregion
824
824
  //#region src/components/ui/AppLoader.jsx
825
- function ot({ label: e = "Loading...", fullscreen: t = !1, className: n = "" }) {
825
+ function st({ label: e = "Loading...", fullscreen: t = !1, className: n = "" }) {
826
826
  return t ? /* @__PURE__ */ U("div", {
827
827
  className: `loader-fullscreen ${n}`,
828
- children: [/* @__PURE__ */ H(j, {
828
+ children: [/* @__PURE__ */ H(M, {
829
829
  size: 32,
830
830
  className: "loader-spin"
831
831
  }), e && /* @__PURE__ */ H("span", {
@@ -834,7 +834,7 @@ function ot({ label: e = "Loading...", fullscreen: t = !1, className: n = "" })
834
834
  })]
835
835
  }) : /* @__PURE__ */ U("div", {
836
836
  className: `loader ${n}`,
837
- children: [/* @__PURE__ */ H(j, {
837
+ children: [/* @__PURE__ */ H(M, {
838
838
  size: 20,
839
839
  className: "loader-spin"
840
840
  }), e && /* @__PURE__ */ H("span", {
@@ -843,13 +843,13 @@ function ot({ label: e = "Loading...", fullscreen: t = !1, className: n = "" })
843
843
  })]
844
844
  });
845
845
  }
846
- function st({ size: e = 16, className: t = "" }) {
847
- return /* @__PURE__ */ H(j, {
846
+ function ct({ size: e = 16, className: t = "" }) {
847
+ return /* @__PURE__ */ H(M, {
848
848
  size: e,
849
849
  className: `loader-spin ${t}`
850
850
  });
851
851
  }
852
- function ct({ label: e = "Loading...", fullscreen: t = !1, size: n = 64, darkSrc: r, lightSrc: i, alt: a = "FCC", className: o = "" }) {
852
+ function lt({ label: e = "Loading...", fullscreen: t = !1, size: n = 64, darkSrc: r, lightSrc: i, alt: a = "FCC", className: o = "" }) {
853
853
  let s = /* @__PURE__ */ U("div", {
854
854
  className: "fcc-loader-stage",
855
855
  style: { "--fcc-loader-size": `${n}px` },
@@ -857,14 +857,14 @@ function ct({ label: e = "Loading...", fullscreen: t = !1, size: n = 64, darkSrc
857
857
  children: [
858
858
  /* @__PURE__ */ H("span", { className: "fcc-loader-ring" }),
859
859
  /* @__PURE__ */ H("span", { className: "fcc-loader-glow" }),
860
- /* @__PURE__ */ H(it, {
860
+ /* @__PURE__ */ H(at, {
861
861
  darkSrc: r,
862
862
  lightSrc: i,
863
863
  alt: a,
864
864
  className: "fcc-loader-logo"
865
865
  })
866
866
  ]
867
- }), c = t ? `fcc-loader fcc-loader-fullscreen ${o}`.trim() : `fcc-loader ${o}`.trim(), l = typeof e == "string" ? e.match(/^(.*?)\.{3}\s*$/) : null, u = l ? /* @__PURE__ */ U(me, { children: [l[1], /* @__PURE__ */ U("span", {
867
+ }), c = t ? `fcc-loader fcc-loader-fullscreen ${o}`.trim() : `fcc-loader ${o}`.trim(), l = typeof e == "string" ? e.match(/^(.*?)\.{3}\s*$/) : null, u = l ? /* @__PURE__ */ U(he, { children: [l[1], /* @__PURE__ */ U("span", {
868
868
  className: "fcc-loader-dots",
869
869
  "aria-hidden": "true",
870
870
  children: [
@@ -894,7 +894,7 @@ function ct({ label: e = "Loading...", fullscreen: t = !1, size: n = 64, darkSrc
894
894
  }
895
895
  //#endregion
896
896
  //#region src/components/ui/FCCDetailsPanel.jsx
897
- function lt({ open: e, onClose: t, title: n, header: r, children: a, loading: s = !1, loadingLabel: c = "Loading...", loaderSize: l = 64, loaderDarkSrc: f, loaderLightSrc: p, width: m, zIndex: h = 1100, showBackdrop: g = !0, resizable: _ = !0, minWidth: v = 360, storageKey: y, className: b = "" }) {
897
+ function ut({ open: e, onClose: t, title: n, header: r, children: a, loading: s = !1, loadingLabel: c = "Loading...", loaderSize: l = 64, loaderDarkSrc: f, loaderLightSrc: p, width: m, zIndex: h = 1100, showBackdrop: g = !0, resizable: _ = !0, minWidth: v = 360, storageKey: y, className: b = "" }) {
898
898
  let [x, S] = d(!1), [C, w] = d(!1), [T, E] = d(!1), [D, O] = d(() => {
899
899
  if (!y || typeof window > "u") return null;
900
900
  let e = window.localStorage.getItem(y), t = e ? parseInt(e, 10) : NaN;
@@ -974,7 +974,7 @@ function lt({ open: e, onClose: t, title: n, header: r, children: a, loading: s
974
974
  className: "fcc-details-panel-body",
975
975
  children: s ? /* @__PURE__ */ H("div", {
976
976
  className: "fcc-details-panel-loading",
977
- children: /* @__PURE__ */ H(ct, {
977
+ children: /* @__PURE__ */ H(lt, {
978
978
  label: c,
979
979
  size: l,
980
980
  darkSrc: f,
@@ -988,8 +988,8 @@ function lt({ open: e, onClose: t, title: n, header: r, children: a, loading: s
988
988
  }
989
989
  //#endregion
990
990
  //#region src/components/ui/FCCFullPagePanel.jsx
991
- var ut = 220;
992
- function dt({ open: e, onClose: t, children: n, className: r = "", closeOnEscape: i = !0, lockScroll: a = !0 }) {
991
+ var dt = 220;
992
+ function ft({ open: e, onClose: t, children: n, className: r = "", closeOnEscape: i = !0, lockScroll: a = !0 }) {
993
993
  let [s, c] = d(e ? "open" : "closed"), l = e || s !== "closed";
994
994
  return o(() => {
995
995
  if (a) return l ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
@@ -1011,7 +1011,7 @@ function dt({ open: e, onClose: t, children: n, className: r = "", closeOnEscape
1011
1011
  return () => cancelAnimationFrame(e);
1012
1012
  }
1013
1013
  if (s === "closed") return;
1014
- let t = requestAnimationFrame(() => c("closing")), n = window.setTimeout(() => c("closed"), ut);
1014
+ let t = requestAnimationFrame(() => c("closing")), n = window.setTimeout(() => c("closed"), dt);
1015
1015
  return () => {
1016
1016
  cancelAnimationFrame(t), window.clearTimeout(n);
1017
1017
  };
@@ -1026,7 +1026,7 @@ function dt({ open: e, onClose: t, children: n, className: r = "", closeOnEscape
1026
1026
  })
1027
1027
  }), document.body);
1028
1028
  }
1029
- function ft({ title: e, subtitle: t, eyebrow: n, leading: r, actions: i, endActions: a, onClose: o, className: s = "" }) {
1029
+ function pt({ title: e, subtitle: t, eyebrow: n, leading: r, actions: i, endActions: a, onClose: o, className: s = "" }) {
1030
1030
  return /* @__PURE__ */ U("div", {
1031
1031
  className: `fcc-fpp-header ${s}`,
1032
1032
  children: [n && /* @__PURE__ */ H("div", {
@@ -1069,25 +1069,25 @@ function ft({ title: e, subtitle: t, eyebrow: n, leading: r, actions: i, endActi
1069
1069
  })]
1070
1070
  });
1071
1071
  }
1072
- function pt({ children: e, className: t = "" }) {
1072
+ function mt({ children: e, className: t = "" }) {
1073
1073
  return /* @__PURE__ */ H("div", {
1074
1074
  className: `fcc-fpp-toolbar ${t}`,
1075
1075
  children: e
1076
1076
  });
1077
1077
  }
1078
- function mt({ children: e, className: t = "" }) {
1078
+ function ht({ children: e, className: t = "" }) {
1079
1079
  return /* @__PURE__ */ H("div", {
1080
1080
  className: `fcc-fpp-body ${t}`,
1081
1081
  children: e
1082
1082
  });
1083
1083
  }
1084
- function ht({ children: e, className: t = "" }) {
1084
+ function gt({ children: e, className: t = "" }) {
1085
1085
  return /* @__PURE__ */ H("div", {
1086
1086
  className: `fcc-fpp-main ${t}`,
1087
1087
  children: e
1088
1088
  });
1089
1089
  }
1090
- function gt({ children: e, side: t = "right", footer: n, className: r = "" }) {
1090
+ function _t({ children: e, side: t = "right", footer: n, className: r = "" }) {
1091
1091
  return /* @__PURE__ */ U("aside", {
1092
1092
  className: `fcc-fpp-sidebar fcc-fpp-sidebar-${t} ${r}`,
1093
1093
  children: [/* @__PURE__ */ H("div", {
@@ -1099,13 +1099,13 @@ function gt({ children: e, side: t = "right", footer: n, className: r = "" }) {
1099
1099
  })]
1100
1100
  });
1101
1101
  }
1102
- function _t({ children: e, className: t = "" }) {
1102
+ function vt({ children: e, className: t = "" }) {
1103
1103
  return /* @__PURE__ */ H("div", {
1104
1104
  className: `fcc-fpp-footer ${t}`,
1105
1105
  children: e
1106
1106
  });
1107
1107
  }
1108
- function vt({ label: e, value: t, children: n, className: r = "" }) {
1108
+ function yt({ label: e, value: t, children: n, className: r = "" }) {
1109
1109
  return /* @__PURE__ */ U("div", {
1110
1110
  className: r,
1111
1111
  children: [(e || t) && /* @__PURE__ */ U("div", {
@@ -1123,18 +1123,17 @@ function vt({ label: e, value: t, children: n, className: r = "" }) {
1123
1123
  })]
1124
1124
  });
1125
1125
  }
1126
- function yt({ leading: e, children: t, actions: n, className: r = "" }) {
1126
+ function bt({ leading: e, children: t, actions: n, hidden: r = !1, className: i = "" }) {
1127
1127
  return /* @__PURE__ */ U("div", {
1128
- className: `fcc-fpp-subheader ${r}`,
1128
+ className: `fcc-fpp-subheader ${i}`,
1129
+ "data-hidden": r ? "true" : "false",
1130
+ "aria-hidden": r,
1129
1131
  children: [
1130
1132
  e && /* @__PURE__ */ H("div", {
1131
1133
  className: "fcc-fpp-subheader-lead",
1132
1134
  children: e
1133
1135
  }),
1134
- t !== void 0 && /* @__PURE__ */ H("div", {
1135
- className: "fcc-fpp-subheader-content",
1136
- children: t
1137
- }),
1136
+ t !== void 0 && /* @__PURE__ */ H(xt, { children: t }),
1138
1137
  n && /* @__PURE__ */ H("div", {
1139
1138
  className: "fcc-fpp-subheader-actions",
1140
1139
  children: n
@@ -1142,80 +1141,138 @@ function yt({ leading: e, children: t, actions: n, className: r = "" }) {
1142
1141
  ]
1143
1142
  });
1144
1143
  }
1145
- var bt = 200, xt = 720, St = 3, Ct = 8;
1146
- function wt(e) {
1147
- return typeof window > "u" ? e : Math.floor(window.innerWidth / St);
1144
+ function xt({ children: e }) {
1145
+ let t = u(null), [n, r] = d(!1), [a, s] = d(!1), l = i(() => {
1146
+ let e = t.current;
1147
+ if (!e) return;
1148
+ let { scrollLeft: n, scrollWidth: i, clientWidth: a } = e;
1149
+ r(n > 1), s(n + a < i - 1);
1150
+ }, []);
1151
+ c(() => {
1152
+ l();
1153
+ }, [l, e]), o(() => {
1154
+ let e = t.current;
1155
+ if (!e) return;
1156
+ e.addEventListener("scroll", l, { passive: !0 });
1157
+ let n = typeof ResizeObserver < "u" ? new ResizeObserver(l) : null;
1158
+ return n?.observe(e), n && e.firstElementChild && n.observe(e.firstElementChild), () => {
1159
+ e.removeEventListener("scroll", l), n?.disconnect();
1160
+ };
1161
+ }, [l]);
1162
+ let f = i((e) => {
1163
+ let n = t.current;
1164
+ n && n.scrollBy({
1165
+ left: e * Math.round(n.clientWidth * .8),
1166
+ behavior: "smooth"
1167
+ });
1168
+ }, []);
1169
+ return /* @__PURE__ */ U("div", {
1170
+ className: "fcc-fpp-subheader-content",
1171
+ children: [
1172
+ /* @__PURE__ */ H("button", {
1173
+ type: "button",
1174
+ className: "fcc-fpp-subheader-scroll-btn fcc-fpp-subheader-scroll-btn--left",
1175
+ "data-visible": n ? "true" : "false",
1176
+ "aria-label": "Scroll tabs left",
1177
+ tabIndex: n ? 0 : -1,
1178
+ onClick: () => f(-1),
1179
+ children: /* @__PURE__ */ H(b, { size: 16 })
1180
+ }),
1181
+ /* @__PURE__ */ H("div", {
1182
+ ref: t,
1183
+ className: "fcc-fpp-subheader-scroll-viewport",
1184
+ children: e
1185
+ }),
1186
+ /* @__PURE__ */ H("button", {
1187
+ type: "button",
1188
+ className: "fcc-fpp-subheader-scroll-btn fcc-fpp-subheader-scroll-btn--right",
1189
+ "data-visible": a ? "true" : "false",
1190
+ "aria-label": "Scroll tabs right",
1191
+ tabIndex: a ? 0 : -1,
1192
+ onClick: () => f(1),
1193
+ children: /* @__PURE__ */ H(x, { size: 16 })
1194
+ })
1195
+ ]
1196
+ });
1197
+ }
1198
+ var St = 200, Ct = 720, wt = 3, Tt = 8;
1199
+ function Et(e) {
1200
+ return typeof window > "u" ? e : Math.floor(window.innerWidth / wt);
1148
1201
  }
1149
- function Tt({ children: e, side: t = "right", defaultWidth: n = 320, minWidth: r = bt, maxWidth: a = xt, storageKey: s, className: c = "", onWidthChange: l, footer: f }) {
1150
- let [p, m] = d(() => wt(a)), [h, g] = d(!1), [_, v] = d(() => {
1151
- if (typeof window > "u" || !s) return Math.min(n, wt(a));
1152
- let e = window.localStorage.getItem(s), t = e ? Number(e) : NaN, i = wt(a);
1202
+ function Dt({ children: e, side: t = "right", defaultWidth: n = 320, minWidth: r = St, maxWidth: a = Ct, storageKey: s, className: c = "", onWidthChange: l, footer: f, hidden: p = !1 }) {
1203
+ let [m, h] = d(() => Et(a)), [g, _] = d(!1), [v, y] = d(!1), [b, x] = d(() => {
1204
+ if (typeof window > "u" || !s) return Math.min(n, Et(a));
1205
+ let e = window.localStorage.getItem(s), t = e ? Number(e) : NaN, i = Et(a);
1153
1206
  return Number.isFinite(t) && t >= r && t <= i ? t : Math.min(n, i);
1154
- }), y = u(!1), b = u(0), x = u(_);
1207
+ }), S = u(!1), C = u(0), w = u(b);
1155
1208
  o(() => {
1156
1209
  if (typeof window > "u") return;
1157
1210
  let e = () => {
1158
- let e = wt(a);
1159
- m(e), v((t) => Math.min(t, e));
1211
+ let e = Et(a);
1212
+ h(e), x((t) => Math.min(t, e));
1160
1213
  };
1161
1214
  return window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
1162
1215
  }, [a]), o(() => {
1163
- !s || typeof window > "u" || window.localStorage.setItem(s, String(_));
1164
- }, [s, _]), o(() => {
1165
- l?.(h ? Ct : _);
1216
+ !s || typeof window > "u" || window.localStorage.setItem(s, String(b));
1217
+ }, [s, b]), o(() => {
1218
+ l?.(g ? Tt : b);
1166
1219
  }, [
1167
- _,
1168
- h,
1220
+ b,
1221
+ g,
1169
1222
  l
1170
1223
  ]);
1171
- let S = i((e) => {
1172
- e.preventDefault(), h && g(!1), y.current = !0, b.current = e.clientX, x.current = h ? r : _, document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
1224
+ let T = i((e) => {
1225
+ e.preventDefault(), g && _(!1), S.current = !0, y(!0), C.current = e.clientX, w.current = g ? r : b, document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
1173
1226
  let n = e.clientX, i = null, a = () => {
1174
- if (i = null, !y.current) return;
1175
- let e = n - b.current, a = t === "right" ? -e : e;
1176
- v(Math.max(r, Math.min(p, x.current + a)));
1227
+ if (i = null, !S.current) return;
1228
+ let e = n - C.current, a = t === "right" ? -e : e;
1229
+ x(Math.max(r, Math.min(m, w.current + a)));
1177
1230
  }, o = (e) => {
1178
- y.current && (n = e.clientX, i ??= requestAnimationFrame(a));
1231
+ S.current && (n = e.clientX, i ??= requestAnimationFrame(a));
1179
1232
  }, s = () => {
1180
- y.current = !1, i != null && (cancelAnimationFrame(i), i = null), document.body.style.cursor = "", document.body.style.userSelect = "", window.removeEventListener("pointermove", o), window.removeEventListener("pointerup", s);
1233
+ S.current = !1, y(!1), i != null && (cancelAnimationFrame(i), i = null), document.body.style.cursor = "", document.body.style.userSelect = "", window.removeEventListener("pointermove", o), window.removeEventListener("pointerup", s);
1181
1234
  };
1182
1235
  window.addEventListener("pointermove", o), window.addEventListener("pointerup", s);
1183
1236
  }, [
1184
1237
  t,
1185
- _,
1238
+ b,
1186
1239
  r,
1187
- p,
1188
- h
1189
- ]), C = i(() => {
1190
- g((e) => !e);
1191
- }, []), w = i((e) => {
1240
+ m,
1241
+ g
1242
+ ]), E = i(() => {
1243
+ _((e) => !e);
1244
+ }, []), O = i((e) => {
1192
1245
  let n = e.shiftKey ? 32 : 8;
1193
- e.key === "ArrowLeft" ? (e.preventDefault(), g(!1), v((e) => Math.max(r, Math.min(p, e + (t === "right" ? n : -n))))) : e.key === "ArrowRight" ? (e.preventDefault(), g(!1), v((e) => Math.max(r, Math.min(p, e + (t === "right" ? -n : n))))) : (e.key === "Enter" || e.key === " ") && (e.preventDefault(), g((e) => !e));
1246
+ e.key === "ArrowLeft" ? (e.preventDefault(), _(!1), x((e) => Math.max(r, Math.min(m, e + (t === "right" ? n : -n))))) : e.key === "ArrowRight" ? (e.preventDefault(), _(!1), x((e) => Math.max(r, Math.min(m, e + (t === "right" ? -n : n))))) : (e.key === "Enter" || e.key === " ") && (e.preventDefault(), _((e) => !e));
1194
1247
  }, [
1195
1248
  t,
1196
1249
  r,
1197
- p
1198
- ]), T = h ? Ct : _;
1250
+ m
1251
+ ]), k = p ? 0 : g ? Tt : b;
1199
1252
  return /* @__PURE__ */ U("aside", {
1200
- className: `fcc-fpp-sidebar fcc-fpp-sidebar-${t} fcc-fpp-sidebar-resizable ${h ? "fcc-fpp-sidebar-collapsed" : ""} ${c}`,
1201
- style: { width: `${T}px` },
1202
- children: [/* @__PURE__ */ H("div", {
1253
+ className: `fcc-fpp-sidebar fcc-fpp-sidebar-${t} fcc-fpp-sidebar-resizable ${g ? "fcc-fpp-sidebar-collapsed" : ""} ${p ? "fcc-fpp-sidebar-hidden" : ""} ${c}`,
1254
+ style: {
1255
+ width: `${k}px`,
1256
+ transition: v ? "none" : "width 220ms ease, border-color var(--transition-fast)"
1257
+ },
1258
+ "aria-hidden": p,
1259
+ children: [!p && /* @__PURE__ */ H("div", {
1203
1260
  role: "separator",
1204
1261
  "aria-orientation": "vertical",
1205
- "aria-label": `Resize ${t} sidebar (double-click to ${h ? "expand" : "collapse"})`,
1206
- "aria-expanded": !h,
1262
+ "aria-label": `Resize ${t} sidebar (double-click to ${g ? "expand" : "collapse"})`,
1263
+ "aria-expanded": !g,
1207
1264
  tabIndex: 0,
1208
1265
  className: `fcc-fpp-sidebar-resizer fcc-fpp-sidebar-resizer-${t}`,
1209
- onPointerDown: S,
1210
- onDoubleClick: C,
1211
- onKeyDown: w,
1212
- title: h ? "Double-click to expand" : "Drag to resize, double-click to collapse",
1266
+ onPointerDown: T,
1267
+ onDoubleClick: E,
1268
+ onKeyDown: O,
1269
+ title: g ? "Double-click to expand" : "Drag to resize, double-click to collapse",
1213
1270
  children: /* @__PURE__ */ H("span", {
1214
1271
  className: "fcc-fpp-sidebar-resizer-grip",
1215
1272
  "aria-hidden": "true",
1216
- children: /* @__PURE__ */ H(E, { size: 10 })
1273
+ children: /* @__PURE__ */ H(D, { size: 10 })
1217
1274
  })
1218
- }), !h && /* @__PURE__ */ U("div", {
1275
+ }), !g && !p && /* @__PURE__ */ U("div", {
1219
1276
  className: "fcc-fpp-sidebar-inner",
1220
1277
  children: [/* @__PURE__ */ H("div", {
1221
1278
  className: "fcc-fpp-sidebar-body",
@@ -1227,7 +1284,7 @@ function Tt({ children: e, side: t = "right", defaultWidth: n = 320, minWidth: r
1227
1284
  })]
1228
1285
  });
1229
1286
  }
1230
- function Et({ children: e, collapsed: t = !1, onCollapsedChange: n, className: r = "", ariaLabel: i = "Document controls", showMinimize: a = !0 }) {
1287
+ function Ot({ children: e, collapsed: t = !1, onCollapsedChange: n, className: r = "", ariaLabel: i = "Document controls", showMinimize: a = !0 }) {
1231
1288
  return /* @__PURE__ */ H("div", {
1232
1289
  className: `fcc-fpp-bottom-anchor ${t ? "fcc-fpp-bottom-anchor--collapsed" : ""} ${r}`,
1233
1290
  children: /* @__PURE__ */ U("div", {
@@ -1254,7 +1311,7 @@ function Et({ children: e, collapsed: t = !1, onCollapsedChange: n, className: r
1254
1311
  }
1255
1312
  //#endregion
1256
1313
  //#region src/components/ui/Accordion.jsx
1257
- function Dt({ title: e, header: t, defaultOpen: n = !1, className: r = "", contentClassName: i = "", children: a }) {
1314
+ function kt({ title: e, header: t, defaultOpen: n = !1, className: r = "", contentClassName: i = "", children: a }) {
1258
1315
  let [o, s] = d(n);
1259
1316
  return /* @__PURE__ */ U("div", {
1260
1317
  className: `accordion-item ${r}`,
@@ -1268,7 +1325,7 @@ function Dt({ title: e, header: t, defaultOpen: n = !1, className: r = "", conte
1268
1325
  children: e
1269
1326
  }), /* @__PURE__ */ H("span", {
1270
1327
  className: "accordion-trigger-chevron",
1271
- children: H(o ? y : b, { size: 14 })
1328
+ children: H(o ? y : x, { size: 14 })
1272
1329
  })]
1273
1330
  }), /* @__PURE__ */ H("div", {
1274
1331
  className: `accordion-collapse ${o ? "open" : ""}`,
@@ -1282,7 +1339,7 @@ function Dt({ title: e, header: t, defaultOpen: n = !1, className: r = "", conte
1282
1339
  })]
1283
1340
  });
1284
1341
  }
1285
- function Ot({ items: e = [], className: t = "" }) {
1342
+ function At({ items: e = [], className: t = "" }) {
1286
1343
  let [n, r] = d(/* @__PURE__ */ new Set());
1287
1344
  function i(e) {
1288
1345
  r((t) => {
@@ -1306,7 +1363,7 @@ function Ot({ items: e = [], className: t = "" }) {
1306
1363
  children: e.title
1307
1364
  }), /* @__PURE__ */ H("span", {
1308
1365
  className: "accordion-trigger-chevron",
1309
- children: H(t ? y : b, { size: 14 })
1366
+ children: H(t ? y : x, { size: 14 })
1310
1367
  })]
1311
1368
  }), /* @__PURE__ */ H("div", {
1312
1369
  className: `accordion-collapse ${t ? "open" : ""}`,
@@ -1324,12 +1381,12 @@ function Ot({ items: e = [], className: t = "" }) {
1324
1381
  }
1325
1382
  //#endregion
1326
1383
  //#region src/components/ui/Avatar.jsx
1327
- var kt = {
1384
+ var jt = {
1328
1385
  sm: "avatar-sm",
1329
1386
  md: "",
1330
1387
  lg: "avatar-lg",
1331
1388
  xl: "avatar-xl"
1332
- }, At = [
1389
+ }, Mt = [
1333
1390
  "#5e6ad2",
1334
1391
  "#5bb98e",
1335
1392
  "#c9a84e",
@@ -1338,13 +1395,13 @@ var kt = {
1338
1395
  "#5a8ebf",
1339
1396
  "#c4a06a"
1340
1397
  ];
1341
- function jt(e) {
1398
+ function Nt(e) {
1342
1399
  let t = 0;
1343
1400
  for (let n = 0; n < e.length; n++) t = e.charCodeAt(n) + ((t << 5) - t);
1344
- return At[Math.abs(t) % At.length];
1401
+ return Mt[Math.abs(t) % Mt.length];
1345
1402
  }
1346
1403
  function q({ imageUrl: e, initials: t, name: n, size: r = "md", className: i = "", style: a = {} }) {
1347
- let [o, s] = d(!1), c = t || (n ? n.split(" ").map((e) => e[0]).join("").slice(0, 2).toUpperCase() : "?"), l = a.background || jt(c), u = kt[r] || "";
1404
+ let [o, s] = d(!1), c = t || (n ? n.split(" ").map((e) => e[0]).join("").slice(0, 2).toUpperCase() : "?"), l = a.background || Nt(c), u = jt[r] || "";
1348
1405
  return e && !o ? /* @__PURE__ */ H("img", {
1349
1406
  src: e,
1350
1407
  alt: n || "",
@@ -1365,7 +1422,7 @@ function q({ imageUrl: e, initials: t, name: n, size: r = "md", className: i = "
1365
1422
  }
1366
1423
  //#endregion
1367
1424
  //#region src/components/ui/Badge.jsx
1368
- var Mt = {
1425
+ var Pt = {
1369
1426
  default: "var(--text-quaternary)",
1370
1427
  secondary: "var(--text-quaternary)",
1371
1428
  success: "var(--accent-green)",
@@ -1377,7 +1434,7 @@ var Mt = {
1377
1434
  orange: "var(--accent-orange)"
1378
1435
  };
1379
1436
  function J({ variant: e = "default", className: t = "", children: n, showDot: r = !0, ...i }) {
1380
- let a = Mt[e] || Mt.default;
1437
+ let a = Pt[e] || Pt.default;
1381
1438
  return /* @__PURE__ */ U("span", {
1382
1439
  className: `badge ${r ? "" : "badge--no-dot"} ${t}`.trim(),
1383
1440
  ...i,
@@ -1389,7 +1446,7 @@ function J({ variant: e = "default", className: t = "", children: n, showDot: r
1389
1446
  }
1390
1447
  //#endregion
1391
1448
  //#region src/components/ui/Button.jsx
1392
- var Nt = {
1449
+ var Ft = {
1393
1450
  default: "btn-primary",
1394
1451
  destructive: "btn-danger",
1395
1452
  success: "btn-success",
@@ -1399,7 +1456,7 @@ var Nt = {
1399
1456
  muted: "btn-muted",
1400
1457
  ghost: "btn-ghost",
1401
1458
  link: "btn-link"
1402
- }, Pt = {
1459
+ }, It = {
1403
1460
  sm: "btn-sm",
1404
1461
  default: "",
1405
1462
  lg: "btn-lg",
@@ -1409,66 +1466,66 @@ var Nt = {
1409
1466
  ref: a,
1410
1467
  className: [
1411
1468
  "btn",
1412
- Nt[e],
1413
- Pt[t],
1469
+ Ft[e],
1470
+ It[t],
1414
1471
  n
1415
1472
  ].filter(Boolean).join(" "),
1416
1473
  ...i,
1417
1474
  children: r
1418
1475
  });
1419
- }), Ft = {
1476
+ }), Lt = {
1420
1477
  default: "card-default",
1421
1478
  green: "card-green",
1422
1479
  red: "card-red",
1423
1480
  yellow: "card-yellow"
1424
- }, It = n(function({ variant: e = "default", className: t = "", children: n, ...r }, i) {
1481
+ }, Rt = n(function({ variant: e = "default", className: t = "", children: n, ...r }, i) {
1425
1482
  return /* @__PURE__ */ H("div", {
1426
1483
  ref: i,
1427
1484
  className: [
1428
1485
  "card",
1429
- Ft[e],
1486
+ Lt[e],
1430
1487
  t
1431
1488
  ].filter(Boolean).join(" "),
1432
1489
  ...r,
1433
1490
  children: n
1434
1491
  });
1435
- }), Lt = n(function({ className: e = "", children: t, ...n }, r) {
1492
+ }), zt = n(function({ className: e = "", children: t, ...n }, r) {
1436
1493
  return /* @__PURE__ */ H("div", {
1437
1494
  ref: r,
1438
1495
  className: `card-header ${e}`,
1439
1496
  ...n,
1440
1497
  children: t
1441
1498
  });
1442
- }), Rt = n(function({ className: e = "", children: t, ...n }, r) {
1499
+ }), Bt = n(function({ className: e = "", children: t, ...n }, r) {
1443
1500
  return /* @__PURE__ */ H("h3", {
1444
1501
  ref: r,
1445
1502
  className: `card-title ${e}`,
1446
1503
  ...n,
1447
1504
  children: t
1448
1505
  });
1449
- }), zt = n(function({ className: e = "", children: t, ...n }, r) {
1506
+ }), Vt = n(function({ className: e = "", children: t, ...n }, r) {
1450
1507
  return /* @__PURE__ */ H("p", {
1451
1508
  ref: r,
1452
1509
  className: `card-description ${e}`,
1453
1510
  ...n,
1454
1511
  children: t
1455
1512
  });
1456
- }), Bt = n(function({ className: e = "", children: t, ...n }, r) {
1513
+ }), Ht = n(function({ className: e = "", children: t, ...n }, r) {
1457
1514
  return /* @__PURE__ */ H("div", {
1458
1515
  ref: r,
1459
1516
  className: `card-body ${e}`,
1460
1517
  ...n,
1461
1518
  children: t
1462
1519
  });
1463
- }), Vt = n(function({ className: e = "", children: t, ...n }, r) {
1520
+ }), Ut = n(function({ className: e = "", children: t, ...n }, r) {
1464
1521
  return /* @__PURE__ */ H("div", {
1465
1522
  ref: r,
1466
1523
  className: `card-footer ${e}`,
1467
1524
  ...n,
1468
1525
  children: t
1469
1526
  });
1470
- }), Ht = 220;
1471
- function Ut({ open: e, onClose: t, children: n, className: r = "", overlayClassName: i = "", contained: a = !1 }) {
1527
+ }), Wt = 220;
1528
+ function Gt({ open: e, onClose: t, children: n, className: r = "", overlayClassName: i = "", contained: a = !1 }) {
1472
1529
  let s = u(null), [c, l] = d(e ? "open" : "closed"), f = e || c !== "closed";
1473
1530
  return o(() => {
1474
1531
  if (!a) return f ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
@@ -1485,7 +1542,7 @@ function Ut({ open: e, onClose: t, children: n, className: r = "", overlayClassN
1485
1542
  return () => cancelAnimationFrame(e);
1486
1543
  }
1487
1544
  if (c === "closed") return;
1488
- let t = requestAnimationFrame(() => l("closing")), n = window.setTimeout(() => l("closed"), Ht);
1545
+ let t = requestAnimationFrame(() => l("closing")), n = window.setTimeout(() => l("closed"), Wt);
1489
1546
  return () => {
1490
1547
  cancelAnimationFrame(t), window.clearTimeout(n);
1491
1548
  };
@@ -1502,7 +1559,7 @@ function Ut({ open: e, onClose: t, children: n, className: r = "", overlayClassN
1502
1559
  })
1503
1560
  }) : null;
1504
1561
  }
1505
- function Wt({ children: e, onClose: t, className: n = "" }) {
1562
+ function Kt({ children: e, onClose: t, className: n = "" }) {
1506
1563
  return /* @__PURE__ */ U("div", {
1507
1564
  className: `dialog-header ${n}`,
1508
1565
  children: [/* @__PURE__ */ H("div", {
@@ -1515,25 +1572,25 @@ function Wt({ children: e, onClose: t, className: n = "" }) {
1515
1572
  })]
1516
1573
  });
1517
1574
  }
1518
- function Gt({ children: e, className: t = "" }) {
1575
+ function qt({ children: e, className: t = "" }) {
1519
1576
  return /* @__PURE__ */ H("h3", {
1520
1577
  className: `dialog-title ${t}`,
1521
1578
  children: e
1522
1579
  });
1523
1580
  }
1524
- function Kt({ children: e, className: t = "" }) {
1581
+ function Jt({ children: e, className: t = "" }) {
1525
1582
  return /* @__PURE__ */ H("p", {
1526
1583
  className: `dialog-description ${t}`,
1527
1584
  children: e
1528
1585
  });
1529
1586
  }
1530
- function qt({ children: e, className: t = "" }) {
1587
+ function Yt({ children: e, className: t = "" }) {
1531
1588
  return /* @__PURE__ */ H("div", {
1532
1589
  className: `dialog-body ${t}`,
1533
1590
  children: e
1534
1591
  });
1535
1592
  }
1536
- function Jt({ children: e, className: t = "" }) {
1593
+ function Xt({ children: e, className: t = "" }) {
1537
1594
  return /* @__PURE__ */ H("div", {
1538
1595
  className: `dialog-footer ${t}`,
1539
1596
  children: e
@@ -1541,7 +1598,7 @@ function Jt({ children: e, className: t = "" }) {
1541
1598
  }
1542
1599
  //#endregion
1543
1600
  //#region src/components/ui/Input.jsx
1544
- var Yt = n(function({ id: e, label: t, labelMode: n = "stacked", description: r, error: i, clearable: a = !1, startIcon: o, endIcon: c, placeholder: l, value: f, defaultValue: p, className: m = "", inputClassName: h = "", disabled: g = !1, type: _ = "text", "aria-describedby": v, "aria-invalid": y, onChange: b, ...x }, S) {
1601
+ var Zt = n(function({ id: e, label: t, labelMode: n = "stacked", description: r, error: i, clearable: a = !1, startIcon: o, endIcon: c, placeholder: l, value: f, defaultValue: p, className: m = "", inputClassName: h = "", disabled: g = !1, type: _ = "text", "aria-describedby": v, "aria-invalid": y, onChange: b, ...x }, S) {
1545
1602
  let C = u(null), w = s(), T = e || w, E = i && i !== !0 ? i : r, D = E ? `${T}-helper` : void 0, O = !!(i || y), k = !!(t && n === "floating"), A = [v, D].filter(Boolean).join(" ") || void 0, j = k ? " " : l, M = f !== void 0, [N, P] = d(() => String(p ?? "")), F = a && !g && (M ? String(f ?? "") : N).length > 0;
1546
1603
  function I(e) {
1547
1604
  C.current = e, typeof S == "function" ? S(e) : S && (S.current = e);
@@ -1635,7 +1692,7 @@ var Yt = n(function({ id: e, label: t, labelMode: n = "stacked", description: r,
1635
1692
  });
1636
1693
  //#endregion
1637
1694
  //#region src/components/ui/DropdownMenu.jsx
1638
- function Xt({ trigger: e, children: t, align: n = "left", className: r = "", sideOffset: i = 6, onOpenChange: a }) {
1695
+ function Qt({ trigger: e, children: t, align: n = "left", className: r = "", sideOffset: i = 6, onOpenChange: a }) {
1639
1696
  let [s, l] = d(!1), [f, p] = d(null), m = u(null), h = u(null);
1640
1697
  return o(() => {
1641
1698
  a?.(s);
@@ -1688,7 +1745,7 @@ function Xt({ trigger: e, children: t, align: n = "left", className: r = "", sid
1688
1745
  }), document.body)]
1689
1746
  });
1690
1747
  }
1691
- function Zt({ icon: e, children: t, shortcut: n, active: r, onClick: i, className: a = "" }) {
1748
+ function $t({ icon: e, children: t, shortcut: n, active: r, onClick: i, className: a = "" }) {
1692
1749
  return /* @__PURE__ */ U("div", {
1693
1750
  className: `dropdown-item ${r ? "active" : ""} ${a}`,
1694
1751
  onClick: i,
@@ -1712,7 +1769,7 @@ function Zt({ icon: e, children: t, shortcut: n, active: r, onClick: i, classNam
1712
1769
  ]
1713
1770
  });
1714
1771
  }
1715
- function Qt({ checked: e, onCheckedChange: t, children: n, className: r = "" }) {
1772
+ function en({ checked: e, onCheckedChange: t, children: n, className: r = "" }) {
1716
1773
  return /* @__PURE__ */ U("div", {
1717
1774
  className: `dropdown-item ${e ? "active" : ""} ${r}`,
1718
1775
  onClick: () => t?.(!e),
@@ -1725,18 +1782,18 @@ function Qt({ checked: e, onCheckedChange: t, children: n, className: r = "" })
1725
1782
  })]
1726
1783
  });
1727
1784
  }
1728
- function $t({ children: e, className: t = "" }) {
1785
+ function tn({ children: e, className: t = "" }) {
1729
1786
  return /* @__PURE__ */ H("div", {
1730
1787
  className: `dropdown-label ${t}`,
1731
1788
  children: e
1732
1789
  });
1733
1790
  }
1734
- function en({ className: e = "" }) {
1791
+ function nn({ className: e = "" }) {
1735
1792
  return /* @__PURE__ */ H("div", { className: `dropdown-divider ${e}` });
1736
1793
  }
1737
1794
  //#endregion
1738
1795
  //#region src/components/ui/SearchableSelect.jsx
1739
- function tn({ options: e = [], value: t, onChange: n, placeholder: r = "Select...", searchPlaceholder: i = "Search...", allowEmpty: a = !1, disabled: s = !1, className: l = "" }) {
1796
+ function rn({ options: e = [], value: t, onChange: n, placeholder: r = "Select...", searchPlaceholder: i = "Search...", allowEmpty: a = !1, disabled: s = !1, className: l = "" }) {
1740
1797
  let [f, p] = d(!1), [m, h] = d(""), [_, v] = d(-1), [b, x] = d(null), S = u(null), C = u(null), w = u(null), T = e.filter((e) => e.label.toLowerCase().includes(m.toLowerCase()) || e.description && e.description.toLowerCase().includes(m.toLowerCase())), E = e.find((e) => e.value === t);
1741
1798
  o(() => {
1742
1799
  f && w.current && w.current.focus();
@@ -1861,7 +1918,7 @@ function tn({ options: e = [], value: t, onChange: n, placeholder: r = "Select..
1861
1918
  }
1862
1919
  //#endregion
1863
1920
  //#region src/components/ui/Sheet.jsx
1864
- function nn({ open: e, onClose: t, side: n = "right", title: r, children: i, className: a = "" }) {
1921
+ function an({ open: e, onClose: t, side: n = "right", title: r, children: i, className: a = "" }) {
1865
1922
  let s = u(null);
1866
1923
  return o(() => (e ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
1867
1924
  document.body.style.overflow = "";
@@ -1895,7 +1952,7 @@ function nn({ open: e, onClose: t, side: n = "right", title: r, children: i, cla
1895
1952
  })
1896
1953
  }) : null;
1897
1954
  }
1898
- function rn({ children: e, className: t = "" }) {
1955
+ function on({ children: e, className: t = "" }) {
1899
1956
  return /* @__PURE__ */ H("div", {
1900
1957
  className: `sheet-footer ${t}`,
1901
1958
  children: e
@@ -1903,17 +1960,17 @@ function rn({ children: e, className: t = "" }) {
1903
1960
  }
1904
1961
  //#endregion
1905
1962
  //#region src/components/ui/StatusMetric.jsx
1906
- function an(...e) {
1963
+ function sn(...e) {
1907
1964
  return e.filter(Boolean).join(" ");
1908
1965
  }
1909
- var on = {
1966
+ var cn = {
1910
1967
  default: "",
1911
1968
  warning: "status-metric--warning"
1912
1969
  };
1913
- function sn({ children: e, tone: t = "default", showIcon: n = !0, icon: r, iconSize: i = 12, className: a = "" }) {
1914
- let o = r || (t === "warning" ? p : C);
1970
+ function ln({ children: e, tone: t = "default", showIcon: n = !0, icon: r, iconSize: i = 12, className: a = "" }) {
1971
+ let o = r || (t === "warning" ? p : w);
1915
1972
  return /* @__PURE__ */ U("span", {
1916
- className: an("status-metric", on[t], a),
1973
+ className: sn("status-metric", cn[t], a),
1917
1974
  children: [n && o && /* @__PURE__ */ H("span", {
1918
1975
  className: "status-metric-icon",
1919
1976
  children: /* @__PURE__ */ H(o, { size: i })
@@ -1925,7 +1982,7 @@ function sn({ children: e, tone: t = "default", showIcon: n = !0, icon: r, iconS
1925
1982
  }
1926
1983
  //#endregion
1927
1984
  //#region src/components/ui/Switch.jsx
1928
- function cn({ checked: e = !1, onCheckedChange: t, disabled: n = !1, size: r = "md", label: i }) {
1985
+ function un({ checked: e = !1, onCheckedChange: t, disabled: n = !1, size: r = "md", label: i }) {
1929
1986
  return /* @__PURE__ */ U("div", {
1930
1987
  className: "toggle-row",
1931
1988
  children: [i && /* @__PURE__ */ H("span", {
@@ -1943,13 +2000,13 @@ function cn({ checked: e = !1, onCheckedChange: t, disabled: n = !1, size: r = "
1943
2000
  }
1944
2001
  //#endregion
1945
2002
  //#region src/components/ui/Tabs.jsx
1946
- var ln = e({
2003
+ var dn = e({
1947
2004
  value: "",
1948
2005
  onChange: () => {},
1949
2006
  registerTrigger: () => {},
1950
2007
  getTriggerNode: () => null
1951
2008
  });
1952
- function un({ defaultValue: e, value: t, onValueChange: n, children: r, className: a = "" }) {
2009
+ function fn({ defaultValue: e, value: t, onValueChange: n, children: r, className: a = "" }) {
1953
2010
  let [o, s] = d(e || ""), c = u(/* @__PURE__ */ new Map()), l = t === void 0 ? o : t, f = n || s, p = i((e, t) => {
1954
2011
  if (t) {
1955
2012
  c.current.set(e, t);
@@ -1957,7 +2014,7 @@ function un({ defaultValue: e, value: t, onValueChange: n, children: r, classNam
1957
2014
  }
1958
2015
  c.current.delete(e);
1959
2016
  }, []), m = i((e) => c.current.get(e) || null, []);
1960
- return /* @__PURE__ */ H(ln.Provider, {
2017
+ return /* @__PURE__ */ H(dn.Provider, {
1961
2018
  value: {
1962
2019
  value: l,
1963
2020
  onChange: f,
@@ -1970,8 +2027,8 @@ function un({ defaultValue: e, value: t, onValueChange: n, children: r, classNam
1970
2027
  })
1971
2028
  });
1972
2029
  }
1973
- function dn({ children: e, className: t = "" }) {
1974
- let { value: n, getTriggerNode: r } = a(ln), i = u(null);
2030
+ function pn({ children: e, className: t = "" }) {
2031
+ let { value: n, getTriggerNode: r } = a(dn), i = u(null);
1975
2032
  return c(() => {
1976
2033
  let e = i.current, t = r(n);
1977
2034
  if (!e) return;
@@ -1997,8 +2054,8 @@ function dn({ children: e, className: t = "" }) {
1997
2054
  }), e]
1998
2055
  });
1999
2056
  }
2000
- function fn({ value: e, children: t, className: n = "" }) {
2001
- let { value: r, onChange: i, registerTrigger: o } = a(ln), s = r === e;
2057
+ function mn({ value: e, children: t, className: n = "" }) {
2058
+ let { value: r, onChange: i, registerTrigger: o } = a(dn), s = r === e;
2002
2059
  return /* @__PURE__ */ H("button", {
2003
2060
  ref: (t) => o(e, t),
2004
2061
  className: `tab ${s ? "active" : ""} ${n}`,
@@ -2009,8 +2066,8 @@ function fn({ value: e, children: t, className: n = "" }) {
2009
2066
  children: t
2010
2067
  });
2011
2068
  }
2012
- function pn({ value: e, children: t, className: n = "" }) {
2013
- let { value: r } = a(ln);
2069
+ function hn({ value: e, children: t, className: n = "" }) {
2070
+ let { value: r } = a(dn);
2014
2071
  return r === e ? /* @__PURE__ */ H("div", {
2015
2072
  className: n,
2016
2073
  role: "tabpanel",
@@ -2019,7 +2076,7 @@ function pn({ value: e, children: t, className: n = "" }) {
2019
2076
  }
2020
2077
  //#endregion
2021
2078
  //#region src/components/ui/Textarea.jsx
2022
- var mn = n(function({ className: e = "", startAdornment: t, endAdornment: n, ...r }, i) {
2079
+ var gn = n(function({ className: e = "", startAdornment: t, endAdornment: n, ...r }, i) {
2023
2080
  return t || n ? /* @__PURE__ */ U("div", {
2024
2081
  className: ["textarea-wrapper", e].filter(Boolean).join(" "),
2025
2082
  children: [
@@ -2045,7 +2102,7 @@ var mn = n(function({ className: e = "", startAdornment: t, endAdornment: n, ...
2045
2102
  });
2046
2103
  //#endregion
2047
2104
  //#region src/components/ui/Tooltip.jsx
2048
- function hn({ content: e, side: t = "top", children: n, className: r = "" }) {
2105
+ function _n({ content: e, side: t = "top", children: n, className: r = "" }) {
2049
2106
  let [i, a] = d(!1), [s, l] = d(null), f = u(null), p = u(null), m = u(null);
2050
2107
  function h() {
2051
2108
  m.current = setTimeout(() => a(!0), 300);
@@ -2096,17 +2153,17 @@ function hn({ content: e, side: t = "top", children: n, className: r = "" }) {
2096
2153
  }
2097
2154
  //#endregion
2098
2155
  //#region src/components/ui/viewModeDefaults.js
2099
- var gn = {
2100
- kanban: w,
2101
- board: w,
2102
- columns: w,
2103
- table: A,
2104
- list: A,
2105
- rows: A,
2106
- grid: k,
2156
+ var vn = {
2157
+ kanban: T,
2158
+ board: T,
2159
+ columns: T,
2160
+ table: j,
2161
+ list: j,
2162
+ rows: j,
2163
+ grid: A,
2107
2164
  calendar: h,
2108
- map: N
2109
- }, _n = [{
2165
+ map: P
2166
+ }, yn = [{
2110
2167
  value: "kanban",
2111
2168
  label: "Kanban",
2112
2169
  title: "Board View"
@@ -2117,13 +2174,13 @@ var gn = {
2117
2174
  }];
2118
2175
  //#endregion
2119
2176
  //#region src/components/ui/ViewModeToggle.jsx
2120
- function vn(e) {
2121
- return e.icon ? e.icon : gn[e.value] ?? null;
2177
+ function bn(e) {
2178
+ return e.icon ? e.icon : vn[e.value] ?? null;
2122
2179
  }
2123
- function yn(e, n) {
2180
+ function xn(e, n) {
2124
2181
  return e ? r(e) ? e : t(e, { size: n }) : null;
2125
2182
  }
2126
- function bn({ options: e = _n, value: t, defaultValue: n, onValueChange: r, ariaLabel: a = "View mode", iconSize: s = 16, showLabels: l = !1, className: f = "", optionClassName: p = "" }) {
2183
+ function Sn({ options: e = yn, value: t, defaultValue: n, onValueChange: r, ariaLabel: a = "View mode", iconSize: s = 16, showLabels: l = !1, className: f = "", optionClassName: p = "" }) {
2127
2184
  let m = u(null), h = u(null), g = u(/* @__PURE__ */ new Map()), [_, v] = d(n ?? e[0]?.value ?? ""), y = t === void 0 ? _ : t, b = i(() => {
2128
2185
  let e = h.current, t = g.current.get(y);
2129
2186
  if (e) {
@@ -2185,7 +2242,7 @@ function bn({ options: e = _n, value: t, defaultValue: n, onValueChange: r, aria
2185
2242
  "aria-hidden": "true",
2186
2243
  className: "view-mode-toggle-indicator"
2187
2244
  }), e.map((e) => {
2188
- let t = e.value === y, n = yn(vn(e), s);
2245
+ let t = e.value === y, n = xn(bn(e), s);
2189
2246
  return /* @__PURE__ */ U("button", {
2190
2247
  type: "button",
2191
2248
  "aria-pressed": t,
@@ -2215,10 +2272,10 @@ function bn({ options: e = _n, value: t, defaultValue: n, onValueChange: r, aria
2215
2272
  }
2216
2273
  //#endregion
2217
2274
  //#region src/components/ui/WorkspaceTabs.jsx
2218
- function xn(e, n) {
2275
+ function Cn(e, n) {
2219
2276
  return e ? r(e) ? e : t(e, { size: n }) : null;
2220
2277
  }
2221
- function Sn({ items: e = [], value: t, defaultValue: n, onValueChange: r, ariaLabel: a = "Workspace tabs", iconSize: s = 14, variant: l = "plain", className: f = "", itemClassName: p = "" }) {
2278
+ function wn({ items: e = [], value: t, defaultValue: n, onValueChange: r, ariaLabel: a = "Workspace tabs", iconSize: s = 14, variant: l = "plain", className: f = "", itemClassName: p = "" }) {
2222
2279
  let m = u(null), h = u(null), g = u(/* @__PURE__ */ new Map()), [_, v] = d(n ?? e[0]?.id ?? ""), y = t === void 0 ? _ : t, b = i(() => {
2223
2280
  let e = h.current, t = g.current.get(y);
2224
2281
  if (e) {
@@ -2280,7 +2337,7 @@ function Sn({ items: e = [], value: t, defaultValue: n, onValueChange: r, ariaLa
2280
2337
  "aria-hidden": "true",
2281
2338
  className: "workspace-tabs-indicator"
2282
2339
  }), e.map((e) => {
2283
- let t = e.id === y, n = xn(e.icon, s);
2340
+ let t = e.id === y, n = Cn(e.icon, s);
2284
2341
  return /* @__PURE__ */ U("button", {
2285
2342
  type: "button",
2286
2343
  role: "tab",
@@ -2318,7 +2375,7 @@ function Sn({ items: e = [], value: t, defaultValue: n, onValueChange: r, ariaLa
2318
2375
  //#endregion
2319
2376
  //#region src/components/ui/CallControlsBar.jsx
2320
2377
  function X({ icon: e, label: t, onClick: n, active: r, danger: i, compact: a, title: o }) {
2321
- return /* @__PURE__ */ H(hn, {
2378
+ return /* @__PURE__ */ H(_n, {
2322
2379
  content: o,
2323
2380
  children: /* @__PURE__ */ U("button", {
2324
2381
  type: "button",
@@ -2342,7 +2399,7 @@ function X({ icon: e, label: t, onClick: n, active: r, danger: i, compact: a, ti
2342
2399
  })
2343
2400
  });
2344
2401
  }
2345
- function Cn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onInvite: a, onKeypad: o, onEnd: s, compact: c = !1, hideEnd: l = !1, className: u = "" }) {
2402
+ function Tn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onInvite: a, onKeypad: o, onEnd: s, compact: c = !1, hideEnd: l = !1, className: u = "" }) {
2346
2403
  return /* @__PURE__ */ U("div", {
2347
2404
  className: `call-controls-bar ${u}`,
2348
2405
  style: {
@@ -2353,7 +2410,7 @@ function Cn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onIn
2353
2410
  },
2354
2411
  children: [
2355
2412
  /* @__PURE__ */ H(X, {
2356
- icon: e ? I : F,
2413
+ icon: e ? L : I,
2357
2414
  label: e ? "Unmute" : "Mute",
2358
2415
  onClick: n,
2359
2416
  active: e,
@@ -2361,7 +2418,7 @@ function Cn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onIn
2361
2418
  title: "Mute (M)"
2362
2419
  }),
2363
2420
  /* @__PURE__ */ H(X, {
2364
- icon: t ? ce : ee,
2421
+ icon: t ? le : te,
2365
2422
  label: t ? "Resume" : "Hold",
2366
2423
  onClick: r,
2367
2424
  active: t,
@@ -2369,28 +2426,28 @@ function Cn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onIn
2369
2426
  title: "Hold (H)"
2370
2427
  }),
2371
2428
  /* @__PURE__ */ H(X, {
2372
- icon: ne,
2429
+ icon: re,
2373
2430
  label: "Transfer",
2374
2431
  onClick: i,
2375
2432
  compact: c,
2376
2433
  title: "Transfer (T)"
2377
2434
  }),
2378
2435
  /* @__PURE__ */ H(X, {
2379
- icon: fe,
2436
+ icon: pe,
2380
2437
  label: "Invite",
2381
2438
  onClick: a,
2382
2439
  compact: c,
2383
2440
  title: "Invite observer"
2384
2441
  }),
2385
2442
  /* @__PURE__ */ H(X, {
2386
- icon: D,
2443
+ icon: O,
2387
2444
  label: "Keypad",
2388
2445
  onClick: o,
2389
2446
  compact: c,
2390
2447
  title: "Keypad"
2391
2448
  }),
2392
2449
  !l && /* @__PURE__ */ H(X, {
2393
- icon: ae,
2450
+ icon: oe,
2394
2451
  label: "End",
2395
2452
  onClick: s,
2396
2453
  danger: !0,
@@ -2402,15 +2459,15 @@ function Cn({ isMuted: e, isOnHold: t, onMute: n, onHold: r, onTransfer: i, onIn
2402
2459
  }
2403
2460
  //#endregion
2404
2461
  //#region src/components/phone/phoneUtils.js
2405
- function wn(e) {
2462
+ function En(e) {
2406
2463
  return e == null || Number.isNaN(e) ? "0:00" : `${Math.floor(e / 60)}:${Math.floor(e % 60).toString().padStart(2, "0")}`;
2407
2464
  }
2408
- function Tn(e) {
2465
+ function Dn(e) {
2409
2466
  if (!e) return "";
2410
2467
  let t = new Date(e).getTime() - Date.now();
2411
- return t <= 0 ? "now" : wn(Math.ceil(t / 1e3));
2468
+ return t <= 0 ? "now" : En(Math.ceil(t / 1e3));
2412
2469
  }
2413
- function En(e) {
2470
+ function On(e) {
2414
2471
  if (!e) return "";
2415
2472
  let t = Date.now() - new Date(e).getTime(), n = Math.floor(t / 1e3);
2416
2473
  if (n < 60) return "just now";
@@ -2421,12 +2478,12 @@ function En(e) {
2421
2478
  let a = Math.floor(i / 24);
2422
2479
  return a === 1 ? "Yesterday" : a < 7 ? `${a}d ago` : new Date(e).toLocaleDateString();
2423
2480
  }
2424
- function Dn(e) {
2481
+ function kn(e) {
2425
2482
  if (!e) return "none";
2426
2483
  let t = new Date(e).getTime() - Date.now();
2427
2484
  return t <= 0 ? "overdue" : t < 30 * 1e3 ? "urgent" : t < 120 * 1e3 ? "warning" : "normal";
2428
2485
  }
2429
- var On = {
2486
+ var An = {
2430
2487
  intake: "Intake",
2431
2488
  plan_review: "Plan Review",
2432
2489
  inspections: "Inspections",
@@ -2436,31 +2493,31 @@ var On = {
2436
2493
  sales: "Sales",
2437
2494
  escalations: "Escalations"
2438
2495
  };
2439
- function kn(e) {
2440
- return e ? On[e] ? On[e] : e.split("_").map((e) => e.charAt(0).toUpperCase() + e.slice(1)).join(" ") : "";
2496
+ function jn(e) {
2497
+ return e ? An[e] ? An[e] : e.split("_").map((e) => e.charAt(0).toUpperCase() + e.slice(1)).join(" ") : "";
2441
2498
  }
2442
- var An = {
2499
+ var Mn = {
2443
2500
  client: "Client",
2444
2501
  building_department: "Building Dept",
2445
2502
  staff: "Staff",
2446
2503
  unknown: "Unknown"
2447
2504
  };
2448
- function jn(e) {
2449
- return An[e] || "Unknown";
2505
+ function Nn(e) {
2506
+ return Mn[e] || "Unknown";
2450
2507
  }
2451
- var Mn = {
2508
+ var Pn = {
2452
2509
  open: "Open",
2453
2510
  in_progress: "In progress",
2454
2511
  resolved: "Resolved",
2455
2512
  closed: "Closed",
2456
2513
  awaiting_reply: "Awaiting reply"
2457
2514
  };
2458
- function Nn(e) {
2459
- return Mn[e] || (e ? e.replace(/_/g, " ").replace(/\b\w/g, (e) => e.toUpperCase()) : "");
2515
+ function Fn(e) {
2516
+ return Pn[e] || (e ? e.replace(/_/g, " ").replace(/\b\w/g, (e) => e.toUpperCase()) : "");
2460
2517
  }
2461
2518
  //#endregion
2462
2519
  //#region src/components/ui/TicketLinkChip.jsx
2463
- var Pn = {
2520
+ var In = {
2464
2521
  intake: "var(--accent-blue)",
2465
2522
  plan_review: "var(--accent-purple)",
2466
2523
  inspections: "var(--accent-green)",
@@ -2470,7 +2527,7 @@ var Pn = {
2470
2527
  sales: "var(--accent-orange)",
2471
2528
  escalations: "var(--accent-red)"
2472
2529
  };
2473
- function Fn(e) {
2530
+ function Ln(e) {
2474
2531
  switch (e) {
2475
2532
  case "resolved":
2476
2533
  case "closed": return "success";
@@ -2479,12 +2536,12 @@ function Fn(e) {
2479
2536
  default: return "secondary";
2480
2537
  }
2481
2538
  }
2482
- function In(e, t) {
2539
+ function Rn(e, t) {
2483
2540
  return e ? e.length > t ? `${e.slice(0, t - 1)}…` : e : "";
2484
2541
  }
2485
2542
  function Z({ ticket: e, onClick: t, variant: n = "default", className: r = "" }) {
2486
2543
  if (!e) return null;
2487
- let i = Pn[e.department] ?? Pn.tech_support, a = t ? "button" : "span", o = n === "compact" ? `#${e.number}` : `#${e.number} · ${In(e.title, 28)}`;
2544
+ let i = In[e.department] ?? In.tech_support, a = t ? "button" : "span", o = n === "compact" ? `#${e.number}` : `#${e.number} · ${Rn(e.title, 28)}`;
2488
2545
  return n === "detailed" ? /* @__PURE__ */ U(a, {
2489
2546
  type: t ? "button" : void 0,
2490
2547
  onClick: t,
@@ -2528,7 +2585,7 @@ function Z({ ticket: e, onClick: t, variant: n = "default", className: r = "" })
2528
2585
  }),
2529
2586
  /* @__PURE__ */ U("span", {
2530
2587
  style: { color: "var(--text-secondary)" },
2531
- children: ["· ", In(e.title, 40)]
2588
+ children: ["· ", Rn(e.title, 40)]
2532
2589
  })
2533
2590
  ]
2534
2591
  }), /* @__PURE__ */ U("span", {
@@ -2541,10 +2598,10 @@ function Z({ ticket: e, onClick: t, variant: n = "default", className: r = "" })
2541
2598
  variant: "secondary",
2542
2599
  showDot: !1,
2543
2600
  className: "badge--no-dot",
2544
- children: kn(e.department)
2601
+ children: jn(e.department)
2545
2602
  }), e.status && /* @__PURE__ */ H(J, {
2546
- variant: Fn(e.status),
2547
- children: Nn(e.status)
2603
+ variant: Ln(e.status),
2604
+ children: Fn(e.status)
2548
2605
  })]
2549
2606
  })]
2550
2607
  }) : /* @__PURE__ */ U(a, {
@@ -2583,19 +2640,19 @@ function Z({ ticket: e, onClick: t, variant: n = "default", className: r = "" })
2583
2640
  }
2584
2641
  //#endregion
2585
2642
  //#region src/components/ui/PresenceDot.jsx
2586
- var Ln = {
2643
+ var zn = {
2587
2644
  available: "var(--accent-green, #22c55e)",
2588
2645
  busy: "var(--accent-yellow, #f59e0b)",
2589
2646
  in_call: "var(--accent-yellow, #f59e0b)",
2590
2647
  dnd: "var(--accent-red, #ef4444)",
2591
2648
  offline: "var(--text-tertiary, #71717a)"
2592
- }, Rn = {
2649
+ }, Bn = {
2593
2650
  xs: 6,
2594
2651
  sm: 8,
2595
2652
  md: 10
2596
2653
  };
2597
- function zn({ status: e = "offline", size: t = "sm", className: n = "" }) {
2598
- let r = Rn[t] ?? 8, i = Ln[e] ?? Ln.offline;
2654
+ function Vn({ status: e = "offline", size: t = "sm", className: n = "" }) {
2655
+ let r = Bn[t] ?? 8, i = zn[e] ?? zn.offline;
2599
2656
  return /* @__PURE__ */ H("span", {
2600
2657
  className: `presence-dot ${e === "in_call" ? "presence-dot-pulse" : ""} ${n}`,
2601
2658
  style: {
@@ -2612,13 +2669,13 @@ function zn({ status: e = "offline", size: t = "sm", className: n = "" }) {
2612
2669
  }
2613
2670
  //#endregion
2614
2671
  //#region src/components/ui/PresenceAvatar.jsx
2615
- var Bn = {
2672
+ var Hn = {
2616
2673
  sm: "sm",
2617
2674
  md: "md",
2618
2675
  lg: "lg"
2619
2676
  };
2620
- function Vn({ name: e, initials: t, avatarUrl: n, status: r = "offline", activity: i = null, size: a = "md", showActivity: o = !0, className: s = "" }) {
2621
- let c = Bn[a] || "md", l = a === "sm" ? "xs" : a === "md" ? "sm" : "md";
2677
+ function Un({ name: e, initials: t, avatarUrl: n, status: r = "offline", activity: i = null, size: a = "md", showActivity: o = !0, className: s = "" }) {
2678
+ let c = Hn[a] || "md", l = a === "sm" ? "xs" : a === "md" ? "sm" : "md";
2622
2679
  return /* @__PURE__ */ U("div", {
2623
2680
  className: `presence-avatar ${s}`,
2624
2681
  style: {
@@ -2642,7 +2699,7 @@ function Vn({ name: e, initials: t, avatarUrl: n, status: r = "offline", activit
2642
2699
  left: -1,
2643
2700
  top: -1
2644
2701
  },
2645
- children: /* @__PURE__ */ H(zn, {
2702
+ children: /* @__PURE__ */ H(Vn, {
2646
2703
  status: r,
2647
2704
  size: l
2648
2705
  })
@@ -2659,28 +2716,28 @@ function Vn({ name: e, initials: t, avatarUrl: n, status: r = "offline", activit
2659
2716
  }
2660
2717
  //#endregion
2661
2718
  //#region src/components/ui/Callbar.jsx
2662
- var Hn = {
2719
+ var Wn = {
2663
2720
  connecting: "Connecting…",
2664
2721
  ringing: "Ringing…",
2665
2722
  connected: "Connected",
2666
2723
  on_hold: "On hold",
2667
2724
  ending: "Ending…"
2668
- }, Un = {
2725
+ }, Gn = {
2669
2726
  connecting: "info",
2670
2727
  ringing: "info",
2671
2728
  connected: "success",
2672
2729
  on_hold: "warning",
2673
2730
  ending: "error"
2674
2731
  };
2675
- function Wn(e) {
2732
+ function Kn(e) {
2676
2733
  return e === "connected" ? "var(--accent-green)" : e === "on_hold" ? "var(--accent-yellow)" : e === "ending" ? "var(--accent-red)" : "var(--accent-blue)";
2677
2734
  }
2678
- function Gn(e) {
2735
+ function qn(e) {
2679
2736
  return e === "connecting" || e === "ringing";
2680
2737
  }
2681
- function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, durationSec: r = 0, isMuted: i, isOnHold: a, observers: o = [], recordingConsentPending: s = !1, onMute: c, onHold: u, onTransfer: f, onInvite: p, onKeypad: m, onEnd: h, onMinimize: g, minimized: _ = !1, className: v = "" }) {
2682
- let [b, S] = d(!1), C = _ || b, w = Hn[e] || e, T = Gn(e), E = Wn(e), D = l(() => `${Math.floor(r / 60)}:${Math.floor(r % 60).toString().padStart(2, "0")}`, [r]), O = o.slice(0, 3), k = Math.max(0, o.length - 3), A = () => {
2683
- S((e) => !e), g?.();
2738
+ function Jn({ state: e = "connected", caller: t = {}, ticket: n = null, durationSec: r = 0, isMuted: i, isOnHold: a, observers: o = [], recordingConsentPending: s = !1, onMute: c, onHold: u, onTransfer: f, onInvite: p, onKeypad: m, onEnd: h, onMinimize: g, minimized: _ = !1, className: v = "" }) {
2739
+ let [b, x] = d(!1), C = _ || b, w = Wn[e] || e, T = qn(e), E = Kn(e), D = l(() => `${Math.floor(r / 60)}:${Math.floor(r % 60).toString().padStart(2, "0")}`, [r]), O = o.slice(0, 3), k = Math.max(0, o.length - 3), A = () => {
2740
+ x((e) => !e), g?.();
2684
2741
  };
2685
2742
  return C ? /* @__PURE__ */ U("div", {
2686
2743
  className: `callbar callbar-minimized ${v}`,
@@ -2731,7 +2788,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2731
2788
  gap: 6
2732
2789
  },
2733
2790
  children: [
2734
- /* @__PURE__ */ H(Cn, {
2791
+ /* @__PURE__ */ H(Tn, {
2735
2792
  isMuted: i,
2736
2793
  isOnHold: a,
2737
2794
  onMute: c,
@@ -2748,7 +2805,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2748
2805
  size: "sm",
2749
2806
  onClick: h,
2750
2807
  "aria-label": "End call",
2751
- children: [/* @__PURE__ */ H(ae, {
2808
+ children: [/* @__PURE__ */ H(oe, {
2752
2809
  size: 13,
2753
2810
  style: { marginRight: 4 }
2754
2811
  }), "End"]
@@ -2801,7 +2858,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2801
2858
  gap: 8
2802
2859
  },
2803
2860
  children: [/* @__PURE__ */ H(J, {
2804
- variant: Un[e] || "secondary",
2861
+ variant: Gn[e] || "secondary",
2805
2862
  children: w
2806
2863
  }), (e === "connected" || e === "on_hold") && /* @__PURE__ */ H("span", {
2807
2864
  style: {
@@ -2862,7 +2919,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2862
2919
  flexShrink: 0
2863
2920
  },
2864
2921
  children: [
2865
- O.map((e) => /* @__PURE__ */ H(Vn, {
2922
+ O.map((e) => /* @__PURE__ */ H(Un, {
2866
2923
  name: e.name,
2867
2924
  initials: e.initials,
2868
2925
  avatarUrl: e.avatarUrl,
@@ -2879,7 +2936,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2879
2936
  },
2880
2937
  children: ["+", k]
2881
2938
  }),
2882
- /* @__PURE__ */ H(Cn, {
2939
+ /* @__PURE__ */ H(Tn, {
2883
2940
  isMuted: i,
2884
2941
  isOnHold: a,
2885
2942
  onMute: c,
@@ -2896,7 +2953,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2896
2953
  size: "sm",
2897
2954
  onClick: h,
2898
2955
  "aria-label": "End call",
2899
- children: [/* @__PURE__ */ H(ae, {
2956
+ children: [/* @__PURE__ */ H(oe, {
2900
2957
  size: 14,
2901
2958
  style: { marginRight: 6 }
2902
2959
  }), "End call"]
@@ -2906,7 +2963,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2906
2963
  className: "btn btn-ghost btn-icon btn-sm",
2907
2964
  onClick: A,
2908
2965
  "aria-label": "Minimize callbar",
2909
- children: /* @__PURE__ */ H(x, { size: 14 })
2966
+ children: /* @__PURE__ */ H(S, { size: 14 })
2910
2967
  })
2911
2968
  ]
2912
2969
  })
@@ -2925,7 +2982,7 @@ function Kn({ state: e = "connected", caller: t = {}, ticket: n = null, duration
2925
2982
  }
2926
2983
  //#endregion
2927
2984
  //#region src/components/ui/CallCard.jsx
2928
- var qn = {
2985
+ var Yn = {
2929
2986
  client: {
2930
2987
  accent: "var(--accent-green)",
2931
2988
  variant: "success"
@@ -2943,17 +3000,17 @@ var qn = {
2943
3000
  variant: "warning"
2944
3001
  }
2945
3002
  };
2946
- function Jn(e) {
3003
+ function Xn(e) {
2947
3004
  return e ? Math.max(0, Math.floor((Date.now() - new Date(e).getTime()) / 1e3)) : 0;
2948
3005
  }
2949
- function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType: r = "unknown", avatarUrl: i, ticket: a = null, ticketCandidates: s = [], projectRef: c = null, transferContext: l = null, ringStartedAt: u, onAccept: f, onDecline: p, onSendToVoicemail: m, onPromote: h, className: g = "" }) {
2950
- let [_, v] = d(() => Jn(u)), [y, b] = d(s[0]?.id || "none");
3006
+ function Zn({ variant: e = "primary", callerName: t, callerNumber: n, callerType: r = "unknown", avatarUrl: i, ticket: a = null, ticketCandidates: s = [], projectRef: c = null, transferContext: l = null, ringStartedAt: u, onAccept: f, onDecline: p, onSendToVoicemail: m, onPromote: h, className: g = "" }) {
3007
+ let [_, v] = d(() => Xn(u)), [y, b] = d(s[0]?.id || "none");
2951
3008
  o(() => {
2952
3009
  if (!u) return;
2953
- let e = setInterval(() => v(Jn(u)), 1e3);
3010
+ let e = setInterval(() => v(Xn(u)), 1e3);
2954
3011
  return () => clearInterval(e);
2955
3012
  }, [u]);
2956
- let x = qn[r] || qn.unknown;
3013
+ let x = Yn[r] || Yn.unknown;
2957
3014
  return e === "mini" ? /* @__PURE__ */ U("div", {
2958
3015
  role: "button",
2959
3016
  tabIndex: 0,
@@ -3008,14 +3065,14 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3008
3065
  variant: x.variant,
3009
3066
  showDot: !1,
3010
3067
  className: "badge--no-dot",
3011
- children: jn(r)
3068
+ children: Nn(r)
3012
3069
  })]
3013
3070
  }), /* @__PURE__ */ U("div", {
3014
3071
  style: {
3015
3072
  fontSize: "var(--text-xs)",
3016
3073
  color: "var(--text-tertiary)"
3017
3074
  },
3018
- children: ["Ringing · ", wn(_)]
3075
+ children: ["Ringing · ", En(_)]
3019
3076
  })]
3020
3077
  }),
3021
3078
  /* @__PURE__ */ H("button", {
@@ -3023,7 +3080,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3023
3080
  className: "btn btn-ghost btn-icon btn-sm",
3024
3081
  onClick: () => f?.(),
3025
3082
  "aria-label": "Accept",
3026
- children: /* @__PURE__ */ H(te, {
3083
+ children: /* @__PURE__ */ H(ne, {
3027
3084
  size: 16,
3028
3085
  style: { color: "var(--accent-green)" }
3029
3086
  })
@@ -3033,7 +3090,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3033
3090
  className: "btn btn-ghost btn-icon btn-sm",
3034
3091
  onClick: p,
3035
3092
  "aria-label": "Decline",
3036
- children: /* @__PURE__ */ H(ae, { size: 16 })
3093
+ children: /* @__PURE__ */ H(oe, { size: 16 })
3037
3094
  })
3038
3095
  ]
3039
3096
  }) : /* @__PURE__ */ U("div", {
@@ -3116,7 +3173,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3116
3173
  variant: x.variant,
3117
3174
  showDot: !1,
3118
3175
  className: "badge--no-dot",
3119
- children: jn(r)
3176
+ children: Nn(r)
3120
3177
  })]
3121
3178
  }), /* @__PURE__ */ H("div", {
3122
3179
  style: {
@@ -3137,7 +3194,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3137
3194
  children: [/* @__PURE__ */ H("span", {
3138
3195
  style: { marginRight: 4 },
3139
3196
  children: "•"
3140
- }), wn(_)]
3197
+ }), En(_)]
3141
3198
  })]
3142
3199
  }), /* @__PURE__ */ H("div", {
3143
3200
  style: {
@@ -3248,7 +3305,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3248
3305
  size: "sm",
3249
3306
  onClick: m,
3250
3307
  "aria-label": "Send to voicemail",
3251
- children: /* @__PURE__ */ H(pe, { size: 14 })
3308
+ children: /* @__PURE__ */ H(me, { size: 14 })
3252
3309
  }),
3253
3310
  /* @__PURE__ */ H(Y, {
3254
3311
  type: "button",
@@ -3265,7 +3322,7 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3265
3322
  !a && s.length > 0 ? y === "none" ? f?.("none") : y === "new" ? f?.("new") : f?.(y) : f?.();
3266
3323
  },
3267
3324
  style: { fontWeight: 600 },
3268
- children: [/* @__PURE__ */ H(te, {
3325
+ children: [/* @__PURE__ */ H(ne, {
3269
3326
  size: 14,
3270
3327
  style: { marginRight: 6 }
3271
3328
  }), "Accept"]
@@ -3277,35 +3334,35 @@ function Yn({ variant: e = "primary", callerName: t, callerNumber: n, callerType
3277
3334
  }
3278
3335
  //#endregion
3279
3336
  //#region src/components/ui/QueueItem.jsx
3280
- var Xn = {
3337
+ var Qn = {
3281
3338
  ringing: {
3282
- icon: re,
3339
+ icon: ie,
3283
3340
  color: "var(--accent-red)",
3284
3341
  label: "Ringing"
3285
3342
  },
3286
3343
  voicemail: {
3287
- icon: pe,
3344
+ icon: me,
3288
3345
  color: "var(--accent-yellow)",
3289
3346
  label: "Voicemail"
3290
3347
  },
3291
3348
  callback: {
3292
- icon: ne,
3349
+ icon: re,
3293
3350
  color: "var(--accent-blue)",
3294
3351
  label: "Callback"
3295
3352
  },
3296
3353
  missed: {
3297
- icon: ie,
3354
+ icon: ae,
3298
3355
  color: "var(--text-tertiary)",
3299
3356
  label: "Missed"
3300
3357
  }
3301
- }, Zn = {
3358
+ }, $n = {
3302
3359
  client: "success",
3303
3360
  building_department: "info",
3304
3361
  staff: "purple",
3305
3362
  unknown: "warning"
3306
3363
  };
3307
- function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadlineAt: i = null, voicemailDurationSec: a, assignedTo: o = null, actions: s = [], onAction: c, onClick: l, className: u = "" }) {
3308
- let d = Xn[e] || Xn.ringing, f = d.icon, p = s.slice(0, 2), m = s.slice(2), h = i ? Dn(i) : "none", g = h === "urgent" ? "var(--accent-red)" : h === "warning" ? "var(--accent-yellow)" : "var(--text-secondary)";
3364
+ function er({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadlineAt: i = null, voicemailDurationSec: a, assignedTo: o = null, actions: s = [], onAction: c, onClick: l, className: u = "" }) {
3365
+ let d = Qn[e] || Qn.ringing, f = d.icon, p = s.slice(0, 2), m = s.slice(2), h = i ? kn(i) : "none", g = h === "urgent" ? "var(--accent-red)" : h === "warning" ? "var(--accent-yellow)" : "var(--text-secondary)";
3309
3366
  return /* @__PURE__ */ U("div", {
3310
3367
  role: "button",
3311
3368
  tabIndex: 0,
@@ -3356,10 +3413,10 @@ function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadl
3356
3413
  children: t.name
3357
3414
  }),
3358
3415
  /* @__PURE__ */ H(J, {
3359
- variant: Zn[t.type] || "warning",
3416
+ variant: $n[t.type] || "warning",
3360
3417
  showDot: !1,
3361
3418
  className: "badge--no-dot",
3362
- children: jn(t.type)
3419
+ children: Nn(t.type)
3363
3420
  }),
3364
3421
  n && /* @__PURE__ */ H(Z, {
3365
3422
  ticket: n,
@@ -3387,8 +3444,8 @@ function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadl
3387
3444
  children: d.label
3388
3445
  }),
3389
3446
  /* @__PURE__ */ H("span", { children: "·" }),
3390
- e === "voicemail" && a != null && /* @__PURE__ */ U(me, { children: [/* @__PURE__ */ H("span", { children: wn(a) }), /* @__PURE__ */ H("span", { children: "·" })] }),
3391
- r && /* @__PURE__ */ H("span", { children: En(r) }),
3447
+ e === "voicemail" && a != null && /* @__PURE__ */ U(he, { children: [/* @__PURE__ */ H("span", { children: En(a) }), /* @__PURE__ */ H("span", { children: "·" })] }),
3448
+ r && /* @__PURE__ */ H("span", { children: On(r) }),
3392
3449
  i && /* @__PURE__ */ U("span", {
3393
3450
  style: {
3394
3451
  color: g,
@@ -3396,12 +3453,12 @@ function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadl
3396
3453
  fontVariantNumeric: "tabular-nums",
3397
3454
  fontWeight: 600
3398
3455
  },
3399
- children: ["SLA ", Tn(i)]
3456
+ children: ["SLA ", Dn(i)]
3400
3457
  })
3401
3458
  ]
3402
3459
  })]
3403
3460
  }),
3404
- o && /* @__PURE__ */ H(Vn, {
3461
+ o && /* @__PURE__ */ H(Un, {
3405
3462
  name: o.name,
3406
3463
  initials: o.initials,
3407
3464
  avatarUrl: null,
@@ -3423,15 +3480,15 @@ function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadl
3423
3480
  title: e.label,
3424
3481
  onClick: () => c?.(e.key),
3425
3482
  children: e.icon
3426
- }, e.key)), m.length > 0 && /* @__PURE__ */ H(Xt, {
3483
+ }, e.key)), m.length > 0 && /* @__PURE__ */ H(Qt, {
3427
3484
  align: "right",
3428
3485
  trigger: /* @__PURE__ */ H("button", {
3429
3486
  type: "button",
3430
3487
  className: "btn btn-ghost btn-icon btn-sm",
3431
3488
  "aria-label": "More actions",
3432
- children: /* @__PURE__ */ H(z, { size: 16 })
3489
+ children: /* @__PURE__ */ H(ee, { size: 16 })
3433
3490
  }),
3434
- children: m.map((e) => /* @__PURE__ */ H(Zt, {
3491
+ children: m.map((e) => /* @__PURE__ */ H($t, {
3435
3492
  onClick: () => c?.(e.key),
3436
3493
  children: e.label
3437
3494
  }, e.key))
@@ -3442,7 +3499,7 @@ function Qn({ kind: e, caller: t = {}, ticket: n = null, ago: r = null, slaDeadl
3442
3499
  }
3443
3500
  //#endregion
3444
3501
  //#region src/components/data/ActivityFeed.jsx
3445
- function $n({ items: e = [], className: t = "" }) {
3502
+ function tr({ items: e = [], className: t = "" }) {
3446
3503
  return /* @__PURE__ */ H("div", {
3447
3504
  className: `activity-feed ${t}`,
3448
3505
  children: e.map((e, t) => /* @__PURE__ */ U("div", {
@@ -3481,7 +3538,7 @@ function $n({ items: e = [], className: t = "" }) {
3481
3538
  }
3482
3539
  //#endregion
3483
3540
  //#region src/components/data/CommandBar.jsx
3484
- function er({ open: e, onClose: t, groups: n = [], onSelect: r, placeholder: i = "Type a command or search..." }) {
3541
+ function nr({ open: e, onClose: t, groups: n = [], onSelect: r, placeholder: i = "Type a command or search..." }) {
3485
3542
  let [a, s] = d(""), [c, l] = d(0), f = u(null);
3486
3543
  if (o(() => {
3487
3544
  if (e) {
@@ -3565,7 +3622,7 @@ function er({ open: e, onClose: t, groups: n = [], onSelect: r, placeholder: i =
3565
3622
  }
3566
3623
  //#endregion
3567
3624
  //#region src/components/data/DataTable.jsx
3568
- function tr({ columns: e, data: t, onRowClick: n, className: r = "" }) {
3625
+ function rr({ columns: e, data: t, onRowClick: n, className: r = "" }) {
3569
3626
  let [i, a] = d(null), [o, s] = d("asc");
3570
3627
  function c(e) {
3571
3628
  i === e ? s((e) => e === "asc" ? "desc" : "asc") : (a(e), s("asc"));
@@ -3586,7 +3643,7 @@ function tr({ columns: e, data: t, onRowClick: n, className: r = "" }) {
3586
3643
  className: "th-content",
3587
3644
  children: [e.label, e.sortable !== !1 && /* @__PURE__ */ H("span", {
3588
3645
  className: "th-sort-icon",
3589
- children: i === e.key ? H(o === "asc" ? x : y, { size: 12 }) : /* @__PURE__ */ H(S, { size: 12 })
3646
+ children: i === e.key ? H(o === "asc" ? S : y, { size: 12 }) : /* @__PURE__ */ H(C, { size: 12 })
3590
3647
  })]
3591
3648
  })
3592
3649
  }, e.key)) }) }), /* @__PURE__ */ U("tbody", { children: [l.map((t, r) => /* @__PURE__ */ H("tr", {
@@ -3606,7 +3663,7 @@ function tr({ columns: e, data: t, onRowClick: n, className: r = "" }) {
3606
3663
  }
3607
3664
  //#endregion
3608
3665
  //#region src/components/data/FilterBar.jsx
3609
- function nr({ searchValue: e = "", onSearchChange: t, filters: n = [], onClearAll: r, children: i, className: a = "" }) {
3666
+ function ir({ searchValue: e = "", onSearchChange: t, filters: n = [], onClearAll: r, children: i, className: a = "" }) {
3610
3667
  let o = n.some((e) => e.active);
3611
3668
  return /* @__PURE__ */ U("div", {
3612
3669
  className: `filter-bar ${a}`,
@@ -3631,7 +3688,7 @@ function nr({ searchValue: e = "", onSearchChange: t, filters: n = [], onClearAl
3631
3688
  /* @__PURE__ */ U("div", {
3632
3689
  className: "filter-bar-filters",
3633
3690
  children: [
3634
- /* @__PURE__ */ H(T, {
3691
+ /* @__PURE__ */ H(E, {
3635
3692
  size: 14,
3636
3693
  style: { color: "var(--text-tertiary)" }
3637
3694
  }),
@@ -3659,14 +3716,14 @@ function nr({ searchValue: e = "", onSearchChange: t, filters: n = [], onClearAl
3659
3716
  function Q(...e) {
3660
3717
  return e.filter(Boolean).join(" ");
3661
3718
  }
3662
- function rr({ children: e, className: t = "", style: n }) {
3719
+ function ar({ children: e, className: t = "", style: n }) {
3663
3720
  return /* @__PURE__ */ H("div", {
3664
3721
  className: Q("kanban-board", t),
3665
3722
  style: n,
3666
3723
  children: e
3667
3724
  });
3668
3725
  }
3669
- function ir({ title: e, count: t, color: n, headerAction: r = null, countVariant: i = "pill", children: a, className: o = "", style: s, headerClassName: c = "", headerStyle: l, countClassName: u = "", bodyClassName: d = "", bodyStyle: f }) {
3726
+ function or({ title: e, count: t, color: n, headerAction: r = null, countVariant: i = "pill", children: a, className: o = "", style: s, headerClassName: c = "", headerStyle: l, countClassName: u = "", bodyClassName: d = "", bodyStyle: f }) {
3670
3727
  return /* @__PURE__ */ U("div", {
3671
3728
  className: Q("kanban-column", o),
3672
3729
  style: s,
@@ -3704,13 +3761,13 @@ function ir({ title: e, count: t, color: n, headerAction: r = null, countVariant
3704
3761
  })]
3705
3762
  });
3706
3763
  }
3707
- function ar({ title: e, subtitle: t, badges: n, avatar: r, footer: i, footerEnd: a, children: o, onClick: s, className: c = "", style: l }) {
3764
+ function sr({ title: e, subtitle: t, badges: n, avatar: r, footer: i, footerEnd: a, children: o, onClick: s, className: c = "", style: l }) {
3708
3765
  let u = a ?? r;
3709
3766
  return /* @__PURE__ */ H("div", {
3710
3767
  className: Q("kanban-card", c),
3711
3768
  onClick: s,
3712
3769
  style: l,
3713
- children: o || /* @__PURE__ */ U(me, { children: [/* @__PURE__ */ U("div", {
3770
+ children: o || /* @__PURE__ */ U(he, { children: [/* @__PURE__ */ U("div", {
3714
3771
  className: "kanban-card-body",
3715
3772
  children: [
3716
3773
  e && /* @__PURE__ */ H("div", {
@@ -3740,13 +3797,13 @@ function ar({ title: e, subtitle: t, badges: n, avatar: r, footer: i, footerEnd:
3740
3797
  function $(...e) {
3741
3798
  return e.filter(Boolean).join(" ");
3742
3799
  }
3743
- function or({ children: e, className: t = "" }) {
3800
+ function cr({ children: e, className: t = "" }) {
3744
3801
  return /* @__PURE__ */ H("div", {
3745
3802
  className: $("table-board", t),
3746
3803
  children: e
3747
3804
  });
3748
3805
  }
3749
- function sr({ title: e, count: t, accentColor: n, open: r, defaultOpen: i = !0, onOpenChange: a, children: o, className: s = "" }) {
3806
+ function lr({ title: e, count: t, accentColor: n, open: r, defaultOpen: i = !0, onOpenChange: a, children: o, className: s = "" }) {
3750
3807
  let [c, l] = d(i), u = r != null, f = u ? r : c;
3751
3808
  function p() {
3752
3809
  let e = !f;
@@ -3783,7 +3840,7 @@ function sr({ title: e, count: t, accentColor: n, open: r, defaultOpen: i = !0,
3783
3840
  })]
3784
3841
  });
3785
3842
  }
3786
- function cr({ priority: e, id: t, statusColor: n = "var(--accent-yellow)", title: i, subtitle: a, subtitleInline: s = !1, pills: c = [], maxVisibleLeadingPills: l, pinnedTrailingPillsCount: f = 0, metric: m, metricTone: h = "default", metricIcon: g, showMetricIcon: _ = !0, avatar: v, avatarImageUrl: y, avatarLabel: b, avatarName: x, avatarStyle: S, meta: w, onClick: T, className: E = "" }) {
3843
+ function ur({ priority: e, id: t, statusColor: n = "var(--accent-yellow)", title: i, subtitle: a, subtitleInline: s = !1, pills: c = [], maxVisibleLeadingPills: l, pinnedTrailingPillsCount: f = 0, metric: m, metricTone: h = "default", metricIcon: g, showMetricIcon: _ = !0, avatar: v, avatarImageUrl: y, avatarLabel: b, avatarName: x, avatarStyle: S, meta: C, onClick: T, className: E = "" }) {
3787
3844
  let D = typeof T == "function", O = u(null), [k, A] = d(!1), j = Array.isArray(c) ? c : [], M = Math.max(0, Math.min(f, j.length)), N = M > 0 ? j.slice(0, -M) : j, P = M > 0 ? j.slice(-M) : [], F = typeof l == "number" && l >= 0 ? N.slice(0, l) : N, I = Math.max(0, N.length - F.length), L = [
3788
3845
  ...F,
3789
3846
  ...I > 0 ? [{
@@ -3795,7 +3852,7 @@ function cr({ priority: e, id: t, statusColor: n = "var(--accent-yellow)", title
3795
3852
  function R(e) {
3796
3853
  D && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), T());
3797
3854
  }
3798
- let z = x || w || b, ee = S || (y ? void 0 : { background: "var(--accent-blue)" }), te = g || (h === "warning" ? p : C), ne = v || (y || b || z ? /* @__PURE__ */ H(q, {
3855
+ let z = x || C || b, ee = S || (y ? void 0 : { background: "var(--accent-blue)" }), te = g || (h === "warning" ? p : w), ne = v || (y || b || z ? /* @__PURE__ */ H(q, {
3799
3856
  imageUrl: y,
3800
3857
  initials: b,
3801
3858
  name: z,
@@ -3872,7 +3929,7 @@ function cr({ priority: e, id: t, statusColor: n = "var(--accent-yellow)", title
3872
3929
  m != null && (r(m) ? m : /* @__PURE__ */ H(J, {
3873
3930
  className: "table-board-metric",
3874
3931
  showDot: !1,
3875
- children: /* @__PURE__ */ H(sn, {
3932
+ children: /* @__PURE__ */ H(ln, {
3876
3933
  tone: h,
3877
3934
  icon: te,
3878
3935
  showIcon: _,
@@ -3880,21 +3937,21 @@ function cr({ priority: e, id: t, statusColor: n = "var(--accent-yellow)", title
3880
3937
  })
3881
3938
  })),
3882
3939
  ne,
3883
- w && /* @__PURE__ */ H("span", {
3940
+ C && /* @__PURE__ */ H("span", {
3884
3941
  className: "table-board-meta",
3885
- children: w
3942
+ children: C
3886
3943
  })
3887
3944
  ]
3888
3945
  });
3889
3946
  }
3890
3947
  //#endregion
3891
3948
  //#region src/components/data/KPICard.jsx
3892
- function lr({ title: e, value: t, change: n, changeLabel: r, trend: i = "neutral", icon: a, className: o = "" }) {
3949
+ function dr({ title: e, value: t, change: n, changeLabel: r, trend: i = "neutral", icon: a, className: o = "" }) {
3893
3950
  let s = {
3894
3951
  up: "var(--accent-green)",
3895
3952
  down: "var(--accent-red)",
3896
3953
  neutral: "var(--text-tertiary)"
3897
- }, c = i === "up" ? de : i === "down" ? ue : L;
3954
+ }, c = i === "up" ? fe : i === "down" ? de : R;
3898
3955
  return /* @__PURE__ */ U("div", {
3899
3956
  className: `kpi-card ${o}`,
3900
3957
  children: [
@@ -3930,7 +3987,7 @@ function lr({ title: e, value: t, change: n, changeLabel: r, trend: i = "neutral
3930
3987
  ]
3931
3988
  });
3932
3989
  }
3933
- function ur({ label: e, value: t, subtitle: n, color: r, className: i = "" }) {
3990
+ function fr({ label: e, value: t, subtitle: n, color: r, className: i = "" }) {
3934
3991
  return /* @__PURE__ */ U("div", {
3935
3992
  className: `stat-card ${i}`,
3936
3993
  children: [r && /* @__PURE__ */ H("div", {
@@ -3957,7 +4014,7 @@ function ur({ label: e, value: t, subtitle: n, color: r, className: i = "" }) {
3957
4014
  }
3958
4015
  //#endregion
3959
4016
  //#region src/components/data/NotificationsPanel.jsx
3960
- function dr({ notifications: e = [], onMarkRead: t, onMarkAllRead: n, className: r = "" }) {
4017
+ function pr({ notifications: e = [], onMarkRead: t, onMarkAllRead: n, className: r = "" }) {
3961
4018
  let i = e.filter((e) => !e.read);
3962
4019
  return /* @__PURE__ */ U("div", {
3963
4020
  className: `notifications-panel ${r}`,
@@ -4014,7 +4071,7 @@ function dr({ notifications: e = [], onMarkRead: t, onMarkAllRead: n, className:
4014
4071
  }
4015
4072
  //#endregion
4016
4073
  //#region src/components/Icons.jsx
4017
- function fr() {
4074
+ function mr() {
4018
4075
  return /* @__PURE__ */ H("svg", {
4019
4076
  width: "16",
4020
4077
  height: "16",
@@ -4023,7 +4080,7 @@ function fr() {
4023
4080
  children: /* @__PURE__ */ H("path", { d: "M2 3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5l-2.5-2.5a.5.5 0 0 0-.354-.146H8.5a.5.5 0 0 0-.5.5v2.793L6.854 9.001a.5.5 0 0 0-.708 0L2 13.147V3Zm12 8.207V13a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-.44l4.5-4.5L8.146 9.707a.5.5 0 0 0 .708 0L11.5 7.06l2.5 2.5V11.207Z" })
4024
4081
  });
4025
4082
  }
4026
- function pr() {
4083
+ function hr() {
4027
4084
  return /* @__PURE__ */ U("svg", {
4028
4085
  width: "16",
4029
4086
  height: "16",
@@ -4043,7 +4100,7 @@ function pr() {
4043
4100
  })]
4044
4101
  });
4045
4102
  }
4046
- function mr() {
4103
+ function gr() {
4047
4104
  return /* @__PURE__ */ H("svg", {
4048
4105
  width: "16",
4049
4106
  height: "16",
@@ -4052,7 +4109,7 @@ function mr() {
4052
4109
  children: /* @__PURE__ */ H("path", { d: "M8 1l2.2 4.4L15 6.3l-3.5 3.4.8 4.9L8 12.4 3.7 14.6l.8-4.9L1 6.3l4.8-.9L8 1Z" })
4053
4110
  });
4054
4111
  }
4055
- function hr() {
4112
+ function _r() {
4056
4113
  return /* @__PURE__ */ H("svg", {
4057
4114
  width: "16",
4058
4115
  height: "16",
@@ -4065,7 +4122,7 @@ function hr() {
4065
4122
  children: /* @__PURE__ */ H("path", { d: "M1 8h3l2-5 2 10 2-5h3" })
4066
4123
  });
4067
4124
  }
4068
- function gr() {
4125
+ function vr() {
4069
4126
  return /* @__PURE__ */ H("svg", {
4070
4127
  width: "16",
4071
4128
  height: "16",
@@ -4074,7 +4131,7 @@ function gr() {
4074
4131
  children: /* @__PURE__ */ H("path", { d: "M3 2h10a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1Zm1 3v2h8V5H4Zm0 4v2h5V9H4Z" })
4075
4132
  });
4076
4133
  }
4077
- function _r() {
4134
+ function yr() {
4078
4135
  return /* @__PURE__ */ H("svg", {
4079
4136
  width: "16",
4080
4137
  height: "16",
@@ -4083,7 +4140,7 @@ function _r() {
4083
4140
  children: /* @__PURE__ */ H("path", { d: "M2 3.5A1.5 1.5 0 0 1 3.5 2h3.379a1.5 1.5 0 0 1 1.06.44l.622.62A1.5 1.5 0 0 0 9.622 3.5H12.5A1.5 1.5 0 0 1 14 5v7.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 12.5v-9Z" })
4084
4141
  });
4085
4142
  }
4086
- function vr() {
4143
+ function br() {
4087
4144
  return /* @__PURE__ */ U("svg", {
4088
4145
  width: "16",
4089
4146
  height: "16",
@@ -4108,7 +4165,7 @@ function vr() {
4108
4165
  ]
4109
4166
  });
4110
4167
  }
4111
- function yr() {
4168
+ function xr() {
4112
4169
  return /* @__PURE__ */ U("svg", {
4113
4170
  width: "16",
4114
4171
  height: "16",
@@ -4126,7 +4183,7 @@ function yr() {
4126
4183
  })]
4127
4184
  });
4128
4185
  }
4129
- function br() {
4186
+ function Sr() {
4130
4187
  return /* @__PURE__ */ H("svg", {
4131
4188
  width: "16",
4132
4189
  height: "16",
@@ -4139,7 +4196,7 @@ function br() {
4139
4196
  children: /* @__PURE__ */ H("path", { d: "M11 2l3 3-8 8H3v-3l8-8Z" })
4140
4197
  });
4141
4198
  }
4142
- function xr() {
4199
+ function Cr() {
4143
4200
  return /* @__PURE__ */ H("svg", {
4144
4201
  width: "14",
4145
4202
  height: "14",
@@ -4152,7 +4209,7 @@ function xr() {
4152
4209
  children: /* @__PURE__ */ H("path", { d: "M3.5 5.5L7 9l3.5-3.5" })
4153
4210
  });
4154
4211
  }
4155
- function Sr() {
4212
+ function wr() {
4156
4213
  return /* @__PURE__ */ H("svg", {
4157
4214
  width: "14",
4158
4215
  height: "14",
@@ -4165,7 +4222,7 @@ function Sr() {
4165
4222
  children: /* @__PURE__ */ H("path", { d: "M3.5 9L7 5.5 10.5 9" })
4166
4223
  });
4167
4224
  }
4168
- function Cr() {
4225
+ function Tr() {
4169
4226
  return /* @__PURE__ */ H("svg", {
4170
4227
  width: "14",
4171
4228
  height: "14",
@@ -4174,7 +4231,7 @@ function Cr() {
4174
4231
  children: /* @__PURE__ */ H("path", { d: "M7 1l1.76 3.52L13 5.26l-3 2.94.7 4.13L7 10.4 3.3 12.33l.7-4.13-3-2.94 4.24-.74L7 1Z" })
4175
4232
  });
4176
4233
  }
4177
- function wr() {
4234
+ function Er() {
4178
4235
  return /* @__PURE__ */ U("svg", {
4179
4236
  width: "14",
4180
4237
  height: "14",
@@ -4195,7 +4252,7 @@ function wr() {
4195
4252
  })]
4196
4253
  });
4197
4254
  }
4198
- function Tr() {
4255
+ function Dr() {
4199
4256
  return /* @__PURE__ */ U("svg", {
4200
4257
  width: "14",
4201
4258
  height: "14",
@@ -4215,7 +4272,7 @@ function Tr() {
4215
4272
  })]
4216
4273
  });
4217
4274
  }
4218
- function Er() {
4275
+ function Or() {
4219
4276
  return /* @__PURE__ */ H("svg", {
4220
4277
  width: "14",
4221
4278
  height: "14",
@@ -4230,7 +4287,7 @@ function Er() {
4230
4287
  })
4231
4288
  });
4232
4289
  }
4233
- function Dr() {
4290
+ function kr() {
4234
4291
  return /* @__PURE__ */ H("svg", {
4235
4292
  width: "14",
4236
4293
  height: "14",
@@ -4246,7 +4303,7 @@ function Dr() {
4246
4303
  })
4247
4304
  });
4248
4305
  }
4249
- function Or() {
4306
+ function Ar() {
4250
4307
  return /* @__PURE__ */ U("svg", {
4251
4308
  width: "14",
4252
4309
  height: "14",
@@ -4266,7 +4323,7 @@ function Or() {
4266
4323
  })]
4267
4324
  });
4268
4325
  }
4269
- function kr() {
4326
+ function jr() {
4270
4327
  return /* @__PURE__ */ H("svg", {
4271
4328
  width: "14",
4272
4329
  height: "14",
@@ -4275,7 +4332,7 @@ function kr() {
4275
4332
  children: /* @__PURE__ */ H("path", { d: "M7 1a1 1 0 0 1 1 1v6a1 1 0 1 1-2 0V2a1 1 0 0 1 1-1Zm0 10a1.25 1.25 0 1 1 0 2.5A1.25 1.25 0 0 1 7 11Z" })
4276
4333
  });
4277
4334
  }
4278
- function Ar() {
4335
+ function Mr() {
4279
4336
  return /* @__PURE__ */ U("svg", {
4280
4337
  width: "14",
4281
4338
  height: "14",
@@ -4306,7 +4363,7 @@ function Ar() {
4306
4363
  ]
4307
4364
  });
4308
4365
  }
4309
- function jr() {
4366
+ function Nr() {
4310
4367
  return /* @__PURE__ */ U("svg", {
4311
4368
  width: "14",
4312
4369
  height: "14",
@@ -4339,7 +4396,7 @@ function jr() {
4339
4396
  ]
4340
4397
  });
4341
4398
  }
4342
- function Mr() {
4399
+ function Pr() {
4343
4400
  return /* @__PURE__ */ U("svg", {
4344
4401
  width: "14",
4345
4402
  height: "14",
@@ -4372,7 +4429,7 @@ function Mr() {
4372
4429
  ]
4373
4430
  });
4374
4431
  }
4375
- function Nr() {
4432
+ function Fr() {
4376
4433
  return /* @__PURE__ */ H("svg", {
4377
4434
  width: "14",
4378
4435
  height: "14",
@@ -4384,7 +4441,7 @@ function Nr() {
4384
4441
  children: /* @__PURE__ */ H("path", { d: "M6 8l2-2m-2.5-.5L4 7a2.83 2.83 0 0 0 4 4l1.5-1.5m-1-5L10 3a2.83 2.83 0 0 1 4 4l-1.5 1.5" })
4385
4442
  });
4386
4443
  }
4387
- function Pr() {
4444
+ function Ir() {
4388
4445
  return /* @__PURE__ */ H("svg", {
4389
4446
  width: "14",
4390
4447
  height: "14",
@@ -4397,7 +4454,7 @@ function Pr() {
4397
4454
  children: /* @__PURE__ */ H("path", { d: "M2.5 4h9M5 4V2.5h4V4m-4.5 1v5.5m3-5.5v5.5M3.5 4l.5 8h6l.5-8" })
4398
4455
  });
4399
4456
  }
4400
- function Fr() {
4457
+ function Lr() {
4401
4458
  return /* @__PURE__ */ U("svg", {
4402
4459
  width: "14",
4403
4460
  height: "14",
@@ -4414,7 +4471,7 @@ function Fr() {
4414
4471
  })]
4415
4472
  });
4416
4473
  }
4417
- function Ir() {
4474
+ function Rr() {
4418
4475
  return /* @__PURE__ */ H("svg", {
4419
4476
  width: "14",
4420
4477
  height: "14",
@@ -4426,7 +4483,7 @@ function Ir() {
4426
4483
  children: /* @__PURE__ */ H("path", { d: "M3.5 3.5l7 7M10.5 3.5l-7 7" })
4427
4484
  });
4428
4485
  }
4429
- function Lr() {
4486
+ function zr() {
4430
4487
  return /* @__PURE__ */ H("svg", {
4431
4488
  width: "14",
4432
4489
  height: "14",
@@ -4439,7 +4496,7 @@ function Lr() {
4439
4496
  children: /* @__PURE__ */ H("path", { d: "M3 7.5l3 3 5-6" })
4440
4497
  });
4441
4498
  }
4442
- function Rr() {
4499
+ function Br() {
4443
4500
  return /* @__PURE__ */ U("svg", {
4444
4501
  width: "14",
4445
4502
  height: "14",
@@ -4458,7 +4515,7 @@ function Rr() {
4458
4515
  }), /* @__PURE__ */ H("path", { d: "M9.5 4.5V3a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v5.5a1 1 0 0 0 1 1h1.5" })]
4459
4516
  });
4460
4517
  }
4461
- function zr() {
4518
+ function Vr() {
4462
4519
  return /* @__PURE__ */ H("svg", {
4463
4520
  width: "14",
4464
4521
  height: "14",
@@ -4471,7 +4528,7 @@ function zr() {
4471
4528
  children: /* @__PURE__ */ H("path", { d: "M5.5 12a1.5 1.5 0 0 0 3 0M7 1a4 4 0 0 0-4 4c0 3-1.5 4.5-1.5 4.5h11S11 8 11 5a4 4 0 0 0-4-4Z" })
4472
4529
  });
4473
4530
  }
4474
- function Br() {
4531
+ function Hr() {
4475
4532
  return /* @__PURE__ */ U("svg", {
4476
4533
  width: "14",
4477
4534
  height: "14",
@@ -4490,7 +4547,7 @@ function Br() {
4490
4547
  }), /* @__PURE__ */ H("path", { d: "M4.5 1v2.5M9.5 1v2.5M1.5 5.5h11" })]
4491
4548
  });
4492
4549
  }
4493
- function Vr() {
4550
+ function Ur() {
4494
4551
  return /* @__PURE__ */ H("svg", {
4495
4552
  width: "14",
4496
4553
  height: "14",
@@ -4503,7 +4560,7 @@ function Vr() {
4503
4560
  children: /* @__PURE__ */ H("path", { d: "M1.5 3h11M3.5 7h7M5.5 11h3" })
4504
4561
  });
4505
4562
  }
4506
- function Hr() {
4563
+ function Wr() {
4507
4564
  return /* @__PURE__ */ U("svg", {
4508
4565
  width: "14",
4509
4566
  height: "14",
@@ -4521,7 +4578,7 @@ function Hr() {
4521
4578
  })]
4522
4579
  });
4523
4580
  }
4524
- function Ur() {
4581
+ function Gr() {
4525
4582
  return /* @__PURE__ */ U("svg", {
4526
4583
  width: "14",
4527
4584
  height: "14",
@@ -4540,4 +4597,4 @@ function Ur() {
4540
4597
  });
4541
4598
  }
4542
4599
  //#endregion
4543
- export { Ot as Accordion, Dt as AccordionItem, $n as ActivityFeed, ot as AppLoader, q as Avatar, J as Badge, zr as BellIcon, Y as Button, Br as CalendarIcon, Yn as CallCard, Cn as CallControlsBar, Kn as Callbar, It as Card, Bt as CardContent, zt as CardDescription, Vt as CardFooter, Lt as CardHeader, Rt as CardTitle, Lr as CheckIcon, xr as ChevronDown, Sr as ChevronUp, Ir as CloseIcon, er as CommandBar, Rr as CopyIcon, gn as DEFAULT_ICON_BY_VALUE, _n as DEFAULT_VIEW_MODE_OPTIONS, tr as DataTable, Ut as Dialog, qt as DialogBody, Kt as DialogDescription, Jt as DialogFooter, Wt as DialogHeader, Gt as DialogTitle, Xt as DropdownMenu, Qt as DropdownMenuCheckboxItem, Zt as DropdownMenuItem, $t as DropdownMenuLabel, en as DropdownMenuSeparator, br as EditIcon, rt as FCCAppShell, De as FCCAppShellContext, it as FCCBrandLogo, We as FCCBreadcrumbs, Ee as FCCDesignProvider, lt as FCCDetailsPanel, dt as FCCFullPagePanel, mt as FCCFullPagePanelBody, Et as FCCFullPagePanelBottomControls, _t as FCCFullPagePanelFooter, ft as FCCFullPagePanelHeader, ht as FCCFullPagePanelMain, Tt as FCCFullPagePanelResizableSidebar, gt as FCCFullPagePanelSidebar, vt as FCCFullPagePanelSidebarFooter, yt as FCCFullPagePanelSubHeader, pt as FCCFullPagePanelToolbar, Ke as FCCHeaderStatus, ct as FCCLoader, Je as FCCMainWindow, Ae as FCCSidePanel, ze as FCCSidePanelAction, Me as FCCSidePanelBody, Le as FCCSidePanelCard, Be as FCCSidePanelChatWrap, Re as FCCSidePanelContact, Ve as FCCSidePanelConversation, Fe as FCCSidePanelGroupLabel, je as FCCSidePanelHeader, Ie as FCCSidePanelItem, He as FCCSidePanelMessage, Pe as FCCSidePanelSearch, Ne as FCCSidePanelTabs, Qe as FCCSidebar, at as FCCThemeToggle, qe as FCCWorkspaceHeader, nr as FilterBar, Vr as FilterIcon, fr as InboxIcon, gr as InitiativesIcon, Yt as Input, pr as IssuesIcon, lr as KPICard, rr as KanbanBoard, ar as KanbanCard, ir as KanbanColumn, Ur as LabelIcon, Nr as LinkIcon, vr as MoreIcon, dr as NotificationsPanel, Vn as PresenceAvatar, zn as PresenceDot, Ar as PriorityHigh, Mr as PriorityLow, jr as PriorityMedium, kr as PriorityUrgent, _r as ProjectsIcon, hr as PulseIcon, Qn as QueueItem, mr as ReviewsIcon, yr as SearchIcon, tn as SearchableSelect, Fr as SettingsIcon, nn as Sheet, rn as SheetFooter, st as Spinner, Cr as StarIcon, ur as StatCard, Dr as StatusBacklog, Or as StatusCancelled, Tr as StatusDone, wr as StatusInProgress, sn as StatusMetric, Er as StatusTodo, cn as Switch, or as TableBoard, sr as TableBoardGroup, cr as TableBoardRow, un as Tabs, pn as TabsContent, dn as TabsList, fn as TabsTrigger, mn as Textarea, we as ThemeProvider, Z as TicketLinkChip, ve as ToastProvider, hn as Tooltip, Pr as TrashIcon, Hr as UserIcon, bn as ViewModeToggle, Sn as WorkspaceTabs, Oe as useFCCAppShell, Te as useTheme, ye as useToast };
4600
+ export { At as Accordion, kt as AccordionItem, tr as ActivityFeed, st as AppLoader, q as Avatar, J as Badge, Vr as BellIcon, Y as Button, Hr as CalendarIcon, Zn as CallCard, Tn as CallControlsBar, Jn as Callbar, Rt as Card, Ht as CardContent, Vt as CardDescription, Ut as CardFooter, zt as CardHeader, Bt as CardTitle, zr as CheckIcon, Cr as ChevronDown, wr as ChevronUp, Rr as CloseIcon, nr as CommandBar, Br as CopyIcon, vn as DEFAULT_ICON_BY_VALUE, yn as DEFAULT_VIEW_MODE_OPTIONS, rr as DataTable, Gt as Dialog, Yt as DialogBody, Jt as DialogDescription, Xt as DialogFooter, Kt as DialogHeader, qt as DialogTitle, Qt as DropdownMenu, en as DropdownMenuCheckboxItem, $t as DropdownMenuItem, tn as DropdownMenuLabel, nn as DropdownMenuSeparator, Sr as EditIcon, it as FCCAppShell, Oe as FCCAppShellContext, at as FCCBrandLogo, Ge as FCCBreadcrumbs, De as FCCDesignProvider, ut as FCCDetailsPanel, ft as FCCFullPagePanel, ht as FCCFullPagePanelBody, Ot as FCCFullPagePanelBottomControls, vt as FCCFullPagePanelFooter, pt as FCCFullPagePanelHeader, gt as FCCFullPagePanelMain, Dt as FCCFullPagePanelResizableSidebar, _t as FCCFullPagePanelSidebar, yt as FCCFullPagePanelSidebarFooter, bt as FCCFullPagePanelSubHeader, mt as FCCFullPagePanelToolbar, qe as FCCHeaderStatus, lt as FCCLoader, Ye as FCCMainWindow, je as FCCSidePanel, Be as FCCSidePanelAction, Ne as FCCSidePanelBody, Re as FCCSidePanelCard, Ve as FCCSidePanelChatWrap, ze as FCCSidePanelContact, He as FCCSidePanelConversation, Ie as FCCSidePanelGroupLabel, Me as FCCSidePanelHeader, Le as FCCSidePanelItem, Ue as FCCSidePanelMessage, Fe as FCCSidePanelSearch, Pe as FCCSidePanelTabs, $e as FCCSidebar, ot as FCCThemeToggle, Je as FCCWorkspaceHeader, ir as FilterBar, Ur as FilterIcon, mr as InboxIcon, vr as InitiativesIcon, Zt as Input, hr as IssuesIcon, dr as KPICard, ar as KanbanBoard, sr as KanbanCard, or as KanbanColumn, Gr as LabelIcon, Fr as LinkIcon, br as MoreIcon, pr as NotificationsPanel, Un as PresenceAvatar, Vn as PresenceDot, Mr as PriorityHigh, Pr as PriorityLow, Nr as PriorityMedium, jr as PriorityUrgent, yr as ProjectsIcon, _r as PulseIcon, er as QueueItem, gr as ReviewsIcon, xr as SearchIcon, rn as SearchableSelect, Lr as SettingsIcon, an as Sheet, on as SheetFooter, ct as Spinner, Tr as StarIcon, fr as StatCard, kr as StatusBacklog, Ar as StatusCancelled, Dr as StatusDone, Er as StatusInProgress, ln as StatusMetric, Or as StatusTodo, un as Switch, cr as TableBoard, lr as TableBoardGroup, ur as TableBoardRow, fn as Tabs, hn as TabsContent, pn as TabsList, mn as TabsTrigger, gn as Textarea, Te as ThemeProvider, Z as TicketLinkChip, ye as ToastProvider, _n as Tooltip, Ir as TrashIcon, Wr as UserIcon, Sn as ViewModeToggle, wn as WorkspaceTabs, ke as useFCCAppShell, Ee as useTheme, be as useToast };