ezux 1.1.0 → 1.1.2

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;
@@ -0,0 +1,7 @@
1
+ import { Header } from '@tanstack/react-table';
2
+ interface EzHeaderDragPreviewProps {
3
+ header: Header<any, any>;
4
+ density?: string;
5
+ }
6
+ export declare const EzHeaderDragPreview: ({ header, density }: EzHeaderDragPreviewProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};