ezux 1.1.0 → 1.1.1

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.
@@ -1,8 +1,8 @@
1
1
  import * as f from "react";
2
- import _e, { useRef as G, useState as je, useEffect as k, useMemo as V, useCallback as Te } from "react";
3
- import { defaultRangeExtractor as ke, elementScroll as Ae, useVirtualizer as X } from "@tanstack/react-virtual";
4
- import { g as J, j as l, c as R } from "./useInitCoreServices-B4vOEAPL.js";
5
- import { g as Pe, s as De, R as Ve, A as Fe, P as Le, b as A, d as Q, e as $e, C as We, S as Ge, I as Ue, f as Be, G as He, j as qe, u as Ke, k as Xe, h as Ye, i as Je, L as Qe, l as Ze, m as et, n as tt, o as nt } from "./EzErrorBoundary-P99jhn_S.js";
2
+ import _e, { useRef as G, useState as je, useEffect as T, useMemo as D, useCallback as Te } from "react";
3
+ import { defaultRangeExtractor as Ae, elementScroll as Pe, useVirtualizer as X } from "@tanstack/react-virtual";
4
+ import { g as J, j as l, c as y } from "./useInitCoreServices-B4vOEAPL.js";
5
+ import { g as ke, s as De, R as Ve, A as Fe, P as Le, b as A, d as Q, e as $e, C as We, S as Ge, I as Ue, f as Be, G as He, j as qe, u as Ke, k as Xe, h as Ye, i as Je, L as Qe, l as Ze, m as et, n as tt, o as nt } from "./EzErrorBoundary-P99jhn_S.js";
6
6
  import { Check as st, Circle as ot, ChevronRight as it } from "lucide-react";
