@pstdio/ui 0.23.0 → 0.24.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.
Files changed (46) hide show
  1. package/dist/chat-ui.js +840 -834
  2. package/dist/chat-ui.js.map +1 -1
  3. package/dist/components/chat-ui/components/chat-input-actions.d.ts +2 -0
  4. package/dist/components/chat-ui/components/chat-input-question-prompt.d.ts +3 -0
  5. package/dist/components/chat-ui/components/chat-input.d.ts +2 -0
  6. package/dist/components/chat-ui/components/chat-panel.d.ts +2 -0
  7. package/dist/components/chat-ui/components/timeline-title.d.ts +6 -0
  8. package/dist/components/layout/index.d.ts +1 -0
  9. package/dist/components/layout/resizable-split-layout.d.ts +4 -3
  10. package/dist/components/layout/resizable-split-layout.handle.d.ts +6 -2
  11. package/dist/components/layout/resizable-split-layout.panels.d.ts +6 -2
  12. package/dist/components/layout/resizable-split-layout.root-size.d.ts +3 -0
  13. package/dist/components/primitives/index.d.ts +2 -0
  14. package/dist/data-table.js +1 -1
  15. package/dist/{diff-editor-BnfV8cYB.js → diff-bubble-DvUPRnfB.js} +49 -48
  16. package/dist/diff-bubble-DvUPRnfB.js.map +1 -0
  17. package/dist/diff.js +111 -111
  18. package/dist/diff.js.map +1 -1
  19. package/dist/index.js +44 -43
  20. package/dist/index.js.map +1 -1
  21. package/dist/kanban-renderer.js +4 -4
  22. package/dist/kanban-renderer.js.map +1 -1
  23. package/dist/{param-editor-DgzVeyJ0.js → param-editor-DhoxgwGd.js} +2 -2
  24. package/dist/{param-editor-DgzVeyJ0.js.map → param-editor-DhoxgwGd.js.map} +1 -1
  25. package/dist/{param-editor-field-BMvuSAP5.js → param-editor-field-DurcyLuw.js} +43 -42
  26. package/dist/param-editor-field-DurcyLuw.js.map +1 -0
  27. package/dist/theme/primitives/colors.d.ts +34 -0
  28. package/dist/theme/primitives/sizes.d.ts +9 -0
  29. package/dist/theme/recipes/landing-story.d.ts +10 -0
  30. package/dist/theme/recipes/landing-tool-demo.d.ts +1 -0
  31. package/dist/theme/recipes/landing.d.ts +23 -0
  32. package/dist/theme/recipes/resizable-split-layout.d.ts +106 -0
  33. package/dist/theme/tokens/colors-background.d.ts +260 -0
  34. package/dist/theme/tokens/colors-visualization.d.ts +162 -0
  35. package/dist/theme/tokens/colors.d.ts +2 -422
  36. package/dist/{theme-C0empEin.js → theme-Ca-KyNoi.js} +1409 -568
  37. package/dist/theme-Ca-KyNoi.js.map +1 -0
  38. package/dist/theme.js +1 -1
  39. package/dist/tree-list-DXwHWodb.js +1348 -0
  40. package/dist/tree-list-DXwHWodb.js.map +1 -0
  41. package/package.json +2 -2
  42. package/dist/diff-editor-BnfV8cYB.js.map +0 -1
  43. package/dist/param-editor-field-BMvuSAP5.js.map +0 -1
  44. package/dist/theme-C0empEin.js.map +0 -1
  45. package/dist/tree-list-BHFSyvIZ.js +0 -1262
  46. package/dist/tree-list-BHFSyvIZ.js.map +0 -1
@@ -0,0 +1,1348 @@
1
+ import { jsxs as se, jsx as h, Fragment as Xe } from "react/jsx-runtime";
2
+ import { c as V } from "react/compiler-runtime";
3
+ import { Box as X, Flex as Ye, useSlotRecipe as _t, Input as Ft, Stack as xe, Text as Ot, Menu as ve, IconButton as tt, HStack as je } from "@chakra-ui/react";
4
+ import { useState as re, useRef as ie, useEffect as pe, useId as $t, createContext as Wt, useContext as Vt } from "react";
5
+ import { useVirtualizer as Ht } from "@tanstack/react-virtual";
6
+ import { R as Kt, L as nt, a as Gt } from "./list-row-CRi3Luog.js";
7
+ import { ChevronRight as Bt } from "lucide-react";
8
+ import { useSensors as st, useSensor as lt, PointerSensor as dt, closestCenter as ct, DndContext as at } from "@dnd-kit/core";
9
+ import { SortableContext as ut, verticalListSortingStrategy as ft, useSortable as Xt } from "@dnd-kit/sortable";
10
+ import { CSS as jt } from "@dnd-kit/utilities";
11
+ const Yt = 72, Ut = 160, qt = 72, mt = (n, e, o) => Math.min(Math.max(n, e), o), Zt = {
12
+ left: {
13
+ rootDirection: "row",
14
+ dimension: "width",
15
+ separatorOrientation: "vertical",
16
+ cursor: "col-resize",
17
+ pointerCoordinate: "clientX",
18
+ deltaDirection: 1,
19
+ panelFirst: !0
20
+ },
21
+ right: {
22
+ rootDirection: "row",
23
+ dimension: "width",
24
+ separatorOrientation: "vertical",
25
+ cursor: "col-resize",
26
+ pointerCoordinate: "clientX",
27
+ deltaDirection: -1,
28
+ panelFirst: !1
29
+ },
30
+ top: {
31
+ rootDirection: "column",
32
+ dimension: "height",
33
+ separatorOrientation: "horizontal",
34
+ cursor: "row-resize",
35
+ pointerCoordinate: "clientY",
36
+ deltaDirection: 1,
37
+ panelFirst: !0
38
+ },
39
+ bottom: {
40
+ rootDirection: "column",
41
+ dimension: "height",
42
+ separatorOrientation: "horizontal",
43
+ cursor: "row-resize",
44
+ pointerCoordinate: "clientY",
45
+ deltaDirection: -1,
46
+ panelFirst: !1
47
+ }
48
+ }, pt = (n) => Zt[n], He = (n) => {
49
+ const e = n.rootSize > 0 ? n.rootSize : n.fallbackRootSize, o = Math.max(0, e - n.contentMinSize), t = n.maxSize ?? o, i = Math.max(0, Math.min(t, o));
50
+ return {
51
+ minSize: Math.min(n.minSize, i),
52
+ maxSize: i
53
+ };
54
+ }, Jt = (n, e) => n === "top" || n === "bottom" ? qt : mt(e / 2, Yt, Ut), Qt = (n) => {
55
+ const e = pt(n.side), o = n.startSize + n.pointerDelta * e.deltaDirection, t = n.collapsible && o <= Jt(n.side, n.minSize);
56
+ return {
57
+ rawSize: o,
58
+ size: t ? 0 : mt(o, n.minSize, n.maxSize),
59
+ collapsed: t
60
+ };
61
+ }, en = 250, tn = [0, 1, 2], nn = (n, e) => n ? {
62
+ w: e,
63
+ h: "full",
64
+ hitArea: {
65
+ top: 0,
66
+ bottom: 0,
67
+ insetInlineStart: "-1",
68
+ insetInlineEnd: "-1"
69
+ },
70
+ gripDirection: "column",
71
+ bar: {
72
+ top: "0",
73
+ bottom: "0",
74
+ insetInlineStart: "50%",
75
+ w: "0.5",
76
+ transform: "translateX(-50%)"
77
+ }
78
+ } : {
79
+ w: "full",
80
+ h: e,
81
+ hitArea: {
82
+ insetInline: 0,
83
+ top: "-1",
84
+ bottom: "-1"
85
+ },
86
+ gripDirection: "row",
87
+ bar: {
88
+ top: "50%",
89
+ insetInline: "0",
90
+ h: "0.5",
91
+ transform: "translateY(-50%)"
92
+ }
93
+ }, on = (n) => {
94
+ const e = V(4), {
95
+ active: o,
96
+ layout: t
97
+ } = n, i = t.gripDirection, r = o ? 0 : 1;
98
+ let s;
99
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (s = tn.map(ln), e[0] = s) : s = e[0];
100
+ let l;
101
+ return e[1] !== t.gripDirection || e[2] !== r ? (l = /* @__PURE__ */ h(Ye, { "data-part": "grip", direction: i, gap: "3xs", opacity: r, transition: "opacity 120ms ease", children: s }), e[1] = t.gripDirection, e[2] = r, e[3] = l) : l = e[3], l;
102
+ }, rn = (n) => {
103
+ const e = V(3), {
104
+ active: o,
105
+ layout: t
106
+ } = n, i = o ? 1 : 0;
107
+ let r;
108
+ return e[0] !== t.bar || e[1] !== i ? (r = /* @__PURE__ */ h(X, { "data-part": "bar", position: "absolute", borderRadius: "xs", bg: "fg.info", opacity: i, transition: "opacity 120ms ease", pointerEvents: "none", ...t.bar }), e[0] = t.bar, e[1] = i, e[2] = r) : r = e[2], r;
109
+ }, sn = (n) => {
110
+ const e = V(46), {
111
+ css: o,
112
+ axis: t,
113
+ bounds: i,
114
+ collapsed: r,
115
+ collapsible: s,
116
+ contentPanelId: l,
117
+ dragging: c,
118
+ resizablePanelId: d,
119
+ resizeLabel: u,
120
+ resolvedPanelSize: a,
121
+ separator: v,
122
+ onCollapse: b,
123
+ onResizeKeyDown: f,
124
+ onResizeStart: m
125
+ } = n, S = v === "line", y = t.separatorOrientation === "vertical", x = S ? "1px" : "panel-gap";
126
+ let I;
127
+ e[0] !== y || e[1] !== x ? (I = nn(y, x), e[0] = y, e[1] = x, e[2] = I) : I = e[2];
128
+ const p = I, [w, z] = re(!1), D = ie(0), N = w || c;
129
+ let k;
130
+ e[3] !== r ? (k = r ? {
131
+ "aria-hidden": !0,
132
+ tabIndex: -1
133
+ } : {
134
+ tabIndex: 0
135
+ }, e[3] = r, e[4] = k) : k = e[4];
136
+ const g = k;
137
+ let R, C;
138
+ e[5] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (R = () => () => window.clearTimeout(D.current), C = [], e[5] = R, e[6] = C) : (R = e[5], C = e[6]), pe(R, C);
139
+ let O;
140
+ e[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (O = () => {
141
+ D.current = window.setTimeout(() => z(!0), en);
142
+ }, e[7] = O) : O = e[7];
143
+ const q = O;
144
+ let L;
145
+ e[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (L = () => {
146
+ window.clearTimeout(D.current), z(!1);
147
+ }, e[8] = L) : L = e[8];
148
+ const Q = L, $ = t.separatorOrientation, H = `${d} ${l}`;
149
+ let K;
150
+ e[9] !== i.minSize || e[10] !== s ? (K = s ? 0 : Math.round(i.minSize), e[9] = i.minSize, e[10] = s, e[11] = K) : K = e[11];
151
+ let G;
152
+ e[12] !== i.maxSize ? (G = Math.round(i.maxSize), e[12] = i.maxSize, e[13] = G) : G = e[13];
153
+ let W;
154
+ e[14] !== a ? (W = Math.round(a), e[14] = a, e[15] = W) : W = e[15];
155
+ const F = S ? "border.subtle" : void 0;
156
+ let M;
157
+ e[16] !== p.hitArea ? (M = {
158
+ content: '""',
159
+ position: "absolute",
160
+ ...p.hitArea
161
+ }, e[16] = p.hitArea, e[17] = M) : M = e[17];
162
+ let B;
163
+ e[18] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (B = {
164
+ "& [data-part=bar]": {
165
+ opacity: 1
166
+ },
167
+ "& [data-part=grip]": {
168
+ opacity: 0
169
+ }
170
+ }, e[18] = B) : B = e[18];
171
+ const Y = s ? b : void 0;
172
+ let E;
173
+ e[19] !== N || e[20] !== p || e[21] !== S ? (E = S ? null : /* @__PURE__ */ h(on, { active: N, layout: p }), e[19] = N, e[20] = p, e[21] = S, e[22] = E) : E = e[22];
174
+ let A;
175
+ e[23] !== N || e[24] !== p ? (A = /* @__PURE__ */ h(rn, { active: N, layout: p }), e[23] = N, e[24] = p, e[25] = A) : A = e[25];
176
+ let U;
177
+ return e[26] !== t.cursor || e[27] !== t.separatorOrientation || e[28] !== r || e[29] !== o || e[30] !== p.h || e[31] !== p.w || e[32] !== f || e[33] !== m || e[34] !== u || e[35] !== K || e[36] !== G || e[37] !== W || e[38] !== F || e[39] !== M || e[40] !== Y || e[41] !== E || e[42] !== A || e[43] !== H || e[44] !== g ? (U = /* @__PURE__ */ se(X, { css: o, "data-collapsed": r, role: "separator", "aria-label": u, "aria-orientation": $, "aria-controls": H, "aria-valuemin": K, "aria-valuemax": G, "aria-valuenow": W, ...g, position: "relative", zIndex: "docked", alignItems: "center", justifyContent: "center", flexShrink: 0, w: p.w, h: p.h, bg: F, cursor: t.cursor, touchAction: "none", outline: "none", _before: M, _focusVisible: B, onPointerEnter: q, onPointerLeave: Q, onPointerDown: m, onDoubleClick: Y, onKeyDown: f, children: [
178
+ E,
179
+ A
180
+ ] }), e[26] = t.cursor, e[27] = t.separatorOrientation, e[28] = r, e[29] = o, e[30] = p.h, e[31] = p.w, e[32] = f, e[33] = m, e[34] = u, e[35] = K, e[36] = G, e[37] = W, e[38] = F, e[39] = M, e[40] = Y, e[41] = E, e[42] = A, e[43] = H, e[44] = g, e[45] = U) : U = e[45], U;
181
+ };
182
+ function ln(n) {
183
+ return /* @__PURE__ */ h(X, { boxSize: "0.5", borderRadius: "full", bg: "border" }, n);
184
+ }
185
+ const dn = (n) => {
186
+ const e = V(35), {
187
+ styles: o,
188
+ axis: t,
189
+ bounds: i,
190
+ collapsed: r,
191
+ collapsible: s,
192
+ contentPanel: l,
193
+ contentPanelId: c,
194
+ contentPanelRef: d,
195
+ resizablePanel: u,
196
+ resizablePanelId: a,
197
+ resizablePanelRef: v,
198
+ dragging: b,
199
+ resizeLabel: f,
200
+ resolvedPanelSize: m,
201
+ separator: S,
202
+ onCollapse: y,
203
+ onResizeKeyDown: x,
204
+ onResizeStart: I
205
+ } = n, p = r ? !0 : void 0;
206
+ let w;
207
+ e[0] !== r || e[1] !== u || e[2] !== a || e[3] !== v || e[4] !== o.resizablePanel || e[5] !== p ? (w = /* @__PURE__ */ h(X, { id: a, ref: v, css: o.resizablePanel, "data-collapsed": r, "aria-hidden": p, children: u }, "resizable-panel"), e[0] = r, e[1] = u, e[2] = a, e[3] = v, e[4] = o.resizablePanel, e[5] = p, e[6] = w) : w = e[6];
208
+ const z = w;
209
+ let D;
210
+ e[7] !== l || e[8] !== c || e[9] !== d || e[10] !== o.contentPanel ? (D = /* @__PURE__ */ h(X, { id: c, ref: d, css: o.contentPanel, children: l }, "content-panel"), e[7] = l, e[8] = c, e[9] = d, e[10] = o.contentPanel, e[11] = D) : D = e[11];
211
+ const N = D;
212
+ let k;
213
+ e[12] !== t || e[13] !== i || e[14] !== r || e[15] !== s || e[16] !== c || e[17] !== b || e[18] !== y || e[19] !== x || e[20] !== I || e[21] !== a || e[22] !== f || e[23] !== m || e[24] !== S || e[25] !== o.separator ? (k = /* @__PURE__ */ h(sn, { css: o.separator, axis: t, bounds: i, collapsed: r, collapsible: s, contentPanelId: c, resizablePanelId: a, dragging: b, resizeLabel: f, resolvedPanelSize: m, separator: S, onCollapse: y, onResizeKeyDown: x, onResizeStart: I }, "resize-handle"), e[12] = t, e[13] = i, e[14] = r, e[15] = s, e[16] = c, e[17] = b, e[18] = y, e[19] = x, e[20] = I, e[21] = a, e[22] = f, e[23] = m, e[24] = S, e[25] = o.separator, e[26] = k) : k = e[26];
214
+ const g = k;
215
+ if (t.panelFirst) {
216
+ let C;
217
+ return e[27] !== N || e[28] !== z || e[29] !== g ? (C = /* @__PURE__ */ se(Xe, { children: [
218
+ z,
219
+ g,
220
+ N
221
+ ] }), e[27] = N, e[28] = z, e[29] = g, e[30] = C) : C = e[30], C;
222
+ }
223
+ let R;
224
+ return e[31] !== N || e[32] !== z || e[33] !== g ? (R = /* @__PURE__ */ se(Xe, { children: [
225
+ N,
226
+ g,
227
+ z
228
+ ] }), e[31] = N, e[32] = z, e[33] = g, e[34] = R) : R = e[34], R;
229
+ }, cn = (n, e) => {
230
+ const o = V(4), [t, i] = re(0);
231
+ let r, s;
232
+ return o[0] !== e || o[1] !== n ? (r = () => {
233
+ const l = n.current;
234
+ if (!l)
235
+ return;
236
+ const c = () => {
237
+ i(l.getBoundingClientRect()[e]);
238
+ };
239
+ if (c(), typeof ResizeObserver > "u")
240
+ return;
241
+ const d = new ResizeObserver(c);
242
+ return d.observe(l), () => {
243
+ d.disconnect();
244
+ };
245
+ }, s = [n, e], o[0] = e, o[1] = n, o[2] = r, o[3] = s) : (r = o[2], s = o[3]), pe(r, s), t;
246
+ }, Ke = {
247
+ width: 1200,
248
+ height: 720
249
+ }, ot = 24, Ge = (n, e, o) => Math.min(Math.max(n, e), o), Be = (n, e) => n?.getBoundingClientRect()[e] ?? 0, Qn = (n) => {
250
+ const e = V(95);
251
+ let o, t, i, r, s, l, c, d, u, a, v, b, f, m, S;
252
+ e[0] !== n ? ({
253
+ resizablePanel: l,
254
+ contentPanel: o,
255
+ resizableSide: d,
256
+ defaultSizePx: u,
257
+ minSizePx: a,
258
+ maxSizePx: i,
259
+ contentMinSizePx: v,
260
+ collapsed: t,
261
+ collapsible: b,
262
+ resizeLabel: f,
263
+ separator: m,
264
+ layout: S,
265
+ onSizeChange: s,
266
+ onCollapsedChange: r,
267
+ ...c
268
+ } = n, e[0] = n, e[1] = o, e[2] = t, e[3] = i, e[4] = r, e[5] = s, e[6] = l, e[7] = c, e[8] = d, e[9] = u, e[10] = a, e[11] = v, e[12] = b, e[13] = f, e[14] = m, e[15] = S) : (o = e[1], t = e[2], i = e[3], r = e[4], s = e[5], l = e[6], c = e[7], d = e[8], u = e[9], a = e[10], v = e[11], b = e[12], f = e[13], m = e[14], S = e[15]);
269
+ const y = d === void 0 ? "left" : d, x = u === void 0 ? 240 : u, I = a === void 0 ? 200 : a, p = v === void 0 ? 0 : v, w = b === void 0 ? !0 : b, z = f === void 0 ? "Resize panel" : f, D = m === void 0 ? "gap" : m, N = S === void 0 ? "split" : S;
270
+ let k;
271
+ e[16] !== y ? (k = pt(y), e[16] = y, e[17] = k) : k = e[17];
272
+ const g = k;
273
+ let R;
274
+ e[18] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (R = {
275
+ key: "resizableSplitLayout"
276
+ }, e[18] = R) : R = e[18];
277
+ const C = _t(R), O = g.dimension === "width" ? "horizontal" : "vertical";
278
+ let q;
279
+ e[19] !== N || e[20] !== C || e[21] !== O ? (q = C({
280
+ orientation: O,
281
+ layout: N
282
+ }), e[19] = N, e[20] = C, e[21] = O, e[22] = q) : q = e[22];
283
+ const L = q, Q = $t(), $ = ie(null), H = ie(null), K = ie(null), G = ie(an), W = cn($, g.dimension), F = ie(x), [M, B] = re(x), [Y, E] = re(!1), [A, U] = re(!1), _ = t ?? Y;
284
+ let j, le;
285
+ e[23] !== g.dimension || e[24] !== _ || e[25] !== p || e[26] !== i || e[27] !== I || e[28] !== M || e[29] !== W ? (j = He({
286
+ rootSize: W,
287
+ fallbackRootSize: Ke[g.dimension],
288
+ minSize: I,
289
+ maxSize: i,
290
+ contentMinSize: p
291
+ }), le = _ ? 0 : Ge(M, j.minSize, j.maxSize), e[23] = g.dimension, e[24] = _, e[25] = p, e[26] = i, e[27] = I, e[28] = M, e[29] = W, e[30] = j, e[31] = le) : (j = e[30], le = e[31]);
292
+ const ne = le, P = `${Q}-content`, ee = `${Q}-resizable`, Se = `${ne}px`;
293
+ let ae;
294
+ e[32] !== c.style || e[33] !== Se ? (ae = {
295
+ ...c.style,
296
+ "--split-size": Se
297
+ }, e[32] = c.style, e[33] = Se, e[34] = ae) : ae = e[34];
298
+ const Me = ae;
299
+ let be, Ie;
300
+ e[35] !== x ? (be = () => {
301
+ F.current = x, B(x);
302
+ }, Ie = [x], e[35] = x, e[36] = be, e[37] = Ie) : (be = e[36], Ie = e[37]), pe(be, Ie);
303
+ let we, ye;
304
+ e[38] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (we = () => () => G.current(), ye = [], e[38] = we, e[39] = ye) : (we = e[38], ye = e[39]), pe(we, ye);
305
+ let Re;
306
+ e[40] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (Re = (T) => {
307
+ $.current?.style.setProperty("--split-size", `${T}px`);
308
+ }, e[40] = Re) : Re = e[40];
309
+ const _e = Re;
310
+ let ze;
311
+ e[41] !== g.dimension || e[42] !== p || e[43] !== i || e[44] !== I || e[45] !== s ? (ze = (T) => {
312
+ const oe = He({
313
+ rootSize: Be($.current, g.dimension),
314
+ fallbackRootSize: Ke[g.dimension],
315
+ minSize: I,
316
+ maxSize: i,
317
+ contentMinSize: p
318
+ }), Z = Ge(T, oe.minSize, oe.maxSize);
319
+ F.current = Z, B(Z), _e(Z), s?.(Z);
320
+ }, e[41] = g.dimension, e[42] = p, e[43] = i, e[44] = I, e[45] = s, e[46] = ze) : ze = e[46];
321
+ const te = ze;
322
+ let De;
323
+ e[47] !== t || e[48] !== r ? (De = (T) => {
324
+ t === void 0 && E(T), r?.(T);
325
+ }, e[47] = t, e[48] = r, e[49] = De) : De = e[49];
326
+ const J = De;
327
+ let Ne;
328
+ e[50] !== g.cursor || e[51] !== g.dimension || e[52] !== g.pointerCoordinate || e[53] !== _ || e[54] !== w || e[55] !== te || e[56] !== p || e[57] !== i || e[58] !== I || e[59] !== y || e[60] !== J ? (Ne = (T) => {
329
+ if (T.button !== 0 || _ && !w)
330
+ return;
331
+ T.preventDefault(), G.current();
332
+ const oe = T.currentTarget, Z = He({
333
+ rootSize: Be($.current, g.dimension),
334
+ fallbackRootSize: Ke[g.dimension],
335
+ minSize: I,
336
+ maxSize: i,
337
+ contentMinSize: p
338
+ }), he = T[g.pointerCoordinate], We = _ ? 0 : Be(H.current, g.dimension) || F.current, Lt = document.body.style.cursor, At = document.body.style.userSelect;
339
+ let Ve = We === 0 ? 0 : Ge(We, Z.minSize, Z.maxSize), Ze = _, fe = 0;
340
+ const Je = (Pe) => {
341
+ H.current && (H.current.style.pointerEvents = Pe), K.current && (K.current.style.pointerEvents = Pe);
342
+ }, Mt = () => {
343
+ fe || (fe = window.requestAnimationFrame(() => {
344
+ fe = 0, _e(Ve);
345
+ }));
346
+ }, Qe = (Pe) => {
347
+ const et = Qt({
348
+ side: y,
349
+ startSize: We,
350
+ pointerDelta: Pe[g.pointerCoordinate] - he,
351
+ minSize: Z.minSize,
352
+ maxSize: Z.maxSize,
353
+ collapsible: w
354
+ });
355
+ Ze = et.collapsed, Ve = et.size, Mt();
356
+ }, ce = () => {
357
+ window.removeEventListener("pointermove", Qe), window.removeEventListener("pointerup", ce), window.removeEventListener("pointercancel", ce), window.removeEventListener("blur", ce), document.body.style.cursor = Lt, document.body.style.userSelect = At, oe.hasPointerCapture(T.pointerId) && oe.releasePointerCapture(T.pointerId), Je(""), U(!1), fe && (window.cancelAnimationFrame(fe), fe = 0), G.current = un, Ze ? (_e(0), J(!0)) : (J(!1), te(Ve));
358
+ };
359
+ G.current = ce, oe.setPointerCapture(T.pointerId), document.body.style.cursor = g.cursor, document.body.style.userSelect = "none", Je("none"), U(!0), window.addEventListener("pointermove", Qe), window.addEventListener("pointerup", ce, {
360
+ once: !0
361
+ }), window.addEventListener("pointercancel", ce, {
362
+ once: !0
363
+ }), window.addEventListener("blur", ce, {
364
+ once: !0
365
+ });
366
+ }, e[50] = g.cursor, e[51] = g.dimension, e[52] = g.pointerCoordinate, e[53] = _, e[54] = w, e[55] = te, e[56] = p, e[57] = i, e[58] = I, e[59] = y, e[60] = J, e[61] = Ne) : Ne = e[61];
367
+ const Fe = Ne;
368
+ let ke;
369
+ e[62] !== w || e[63] !== J ? (ke = () => {
370
+ w && J(!0);
371
+ }, e[62] = w, e[63] = J, e[64] = ke) : ke = e[64];
372
+ const Oe = ke;
373
+ let Ce;
374
+ e[65] !== g.deltaDirection || e[66] !== g.dimension || e[67] !== j || e[68] !== _ || e[69] !== w || e[70] !== te || e[71] !== J ? (Ce = (T) => {
375
+ const oe = g.dimension === "width" ? "ArrowLeft" : "ArrowUp", Z = g.dimension === "width" ? "ArrowRight" : "ArrowDown", he = F.current;
376
+ _ && (T.key === oe || T.key === Z || T.key === "End") ? (T.preventDefault(), J(!1), te(he)) : T.key === oe ? (T.preventDefault(), te(he - ot * g.deltaDirection)) : T.key === Z ? (T.preventDefault(), te(he + ot * g.deltaDirection)) : T.key === "Home" ? (T.preventDefault(), w ? J(!0) : te(j.minSize)) : T.key === "End" && (T.preventDefault(), te(j.maxSize));
377
+ }, e[65] = g.deltaDirection, e[66] = g.dimension, e[67] = j, e[68] = _, e[69] = w, e[70] = te, e[71] = J, e[72] = Ce) : Ce = e[72];
378
+ const $e = Ce;
379
+ let ue;
380
+ e[73] !== g || e[74] !== j || e[75] !== _ || e[76] !== w || e[77] !== o || e[78] !== P || e[79] !== A || e[80] !== Oe || e[81] !== $e || e[82] !== Fe || e[83] !== l || e[84] !== ee || e[85] !== z || e[86] !== ne || e[87] !== D || e[88] !== L ? (ue = /* @__PURE__ */ h(dn, { styles: L, axis: g, bounds: j, collapsed: _, collapsible: w, contentPanel: o, contentPanelId: P, contentPanelRef: K, resizablePanel: l, resizablePanelId: ee, resizablePanelRef: H, dragging: A, resizeLabel: z, resolvedPanelSize: ne, separator: D, onCollapse: Oe, onResizeKeyDown: $e, onResizeStart: Fe }), e[73] = g, e[74] = j, e[75] = _, e[76] = w, e[77] = o, e[78] = P, e[79] = A, e[80] = Oe, e[81] = $e, e[82] = Fe, e[83] = l, e[84] = ee, e[85] = z, e[86] = ne, e[87] = D, e[88] = L, e[89] = ue) : ue = e[89];
381
+ let Te;
382
+ return e[90] !== c || e[91] !== Me || e[92] !== L.root || e[93] !== ue ? (Te = /* @__PURE__ */ h(Ye, { ref: $, css: L.root, ...c, style: Me, children: ue }), e[90] = c, e[91] = Me, e[92] = L.root, e[93] = ue, e[94] = Te) : Te = e[94], Te;
383
+ };
384
+ function an() {
385
+ }
386
+ function un() {
387
+ }
388
+ const fn = (n) => {
389
+ const e = V(8), {
390
+ actions: o,
391
+ children: t
392
+ } = n;
393
+ let i;
394
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (i = /* @__PURE__ */ h(X, { position: "absolute", inset: "0", zIndex: 0, "aria-hidden": !0, "data-tree-list-background": "true" }), e[0] = i) : i = e[0];
395
+ let r;
396
+ e[1] !== o ? (r = /* @__PURE__ */ h(Kt, { actions: o, closeOnSelect: !1, children: i }), e[1] = o, e[2] = r) : r = e[2];
397
+ let s;
398
+ e[3] !== t ? (s = /* @__PURE__ */ h(X, { position: "relative", zIndex: 1, w: "full", minW: "0", maxW: "full", children: t }), e[3] = t, e[4] = s) : s = e[4];
399
+ let l;
400
+ return e[5] !== r || e[6] !== s ? (l = /* @__PURE__ */ se(X, { position: "relative", flex: "1 0 auto", minH: "full", w: "full", minW: "0", maxW: "full", children: [
401
+ r,
402
+ s
403
+ ] }), e[5] = r, e[6] = s, e[7] = l) : l = e[7], l;
404
+ }, Ae = (n, e) => e.includes(n), mn = (n, e) => Array.isArray(e) ? e.includes(n) : e === n, pn = (n) => n.isNavigable || n.navigationIntent !== void 0, gt = (n) => n.children ?? [], St = (n) => gt(n).length > 0 || n.isContainer === !0, ht = (n) => {
405
+ const {
406
+ rows: e,
407
+ sectionId: o,
408
+ nodes: t,
409
+ expandedNodeIds: i,
410
+ level: r,
411
+ parentNodeId: s
412
+ } = n;
413
+ for (const l of t) {
414
+ e.push({
415
+ kind: "node",
416
+ key: `${o}:${l.id}`,
417
+ sectionId: o,
418
+ node: l,
419
+ level: r,
420
+ parentNodeId: s
421
+ });
422
+ const c = gt(l);
423
+ c.length === 0 || !Ae(l.id, i) || ht({
424
+ rows: e,
425
+ sectionId: o,
426
+ nodes: c,
427
+ expandedNodeIds: i,
428
+ level: r + 1,
429
+ parentNodeId: l.id
430
+ });
431
+ }
432
+ }, vt = (n, e, o) => {
433
+ const t = [];
434
+ for (const i of n) {
435
+ const r = i.collapsible !== !1 && i.label !== void 0, s = r ? Ae(i.id, e) : !0;
436
+ if (i.label && t.push({
437
+ kind: "section-header",
438
+ key: `header:${i.id}`,
439
+ sectionId: i.id,
440
+ section: i,
441
+ collapsible: r,
442
+ expanded: s
443
+ }), !!s) {
444
+ if (i.nodes.length === 0) {
445
+ i.emptyState && t.push({
446
+ kind: "section-empty",
447
+ key: `empty:${i.id}`,
448
+ sectionId: i.id,
449
+ emptyState: i.emptyState
450
+ });
451
+ continue;
452
+ }
453
+ ht({
454
+ rows: t,
455
+ sectionId: i.id,
456
+ nodes: i.nodes,
457
+ expandedNodeIds: o,
458
+ level: 0
459
+ });
460
+ }
461
+ }
462
+ return t;
463
+ }, ge = (n) => n.kind === "node" ? n.node.id : n.key, xt = (n) => n.kind === "node" ? n.node.disabled !== !0 : n.kind === "section-header" && n.collapsible, Ue = (n) => n.filter(xt), bt = (n, e, o) => {
464
+ const t = Ue(o), i = new Set(t.map(ge));
465
+ if (n && i.has(n)) return n;
466
+ const s = (Array.isArray(e) ? e : e ? [e] : []).find((c) => i.has(c));
467
+ if (s) return s;
468
+ const l = t[0];
469
+ return l ? ge(l) : void 0;
470
+ }, gn = (n) => {
471
+ const {
472
+ row: e,
473
+ focusableRows: o,
474
+ currentIndex: t,
475
+ key: i
476
+ } = n;
477
+ if (i === "Enter" || i === " ") return {
478
+ type: "toggle-section",
479
+ sectionId: e.sectionId
480
+ };
481
+ if (i === "ArrowRight") {
482
+ if (!e.expanded) return {
483
+ type: "toggle-section",
484
+ sectionId: e.sectionId
485
+ };
486
+ const r = o[t + 1];
487
+ return r?.kind === "node" && r.sectionId === e.sectionId ? {
488
+ type: "focus",
489
+ rowId: r.node.id
490
+ } : null;
491
+ }
492
+ return i === "ArrowLeft" && e.expanded ? {
493
+ type: "toggle-section",
494
+ sectionId: e.sectionId
495
+ } : null;
496
+ }, Sn = (n) => {
497
+ const {
498
+ row: e,
499
+ focusableRows: o,
500
+ currentIndex: t,
501
+ expandedNodeIds: i,
502
+ key: r
503
+ } = n, s = Ae(e.node.id, i), l = St(e.node);
504
+ if (r === "ArrowRight") {
505
+ if (!l) return null;
506
+ if (!s) return {
507
+ type: "toggle-node",
508
+ nodeId: e.node.id
509
+ };
510
+ const c = o[t + 1];
511
+ return c?.kind === "node" && c.parentNodeId === e.node.id ? {
512
+ type: "focus",
513
+ rowId: c.node.id
514
+ } : null;
515
+ }
516
+ if (r === "ArrowLeft") {
517
+ if (l && s) return {
518
+ type: "toggle-node",
519
+ nodeId: e.node.id
520
+ };
521
+ if (e.parentNodeId) return {
522
+ type: "focus",
523
+ rowId: e.parentNodeId
524
+ };
525
+ }
526
+ return null;
527
+ }, hn = (n) => {
528
+ const {
529
+ rows: e,
530
+ focusedRowId: o,
531
+ activeNodeId: t,
532
+ expandedNodeIds: i,
533
+ key: r
534
+ } = n, s = Ue(e);
535
+ if (s.length === 0) return null;
536
+ const l = bt(o, t, e), c = Math.max(0, s.findIndex((a) => ge(a) === l)), d = s[c];
537
+ if (!d) return null;
538
+ const u = (a) => {
539
+ const v = Math.min(Math.max(a, 0), s.length - 1);
540
+ return {
541
+ type: "focus",
542
+ rowId: ge(s[v])
543
+ };
544
+ };
545
+ return r === "ArrowDown" ? u(c + 1) : r === "ArrowUp" ? u(c - 1) : r === "Home" ? u(0) : r === "End" ? u(s.length - 1) : d.kind === "section-header" ? gn({
546
+ row: d,
547
+ focusableRows: s,
548
+ currentIndex: c,
549
+ key: r
550
+ }) : Sn({
551
+ row: d,
552
+ focusableRows: s,
553
+ currentIndex: c,
554
+ expandedNodeIds: i,
555
+ key: r
556
+ });
557
+ }, It = "application/x-pstdio-tree-node", vn = (n, e) => {
558
+ n.setData(It, e);
559
+ }, wt = (n) => n.getData(It) || void 0, xn = (n) => {
560
+ const e = V(8), {
561
+ children: o,
562
+ onMoveNode: t
563
+ } = n;
564
+ let i;
565
+ e[0] !== t ? (i = (d) => {
566
+ t && (d.preventDefault(), d.dataTransfer.dropEffect = "move");
567
+ }, e[0] = t, e[1] = i) : i = e[1];
568
+ const r = i;
569
+ let s;
570
+ e[2] !== t ? (s = (d) => {
571
+ if (!t)
572
+ return;
573
+ d.preventDefault();
574
+ const u = wt(d.dataTransfer);
575
+ u && t(u);
576
+ }, e[2] = t, e[3] = s) : s = e[3];
577
+ const l = s;
578
+ let c;
579
+ return e[4] !== o || e[5] !== r || e[6] !== l ? (c = /* @__PURE__ */ h(X, { p: "xs", w: "full", minW: "0", maxW: "full", minH: "full", flex: "1 0 auto", onDragOver: r, onDrop: l, children: o }), e[4] = o, e[5] = r, e[6] = l, e[7] = c) : c = e[7], c;
580
+ }, bn = (n) => n <= 0 ? "sm" : `calc(var(--chakra-spacing-1) + ${n} * 12px)`, In = (n) => {
581
+ const {
582
+ input: e,
583
+ icon: o,
584
+ level: t
585
+ } = n, [i, r] = re(e.defaultValue ?? ""), [s, l] = re(), c = ie(null), d = ie(!1), u = async () => {
586
+ if (!d.current) {
587
+ d.current = !0, l(void 0);
588
+ try {
589
+ await e.onCommit(i.trim());
590
+ } catch (a) {
591
+ l(a instanceof Error ? a.message : "Could not create file."), queueMicrotask(() => c.current?.focus());
592
+ } finally {
593
+ d.current = !1;
594
+ }
595
+ }
596
+ };
597
+ return /* @__PURE__ */ se(Ye, { h: "1.75rem", w: "full", minW: "0", alignItems: "center", gap: "1", pr: "sm", pl: bn(t), onMouseDown: (a) => a.stopPropagation(), children: [
598
+ o ? /* @__PURE__ */ h(X, { boxSize: "16px", color: "fg.muted", flexShrink: 0, display: "inline-flex", alignItems: "center", justifyContent: "center", css: {
599
+ "& > svg": {
600
+ width: "16px",
601
+ height: "16px"
602
+ }
603
+ }, children: o }) : null,
604
+ /* @__PURE__ */ h(Ft, { ref: c, autoFocus: !0, size: "xs", value: i, "aria-label": e.ariaLabel, "aria-invalid": !!s || void 0, placeholder: e.placeholder, title: s, onChange: (a) => r(a.currentTarget.value), onBlur: () => {
605
+ d.current || e.onCancel?.();
606
+ }, onKeyDown: (a) => {
607
+ a.stopPropagation(), a.key === "Enter" && (a.preventDefault(), u()), a.key === "Escape" && !d.current && (a.preventDefault(), e.onCancel?.());
608
+ } })
609
+ ] });
610
+ }, yt = (n) => {
611
+ const e = V(69), {
612
+ sectionId: o,
613
+ node: t,
614
+ level: i,
615
+ expandedNodeIds: r,
616
+ activeNodeId: s,
617
+ rowVariant: l,
618
+ nodeGap: c,
619
+ linkComponent: d,
620
+ tabIndex: u,
621
+ onFocus: a,
622
+ onNavigate: v,
623
+ onToggleNode: b,
624
+ onMoveNode: f
625
+ } = n;
626
+ if (t.inlineInput) {
627
+ let P;
628
+ return e[0] !== i || e[1] !== t.icon || e[2] !== t.inlineInput ? (P = /* @__PURE__ */ h(In, { input: t.inlineInput, icon: t.icon, level: i }), e[0] = i, e[1] = t.icon, e[2] = t.inlineInput, e[3] = P) : P = e[3], P;
629
+ }
630
+ let m;
631
+ e[4] !== t ? (m = St(t), e[4] = t, e[5] = m) : m = e[5];
632
+ const S = m;
633
+ let y;
634
+ e[6] !== r || e[7] !== S || e[8] !== t.id ? (y = S && Ae(t.id, r), e[6] = r, e[7] = S, e[8] = t.id, e[9] = y) : y = e[9];
635
+ const x = y;
636
+ let I;
637
+ e[10] !== s || e[11] !== t.id ? (I = mn(t.id, s), e[10] = s, e[11] = t.id, e[12] = I) : I = e[12];
638
+ const p = I, w = t.disabled === !0;
639
+ let z;
640
+ e[13] !== t ? (z = pn(t), e[13] = t, e[14] = z) : z = e[14];
641
+ const D = z, N = !!(d && t.href && D && !S && !w);
642
+ let k;
643
+ e[15] !== S || e[16] !== w || e[17] !== D || e[18] !== t || e[19] !== v || e[20] !== b || e[21] !== o ? (k = () => {
644
+ if (!w) {
645
+ if (S) {
646
+ b?.(t.id);
647
+ return;
648
+ }
649
+ if (D && v) {
650
+ v({
651
+ sectionId: o,
652
+ nodeId: t.id,
653
+ node: t,
654
+ intent: t.navigationIntent
655
+ });
656
+ return;
657
+ }
658
+ t.onActivate?.();
659
+ }
660
+ }, e[15] = S, e[16] = w, e[17] = D, e[18] = t, e[19] = v, e[20] = b, e[21] = o, e[22] = k) : k = e[22];
661
+ const g = k;
662
+ let R;
663
+ e[23] !== t.id ? (R = (P) => {
664
+ vn(P.dataTransfer, t.id), P.dataTransfer.effectAllowed = "move";
665
+ }, e[23] = t.id, e[24] = R) : R = e[24];
666
+ const C = R;
667
+ let O;
668
+ e[25] !== t.canDrop || e[26] !== f ? (O = (P) => {
669
+ f && (P.stopPropagation(), t.canDrop && (P.preventDefault(), P.dataTransfer.dropEffect = "move"));
670
+ }, e[25] = t.canDrop, e[26] = f, e[27] = O) : O = e[27];
671
+ const q = O;
672
+ let L;
673
+ e[28] !== t.canDrop || e[29] !== t.id || e[30] !== f ? (L = (P) => {
674
+ if (!f || (P.stopPropagation(), !t.canDrop))
675
+ return;
676
+ P.preventDefault();
677
+ const ee = wt(P.dataTransfer);
678
+ ee && ee !== t.id && f(ee, t.id);
679
+ }, e[28] = t.canDrop, e[29] = t.id, e[30] = f, e[31] = L) : L = e[31];
680
+ const Q = L;
681
+ let $;
682
+ e[32] !== t.actions || e[33] !== t.id || e[34] !== o ? ($ = t.actions?.map((P) => ({
683
+ ...P,
684
+ onAction: P.onAction ? (ee) => P.onAction?.({
685
+ sectionId: o,
686
+ nodeId: t.id,
687
+ ...ee
688
+ }) : void 0
689
+ })), e[32] = t.actions, e[33] = t.id, e[34] = o, e[35] = $) : $ = e[35];
690
+ let H, K;
691
+ if (e[36] !== t || e[37] !== $) {
692
+ const P = {
693
+ ...t,
694
+ actions: $
695
+ }, {
696
+ inlineInput: ee,
697
+ rowVariant: Se,
698
+ ...ae
699
+ } = P;
700
+ K = Se, H = ae, e[36] = t, e[37] = $, e[38] = H, e[39] = K;
701
+ } else
702
+ H = e[38], K = e[39];
703
+ const G = K ?? l, W = i + 1, F = S ? x : void 0;
704
+ let M;
705
+ e[40] !== t.id || e[41] !== b ? (M = () => b?.(t.id), e[40] = t.id, e[41] = b, e[42] = M) : M = e[42];
706
+ let B;
707
+ e[43] !== x || e[44] !== g || e[45] !== S || e[46] !== p || e[47] !== i || e[48] !== H || e[49] !== t.id || e[50] !== a || e[51] !== W || e[52] !== F || e[53] !== M || e[54] !== G || e[55] !== u ? (B = {
708
+ ...H,
709
+ depth: i,
710
+ variant: G,
711
+ isSelected: p,
712
+ isExpanded: x,
713
+ showExpandToggle: S,
714
+ tabIndex: u,
715
+ "data-tree-list-focus-id": t.id,
716
+ "aria-level": W,
717
+ "aria-expanded": F,
718
+ "data-tree-list-node-id": t.id,
719
+ onFocus: a,
720
+ onActivate: g,
721
+ onToggleExpand: M
722
+ }, e[43] = x, e[44] = g, e[45] = S, e[46] = p, e[47] = i, e[48] = H, e[49] = t.id, e[50] = a, e[51] = W, e[52] = F, e[53] = M, e[54] = G, e[55] = u, e[56] = B) : B = e[56];
723
+ const Y = B;
724
+ let E;
725
+ e[57] !== d || e[58] !== N || e[59] !== t.href || e[60] !== Y ? (E = N && d && t.href ? /* @__PURE__ */ h(d, { to: t.href, children: /* @__PURE__ */ h(nt, { ...Y, asChild: !0 }) }) : /* @__PURE__ */ h(nt, { ...Y }), e[57] = d, e[58] = N, e[59] = t.href, e[60] = Y, e[61] = E) : E = e[61];
726
+ const A = E, U = !!(f && t.canDrag), _ = t.canDrag ? C : void 0, j = f ? q : void 0, le = f ? Q : void 0;
727
+ let ne;
728
+ return e[62] !== c || e[63] !== A || e[64] !== U || e[65] !== _ || e[66] !== j || e[67] !== le ? (ne = /* @__PURE__ */ h(xe, { gap: c, w: "full", minW: "0", maxW: "full", draggable: U, onDragStart: _, onDragOver: j, onDrop: le, children: A }), e[62] = c, e[63] = A, e[64] = U, e[65] = _, e[66] = j, e[67] = le, e[68] = ne) : ne = e[68], ne;
729
+ }, wn = (n) => {
730
+ const e = V(9), {
731
+ sectionId: o,
732
+ actions: t
733
+ } = n;
734
+ if (t.length === 0)
735
+ return null;
736
+ let i, r;
737
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (i = {
738
+ opacity: "1",
739
+ pointerEvents: "auto"
740
+ }, r = {
741
+ opacity: "1",
742
+ pointerEvents: "auto"
743
+ }, e[0] = i, e[1] = r) : (i = e[0], r = e[1]);
744
+ let s;
745
+ if (e[2] !== t || e[3] !== o) {
746
+ let c;
747
+ e[5] !== o ? (c = (d) => d.menuItems && d.menuItems.length >= 8 ? /* @__PURE__ */ h(Gt, { action: d }, d.id) : d.menuItems && d.menuItems.length > 0 ? /* @__PURE__ */ se(ve.Root, { children: [
748
+ /* @__PURE__ */ h(ve.Trigger, { asChild: !0, children: /* @__PURE__ */ h(tt, { variant: "ghost", size: "2xs", "aria-label": d.label, children: d.icon }) }),
749
+ /* @__PURE__ */ h(ve.Positioner, { children: /* @__PURE__ */ h(ve.Content, { minW: "160px", bg: "bg", children: d.menuItems.map(Rn) }) })
750
+ ] }, d.id) : /* @__PURE__ */ h(tt, { variant: "ghost", size: "2xs", "aria-label": d.label, onClick: (u) => {
751
+ u.stopPropagation(), d.onAction?.({
752
+ sectionId: o
753
+ });
754
+ }, children: d.icon }, d.id), e[5] = o, e[6] = c) : c = e[6], s = t.map(c), e[2] = t, e[3] = o, e[4] = s;
755
+ } else
756
+ s = e[4];
757
+ let l;
758
+ return e[7] !== s ? (l = /* @__PURE__ */ h(je, { gap: "0", opacity: "0", pointerEvents: "none", _groupHover: i, _groupFocusWithin: r, transition: "opacity 120ms ease", onClick: yn, children: s }), e[7] = s, e[8] = l) : l = e[8], l;
759
+ }, Rt = (n) => {
760
+ const e = V(32), {
761
+ section: o,
762
+ collapsible: t,
763
+ expanded: i,
764
+ focusId: r,
765
+ tabIndex: s,
766
+ onFocus: l,
767
+ onToggle: c,
768
+ onContextMenu: d
769
+ } = n, u = t ? "pointer" : "default", a = t ? s : void 0, v = t ? r : void 0, b = t ? i : void 0;
770
+ let f;
771
+ e[0] !== t ? (f = t ? {
772
+ bg: "bg.hover"
773
+ } : void 0, e[0] = t, e[1] = f) : f = e[1];
774
+ let m;
775
+ e[2] !== t ? (m = t ? {
776
+ bg: "bg.hover"
777
+ } : void 0, e[2] = t, e[3] = m) : m = e[3];
778
+ const S = t ? l : void 0, y = t ? c : void 0;
779
+ let x;
780
+ e[4] !== d || e[5] !== o.id ? (x = d ? (k) => {
781
+ k.preventDefault(), d(k, o.id);
782
+ } : void 0, e[4] = d, e[5] = o.id, e[6] = x) : x = e[6];
783
+ let I;
784
+ e[7] !== o.label ? (I = /* @__PURE__ */ h(Ot, { textStyle: "label/XS", textTransform: "uppercase", color: "fg.muted", letterSpacing: "0.08em", truncate: !0, children: o.label }), e[7] = o.label, e[8] = I) : I = e[8];
785
+ let p;
786
+ e[9] !== t || e[10] !== i ? (p = t ? /* @__PURE__ */ h(X, { color: "fg.muted", flexShrink: 0, children: /* @__PURE__ */ h(Bt, { size: 14, style: {
787
+ transform: i ? "rotate(90deg)" : "rotate(0deg)",
788
+ transition: "120ms"
789
+ } }) }) : null, e[9] = t, e[10] = i, e[11] = p) : p = e[11];
790
+ let w;
791
+ e[12] !== p || e[13] !== I ? (w = /* @__PURE__ */ se(je, { gap: "1", flex: "1", minW: "0", children: [
792
+ I,
793
+ p
794
+ ] }), e[12] = p, e[13] = I, e[14] = w) : w = e[14];
795
+ let z;
796
+ e[15] !== o.actions ? (z = o.actions ?? [], e[15] = o.actions, e[16] = z) : z = e[16];
797
+ let D;
798
+ e[17] !== o.id || e[18] !== z ? (D = /* @__PURE__ */ h(wn, { sectionId: o.id, actions: z }), e[17] = o.id, e[18] = z, e[19] = D) : D = e[19];
799
+ let N;
800
+ return e[20] !== u || e[21] !== a || e[22] !== w || e[23] !== D || e[24] !== v || e[25] !== b || e[26] !== f || e[27] !== m || e[28] !== S || e[29] !== y || e[30] !== x ? (N = /* @__PURE__ */ se(je, { className: "group", justify: "space-between", align: "center", w: "full", minW: "0", maxW: "full", px: "sm", py: "2xs", height: "7", cursor: u, tabIndex: a, "data-tree-list-focus-id": v, "aria-expanded": b, _hover: f, _focusVisible: m, onFocus: S, onClick: y, onContextMenu: x, children: [
801
+ w,
802
+ D
803
+ ] }), e[20] = u, e[21] = a, e[22] = w, e[23] = D, e[24] = v, e[25] = b, e[26] = f, e[27] = m, e[28] = S, e[29] = y, e[30] = x, e[31] = N) : N = e[31], N;
804
+ };
805
+ function yn(n) {
806
+ return n.stopPropagation();
807
+ }
808
+ function Rn(n) {
809
+ return /* @__PURE__ */ h(ve.Item, { value: n.id, disabled: n.disabled, onClick: () => n.onAction?.(), children: n.label }, n.id);
810
+ }
811
+ const qe = "section:", zt = (n) => `${qe}${n}`, me = (n) => n.startsWith(qe), de = (n) => n.slice(qe.length), Dt = (n, e, o) => {
812
+ const t = n.slice(), [i] = t.splice(e, 1);
813
+ return t.splice(o, 0, i), t;
814
+ }, Ee = (n, e) => {
815
+ for (const o of n) {
816
+ const t = o.nodes.findIndex((i) => i.id === e);
817
+ if (t >= 0) return {
818
+ section: o,
819
+ index: t,
820
+ node: o.nodes[t]
821
+ };
822
+ }
823
+ }, Le = (n, e) => e?.(n) ?? !0, Nt = (n, e, o, t) => {
824
+ if (e === o) return !0;
825
+ if (me(e)) {
826
+ if (!me(o)) return !1;
827
+ const c = n.find((u) => u.id === de(e)), d = n.find((u) => u.id === de(o));
828
+ return !c || !d || c.canReorder === !1 || d.canReorder === !1 ? !1 : Le({
829
+ source: {
830
+ kind: "section",
831
+ sectionId: c.id,
832
+ id: c.id,
833
+ moveScope: c.moveScope
834
+ },
835
+ destination: {
836
+ kind: "section",
837
+ sectionId: d.id,
838
+ id: d.id,
839
+ moveScope: d.moveScope
840
+ }
841
+ }, t);
842
+ }
843
+ const i = Ee(n, e);
844
+ if (!i || i.node.canReorder === !1) return !1;
845
+ const r = me(o) ? n.find((c) => c.id === de(o)) : void 0, s = r ? void 0 : Ee(n, o), l = r ?? s?.section;
846
+ return !l || l.canReorder === !1 || s?.node.canReorder === !1 ? !1 : Le({
847
+ source: {
848
+ kind: "node",
849
+ sectionId: i.section.id,
850
+ id: i.node.id,
851
+ moveScope: i.node.moveScope ?? i.section.moveScope
852
+ },
853
+ destination: s ? {
854
+ kind: "node",
855
+ sectionId: l.id,
856
+ id: s.node.id,
857
+ moveScope: s.node.moveScope ?? l.moveScope
858
+ } : {
859
+ kind: "section",
860
+ sectionId: l.id,
861
+ id: l.id,
862
+ moveScope: l.moveScope
863
+ }
864
+ }, t);
865
+ }, zn = (n, e, o, t) => {
866
+ const i = n.find((d) => d.id === de(e)), r = n.find((d) => d.id === de(o));
867
+ if (!i || !r || i.canReorder === !1 || r.canReorder === !1 || !Le({
868
+ source: {
869
+ kind: "section",
870
+ sectionId: i.id,
871
+ id: i.id,
872
+ moveScope: i.moveScope
873
+ },
874
+ destination: {
875
+ kind: "section",
876
+ sectionId: r.id,
877
+ id: r.id,
878
+ moveScope: r.moveScope
879
+ }
880
+ }, t))
881
+ return null;
882
+ const s = n.map((d) => d.id), l = s.indexOf(i.id), c = s.indexOf(r.id);
883
+ return l === c ? null : {
884
+ kind: "section",
885
+ nextSectionIds: Dt(s, l, c)
886
+ };
887
+ }, Dn = (n, e, o, t) => {
888
+ const i = Ee(n, e);
889
+ if (!i || i.node.canReorder === !1) return null;
890
+ const r = me(o) ? n.find((v) => v.id === de(o)) : void 0, s = r ? void 0 : Ee(n, o), l = r ?? s?.section;
891
+ if (!l || l.canReorder === !1 || s?.node.canReorder === !1) return null;
892
+ const c = s ? {
893
+ kind: "node",
894
+ sectionId: l.id,
895
+ id: s.node.id,
896
+ moveScope: s.node.moveScope ?? l.moveScope
897
+ } : {
898
+ kind: "section",
899
+ sectionId: l.id,
900
+ id: l.id,
901
+ moveScope: l.moveScope
902
+ };
903
+ if (!Le({
904
+ source: {
905
+ kind: "node",
906
+ sectionId: i.section.id,
907
+ id: i.node.id,
908
+ moveScope: i.node.moveScope ?? i.section.moveScope
909
+ },
910
+ destination: c
911
+ }, t))
912
+ return null;
913
+ const d = i.section.nodes.map((v) => v.id);
914
+ if (i.section.id === l.id) {
915
+ const v = s ? s.index : d.length - 1;
916
+ return i.index === v ? null : {
917
+ kind: "node",
918
+ orders: {
919
+ [i.section.id]: Dt(d, i.index, v)
920
+ }
921
+ };
922
+ }
923
+ const u = l.nodes.map((v) => v.id), a = s ? s.index : u.length;
924
+ return u.splice(a, 0, i.node.id), {
925
+ kind: "node",
926
+ orders: {
927
+ [i.section.id]: d.filter((v) => v !== i.node.id),
928
+ [l.id]: u
929
+ }
930
+ };
931
+ }, kt = (n, e, o, t) => e === o ? null : me(e) ? me(o) ? zn(n, e, o, t) : null : Dn(n, e, o, t), Ct = Wt(!1), eo = (n) => {
932
+ const e = V(16), {
933
+ sections: o,
934
+ canMove: t,
935
+ onReorderSections: i,
936
+ onReorderNodes: r,
937
+ children: s
938
+ } = n;
939
+ let l;
940
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (l = {
941
+ activationConstraint: {
942
+ distance: 4
943
+ }
944
+ }, e[0] = l) : l = e[0];
945
+ const c = st(lt(dt, l));
946
+ let d;
947
+ e[1] !== t || e[2] !== o ? (d = (m) => ct(m).filter((S) => Nt(o, String(m.active.id), String(S.id), t)), e[1] = t, e[2] = o, e[3] = d) : d = e[3];
948
+ const u = d;
949
+ let a;
950
+ e[4] !== t || e[5] !== r || e[6] !== i || e[7] !== o ? (a = (m) => {
951
+ if (!m.over)
952
+ return;
953
+ const S = String(m.active.id), y = String(m.over.id), x = kt(o, S, y, t);
954
+ if (x) {
955
+ if (x.kind === "section") {
956
+ i?.(x.nextSectionIds, de(S), de(y));
957
+ return;
958
+ }
959
+ for (const [I, p] of Object.entries(x.orders))
960
+ r?.(I, p);
961
+ }
962
+ }, e[4] = t, e[5] = r, e[6] = i, e[7] = o, e[8] = a) : a = e[8];
963
+ const v = a;
964
+ let b;
965
+ e[9] !== s ? (b = /* @__PURE__ */ h(Ct.Provider, { value: !0, children: s }), e[9] = s, e[10] = b) : b = e[10];
966
+ let f;
967
+ return e[11] !== u || e[12] !== v || e[13] !== c || e[14] !== b ? (f = /* @__PURE__ */ h(at, { sensors: c, collisionDetection: u, onDragEnd: v, children: b }), e[11] = u, e[12] = v, e[13] = c, e[14] = b, e[15] = f) : f = e[15], f;
968
+ }, Tt = (n) => {
969
+ const e = V(12);
970
+ let o;
971
+ e[0] !== n.disabled || e[1] !== n.id ? (o = {
972
+ id: n.id,
973
+ disabled: n.disabled
974
+ }, e[0] = n.disabled, e[1] = n.id, e[2] = o) : o = e[2];
975
+ const t = Xt(o);
976
+ let i;
977
+ if (e[3] !== n.children || e[4] !== t.isDragging || e[5] !== t.listeners || e[6] !== t.setNodeRef || e[7] !== t.transform || e[8] !== t.transition) {
978
+ const s = {
979
+ transform: jt.Transform.toString(t.transform),
980
+ transition: t.transition,
981
+ opacity: t.isDragging ? 0.5 : 1
982
+ };
983
+ i = n.children({
984
+ setNodeRef: t.setNodeRef,
985
+ listeners: t.listeners,
986
+ style: s
987
+ }), e[3] = n.children, e[4] = t.isDragging, e[5] = t.listeners, e[6] = t.setNodeRef, e[7] = t.transform, e[8] = t.transition, e[9] = i;
988
+ } else
989
+ i = e[9];
990
+ let r;
991
+ return e[10] !== i ? (r = /* @__PURE__ */ h(Xe, { children: i }), e[10] = i, e[11] = r) : r = e[11], r;
992
+ }, Nn = (n) => {
993
+ const e = V(24), {
994
+ section: o,
995
+ sectionRows: t,
996
+ expandedNodeIds: i,
997
+ activeNodeId: r,
998
+ rowVariant: s,
999
+ nodeGap: l,
1000
+ linkComponent: c,
1001
+ onNavigate: d,
1002
+ onToggleSection: u,
1003
+ onToggleNode: a,
1004
+ onSectionContextMenu: v
1005
+ } = n;
1006
+ let b;
1007
+ e[0] !== t ? (b = t.find(Tn), e[0] = t, e[1] = b) : b = e[1];
1008
+ const f = b;
1009
+ let m, S;
1010
+ e[2] !== t ? (m = t.filter(Pn), S = m.filter(En).map(Ln), e[2] = t, e[3] = m, e[4] = S) : (m = e[3], S = e[4]);
1011
+ const y = S;
1012
+ let x;
1013
+ e[5] !== o.id ? (x = zt(o.id), e[5] = o.id, e[6] = x) : x = e[6];
1014
+ const I = o.canReorder === !1;
1015
+ let p;
1016
+ e[7] !== r || e[8] !== i || e[9] !== f || e[10] !== c || e[11] !== l || e[12] !== m || e[13] !== d || e[14] !== v || e[15] !== a || e[16] !== u || e[17] !== s || e[18] !== y ? (p = (z) => {
1017
+ const {
1018
+ setNodeRef: D,
1019
+ listeners: N,
1020
+ style: k
1021
+ } = z;
1022
+ return /* @__PURE__ */ se(X, { ref: D, style: k, w: "full", minW: "0", children: [
1023
+ f && f.kind === "section-header" ? /* @__PURE__ */ h(X, { onPointerDownCapture: (g) => N?.onPointerDown?.(g), children: /* @__PURE__ */ h(Rt, { section: f.section, collapsible: f.collapsible, expanded: f.expanded, focusId: f.key, tabIndex: -1, onFocus: An, onToggle: () => u?.(f.sectionId), onContextMenu: v }) }) : null,
1024
+ /* @__PURE__ */ h(ut, { items: y, strategy: ft, children: /* @__PURE__ */ h(xe, { gap: l, w: "full", minW: "0", children: m.map((g) => g.kind === "node" ? /* @__PURE__ */ h(kn, { row: g, expandedNodeIds: i, activeNodeId: r, rowVariant: s, nodeGap: l, linkComponent: c, onNavigate: d, onToggleNode: a }, g.key) : null) }) })
1025
+ ] });
1026
+ }, e[7] = r, e[8] = i, e[9] = f, e[10] = c, e[11] = l, e[12] = m, e[13] = d, e[14] = v, e[15] = a, e[16] = u, e[17] = s, e[18] = y, e[19] = p) : p = e[19];
1027
+ let w;
1028
+ return e[20] !== x || e[21] !== I || e[22] !== p ? (w = /* @__PURE__ */ h(Tt, { id: x, disabled: I, children: p }), e[20] = x, e[21] = I, e[22] = p, e[23] = w) : w = e[23], w;
1029
+ }, it = (n) => /* @__PURE__ */ h(yt, { sectionId: n.sectionId, node: n.node, level: n.level, expandedNodeIds: n.expandedNodeIds, activeNodeId: n.activeNodeId, rowVariant: n.rowVariant, nodeGap: n.nodeGap, linkComponent: n.linkComponent, onNavigate: n.onNavigate, onToggleNode: n.onToggleNode }), kn = (n) => {
1030
+ const e = V(13);
1031
+ let o, t, i;
1032
+ if (e[0] !== n) {
1033
+ i = /* @__PURE__ */ Symbol.for("react.early_return_sentinel");
1034
+ e:
1035
+ if ({
1036
+ row: t,
1037
+ ...o
1038
+ } = n, t.level > 0) {
1039
+ i = it({
1040
+ node: t.node,
1041
+ sectionId: t.sectionId,
1042
+ level: t.level,
1043
+ ...o
1044
+ });
1045
+ break e;
1046
+ }
1047
+ e[0] = n, e[1] = o, e[2] = t, e[3] = i;
1048
+ } else
1049
+ o = e[1], t = e[2], i = e[3];
1050
+ if (i !== /* @__PURE__ */ Symbol.for("react.early_return_sentinel"))
1051
+ return i;
1052
+ const r = t.node.canReorder === !1;
1053
+ let s;
1054
+ e[4] !== o || e[5] !== t.level || e[6] !== t.node || e[7] !== t.sectionId ? (s = (c) => {
1055
+ const {
1056
+ setNodeRef: d,
1057
+ listeners: u,
1058
+ style: a
1059
+ } = c;
1060
+ return /* @__PURE__ */ h(X, { ref: d, style: a, w: "full", minW: "0", onPointerDownCapture: (v) => u?.onPointerDown?.(v), children: it({
1061
+ node: t.node,
1062
+ sectionId: t.sectionId,
1063
+ level: t.level,
1064
+ ...o
1065
+ }) });
1066
+ }, e[4] = o, e[5] = t.level, e[6] = t.node, e[7] = t.sectionId, e[8] = s) : s = e[8];
1067
+ let l;
1068
+ return e[9] !== t.node.id || e[10] !== r || e[11] !== s ? (l = /* @__PURE__ */ h(Tt, { id: t.node.id, disabled: r, children: s }), e[9] = t.node.id, e[10] = r, e[11] = s, e[12] = l) : l = e[12], l;
1069
+ }, Cn = (n) => {
1070
+ const e = V(25), {
1071
+ sections: o,
1072
+ expandedSectionIds: t,
1073
+ expandedNodeIds: i,
1074
+ activeNodeId: r,
1075
+ rowVariant: s,
1076
+ sectionGap: l,
1077
+ nodeGap: c,
1078
+ linkComponent: d,
1079
+ onNavigate: u,
1080
+ onToggleSection: a,
1081
+ onToggleNode: v,
1082
+ onSectionContextMenu: b,
1083
+ onReorderSections: f,
1084
+ onReorderNodes: m,
1085
+ canMove: S
1086
+ } = n, y = t === void 0 ? [] : t, x = i === void 0 ? [] : i, I = s === void 0 ? "tree" : s, p = l === void 0 ? "0" : l, w = c === void 0 ? "0" : c;
1087
+ let z;
1088
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (z = {
1089
+ activationConstraint: {
1090
+ distance: 4
1091
+ }
1092
+ }, e[0] = z) : z = e[0];
1093
+ const D = st(lt(dt, z)), N = Vt(Ct);
1094
+ let k;
1095
+ e[1] !== S || e[2] !== o ? (k = (E) => ct(E).filter((A) => Nt(o, String(E.active.id), String(A.id), S)), e[1] = S, e[2] = o, e[3] = k) : k = e[3];
1096
+ const g = k;
1097
+ let R;
1098
+ e[4] !== S || e[5] !== m || e[6] !== f || e[7] !== o ? (R = (E) => {
1099
+ if (!E.over)
1100
+ return;
1101
+ const A = kt(o, String(E.active.id), String(E.over.id), S);
1102
+ if (A)
1103
+ if (A.kind === "section")
1104
+ f?.(A.nextSectionIds);
1105
+ else
1106
+ for (const [U, _] of Object.entries(A.orders))
1107
+ m?.(U, _);
1108
+ }, e[4] = S, e[5] = m, e[6] = f, e[7] = o, e[8] = R) : R = e[8];
1109
+ const C = R, O = vt(o, y, x), q = ut;
1110
+ let L;
1111
+ e[9] !== o ? (L = o.map(Mn), e[9] = o, e[10] = L) : L = e[10];
1112
+ const Q = ft, $ = xe, H = "full", K = "0", G = "full", W = o.map((E) => /* @__PURE__ */ h(Nn, { section: E, sectionRows: O.filter((A) => A.sectionId === E.id), expandedNodeIds: x, activeNodeId: r, rowVariant: I, nodeGap: w, linkComponent: d, onNavigate: u, onToggleSection: a, onToggleNode: v, onSectionContextMenu: b }, E.id));
1113
+ let F;
1114
+ e[11] !== $ || e[12] !== p || e[13] !== W ? (F = /* @__PURE__ */ h($, { gap: p, w: H, minW: K, maxW: G, children: W }), e[11] = $, e[12] = p, e[13] = W, e[14] = F) : F = e[14];
1115
+ let M;
1116
+ e[15] !== q || e[16] !== F || e[17] !== L || e[18] !== Q ? (M = /* @__PURE__ */ h(q, { items: L, strategy: Q, children: F }), e[15] = q, e[16] = F, e[17] = L, e[18] = Q, e[19] = M) : M = e[19];
1117
+ const B = M;
1118
+ if (N)
1119
+ return B;
1120
+ let Y;
1121
+ return e[20] !== g || e[21] !== B || e[22] !== C || e[23] !== D ? (Y = /* @__PURE__ */ h(at, { sensors: D, collisionDetection: g, onDragEnd: C, children: B }), e[20] = g, e[21] = B, e[22] = C, e[23] = D, e[24] = Y) : Y = e[24], Y;
1122
+ };
1123
+ function Tn(n) {
1124
+ return n.kind === "section-header";
1125
+ }
1126
+ function Pn(n) {
1127
+ return n.kind === "node";
1128
+ }
1129
+ function En(n) {
1130
+ return n.kind === "node" && n.level === 0;
1131
+ }
1132
+ function Ln(n) {
1133
+ return n.kind === "node" ? n.node.id : "";
1134
+ }
1135
+ function An() {
1136
+ }
1137
+ function Mn(n) {
1138
+ return zt(n.id);
1139
+ }
1140
+ const rt = (n, e) => n ? [...n.querySelectorAll("[data-tree-list-focus-id]")].find((t) => t.dataset.treeListFocusId === e) ?? null : null, _n = (n, e) => {
1141
+ if (!(!n || !(e instanceof HTMLElement) || !n.contains(e)))
1142
+ return e.closest("[data-tree-list-focus-id]")?.dataset.treeListFocusId;
1143
+ }, Fn = (n) => n instanceof HTMLElement ? n.isContentEditable ? !0 : ["INPUT", "TEXTAREA", "SELECT"].includes(n.tagName) : !1, On = (n, e) => n.findIndex((o) => xt(o) && ge(o) === e), Pt = (n) => {
1144
+ const e = V(28), {
1145
+ rows: o,
1146
+ activeNodeId: t,
1147
+ expandedNodeIds: i,
1148
+ onToggleNode: r,
1149
+ onToggleSection: s,
1150
+ scrollToRow: l
1151
+ } = n, c = ie(null), [d, u] = re(), [a, v] = re();
1152
+ let b;
1153
+ e[0] !== t || e[1] !== d || e[2] !== o ? (b = bt(d, t, o), e[0] = t, e[1] = d, e[2] = o, e[3] = b) : b = e[3];
1154
+ const f = b;
1155
+ let m;
1156
+ e[4] !== o ? (m = Ue(o).map(ge).join("\0"), e[4] = o, e[5] = m) : m = e[5];
1157
+ const S = m;
1158
+ let y, x;
1159
+ e[6] !== S || e[7] !== d ? (y = () => {
1160
+ d && (S.split("\0").includes(d) || u(void 0));
1161
+ }, x = [d, S], e[6] = S, e[7] = d, e[8] = y, e[9] = x) : (y = e[8], x = e[9]), pe(y, x);
1162
+ let I, p;
1163
+ e[10] !== a ? (I = () => {
1164
+ if (!a)
1165
+ return;
1166
+ const R = requestAnimationFrame(() => {
1167
+ requestAnimationFrame(() => {
1168
+ const C = rt(c.current, a);
1169
+ C && (C.focus(), v(void 0));
1170
+ });
1171
+ });
1172
+ return () => cancelAnimationFrame(R);
1173
+ }, p = [a], e[10] = a, e[11] = I, e[12] = p) : (I = e[11], p = e[12]), pe(I, p);
1174
+ let w;
1175
+ e[13] !== o || e[14] !== l ? (w = (R) => {
1176
+ u(R);
1177
+ const C = rt(c.current, R);
1178
+ if (C) {
1179
+ C.focus();
1180
+ return;
1181
+ }
1182
+ const O = On(o, R);
1183
+ O !== -1 && (l?.(O), v(R));
1184
+ }, e[13] = o, e[14] = l, e[15] = w) : w = e[15];
1185
+ const z = w;
1186
+ let D;
1187
+ e[16] !== t || e[17] !== i || e[18] !== z || e[19] !== f || e[20] !== r || e[21] !== s || e[22] !== o ? (D = (R) => {
1188
+ if (R.altKey || R.ctrlKey || R.metaKey || R.shiftKey || Fn(R.target))
1189
+ return;
1190
+ const C = hn({
1191
+ rows: o,
1192
+ focusedRowId: _n(c.current, R.target) ?? f,
1193
+ activeNodeId: t,
1194
+ expandedNodeIds: i,
1195
+ key: R.key
1196
+ });
1197
+ if (C) {
1198
+ if (R.preventDefault(), C.type === "toggle-node") {
1199
+ r?.(C.nodeId);
1200
+ return;
1201
+ }
1202
+ if (C.type === "toggle-section") {
1203
+ s?.(C.sectionId);
1204
+ return;
1205
+ }
1206
+ z(C.rowId);
1207
+ }
1208
+ }, e[16] = t, e[17] = i, e[18] = z, e[19] = f, e[20] = r, e[21] = s, e[22] = o, e[23] = D) : D = e[23];
1209
+ const N = D;
1210
+ let k;
1211
+ e[24] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (k = (R) => u(R), e[24] = k) : k = e[24];
1212
+ let g;
1213
+ return e[25] !== f || e[26] !== N ? (g = {
1214
+ focusRowId: f,
1215
+ rootRef: c,
1216
+ handleKeyDown: N,
1217
+ onRowFocus: k
1218
+ }, e[25] = f, e[26] = N, e[27] = g) : g = e[27], g;
1219
+ }, $n = 32, Wn = 4, Et = (n) => {
1220
+ const {
1221
+ row: e,
1222
+ expandedNodeIds: o,
1223
+ activeNodeId: t,
1224
+ focusRowId: i,
1225
+ rowVariant: r,
1226
+ nodeGap: s,
1227
+ linkComponent: l,
1228
+ onRowFocus: c,
1229
+ onNavigate: d,
1230
+ onToggleSection: u,
1231
+ onToggleNode: a,
1232
+ onSectionContextMenu: v,
1233
+ onMoveNode: b
1234
+ } = n;
1235
+ return e.kind === "section-header" ? /* @__PURE__ */ h(Rt, { section: e.section, collapsible: e.collapsible, expanded: e.expanded, focusId: e.key, tabIndex: e.key === i ? 0 : -1, onFocus: () => c(e.key), onToggle: () => u?.(e.sectionId), onContextMenu: v }) : e.kind === "section-empty" ? e.emptyState ?? null : /* @__PURE__ */ h(yt, { sectionId: e.sectionId, node: e.node, level: e.level, expandedNodeIds: o, activeNodeId: t, rowVariant: r, nodeGap: s, linkComponent: l, tabIndex: e.node.id === i ? 0 : -1, onFocus: () => c(e.node.id), onNavigate: d, onToggleNode: a, onMoveNode: b });
1236
+ }, Vn = (n) => {
1237
+ const {
1238
+ rows: e,
1239
+ expandedNodeIds: o = [],
1240
+ activeNodeId: t,
1241
+ rowVariant: i = "tree",
1242
+ nodeGap: r = "0",
1243
+ linkComponent: s,
1244
+ onNavigate: l,
1245
+ onToggleSection: c,
1246
+ onToggleNode: d,
1247
+ onSectionContextMenu: u,
1248
+ onMoveNode: a,
1249
+ scrollRef: v
1250
+ } = n, b = Ht({
1251
+ count: e.length,
1252
+ getScrollElement: () => v.current,
1253
+ estimateSize: () => $n,
1254
+ overscan: Wn,
1255
+ getItemKey: (m) => e[m]?.key ?? m
1256
+ }), f = Pt({
1257
+ rows: e,
1258
+ activeNodeId: t,
1259
+ expandedNodeIds: o,
1260
+ onToggleNode: d,
1261
+ onToggleSection: c,
1262
+ scrollToRow: (m) => b.scrollToIndex(m, {
1263
+ align: "auto"
1264
+ })
1265
+ });
1266
+ return /* @__PURE__ */ h(X, { ref: f.rootRef, role: "listbox", w: "full", minW: "0", maxW: "full", position: "relative", style: {
1267
+ height: b.getTotalSize()
1268
+ }, onKeyDown: f.handleKeyDown, children: b.getVirtualItems().map((m) => {
1269
+ const S = e[m.index];
1270
+ return S ? /* @__PURE__ */ h(X, { ref: b.measureElement, "data-index": m.index, "data-tree-list-row": S.kind, position: "absolute", top: "0", left: "0", w: "full", pb: m.index === e.length - 1 ? "0" : r, style: {
1271
+ transform: `translateY(${m.start}px)`
1272
+ }, children: Et({
1273
+ row: S,
1274
+ expandedNodeIds: o,
1275
+ activeNodeId: t,
1276
+ focusRowId: f.focusRowId,
1277
+ rowVariant: i,
1278
+ nodeGap: r,
1279
+ linkComponent: s,
1280
+ onRowFocus: f.onRowFocus,
1281
+ onNavigate: l,
1282
+ onToggleSection: c,
1283
+ onToggleNode: d,
1284
+ onSectionContextMenu: u,
1285
+ onMoveNode: a
1286
+ }) }, m.key) : null;
1287
+ }) });
1288
+ }, Hn = (n) => {
1289
+ const {
1290
+ sections: e,
1291
+ expandedSectionIds: o = [],
1292
+ expandedNodeIds: t = [],
1293
+ activeNodeId: i,
1294
+ rowVariant: r = "tree",
1295
+ sectionGap: s = "0",
1296
+ nodeGap: l = "0",
1297
+ linkComponent: c,
1298
+ onNavigate: d,
1299
+ onToggleSection: u,
1300
+ onToggleNode: a,
1301
+ onSectionContextMenu: v,
1302
+ onMoveNode: b,
1303
+ virtualize: f,
1304
+ scrollRef: m
1305
+ } = n, S = vt(e, o, t), y = Pt({
1306
+ rows: S,
1307
+ activeNodeId: i,
1308
+ expandedNodeIds: t,
1309
+ onToggleNode: a,
1310
+ onToggleSection: u
1311
+ });
1312
+ return f && m ? /* @__PURE__ */ h(Vn, { ...n, rows: S, scrollRef: m }) : /* @__PURE__ */ h(xe, { ref: y.rootRef, role: "listbox", gap: s, w: "full", minW: "0", maxW: "full", overflowX: "hidden", onKeyDown: y.handleKeyDown, children: e.map((x) => {
1313
+ const I = S.filter((p) => p.sectionId === x.id);
1314
+ return /* @__PURE__ */ h(xe, { gap: l, w: "full", minW: "0", maxW: "full", "data-testid": `tree-list-section-${x.id}`, children: I.map((p) => /* @__PURE__ */ h(X, { w: "full", minW: "0", children: Et({
1315
+ row: p,
1316
+ expandedNodeIds: t,
1317
+ activeNodeId: i,
1318
+ focusRowId: y.focusRowId,
1319
+ rowVariant: r,
1320
+ nodeGap: l,
1321
+ linkComponent: c,
1322
+ onRowFocus: y.onRowFocus,
1323
+ onNavigate: d,
1324
+ onToggleSection: u,
1325
+ onToggleNode: a,
1326
+ onSectionContextMenu: v,
1327
+ onMoveNode: b
1328
+ }) }, p.key)) }, x.id);
1329
+ }) });
1330
+ }, to = (n) => {
1331
+ const e = V(8);
1332
+ let o;
1333
+ e[0] !== n ? (o = n.draggable ? /* @__PURE__ */ h(Cn, { sections: n.sections, expandedSectionIds: n.expandedSectionIds, expandedNodeIds: n.expandedNodeIds, activeNodeId: n.activeNodeId, rowVariant: n.rowVariant, sectionGap: n.sectionGap, nodeGap: n.nodeGap, linkComponent: n.linkComponent, onNavigate: n.onNavigate, onToggleSection: n.onToggleSection, onToggleNode: n.onToggleNode, onSectionContextMenu: n.onSectionContextMenu, onReorderSections: n.onReorderSections, onReorderNodes: n.onReorderNodes, canMove: n.canMove }) : /* @__PURE__ */ h(Hn, { ...n }), e[0] = n, e[1] = o) : o = e[1];
1334
+ const t = o;
1335
+ let i;
1336
+ e[2] !== t || e[3] !== n.onMoveNode ? (i = /* @__PURE__ */ h(xn, { onMoveNode: n.onMoveNode, children: t }), e[2] = t, e[3] = n.onMoveNode, e[4] = i) : i = e[4];
1337
+ const r = i;
1338
+ if (!n.backgroundContextActions || n.backgroundContextActions.length === 0)
1339
+ return r;
1340
+ let s;
1341
+ return e[5] !== r || e[6] !== n.backgroundContextActions ? (s = /* @__PURE__ */ h(fn, { actions: n.backgroundContextActions, children: r }), e[5] = r, e[6] = n.backgroundContextActions, e[7] = s) : s = e[7], s;
1342
+ };
1343
+ export {
1344
+ Qn as R,
1345
+ to as T,
1346
+ eo as a
1347
+ };
1348
+ //# sourceMappingURL=tree-list-DXwHWodb.js.map