7
7
  function O(s, o, e) {
8
8
  let t = e.initialDeps ?? [], n, r = !0;
@@ -16,13 +16,13 @@ function O(s, o, e) {
16
16
  t = d;
17
17
  let v;
18
18
  if (e.key && ((h = e.debug) != null && h.call(e)) && (v = Date.now()), n = o(...d), e.key && ((m = e.debug) != null && m.call(e))) {
19
- const S = Math.round((Date.now() - c) * 100) / 100, p = Math.round((Date.now() - v) * 100) / 100, w = p / 16, I = (b, N) => {
19
+ const S = Math.round((Date.now() - c) * 100) / 100, p = Math.round((Date.now() - v) * 100) / 100, w = p / 16, R = (b, N) => {
20
20
  for (b = String(b); b.length < N; )
21
21
  b = " " + b;
22
22
  return b;
23
23
  };
24
24
  console.info(
25
- `%c⏱ ${I(p, 5)} /${I(S, 5)} ms`,
25
+ `%c⏱ ${R(p, 5)} /${R(S, 5)} ms`,
26
26
  `
27
27
  font-size: .6rem;
28
28
  font-weight: bold;
@@ -237,7 +237,7 @@ class dt {
237
237
  const M = this.options.lanes === 1 ? c[u - 1] : this.getFurthestMeasurement(c, u);
238
238
  w = M ? M.end + this.options.gap : t + n, p = M ? M.lane : u % this.options.lanes, this.options.lanes > 1 && this.laneAssignments.set(u, p);
239
239
  }
240
- const I = h.get(v), b = typeof I == "number" ? I : this.options.estimateSize(u), N = w + b;
240
+ const R = h.get(v), b = typeof R == "number" ? R : this.options.estimateSize(u), N = w + b;
241
241
  c[u] = {
242
242
  index: u,
243
243
  start: w,
@@ -579,32 +579,32 @@ const Kt = (s) => {
579
579
  languageDirection: S = "ltr",
580
580
  debug: p = !1,
581
581
  customRangeExtractor: w,
582
- onScroll: I,
582
+ onScroll: R,
583
583
  onScrollStart: b,
584
584
  onScrollStop: N
585
- } = s, M = G(null), [E, B] = je(d ? 1 : t || u), j = G(null), P = G(!1);
586
- k(() => {
585
+ } = s, M = G(null), [E, B] = je(d ? 1 : t || u), _ = G(null), P = G(!1);
586
+ T(() => {
587
587
  if (!d) return;
588
588
  let x;
589
589
  const C = () => {
590
590
  B(1), clearTimeout(x), x = setTimeout(() => {
591
591
  B(t || u);
592
592
  }, 150);
593
- }, T = M.current;
594
- if (T)
595
- return T.addEventListener("scroll", C, { passive: !0 }), () => {
596
- T.removeEventListener("scroll", C), clearTimeout(x);
593
+ }, j = M.current;
594
+ if (j)
595
+ return j.addEventListener("scroll", C, { passive: !0 }), () => {
596
+ j.removeEventListener("scroll", C), clearTimeout(x);
597
597
  };
598
598
  }, [d, t, u]);
599
- const D = V(() => w || ((x) => {
600
- const C = ke(x);
599
+ const k = D(() => w || ((x) => {
600
+ const C = Ae(x);
601
601
  return C.length === 0 && x.count > 0 ? [0] : C;
602
602
  }), [w]), H = Te(
603
- (x, C, T) => {
604
- Ae(x, C, T);
603
+ (x, C, j) => {
604
+ Pe(x, C, j);
605
605
  },
606
606
  []
607
- ), Oe = V(() => ({
607
+ ), Oe = D(() => ({
608
608
  count: o,
609
609
  getScrollElement: () => M.current,
610
610
  estimateSize: typeof e == "function" ? e : () => e,
@@ -612,15 +612,15 @@ const Kt = (s) => {
612
612
  scrollMargin: h,
613
613
  scrollPaddingStart: m,
614
614
  scrollPaddingEnd: c,
615
- rangeExtractor: D,
615
+ rangeExtractor: k,
616
616
  scrollToFn: H,
617
617
  lanugageDirection: S,
618
618
  // TanStack Virtual v3 uses this specific (misspelled) property
619
619
  // Only track scroll state, don't interfere with scroll position
620
620
  onChange: (x) => {
621
621
  const C = x.scrollOffset ?? 0;
622
- j.current && clearTimeout(j.current), j.current = setTimeout(() => {
623
- I?.(C);
622
+ _.current && clearTimeout(_.current), _.current = setTimeout(() => {
623
+ R?.(C);
624
624
  }, 16), x.isScrolling ? P.current || (P.current = !0, b?.()) : P.current && (P.current = !1, N?.());
625
625
  }
626
626
  }), [
@@ -631,24 +631,24 @@ const Kt = (s) => {
631
631
  h,
632
632
  m,
633
633
  c,
634
- D,
634
+ k,
635
635
  H,
636
- I,
636
+ R,
637
637
  b,
638
638
  N
639
639
  ]), z = X(Oe);
640
- k(() => {
640
+ T(() => {
641
641
  p && console.log("[DEBUG_VIRTUAL] Virtualizer instance changed");
642
642
  }, [z, p]);
643
- const $ = V(() => Pe(
643
+ const $ = D(() => ke(
644
644
  J,
645
645
  "VirtualizationService",
646
646
  () => new ft()
647
647
  ), []);
648
- k(() => {
648
+ T(() => {
649
649
  s.id && $ && $.registerVirtualizer(s.id, z);
650
650
  }, [s.id, z, $]);
651
- const q = V(() => {
651
+ const q = D(() => {
652
652
  if (!(!a || !r))
653
653
  return {
654
654
  horizontal: !0,
@@ -656,13 +656,13 @@ const Kt = (s) => {
656
656
  getScrollElement: () => M.current,
657
657
  estimateSize: typeof i == "function" ? i : () => i,
658
658
  overscan: E,
659
- rangeExtractor: D,
659
+ rangeExtractor: k,
660
660
  lanugageDirection: S
661
661
  };
662
- }, [a, r, i, E, D]), W = q ? X(q) : void 0;
663
- k(() => () => {
664
- j.current && clearTimeout(j.current);
665
- }, []), k(() => {
662
+ }, [a, r, i, E, k]), W = q ? X(q) : void 0;
663
+ T(() => () => {
664
+ _.current && clearTimeout(_.current);
665
+ }, []), T(() => {
666
666
  p && process.env.NODE_ENV !== "production" && console.log("Virtualization Debug:", {
667
667
  rowCount: o,
668
668
  visibleRows: z.getVirtualItems().length,
@@ -744,13 +744,13 @@ var ne = "ContextMenuTrigger", se = f.forwardRef(
744
744
  }),
745
745
  onPointerDown: t ? s.onPointerDown : A(
746
746
  s.onPointerDown,
747
- F((u) => {
747
+ V((u) => {
748
748
  c(), m.current = window.setTimeout(() => d(u), 700);
749
749
  })
750
750
  ),
751
- onPointerMove: t ? s.onPointerMove : A(s.onPointerMove, F(c)),
752
- onPointerCancel: t ? s.onPointerCancel : A(s.onPointerCancel, F(c)),
753
- onPointerUp: t ? s.onPointerUp : A(s.onPointerUp, F(c))
751
+ onPointerMove: t ? s.onPointerMove : A(s.onPointerMove, V(c)),
752
+ onPointerCancel: t ? s.onPointerCancel : A(s.onPointerCancel, V(c)),
753
+ onPointerUp: t ? s.onPointerUp : A(s.onPointerUp, V(c))
754
754
  }
755
755
  )
756
756
  ] });
@@ -881,15 +881,15 @@ var It = "ContextMenuSubContent", ve = f.forwardRef((s, o) => {
881
881
  );
882
882
  });
883
883
  ve.displayName = It;
884
- function F(s) {
884
+ function V(s) {
885
885
  return (o) => o.pointerType !== "mouse" ? s(o) : void 0;
886
886
  }
887
887
  var Nt = te, Ot = se, Ce = oe, be = re, _t = ae, Me = le, Se = ce, we = ue, jt = de, ze = he, Ee = fe, ye = me, Tt = ge, Re = xe, Ie = ve;
888
- const kt = Nt, At = Ot, Xt = _t, Yt = Ce, Jt = Tt, Qt = jt, Pt = f.forwardRef(({ className: s, inset: o, children: e, ...t }, n) => /* @__PURE__ */ l.jsxs(
888
+ const At = Nt, Pt = Ot, Xt = _t, Yt = Ce, Jt = Tt, Qt = jt, kt = f.forwardRef(({ className: s, inset: o, children: e, ...t }, n) => /* @__PURE__ */ l.jsxs(
889
889
  Re,
890
890
  {
891
891
  ref: n,
892
- className: R(
892
+ className: y(
893
893
  "flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[state=open]:bg-zinc-100 data-[state=open]:text-zinc-900 dark:focus:bg-zinc-800 dark:focus:text-zinc-50 dark:data-[state=open]:bg-zinc-800 dark:data-[state=open]:text-zinc-50",
894
894
  o && "pl-8",
895
895
  s
@@ -901,12 +901,12 @@ const kt = Nt, At = Ot, Xt = _t, Yt = Ce, Jt = Tt, Qt = jt, Pt = f.forwardRef(({
901
901
  ]
902
902
  }
903
903
  ));
904
- Pt.displayName = Re.displayName;
904
+ kt.displayName = Re.displayName;
905
905
  const Dt = f.forwardRef(({ className: s, ...o }, e) => /* @__PURE__ */ l.jsx(
906
906
  Ie,
907
907
  {
908
908
  ref: e,
909
- className: R(
909
+ className: y(
910
910
  "z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",
911
911
  s
912
912
  ),
@@ -918,7 +918,7 @@ const Ne = f.forwardRef(({ className: s, ...o }, e) => /* @__PURE__ */ l.jsx(Ce,
918
918
  be,
919
919
  {
920
920
  ref: e,
921
- className: R(
921
+ className: y(
922
922
  "z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",
923
923
  s
924
924
  ),
@@ -926,11 +926,11 @@ const Ne = f.forwardRef(({ className: s, ...o }, e) => /* @__PURE__ */ l.jsx(Ce,
926
926
  }
927
927
  ) }));
928
928
  Ne.displayName = be.displayName;
929
- const y = f.forwardRef(({ className: s, inset: o, ...e }, t) => /* @__PURE__ */ l.jsx(
929
+ const I = f.forwardRef(({ className: s, inset: o, ...e }, t) => /* @__PURE__ */ l.jsx(
930
930
  Se,
931
931
  {
932
932
  ref: t,
933
- className: R(
933
+ className: y(
934
934
  "relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",
935
935
  o && "pl-8",
936
936
  s
@@ -938,12 +938,12 @@ const y = f.forwardRef(({ className: s, inset: o, ...e }, t) => /* @__PURE__ */
938
938
  ...e
939
939
  }
940
940
  ));
941
- y.displayName = Se.displayName;
941
+ I.displayName = Se.displayName;
942
942
  const Vt = f.forwardRef(({ className: s, children: o, checked: e, ...t }, n) => /* @__PURE__ */ l.jsxs(
943
943
  we,
944
944
  {
945
945
  ref: n,
946
- className: R(
946
+ className: y(
947
947
  "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",
948
948
  s
949
949
  ),
@@ -960,7 +960,7 @@ const Ft = f.forwardRef(({ className: s, children: o, ...e }, t) => /* @__PURE__
960
960
  ze,
961
961
  {
962
962
  ref: t,
963
- className: R(
963
+ className: y(
964
964
  "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",
965
965
  s
966
966
  ),
@@ -976,7 +976,7 @@ const Lt = f.forwardRef(({ className: s, inset: o, ...e }, t) => /* @__PURE__ */
976
976
  Me,
977
977
  {
978
978
  ref: t,
979
- className: R(
979
+ className: y(
980
980
  "px-2 py-1.5 text-sm font-semibold text-zinc-950 dark:text-zinc-50",
981
981
  o && "pl-8",
982
982
  s
@@ -985,32 +985,32 @@ const Lt = f.forwardRef(({ className: s, inset: o, ...e }, t) => /* @__PURE__ */
985
985
  }
986
986
  ));
987
987
  Lt.displayName = Me.displayName;
988
- const L = f.forwardRef(({ className: s, ...o }, e) => /* @__PURE__ */ l.jsx(
988
+ const F = f.forwardRef(({ className: s, ...o }, e) => /* @__PURE__ */ l.jsx(
989
989
  ye,
990
990
  {
991
991
  ref: e,
992
- className: R(
992
+ className: y(
993
993
  "-mx-1 my-1 h-px bg-zinc-200 dark:bg-zinc-800",
994
994
  s
995
995
  ),
996
996
  ...o
997
997
  }
998
998
  ));
999
- L.displayName = ye.displayName;
1000
- const _ = ({
999
+ F.displayName = ye.displayName;
1000
+ const L = ({
1001
1001
  className: s,
1002
1002
  ...o
1003
1003
  }) => /* @__PURE__ */ l.jsx(
1004
1004
  "span",
1005
1005
  {
1006
- className: R(
1006
+ className: y(
1007
1007
  "ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400",
1008
1008
  s
1009
1009
  ),
1010
1010
  ...o
1011
1011
  }
1012
1012
  );
1013
- _.displayName = "ContextMenuShortcut";
1013
+ L.displayName = "ContextMenuShortcut";
1014
1014
  const Zt = ({ row: s, data: o, contextId: e, children: t, enabled: n = !0, onAction: r }) => {
1015
1015
  if (!n)
1016
1016
  return /* @__PURE__ */ l.jsx(l.Fragment, { children: t });
@@ -1021,68 +1021,60 @@ const Zt = ({ row: s, data: o, contextId: e, children: t, enabled: n = !0, onAct
1021
1021
  })(), m = h.length > 0, c = (d) => {
1022
1022
  r?.(d, i);
1023
1023
  };
1024
- return /* @__PURE__ */ l.jsxs(kt, { children: [
1025
- /* @__PURE__ */ l.jsx(At, { asChild: !0, children: /* @__PURE__ */ l.jsx("span", { className: "contents", children: t }) }),
1026
- /* @__PURE__ */ l.jsx(Ne, { className: "w-64", children: m ? h.map((d, u) => /* @__PURE__ */ l.jsx(_e.Fragment, { children: d.isSeparator ? /* @__PURE__ */ l.jsx(L, {}) : /* @__PURE__ */ l.jsxs(
1027
- y,
1024
+ return /* @__PURE__ */ l.jsxs(At, { children: [
1025
+ /* @__PURE__ */ l.jsx(Pt, { asChild: !0, children: /* @__PURE__ */ l.jsx("span", { className: "contents", children: t }) }),
1026
+ /* @__PURE__ */ l.jsx(Ne, { className: "w-64", children: m ? h.map((d, u) => /* @__PURE__ */ l.jsx(_e.Fragment, { children: d.isSeparator ? /* @__PURE__ */ l.jsx(F, {}) : /* @__PURE__ */ l.jsxs(
1027
+ I,
1028
1028
  {
1029
1029
  inset: !0,
1030
- onClick: () => {
1030
+ onSelect: () => {
1031
1031
  d.onClick ? d.onClick(i) : c(d.action);
1032
1032
  },
1033
1033
  disabled: d.disabled,
1034
1034
  className: d.className,
1035
1035
  children: [
1036
1036
  d.label,
1037
- d.shortcut && /* @__PURE__ */ l.jsx(_, { children: d.shortcut })
1037
+ d.shortcut && /* @__PURE__ */ l.jsx(L, { children: d.shortcut })
1038
1038
  ]
1039
1039
  }
1040
1040
  ) }, d.id || u)) : (
1041
1041
  /* Default EzTable Actions (Legacy Fallback) */
1042
1042
  /* @__PURE__ */ l.jsxs(l.Fragment, { children: [
1043
- /* @__PURE__ */ l.jsxs(y, { inset: !0, onClick: () => c("edit"), children: [
1044
- "Edit Row",
1045
- /* @__PURE__ */ l.jsx(_, { children: "⌘E" })
1046
- ] }),
1047
- /* @__PURE__ */ l.jsxs(y, { inset: !0, onClick: () => c("copy"), children: [
1043
+ /* @__PURE__ */ l.jsxs(I, { inset: !0, onSelect: () => c("copy"), children: [
1048
1044
  "Copy Data",
1049
- /* @__PURE__ */ l.jsx(_, { children: "⌘C" })
1050
- ] }),
1051
- /* @__PURE__ */ l.jsxs(y, { inset: !0, onClick: () => c("paste"), children: [
1052
- "Paste Row",
1053
- /* @__PURE__ */ l.jsx(_, { children: "⌘V" })
1045
+ /* @__PURE__ */ l.jsx(L, { children: "⌘C" })
1054
1046
  ] }),
1055
- /* @__PURE__ */ l.jsx(L, {}),
1047
+ /* @__PURE__ */ l.jsx(F, {}),
1056
1048
  s && /* @__PURE__ */ l.jsxs(l.Fragment, { children: [
1057
- s.getIsPinned() !== "top" && /* @__PURE__ */ l.jsx(y, { inset: !0, onClick: () => c("pin-top"), children: "Pin to Top" }),
1058
- s.getIsPinned() !== "bottom" && /* @__PURE__ */ l.jsx(y, { inset: !0, onClick: () => c("pin-bottom"), children: "Pin to Bottom" }),
1059
- s.getIsPinned() && /* @__PURE__ */ l.jsx(y, { inset: !0, onClick: () => c("unpin"), children: "Unpin Row" }),
1060
- /* @__PURE__ */ l.jsx(L, {})
1049
+ s.getIsPinned() !== "top" && /* @__PURE__ */ l.jsx(I, { inset: !0, onSelect: () => c("pin-top"), children: "Pin to Top" }),
1050
+ s.getIsPinned() !== "bottom" && /* @__PURE__ */ l.jsx(I, { inset: !0, onSelect: () => c("pin-bottom"), children: "Pin to Bottom" }),
1051
+ s.getIsPinned() && /* @__PURE__ */ l.jsx(I, { inset: !0, onSelect: () => c("unpin"), children: "Unpin Row" }),
1052
+ /* @__PURE__ */ l.jsx(F, {})
1061
1053
  ] }),
1062
- /* @__PURE__ */ l.jsxs(y, { inset: !0, className: "text-red-600 focus:text-red-600 focus:bg-red-50 dark:focus:bg-red-950/50", onClick: () => c("delete"), children: [
1054
+ /* @__PURE__ */ l.jsxs(I, { inset: !0, className: "text-red-600 focus:text-red-600 focus:bg-red-50 dark:focus:bg-red-950/50", onSelect: () => c("delete"), children: [
1063
1055
  "Delete Row",
1064
- /* @__PURE__ */ l.jsx(_, { children: "⌘⌫" })
1056
+ /* @__PURE__ */ l.jsx(L, { children: "⌘⌫" })
1065
1057
  ] })
1066
1058
  ] })
1067
1059
  ) })
1068
1060
  ] });
1069
1061
  };
1070
1062
  export {
1071
- kt as C,
1063
+ At as C,
1072
1064
  Zt as E,
1073
1065
  Vt as a,
1074
1066
  Ne as b,
1075
1067
  Xt as c,
1076
- y as d,
1068
+ I as d,
1077
1069
  Lt as e,
1078
1070
  Yt as f,
1079
1071
  Qt as g,
1080
1072
  Ft as h,
1081
- L as i,
1082
- _ as j,
1073
+ F as i,
1074
+ L as j,
1083
1075
  Jt as k,
1084
1076
  Dt as l,
1085
- Pt as m,
1086
- At as n,
1077
+ kt as m,
1078
+ Pt as n,
1087
1079
  Kt as u
1088
1080
  };
@@ -1,4 +1,4 @@
1
- "use strict";const g=require("react"),V=require("@tanstack/react-virtual"),l=require("./useInitCoreServices-Bii-wC1T.cjs"),f=require("./EzErrorBoundary-BmcaG6V2.cjs"),$=require("lucide-react");function ke(s){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const e in s)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(s,e);Object.defineProperty(o,e,t.get?t:{enumerable:!0,get:()=>s[e]})}}return o.default=s,Object.freeze(o)}const m=ke(g);function _(s,o,e){let t=e.initialDeps??[],n,r=!0;function i(){var a,h,x;let c;e.key&&((a=e.debug)!=null&&a.call(e))&&(c=Date.now());const d=s();if(!(d.length!==t.length||d.some((S,p)=>t[p]!==S)))return n;t=d;let E;if(e.key&&((h=e.debug)!=null&&h.call(e))&&(E=Date.now()),n=o(...d),e.key&&((x=e.debug)!=null&&x.call(e))){const S=Math.round((Date.now()-c)*100)/100,p=Math.round((Date.now()-E)*100)/100,j=p/16,I=(b,N)=>{for(b=String(b);b.length<N;)b=" "+b;return b};console.info(`%c⏱ ${I(p,5)} /${I(S,5)} ms`,`
1
+ "use strict";const g=require("react"),V=require("@tanstack/react-virtual"),l=require("./useInitCoreServices-Bii-wC1T.cjs"),f=require("./EzErrorBoundary-BmcaG6V2.cjs"),$=require("lucide-react");function Ae(s){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const e in s)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(s,e);Object.defineProperty(o,e,t.get?t:{enumerable:!0,get:()=>s[e]})}}return o.default=s,Object.freeze(o)}const m=Ae(g);function N(s,o,e){let t=e.initialDeps??[],n,r=!0;function i(){var a,h,x;let c;e.key&&((a=e.debug)!=null&&a.call(e))&&(c=Date.now());const d=s();if(!(d.length!==t.length||d.some((S,p)=>t[p]!==S)))return n;t=d;let E;if(e.key&&((h=e.debug)!=null&&h.call(e))&&(E=Date.now()),n=o(...d),e.key&&((x=e.debug)!=null&&x.call(e))){const S=Math.round((Date.now()-c)*100)/100,p=Math.round((Date.now()-E)*100)/100,j=p/16,y=(b,O)=>{for(b=String(b);b.length<O;)b=" "+b;return b};console.info(`%c⏱ ${y(p,5)} /${y(S,5)} ms`,`
2
2
  font-size: .6rem;
3
3
  font-weight: bold;
4
- color: hsl(${Math.max(0,Math.min(120-120*j,120))}deg 100% 31%);`,e?.key)}return e?.onChange&&!(r&&e.skipInitialOnChange)&&e.onChange(n),r=!1,n}return i.updateDeps=a=>{t=a},i}function X(s,o){if(s===void 0)throw new Error("Unexpected undefined");return s}const Pe=(s,o)=>Math.abs(s-o)<1.01,Ae=s=>s,De=s=>{const o=Math.max(s.startIndex-s.overscan,0),e=Math.min(s.endIndex+s.overscan,s.count-1),t=[];for(let n=o;n<=e;n++)t.push(n);return t},Ve=(s,o,e)=>{if(o?.borderBoxSize){const t=o.borderBoxSize[0];if(t)return Math.round(t[e.options.horizontal?"inlineSize":"blockSize"])}return s[e.options.horizontal?"offsetWidth":"offsetHeight"]},Fe=(s,{adjustments:o=0,behavior:e},t)=>{var n,r;const i=s+o;(r=(n=t.scrollElement)==null?void 0:n.scrollTo)==null||r.call(n,{[t.options.horizontal?"left":"top"]:i,behavior:e})};class Le{constructor(o){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.currentScrollToIndex=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.laneAssignments=new Map,this.pendingMeasuredCacheIndexes=[],this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null;const t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(n=>{n.forEach(r=>{const i=()=>{this._measureElement(r.target,r)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(i):i()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:n=>{var r;return(r=t())==null?void 0:r.observe(n,{box:"border-box"})},unobserve:n=>{var r;return(r=t())==null?void 0:r.unobserve(n)}}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{typeof n>"u"&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Ae,rangeExtractor:De,onChange:()=>{},measureElement:Ve,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...e}},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=_(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:process.env.NODE_ENV!=="production"&&"maybeNotify",debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var e;const t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.maybeNotify();return}this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((e=this.scrollElement)==null?void 0:e.window)??null,this.elementsCache.forEach(n=>{this.observer.observe(n)}),this.unsubs.push(this.options.observeElementRect(this,n=>{this.scrollRect=n,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(n,r)=>{this.scrollAdjustments=0,this.scrollDirection=r?this.getScrollOffset()<n?"forward":"backward":null,this.scrollOffset=n,this.isScrolling=r,this.maybeNotify()})),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{const n=new Map,r=new Map;for(let i=t-1;i>=0;i--){const a=e[i];if(n.has(a.lane))continue;const h=r.get(a.lane);if(h==null||a.end>h.end?r.set(a.lane,a):a.end<h.end&&n.set(a.lane,!0),n.size===this.options.lanes)break}return r.size===this.options.lanes?Array.from(r.values()).sort((i,a)=>i.end===a.end?i.index-a.index:i.end-a.end)[0]:void 0},this.getMeasurementOptions=_(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes],(e,t,n,r,i,a)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a}),{key:!1}),this.getMeasurements=_(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a},h)=>{if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(const u of this.laneAssignments.keys())u>=e&&this.laneAssignments.delete(u);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMeasuredCacheIndexes=[]),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(u=>{this.itemSizeCache.set(u.key,u.size)}));const x=this.lanesSettling?0:this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[],this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1);const c=this.measurementsCache.slice(0,x),d=new Array(a).fill(void 0);for(let u=0;u<x;u++){const E=c[u];E&&(d[E.lane]=u)}for(let u=x;u<e;u++){const E=r(u),S=this.laneAssignments.get(u);let p,j;if(S!==void 0&&this.options.lanes>1){p=S;const R=d[p],y=R!==void 0?c[R]:void 0;j=y?y.end+this.options.gap:t+n}else{const R=this.options.lanes===1?c[u-1]:this.getFurthestMeasurement(c,u);j=R?R.end+this.options.gap:t+n,p=R?R.lane:u%this.options.lanes,this.options.lanes>1&&this.laneAssignments.set(u,p)}const I=h.get(E),b=typeof I=="number"?I:this.options.estimateSize(u),N=j+b;c[u]={index:u,start:j,size:b,end:N,key:E,lane:p},d[p]=u}return this.measurementsCache=c,c},{key:process.env.NODE_ENV!=="production"&&"getMeasurements",debug:()=>this.options.debug}),this.calculateRange=_(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>this.range=e.length>0&&t>0?We({measurements:e,outerSize:t,scrollOffset:n,lanes:r}):null,{key:process.env.NODE_ENV!=="production"&&"calculateRange",debug:()=>this.options.debug}),this.getVirtualIndexes=_(()=>{let e=null,t=null;const n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:process.env.NODE_ENV!=="production"&&"getVirtualIndexes",debug:()=>this.options.debug}),this.indexFromElement=e=>{const t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{const n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;const i=r.key,a=this.elementsCache.get(i);a!==e&&(a&&this.observer.unobserve(a),this.observer.observe(e),this.elementsCache.set(i,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{const n=this.measurementsCache[e];if(!n)return;const r=this.itemSizeCache.get(n.key)??n.size,i=t-r;i!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(n,i,this):n.start<this.getScrollOffset()+this.scrollAdjustments)&&(process.env.NODE_ENV!=="production"&&this.options.debug&&console.info("correction",i),this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=i,behavior:void 0})),this.pendingMeasuredCacheIndexes.push(n.index),this.itemSizeCache=new Map(this.itemSizeCache.set(n.key,t)),this.notify(!1))},this.measureElement=e=>{if(!e){this.elementsCache.forEach((t,n)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(n))});return}this._measureElement(e,void 0)},this.getVirtualItems=_(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{const n=[];for(let r=0,i=e.length;r<i;r++){const a=e[r],h=t[a];n.push(h)}return n},{key:process.env.NODE_ENV!=="production"&&"getVirtualItems",debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{const t=this.getMeasurements();if(t.length!==0)return X(t[Y(0,t.length-1,n=>X(t[n]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;const r=this.getSize(),i=this.getScrollOffset();t==="auto"&&(t=e>=i+r?"end":"start"),t==="center"?e+=(n-r)/2:t==="end"&&(e-=r);const a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t="auto")=>{e=Math.max(0,Math.min(e,this.options.count-1));const n=this.measurementsCache[e];if(!n)return;const r=this.getSize(),i=this.getScrollOffset();if(t==="auto")if(n.end>=i+r-this.options.scrollPaddingEnd)t="end";else if(n.start<=i+this.options.scrollPaddingStart)t="start";else return[i,t];if(t==="end"&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];const a=t==="end"?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,n.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(e,{align:t="start",behavior:n}={})=>{n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t="auto",behavior:n}={})=>{n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),e=Math.max(0,Math.min(e,this.options.count-1)),this.currentScrollToIndex=e;let r=0;const i=10,a=x=>{if(!this.targetWindow)return;const c=this.getOffsetForIndex(e,x);if(!c){console.warn("Failed to get offset for index:",e);return}const[d,u]=c;this._scrollToOffset(d,{adjustments:void 0,behavior:n}),this.targetWindow.requestAnimationFrame(()=>{const E=()=>{if(this.currentScrollToIndex!==e)return;const S=this.getScrollOffset(),p=this.getOffsetForIndex(e,u);if(!p){console.warn("Failed to get offset for index:",e);return}Pe(p[0],S)||h(u)};this.isDynamicMode()?this.targetWindow.requestAnimationFrame(E):E()})},h=x=>{this.targetWindow&&this.currentScrollToIndex===e&&(r++,r<i?(process.env.NODE_ENV!=="production"&&this.options.debug&&console.info("Schedule retry",r,i),this.targetWindow.requestAnimationFrame(()=>a(x))):console.warn(`Failed to scroll to index ${e} after ${i} attempts.`))};a(t)},this.scrollBy=(e,{behavior:t}={})=>{t==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var e;const t=this.getMeasurements();let n;if(t.length===0)n=this.options.paddingStart;else if(this.options.lanes===1)n=((e=t[t.length-1])==null?void 0:e.end)??0;else{const r=Array(this.options.lanes).fill(null);let i=t.length-1;for(;i>=0&&r.some(a=>a===null);){const a=t[i];r[a.lane]===null&&(r[a.lane]=a.end),i--}n=Math.max(...r.filter(a=>a!==null))}return Math.max(n-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.laneAssignments=new Map,this.notify(!1)},this.setOptions(o)}}const Y=(s,o,e,t)=>{for(;s<=o;){const n=(s+o)/2|0,r=e(n);if(r<t)s=n+1;else if(r>t)o=n-1;else return n}return s>0?s-1:0};function We({measurements:s,outerSize:o,scrollOffset:e,lanes:t}){const n=s.length-1,r=h=>s[h].start;if(s.length<=t)return{startIndex:0,endIndex:n};let i=Y(0,n,r,e),a=i;if(t===1)for(;a<n&&s[a].end<e+o;)a++;else if(t>1){const h=Array(t).fill(0);for(;a<n&&h.some(c=>c<e+o);){const c=s[a];h[c.lane]=c.end,a++}const x=Array(t).fill(e+o);for(;i>=0&&x.some(c=>c>=e);){const c=s[i];x[c.lane]=c.start,i--}i=Math.max(0,i-i%t),a=Math.min(n,a+(t-1-a%t))}return{startIndex:i,endIndex:a}}class $e{name="VirtualizationService";virtualizers=new Map;createVirtualizer(o,e){const t=new Le({count:e.count,getScrollElement:e.getScrollElement,estimateSize:e.estimateSize,overscan:e.overscan??5,horizontal:e.horizontal??!1,scrollToFn:Fe,observeElementRect:(n,r)=>{const i=n.scrollElement;if(!i||i===window)return;const a=new ResizeObserver(h=>{r(h[0].contentRect)});return a.observe(i),()=>a.disconnect()},observeElementOffset:(n,r)=>{const i=n.scrollElement;if(!i)return;const a=()=>{r(i===window?window.scrollY:i.scrollTop,!0)};return i.addEventListener("scroll",a,{passive:!0}),r(i===window?window.scrollY:i.scrollTop,!1),()=>i.removeEventListener("scroll",a)}});return this.virtualizers.set(o,t),t}registerVirtualizer(o,e){this.virtualizers.set(o,e)}getVirtualizer(o){return this.virtualizers.get(o)}cleanup(){this.virtualizers.clear()}}const Ge=s=>{const{rowCount:o,rowHeight:e=48,overscanCount:t=5,enableRowVirtualization:n=!0,columnCount:r=0,columnWidth:i=150,enableColumnVirtualization:a=!1,scrollMargin:h=0,scrollPaddingStart:x=0,scrollPaddingEnd:c=0,progressiveRendering:d=!1,prefetchDistance:u=5,adaptiveSizing:E=!1,languageDirection:S="ltr",debug:p=!1,customRangeExtractor:j,onScroll:I,onScrollStart:b,onScrollStop:N}=s,R=g.useRef(null),[y,U]=g.useState(d?1:t||u),T=g.useRef(null),A=g.useRef(!1);g.useEffect(()=>{if(!d)return;let C;const M=()=>{U(1),clearTimeout(C),C=setTimeout(()=>{U(t||u)},150)},k=R.current;if(k)return k.addEventListener("scroll",M,{passive:!0}),()=>{k.removeEventListener("scroll",M),clearTimeout(C)}},[d,t,u]);const D=g.useMemo(()=>j||(C=>{const M=V.defaultRangeExtractor(C);return M.length===0&&C.count>0?[0]:M}),[j]),H=g.useCallback((C,M,k)=>{V.elementScroll(C,M,k)},[]),Te=g.useMemo(()=>({count:o,getScrollElement:()=>R.current,estimateSize:typeof e=="function"?e:()=>e,overscan:y,scrollMargin:h,scrollPaddingStart:x,scrollPaddingEnd:c,rangeExtractor:D,scrollToFn:H,lanugageDirection:S,onChange:C=>{const M=C.scrollOffset??0;T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{I?.(M)},16),C.isScrolling?A.current||(A.current=!0,b?.()):A.current&&(A.current=!1,N?.())}}),[o,e,y,E,h,x,c,D,H,I,b,N]),w=V.useVirtualizer(Te);g.useEffect(()=>{p&&console.log("[DEBUG_VIRTUAL] Virtualizer instance changed")},[w,p]);const L=g.useMemo(()=>f.getOrRegisterService(l.globalServiceRegistry,"VirtualizationService",()=>new $e),[]);g.useEffect(()=>{s.id&&L&&L.registerVirtualizer(s.id,w)},[s.id,w,L]);const q=g.useMemo(()=>{if(!(!a||!r))return{horizontal:!0,count:r,getScrollElement:()=>R.current,estimateSize:typeof i=="function"?i:()=>i,overscan:y,rangeExtractor:D,lanugageDirection:S}},[a,r,i,y,D]),W=q?V.useVirtualizer(q):void 0;g.useEffect(()=>()=>{T.current&&clearTimeout(T.current)},[]),g.useEffect(()=>{p&&process.env.NODE_ENV!=="production"&&console.log("Virtualization Debug:",{rowCount:o,visibleRows:w.getVirtualItems().length,activeOverscan:y,scrollOffset:w.scrollOffset})},[p,o,w,y]);const K=(C,M)=>{w.scrollToIndex(C,M)};return{parentRef:R,rowVirtualizer:w,columnVirtualizer:W,scrollToIndex:K,scrollToRow:K,scrollToColumn:W?(C,M)=>{W.scrollToIndex(C,M)}:void 0,getVirtualItems:()=>w.getVirtualItems(),scrollOffset:w.scrollOffset??0}};var G="ContextMenu",[Be]=f.createContextScope(G,[f.createMenuScope]),v=f.createMenuScope(),[Ue,J]=Be(G),Q=s=>{const{__scopeContextMenu:o,children:e,onOpenChange:t,dir:n,modal:r=!0}=s,[i,a]=m.useState(!1),h=v(o),x=f.useCallbackRef(t),c=m.useCallback(d=>{a(d),x(d)},[x]);return l.jsxRuntimeExports.jsx(Ue,{scope:o,open:i,onOpenChange:c,modal:r,children:l.jsxRuntimeExports.jsx(f.Root3,{...h,dir:n,open:i,onOpenChange:c,modal:r,children:e})})};Q.displayName=G;var Z="ContextMenuTrigger",ee=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,disabled:t=!1,...n}=s,r=J(Z,e),i=v(e),a=m.useRef({x:0,y:0}),h=m.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...a.current})}),x=m.useRef(0),c=m.useCallback(()=>window.clearTimeout(x.current),[]),d=u=>{a.current={x:u.clientX,y:u.clientY},r.onOpenChange(!0)};return m.useEffect(()=>c,[c]),m.useEffect(()=>{t&&c()},[t,c]),l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[l.jsxRuntimeExports.jsx(f.Anchor2,{...i,virtualRef:h}),l.jsxRuntimeExports.jsx(f.Primitive.span,{"data-state":r.open?"open":"closed","data-disabled":t?"":void 0,...n,ref:o,style:{WebkitTouchCallout:"none",...s.style},onContextMenu:t?s.onContextMenu:f.composeEventHandlers(s.onContextMenu,u=>{c(),d(u),u.preventDefault()}),onPointerDown:t?s.onPointerDown:f.composeEventHandlers(s.onPointerDown,F(u=>{c(),x.current=window.setTimeout(()=>d(u),700)})),onPointerMove:t?s.onPointerMove:f.composeEventHandlers(s.onPointerMove,F(c)),onPointerCancel:t?s.onPointerCancel:f.composeEventHandlers(s.onPointerCancel,F(c)),onPointerUp:t?s.onPointerUp:f.composeEventHandlers(s.onPointerUp,F(c))})]})});ee.displayName=Z;var He="ContextMenuPortal",te=s=>{const{__scopeContextMenu:o,...e}=s,t=v(o);return l.jsxRuntimeExports.jsx(f.Portal,{...t,...e})};te.displayName=He;var ne="ContextMenuContent",se=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=J(ne,e),r=v(e),i=m.useRef(!1);return l.jsxRuntimeExports.jsx(f.Content2,{...r,...t,ref:o,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:a=>{s.onCloseAutoFocus?.(a),!a.defaultPrevented&&i.current&&a.preventDefault(),i.current=!1},onInteractOutside:a=>{s.onInteractOutside?.(a),!a.defaultPrevented&&!n.modal&&(i.current=!0)},style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});se.displayName=ne;var qe="ContextMenuGroup",oe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Group,{...n,...t,ref:o})});oe.displayName=qe;var Ke="ContextMenuLabel",ie=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Label,{...n,...t,ref:o})});ie.displayName=Ke;var Xe="ContextMenuItem",re=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Item2,{...n,...t,ref:o})});re.displayName=Xe;var Ye="ContextMenuCheckboxItem",ae=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.CheckboxItem,{...n,...t,ref:o})});ae.displayName=Ye;var Je="ContextMenuRadioGroup",le=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.RadioGroup,{...n,...t,ref:o})});le.displayName=Je;var Qe="ContextMenuRadioItem",ce=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.RadioItem,{...n,...t,ref:o})});ce.displayName=Qe;var Ze="ContextMenuItemIndicator",ue=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.ItemIndicator,{...n,...t,ref:o})});ue.displayName=Ze;var et="ContextMenuSeparator",de=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Separator,{...n,...t,ref:o})});de.displayName=et;var tt="ContextMenuArrow",nt=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Arrow2,{...n,...t,ref:o})});nt.displayName=tt;var he="ContextMenuSub",me=s=>{const{__scopeContextMenu:o,children:e,onOpenChange:t,open:n,defaultOpen:r}=s,i=v(o),[a,h]=f.useControllableState({prop:n,defaultProp:r??!1,onChange:t,caller:he});return l.jsxRuntimeExports.jsx(f.Sub,{...i,open:a,onOpenChange:h,children:e})};me.displayName=he;var st="ContextMenuSubTrigger",fe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.SubTrigger,{...n,...t,ref:o})});fe.displayName=st;var ot="ContextMenuSubContent",xe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.SubContent,{...n,...t,ref:o,style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});xe.displayName=ot;function F(s){return o=>o.pointerType!=="mouse"?s(o):void 0}var it=Q,rt=ee,pe=te,ge=se,at=oe,ve=ie,Ce=re,Ee=ae,lt=le,Me=ce,be=ue,Re=de,ct=me,Se=fe,je=xe;const we=it,ze=rt,ut=at,dt=pe,ht=ct,mt=lt,ye=m.forwardRef(({className:s,inset:o,children:e,...t},n)=>l.jsxRuntimeExports.jsxs(Se,{ref:n,className:l.cn("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[state=open]:bg-zinc-100 data-[state=open]:text-zinc-900 dark:focus:bg-zinc-800 dark:focus:text-zinc-50 dark:data-[state=open]:bg-zinc-800 dark:data-[state=open]:text-zinc-50",o&&"pl-8",s),...t,children:[e,l.jsxRuntimeExports.jsx($.ChevronRight,{className:"ml-auto h-4 w-4"})]}));ye.displayName=Se.displayName;const Ie=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(je,{ref:e,className:l.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",s),...o}));Ie.displayName=je.displayName;const B=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(pe,{children:l.jsxRuntimeExports.jsx(ge,{ref:e,className:l.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",s),...o})}));B.displayName=ge.displayName;const z=m.forwardRef(({className:s,inset:o,...e},t)=>l.jsxRuntimeExports.jsx(Ce,{ref:t,className:l.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",o&&"pl-8",s),...e}));z.displayName=Ce.displayName;const Oe=m.forwardRef(({className:s,children:o,checked:e,...t},n)=>l.jsxRuntimeExports.jsxs(Ee,{ref:n,className:l.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",s),checked:e,...t,children:[l.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsxRuntimeExports.jsx(be,{children:l.jsxRuntimeExports.jsx($.Check,{className:"h-4 w-4"})})}),o]}));Oe.displayName=Ee.displayName;const Ne=m.forwardRef(({className:s,children:o,...e},t)=>l.jsxRuntimeExports.jsxs(Me,{ref:t,className:l.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",s),...e,children:[l.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsxRuntimeExports.jsx(be,{children:l.jsxRuntimeExports.jsx($.Circle,{className:"h-2 w-2 fill-current"})})}),o]}));Ne.displayName=Me.displayName;const _e=m.forwardRef(({className:s,inset:o,...e},t)=>l.jsxRuntimeExports.jsx(ve,{ref:t,className:l.cn("px-2 py-1.5 text-sm font-semibold text-zinc-950 dark:text-zinc-50",o&&"pl-8",s),...e}));_e.displayName=ve.displayName;const P=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(Re,{ref:e,className:l.cn("-mx-1 my-1 h-px bg-zinc-200 dark:bg-zinc-800",s),...o}));P.displayName=Re.displayName;const O=({className:s,...o})=>l.jsxRuntimeExports.jsx("span",{className:l.cn("ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400",s),...o});O.displayName="ContextMenuShortcut";const ft=({row:s,data:o,contextId:e,children:t,enabled:n=!0,onAction:r})=>{if(!n)return l.jsxRuntimeExports.jsx(l.jsxRuntimeExports.Fragment,{children:t});const i=o||s?.original,h=(()=>{if(!e)return[];const d=l.globalServiceRegistry.get("ContextMenuService");return d?d.getItems(e,i):[]})(),x=h.length>0,c=d=>{r?.(d,i)};return l.jsxRuntimeExports.jsxs(we,{children:[l.jsxRuntimeExports.jsx(ze,{asChild:!0,children:l.jsxRuntimeExports.jsx("span",{className:"contents",children:t})}),l.jsxRuntimeExports.jsx(B,{className:"w-64",children:x?h.map((d,u)=>l.jsxRuntimeExports.jsx(g.Fragment,{children:d.isSeparator?l.jsxRuntimeExports.jsx(P,{}):l.jsxRuntimeExports.jsxs(z,{inset:!0,onClick:()=>{d.onClick?d.onClick(i):c(d.action)},disabled:d.disabled,className:d.className,children:[d.label,d.shortcut&&l.jsxRuntimeExports.jsx(O,{children:d.shortcut})]})},d.id||u)):l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[l.jsxRuntimeExports.jsxs(z,{inset:!0,onClick:()=>c("edit"),children:["Edit Row",l.jsxRuntimeExports.jsx(O,{children:"⌘E"})]}),l.jsxRuntimeExports.jsxs(z,{inset:!0,onClick:()=>c("copy"),children:["Copy Data",l.jsxRuntimeExports.jsx(O,{children:"⌘C"})]}),l.jsxRuntimeExports.jsxs(z,{inset:!0,onClick:()=>c("paste"),children:["Paste Row",l.jsxRuntimeExports.jsx(O,{children:"⌘V"})]}),l.jsxRuntimeExports.jsx(P,{}),s&&l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[s.getIsPinned()!=="top"&&l.jsxRuntimeExports.jsx(z,{inset:!0,onClick:()=>c("pin-top"),children:"Pin to Top"}),s.getIsPinned()!=="bottom"&&l.jsxRuntimeExports.jsx(z,{inset:!0,onClick:()=>c("pin-bottom"),children:"Pin to Bottom"}),s.getIsPinned()&&l.jsxRuntimeExports.jsx(z,{inset:!0,onClick:()=>c("unpin"),children:"Unpin Row"}),l.jsxRuntimeExports.jsx(P,{})]}),l.jsxRuntimeExports.jsxs(z,{inset:!0,className:"text-red-600 focus:text-red-600 focus:bg-red-50 dark:focus:bg-red-950/50",onClick:()=>c("delete"),children:["Delete Row",l.jsxRuntimeExports.jsx(O,{children:"⌘⌫"})]})]})})]})};exports.ContextMenu=we;exports.ContextMenuCheckboxItem=Oe;exports.ContextMenuContent=B;exports.ContextMenuGroup=ut;exports.ContextMenuItem=z;exports.ContextMenuLabel=_e;exports.ContextMenuPortal=dt;exports.ContextMenuRadioGroup=mt;exports.ContextMenuRadioItem=Ne;exports.ContextMenuSeparator=P;exports.ContextMenuShortcut=O;exports.ContextMenuSub=ht;exports.ContextMenuSubContent=Ie;exports.ContextMenuSubTrigger=ye;exports.ContextMenuTrigger=ze;exports.EzContextMenu=ft;exports.useVirtualization=Ge;
4
+ color: hsl(${Math.max(0,Math.min(120-120*j,120))}deg 100% 31%);`,e?.key)}return e?.onChange&&!(r&&e.skipInitialOnChange)&&e.onChange(n),r=!1,n}return i.updateDeps=a=>{t=a},i}function X(s,o){if(s===void 0)throw new Error("Unexpected undefined");return s}const Pe=(s,o)=>Math.abs(s-o)<1.01,ke=s=>s,De=s=>{const o=Math.max(s.startIndex-s.overscan,0),e=Math.min(s.endIndex+s.overscan,s.count-1),t=[];for(let n=o;n<=e;n++)t.push(n);return t},Ve=(s,o,e)=>{if(o?.borderBoxSize){const t=o.borderBoxSize[0];if(t)return Math.round(t[e.options.horizontal?"inlineSize":"blockSize"])}return s[e.options.horizontal?"offsetWidth":"offsetHeight"]},Fe=(s,{adjustments:o=0,behavior:e},t)=>{var n,r;const i=s+o;(r=(n=t.scrollElement)==null?void 0:n.scrollTo)==null||r.call(n,{[t.options.horizontal?"left":"top"]:i,behavior:e})};class Le{constructor(o){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.currentScrollToIndex=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.laneAssignments=new Map,this.pendingMeasuredCacheIndexes=[],this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null;const t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(n=>{n.forEach(r=>{const i=()=>{this._measureElement(r.target,r)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(i):i()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:n=>{var r;return(r=t())==null?void 0:r.observe(n,{box:"border-box"})},unobserve:n=>{var r;return(r=t())==null?void 0:r.unobserve(n)}}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{typeof n>"u"&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:ke,rangeExtractor:De,onChange:()=>{},measureElement:Ve,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...e}},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=N(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:process.env.NODE_ENV!=="production"&&"maybeNotify",debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var e;const t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.maybeNotify();return}this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((e=this.scrollElement)==null?void 0:e.window)??null,this.elementsCache.forEach(n=>{this.observer.observe(n)}),this.unsubs.push(this.options.observeElementRect(this,n=>{this.scrollRect=n,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(n,r)=>{this.scrollAdjustments=0,this.scrollDirection=r?this.getScrollOffset()<n?"forward":"backward":null,this.scrollOffset=n,this.isScrolling=r,this.maybeNotify()})),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{const n=new Map,r=new Map;for(let i=t-1;i>=0;i--){const a=e[i];if(n.has(a.lane))continue;const h=r.get(a.lane);if(h==null||a.end>h.end?r.set(a.lane,a):a.end<h.end&&n.set(a.lane,!0),n.size===this.options.lanes)break}return r.size===this.options.lanes?Array.from(r.values()).sort((i,a)=>i.end===a.end?i.index-a.index:i.end-a.end)[0]:void 0},this.getMeasurementOptions=N(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes],(e,t,n,r,i,a)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a}),{key:!1}),this.getMeasurements=N(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a},h)=>{if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(const u of this.laneAssignments.keys())u>=e&&this.laneAssignments.delete(u);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMeasuredCacheIndexes=[]),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(u=>{this.itemSizeCache.set(u.key,u.size)}));const x=this.lanesSettling?0:this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[],this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1);const c=this.measurementsCache.slice(0,x),d=new Array(a).fill(void 0);for(let u=0;u<x;u++){const E=c[u];E&&(d[E.lane]=u)}for(let u=x;u<e;u++){const E=r(u),S=this.laneAssignments.get(u);let p,j;if(S!==void 0&&this.options.lanes>1){p=S;const R=d[p],w=R!==void 0?c[R]:void 0;j=w?w.end+this.options.gap:t+n}else{const R=this.options.lanes===1?c[u-1]:this.getFurthestMeasurement(c,u);j=R?R.end+this.options.gap:t+n,p=R?R.lane:u%this.options.lanes,this.options.lanes>1&&this.laneAssignments.set(u,p)}const y=h.get(E),b=typeof y=="number"?y:this.options.estimateSize(u),O=j+b;c[u]={index:u,start:j,size:b,end:O,key:E,lane:p},d[p]=u}return this.measurementsCache=c,c},{key:process.env.NODE_ENV!=="production"&&"getMeasurements",debug:()=>this.options.debug}),this.calculateRange=N(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>this.range=e.length>0&&t>0?We({measurements:e,outerSize:t,scrollOffset:n,lanes:r}):null,{key:process.env.NODE_ENV!=="production"&&"calculateRange",debug:()=>this.options.debug}),this.getVirtualIndexes=N(()=>{let e=null,t=null;const n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:process.env.NODE_ENV!=="production"&&"getVirtualIndexes",debug:()=>this.options.debug}),this.indexFromElement=e=>{const t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{const n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;const i=r.key,a=this.elementsCache.get(i);a!==e&&(a&&this.observer.unobserve(a),this.observer.observe(e),this.elementsCache.set(i,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{const n=this.measurementsCache[e];if(!n)return;const r=this.itemSizeCache.get(n.key)??n.size,i=t-r;i!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(n,i,this):n.start<this.getScrollOffset()+this.scrollAdjustments)&&(process.env.NODE_ENV!=="production"&&this.options.debug&&console.info("correction",i),this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=i,behavior:void 0})),this.pendingMeasuredCacheIndexes.push(n.index),this.itemSizeCache=new Map(this.itemSizeCache.set(n.key,t)),this.notify(!1))},this.measureElement=e=>{if(!e){this.elementsCache.forEach((t,n)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(n))});return}this._measureElement(e,void 0)},this.getVirtualItems=N(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{const n=[];for(let r=0,i=e.length;r<i;r++){const a=e[r],h=t[a];n.push(h)}return n},{key:process.env.NODE_ENV!=="production"&&"getVirtualItems",debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{const t=this.getMeasurements();if(t.length!==0)return X(t[Y(0,t.length-1,n=>X(t[n]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;const r=this.getSize(),i=this.getScrollOffset();t==="auto"&&(t=e>=i+r?"end":"start"),t==="center"?e+=(n-r)/2:t==="end"&&(e-=r);const a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t="auto")=>{e=Math.max(0,Math.min(e,this.options.count-1));const n=this.measurementsCache[e];if(!n)return;const r=this.getSize(),i=this.getScrollOffset();if(t==="auto")if(n.end>=i+r-this.options.scrollPaddingEnd)t="end";else if(n.start<=i+this.options.scrollPaddingStart)t="start";else return[i,t];if(t==="end"&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];const a=t==="end"?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,n.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(e,{align:t="start",behavior:n}={})=>{n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t="auto",behavior:n}={})=>{n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),e=Math.max(0,Math.min(e,this.options.count-1)),this.currentScrollToIndex=e;let r=0;const i=10,a=x=>{if(!this.targetWindow)return;const c=this.getOffsetForIndex(e,x);if(!c){console.warn("Failed to get offset for index:",e);return}const[d,u]=c;this._scrollToOffset(d,{adjustments:void 0,behavior:n}),this.targetWindow.requestAnimationFrame(()=>{const E=()=>{if(this.currentScrollToIndex!==e)return;const S=this.getScrollOffset(),p=this.getOffsetForIndex(e,u);if(!p){console.warn("Failed to get offset for index:",e);return}Pe(p[0],S)||h(u)};this.isDynamicMode()?this.targetWindow.requestAnimationFrame(E):E()})},h=x=>{this.targetWindow&&this.currentScrollToIndex===e&&(r++,r<i?(process.env.NODE_ENV!=="production"&&this.options.debug&&console.info("Schedule retry",r,i),this.targetWindow.requestAnimationFrame(()=>a(x))):console.warn(`Failed to scroll to index ${e} after ${i} attempts.`))};a(t)},this.scrollBy=(e,{behavior:t}={})=>{t==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var e;const t=this.getMeasurements();let n;if(t.length===0)n=this.options.paddingStart;else if(this.options.lanes===1)n=((e=t[t.length-1])==null?void 0:e.end)??0;else{const r=Array(this.options.lanes).fill(null);let i=t.length-1;for(;i>=0&&r.some(a=>a===null);){const a=t[i];r[a.lane]===null&&(r[a.lane]=a.end),i--}n=Math.max(...r.filter(a=>a!==null))}return Math.max(n-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.laneAssignments=new Map,this.notify(!1)},this.setOptions(o)}}const Y=(s,o,e,t)=>{for(;s<=o;){const n=(s+o)/2|0,r=e(n);if(r<t)s=n+1;else if(r>t)o=n-1;else return n}return s>0?s-1:0};function We({measurements:s,outerSize:o,scrollOffset:e,lanes:t}){const n=s.length-1,r=h=>s[h].start;if(s.length<=t)return{startIndex:0,endIndex:n};let i=Y(0,n,r,e),a=i;if(t===1)for(;a<n&&s[a].end<e+o;)a++;else if(t>1){const h=Array(t).fill(0);for(;a<n&&h.some(c=>c<e+o);){const c=s[a];h[c.lane]=c.end,a++}const x=Array(t).fill(e+o);for(;i>=0&&x.some(c=>c>=e);){const c=s[i];x[c.lane]=c.start,i--}i=Math.max(0,i-i%t),a=Math.min(n,a+(t-1-a%t))}return{startIndex:i,endIndex:a}}class $e{name="VirtualizationService";virtualizers=new Map;createVirtualizer(o,e){const t=new Le({count:e.count,getScrollElement:e.getScrollElement,estimateSize:e.estimateSize,overscan:e.overscan??5,horizontal:e.horizontal??!1,scrollToFn:Fe,observeElementRect:(n,r)=>{const i=n.scrollElement;if(!i||i===window)return;const a=new ResizeObserver(h=>{r(h[0].contentRect)});return a.observe(i),()=>a.disconnect()},observeElementOffset:(n,r)=>{const i=n.scrollElement;if(!i)return;const a=()=>{r(i===window?window.scrollY:i.scrollTop,!0)};return i.addEventListener("scroll",a,{passive:!0}),r(i===window?window.scrollY:i.scrollTop,!1),()=>i.removeEventListener("scroll",a)}});return this.virtualizers.set(o,t),t}registerVirtualizer(o,e){this.virtualizers.set(o,e)}getVirtualizer(o){return this.virtualizers.get(o)}cleanup(){this.virtualizers.clear()}}const Ge=s=>{const{rowCount:o,rowHeight:e=48,overscanCount:t=5,enableRowVirtualization:n=!0,columnCount:r=0,columnWidth:i=150,enableColumnVirtualization:a=!1,scrollMargin:h=0,scrollPaddingStart:x=0,scrollPaddingEnd:c=0,progressiveRendering:d=!1,prefetchDistance:u=5,adaptiveSizing:E=!1,languageDirection:S="ltr",debug:p=!1,customRangeExtractor:j,onScroll:y,onScrollStart:b,onScrollStop:O}=s,R=g.useRef(null),[w,U]=g.useState(d?1:t||u),_=g.useRef(null),k=g.useRef(!1);g.useEffect(()=>{if(!d)return;let C;const M=()=>{U(1),clearTimeout(C),C=setTimeout(()=>{U(t||u)},150)},T=R.current;if(T)return T.addEventListener("scroll",M,{passive:!0}),()=>{T.removeEventListener("scroll",M),clearTimeout(C)}},[d,t,u]);const D=g.useMemo(()=>j||(C=>{const M=V.defaultRangeExtractor(C);return M.length===0&&C.count>0?[0]:M}),[j]),H=g.useCallback((C,M,T)=>{V.elementScroll(C,M,T)},[]),Te=g.useMemo(()=>({count:o,getScrollElement:()=>R.current,estimateSize:typeof e=="function"?e:()=>e,overscan:w,scrollMargin:h,scrollPaddingStart:x,scrollPaddingEnd:c,rangeExtractor:D,scrollToFn:H,lanugageDirection:S,onChange:C=>{const M=C.scrollOffset??0;_.current&&clearTimeout(_.current),_.current=setTimeout(()=>{y?.(M)},16),C.isScrolling?k.current||(k.current=!0,b?.()):k.current&&(k.current=!1,O?.())}}),[o,e,w,E,h,x,c,D,H,y,b,O]),z=V.useVirtualizer(Te);g.useEffect(()=>{p&&console.log("[DEBUG_VIRTUAL] Virtualizer instance changed")},[z,p]);const L=g.useMemo(()=>f.getOrRegisterService(l.globalServiceRegistry,"VirtualizationService",()=>new $e),[]);g.useEffect(()=>{s.id&&L&&L.registerVirtualizer(s.id,z)},[s.id,z,L]);const q=g.useMemo(()=>{if(!(!a||!r))return{horizontal:!0,count:r,getScrollElement:()=>R.current,estimateSize:typeof i=="function"?i:()=>i,overscan:w,rangeExtractor:D,lanugageDirection:S}},[a,r,i,w,D]),W=q?V.useVirtualizer(q):void 0;g.useEffect(()=>()=>{_.current&&clearTimeout(_.current)},[]),g.useEffect(()=>{p&&process.env.NODE_ENV!=="production"&&console.log("Virtualization Debug:",{rowCount:o,visibleRows:z.getVirtualItems().length,activeOverscan:w,scrollOffset:z.scrollOffset})},[p,o,z,w]);const K=(C,M)=>{z.scrollToIndex(C,M)};return{parentRef:R,rowVirtualizer:z,columnVirtualizer:W,scrollToIndex:K,scrollToRow:K,scrollToColumn:W?(C,M)=>{W.scrollToIndex(C,M)}:void 0,getVirtualItems:()=>z.getVirtualItems(),scrollOffset:z.scrollOffset??0}};var G="ContextMenu",[Be]=f.createContextScope(G,[f.createMenuScope]),v=f.createMenuScope(),[Ue,J]=Be(G),Q=s=>{const{__scopeContextMenu:o,children:e,onOpenChange:t,dir:n,modal:r=!0}=s,[i,a]=m.useState(!1),h=v(o),x=f.useCallbackRef(t),c=m.useCallback(d=>{a(d),x(d)},[x]);return l.jsxRuntimeExports.jsx(Ue,{scope:o,open:i,onOpenChange:c,modal:r,children:l.jsxRuntimeExports.jsx(f.Root3,{...h,dir:n,open:i,onOpenChange:c,modal:r,children:e})})};Q.displayName=G;var Z="ContextMenuTrigger",ee=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,disabled:t=!1,...n}=s,r=J(Z,e),i=v(e),a=m.useRef({x:0,y:0}),h=m.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...a.current})}),x=m.useRef(0),c=m.useCallback(()=>window.clearTimeout(x.current),[]),d=u=>{a.current={x:u.clientX,y:u.clientY},r.onOpenChange(!0)};return m.useEffect(()=>c,[c]),m.useEffect(()=>{t&&c()},[t,c]),l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[l.jsxRuntimeExports.jsx(f.Anchor2,{...i,virtualRef:h}),l.jsxRuntimeExports.jsx(f.Primitive.span,{"data-state":r.open?"open":"closed","data-disabled":t?"":void 0,...n,ref:o,style:{WebkitTouchCallout:"none",...s.style},onContextMenu:t?s.onContextMenu:f.composeEventHandlers(s.onContextMenu,u=>{c(),d(u),u.preventDefault()}),onPointerDown:t?s.onPointerDown:f.composeEventHandlers(s.onPointerDown,F(u=>{c(),x.current=window.setTimeout(()=>d(u),700)})),onPointerMove:t?s.onPointerMove:f.composeEventHandlers(s.onPointerMove,F(c)),onPointerCancel:t?s.onPointerCancel:f.composeEventHandlers(s.onPointerCancel,F(c)),onPointerUp:t?s.onPointerUp:f.composeEventHandlers(s.onPointerUp,F(c))})]})});ee.displayName=Z;var He="ContextMenuPortal",te=s=>{const{__scopeContextMenu:o,...e}=s,t=v(o);return l.jsxRuntimeExports.jsx(f.Portal,{...t,...e})};te.displayName=He;var ne="ContextMenuContent",se=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=J(ne,e),r=v(e),i=m.useRef(!1);return l.jsxRuntimeExports.jsx(f.Content2,{...r,...t,ref:o,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:a=>{s.onCloseAutoFocus?.(a),!a.defaultPrevented&&i.current&&a.preventDefault(),i.current=!1},onInteractOutside:a=>{s.onInteractOutside?.(a),!a.defaultPrevented&&!n.modal&&(i.current=!0)},style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});se.displayName=ne;var qe="ContextMenuGroup",oe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Group,{...n,...t,ref:o})});oe.displayName=qe;var Ke="ContextMenuLabel",ie=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Label,{...n,...t,ref:o})});ie.displayName=Ke;var Xe="ContextMenuItem",re=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Item2,{...n,...t,ref:o})});re.displayName=Xe;var Ye="ContextMenuCheckboxItem",ae=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.CheckboxItem,{...n,...t,ref:o})});ae.displayName=Ye;var Je="ContextMenuRadioGroup",le=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.RadioGroup,{...n,...t,ref:o})});le.displayName=Je;var Qe="ContextMenuRadioItem",ce=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.RadioItem,{...n,...t,ref:o})});ce.displayName=Qe;var Ze="ContextMenuItemIndicator",ue=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.ItemIndicator,{...n,...t,ref:o})});ue.displayName=Ze;var et="ContextMenuSeparator",de=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Separator,{...n,...t,ref:o})});de.displayName=et;var tt="ContextMenuArrow",nt=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.Arrow2,{...n,...t,ref:o})});nt.displayName=tt;var he="ContextMenuSub",me=s=>{const{__scopeContextMenu:o,children:e,onOpenChange:t,open:n,defaultOpen:r}=s,i=v(o),[a,h]=f.useControllableState({prop:n,defaultProp:r??!1,onChange:t,caller:he});return l.jsxRuntimeExports.jsx(f.Sub,{...i,open:a,onOpenChange:h,children:e})};me.displayName=he;var st="ContextMenuSubTrigger",fe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.SubTrigger,{...n,...t,ref:o})});fe.displayName=st;var ot="ContextMenuSubContent",xe=m.forwardRef((s,o)=>{const{__scopeContextMenu:e,...t}=s,n=v(e);return l.jsxRuntimeExports.jsx(f.SubContent,{...n,...t,ref:o,style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});xe.displayName=ot;function F(s){return o=>o.pointerType!=="mouse"?s(o):void 0}var it=Q,rt=ee,pe=te,ge=se,at=oe,ve=ie,Ce=re,Ee=ae,lt=le,Me=ce,be=ue,Re=de,ct=me,Se=fe,je=xe;const ze=it,we=rt,ut=at,dt=pe,ht=ct,mt=lt,ye=m.forwardRef(({className:s,inset:o,children:e,...t},n)=>l.jsxRuntimeExports.jsxs(Se,{ref:n,className:l.cn("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[state=open]:bg-zinc-100 data-[state=open]:text-zinc-900 dark:focus:bg-zinc-800 dark:focus:text-zinc-50 dark:data-[state=open]:bg-zinc-800 dark:data-[state=open]:text-zinc-50",o&&"pl-8",s),...t,children:[e,l.jsxRuntimeExports.jsx($.ChevronRight,{className:"ml-auto h-4 w-4"})]}));ye.displayName=Se.displayName;const Ie=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(je,{ref:e,className:l.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",s),...o}));Ie.displayName=je.displayName;const B=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(pe,{children:l.jsxRuntimeExports.jsx(ge,{ref:e,className:l.cn("z-50 min-w-[8rem] overflow-hidden rounded-md border border-zinc-200 bg-white p-1 text-zinc-950 shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50",s),...o})}));B.displayName=ge.displayName;const I=m.forwardRef(({className:s,inset:o,...e},t)=>l.jsxRuntimeExports.jsx(Ce,{ref:t,className:l.cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",o&&"pl-8",s),...e}));I.displayName=Ce.displayName;const Oe=m.forwardRef(({className:s,children:o,checked:e,...t},n)=>l.jsxRuntimeExports.jsxs(Ee,{ref:n,className:l.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",s),checked:e,...t,children:[l.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsxRuntimeExports.jsx(be,{children:l.jsxRuntimeExports.jsx($.Check,{className:"h-4 w-4"})})}),o]}));Oe.displayName=Ee.displayName;const Ne=m.forwardRef(({className:s,children:o,...e},t)=>l.jsxRuntimeExports.jsxs(Me,{ref:t,className:l.cn("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-zinc-800 dark:focus:text-zinc-50",s),...e,children:[l.jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsxRuntimeExports.jsx(be,{children:l.jsxRuntimeExports.jsx($.Circle,{className:"h-2 w-2 fill-current"})})}),o]}));Ne.displayName=Me.displayName;const _e=m.forwardRef(({className:s,inset:o,...e},t)=>l.jsxRuntimeExports.jsx(ve,{ref:t,className:l.cn("px-2 py-1.5 text-sm font-semibold text-zinc-950 dark:text-zinc-50",o&&"pl-8",s),...e}));_e.displayName=ve.displayName;const A=m.forwardRef(({className:s,...o},e)=>l.jsxRuntimeExports.jsx(Re,{ref:e,className:l.cn("-mx-1 my-1 h-px bg-zinc-200 dark:bg-zinc-800",s),...o}));A.displayName=Re.displayName;const P=({className:s,...o})=>l.jsxRuntimeExports.jsx("span",{className:l.cn("ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400",s),...o});P.displayName="ContextMenuShortcut";const ft=({row:s,data:o,contextId:e,children:t,enabled:n=!0,onAction:r})=>{if(!n)return l.jsxRuntimeExports.jsx(l.jsxRuntimeExports.Fragment,{children:t});const i=o||s?.original,h=(()=>{if(!e)return[];const d=l.globalServiceRegistry.get("ContextMenuService");return d?d.getItems(e,i):[]})(),x=h.length>0,c=d=>{r?.(d,i)};return l.jsxRuntimeExports.jsxs(ze,{children:[l.jsxRuntimeExports.jsx(we,{asChild:!0,children:l.jsxRuntimeExports.jsx("span",{className:"contents",children:t})}),l.jsxRuntimeExports.jsx(B,{className:"w-64",children:x?h.map((d,u)=>l.jsxRuntimeExports.jsx(g.Fragment,{children:d.isSeparator?l.jsxRuntimeExports.jsx(A,{}):l.jsxRuntimeExports.jsxs(I,{inset:!0,onSelect:()=>{d.onClick?d.onClick(i):c(d.action)},disabled:d.disabled,className:d.className,children:[d.label,d.shortcut&&l.jsxRuntimeExports.jsx(P,{children:d.shortcut})]})},d.id||u)):l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[l.jsxRuntimeExports.jsxs(I,{inset:!0,onSelect:()=>c("copy"),children:["Copy Data",l.jsxRuntimeExports.jsx(P,{children:"⌘C"})]}),l.jsxRuntimeExports.jsx(A,{}),s&&l.jsxRuntimeExports.jsxs(l.jsxRuntimeExports.Fragment,{children:[s.getIsPinned()!=="top"&&l.jsxRuntimeExports.jsx(I,{inset:!0,onSelect:()=>c("pin-top"),children:"Pin to Top"}),s.getIsPinned()!=="bottom"&&l.jsxRuntimeExports.jsx(I,{inset:!0,onSelect:()=>c("pin-bottom"),children:"Pin to Bottom"}),s.getIsPinned()&&l.jsxRuntimeExports.jsx(I,{inset:!0,onSelect:()=>c("unpin"),children:"Unpin Row"}),l.jsxRuntimeExports.jsx(A,{})]}),l.jsxRuntimeExports.jsxs(I,{inset:!0,className:"text-red-600 focus:text-red-600 focus:bg-red-50 dark:focus:bg-red-950/50",onSelect:()=>c("delete"),children:["Delete Row",l.jsxRuntimeExports.jsx(P,{children:"⌘⌫"})]})]})})]})};exports.ContextMenu=ze;exports.ContextMenuCheckboxItem=Oe;exports.ContextMenuContent=B;exports.ContextMenuGroup=ut;exports.ContextMenuItem=I;exports.ContextMenuLabel=_e;exports.ContextMenuPortal=dt;exports.ContextMenuRadioGroup=mt;exports.ContextMenuRadioItem=Ne;exports.ContextMenuSeparator=A;exports.ContextMenuShortcut=P;exports.ContextMenuSub=ht;exports.ContextMenuSubContent=Ie;exports.ContextMenuSubTrigger=ye;exports.ContextMenuTrigger=we;exports.EzContextMenu=ft;exports.useVirtualization=Ge;
@@ -14,7 +14,7 @@ import { useVirtualizer as yn } from "@tanstack/react-virtual";
14
14
  import { B as me } from "./button-8SZFs7Rb.js";
15
15
  import { P as zt, a as Ot, b as Vt } from "./popover-D_TVlxFf.js";
16
16
  import { I as Ee } from "./input-DxuQrH6O.js";
17
- import { u as Os, C as Vs, n as _s, b as Ls, d as vt, i as $s, E as Gs } from "./EzContextMenu-Dux9pkob.js";
17
+ import { u as Os, C as Vs, n as _s, b as Ls, d as vt, i as $s, E as Gs } from "./EzContextMenu-B_45nn-1.js";
18
18
  import { u as Bs } from "./useServiceState-Ckpfgmrc.js";
19
19
  import "clsx";
20
20
  import "tailwind-merge";