@pstdio/ui 0.41.0 → 0.42.0

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 (85) hide show
  1. package/dist/{MermaidComponent-BCiI63_G.js → MermaidComponent-D7vhkpka.js} +2 -2
  2. package/dist/{MermaidComponent-BCiI63_G.js.map → MermaidComponent-D7vhkpka.js.map} +1 -1
  3. package/dist/alert-MQ47wy7f.js +388 -0
  4. package/dist/alert-MQ47wy7f.js.map +1 -0
  5. package/dist/chat-ui.d.ts +36 -5
  6. package/dist/chat-ui.js +1777 -1422
  7. package/dist/chat-ui.js.map +1 -1
  8. package/dist/collection-view-fields-D3cysHNT.d.ts +232 -0
  9. package/dist/collection-view-grouping-D4nZk8-3.js +90 -0
  10. package/dist/collection-view-grouping-D4nZk8-3.js.map +1 -0
  11. package/dist/collection-view-search-CpjJy76w.js +1973 -0
  12. package/dist/collection-view-search-CpjJy76w.js.map +1 -0
  13. package/dist/collection-view.d.ts +4 -0
  14. package/dist/collection-view.js +2 -0
  15. package/dist/{data-table-stats-row-EiTEONdY.js → data-table-stats-row-64magT2g.js} +2 -2
  16. package/dist/{data-table-stats-row-EiTEONdY.js.map → data-table-stats-row-64magT2g.js.map} +1 -1
  17. package/dist/data-table.d.ts +3 -1
  18. package/dist/data-table.js +279 -277
  19. package/dist/data-table.js.map +1 -1
  20. package/dist/{diff-drawer-BwZBOObe.js → diff-drawer-IYpQ-QQK.js} +192 -191
  21. package/dist/diff-drawer-IYpQ-QQK.js.map +1 -0
  22. package/dist/{diff-viewer-kOOd7C7h.js → diff-viewer-C-0VAt9P.js} +4 -4
  23. package/dist/{diff-viewer-kOOd7C7h.js.map → diff-viewer-C-0VAt9P.js.map} +1 -1
  24. package/dist/diff.js +2 -2
  25. package/dist/{display-sort-control-DPxc0e5z.js → display-sort-control-f3rbILsV.js} +87 -86
  26. package/dist/{display-sort-control-DPxc0e5z.js.map → display-sort-control-f3rbILsV.js.map} +1 -1
  27. package/dist/drop-indicator-HjlBSIeV.js +27 -0
  28. package/dist/drop-indicator-HjlBSIeV.js.map +1 -0
  29. package/dist/edit-mode-data-table-DnMB2jiy.js +1449 -0
  30. package/dist/edit-mode-data-table-DnMB2jiy.js.map +1 -0
  31. package/dist/host-storage-BIo5azql.js +31 -0
  32. package/dist/host-storage-BIo5azql.js.map +1 -0
  33. package/dist/host-storage-J0089Hyk.d.ts +17 -0
  34. package/dist/icon-options-Tt6Wzhtv.js +308 -0
  35. package/dist/icon-options-Tt6Wzhtv.js.map +1 -0
  36. package/dist/{index-C9mywhyX.d.ts → index-B79hwNcB.d.ts} +17 -1
  37. package/dist/index-CKsd23jv.d.ts +80 -0
  38. package/dist/{index-D3UJyWWh.d.ts → index-ICoad2I_.d.ts} +4 -223
  39. package/dist/index.d.ts +22 -6
  40. package/dist/index.js +1174 -1112
  41. package/dist/index.js.map +1 -1
  42. package/dist/kanban-renderer.d.ts +2 -1
  43. package/dist/kanban-renderer.js +531 -528
  44. package/dist/kanban-renderer.js.map +1 -1
  45. package/dist/list-row-Z4SHkseA.js +1195 -0
  46. package/dist/list-row-Z4SHkseA.js.map +1 -0
  47. package/dist/markdown-editor-Dd4mor7l.js +3236 -0
  48. package/dist/markdown-editor-Dd4mor7l.js.map +1 -0
  49. package/dist/number-input-7K66wnSC.js +63 -0
  50. package/dist/number-input-7K66wnSC.js.map +1 -0
  51. package/dist/param-editor-Dnix-fJo.js +225 -0
  52. package/dist/param-editor-Dnix-fJo.js.map +1 -0
  53. package/dist/param-editor-field-B3vLST-B.js +2394 -0
  54. package/dist/param-editor-field-B3vLST-B.js.map +1 -0
  55. package/dist/param-editor.js +4 -2
  56. package/dist/prism-OG4H7Hu4.js +334 -0
  57. package/dist/prism-OG4H7Hu4.js.map +1 -0
  58. package/dist/queued-follow-up-Bj_vtMgd.js +208 -0
  59. package/dist/queued-follow-up-Bj_vtMgd.js.map +1 -0
  60. package/dist/rich-text-BgEnAHr2.js +1160 -0
  61. package/dist/rich-text-BgEnAHr2.js.map +1 -0
  62. package/dist/rich-text.d.ts +1 -1
  63. package/dist/rich-text.js +4 -2
  64. package/dist/terminal.js +1 -1
  65. package/dist/{theme-at0rtSnX.js → theme-CMJdH59Z.js} +224 -90
  66. package/dist/theme-CMJdH59Z.js.map +1 -0
  67. package/dist/theme.js +1 -1
  68. package/dist/tree-list-jarhD31R.js +1652 -0
  69. package/dist/tree-list-jarhD31R.js.map +1 -0
  70. package/dist/use-virtualizer-uj43XjBp.js +10 -0
  71. package/dist/use-virtualizer-uj43XjBp.js.map +1 -0
  72. package/dist/{host-storage-DP0RLj4i.d.ts → workspace-badge-BKtB805G.d.ts} +6 -16
  73. package/package.json +6 -2
  74. package/dist/chat-question-bubble-w2vMbFsS.js +0 -68
  75. package/dist/chat-question-bubble-w2vMbFsS.js.map +0 -1
  76. package/dist/diff-drawer-BwZBOObe.js.map +0 -1
  77. package/dist/list-row-DM0DiIrN.js +0 -1167
  78. package/dist/list-row-DM0DiIrN.js.map +0 -1
  79. package/dist/prism-JVIsQMoJ.js +0 -1029
  80. package/dist/prism-JVIsQMoJ.js.map +0 -1
  81. package/dist/rich-text-DM24VNQZ.js +0 -10447
  82. package/dist/rich-text-DM24VNQZ.js.map +0 -1
  83. package/dist/theme-at0rtSnX.js.map +0 -1
  84. package/dist/tree-list-Cqgl8mnN.js +0 -1621
  85. package/dist/tree-list-Cqgl8mnN.js.map +0 -1
@@ -1,1621 +0,0 @@
1
- import { l as e, n as t, t as n } from "./list-row-DM0DiIrN.js";
2
- import { Box as r, Flex as i, HStack as a, IconButton as o, Input as s, Menu as c, Stack as l, Text as u, useSlotRecipe as d } from "@chakra-ui/react";
3
- import { c as f } from "react/compiler-runtime";
4
- import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
5
- import { Fragment as g, createContext as _, useContext as v, useEffect as y, useId as b, useRef as x, useState as S } from "react";
6
- import { ChevronRight as C } from "lucide-react";
7
- import { useVirtualizer as w } from "@tanstack/react-virtual";
8
- import { DndContext as T, MeasuringStrategy as E, PointerSensor as D, closestCenter as O, pointerWithin as k, useDndContext as A, useDndMonitor as j, useDroppable as M, useSensor as N, useSensors as P } from "@dnd-kit/core";
9
- import { SortableContext as F, useSortable as I, verticalListSortingStrategy as L } from "@dnd-kit/sortable";
10
- //#region src/components/layout/resizable-split-layout.geometry.ts
11
- var R = 72, z = 160, B = 72, V = (e, t, n) => Math.min(Math.max(e, t), n), H = {
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
- }, U = (e) => H[e], W = (e) => {
49
- let t = e.rootSize > 0 ? e.rootSize : e.fallbackRootSize, n = Math.max(0, t - e.separatorSize - e.contentMinSize), r = e.maxSize ?? n, i = Math.max(0, Math.min(r, n));
50
- return {
51
- minSize: Math.min(e.minSize, i),
52
- maxSize: i
53
- };
54
- }, G = (e, t) => e === "top" || e === "bottom" ? B : V(t / 2, R, z), ee = (e) => {
55
- let t = U(e.side), n = e.startSize + e.pointerDelta * t.deltaDirection, r = e.collapsible && n <= G(e.side, e.minSize);
56
- return {
57
- rawSize: n,
58
- size: r ? 0 : V(n, e.minSize, e.maxSize),
59
- collapsed: r
60
- };
61
- }, te = 250, K = [
62
- 0,
63
- 1,
64
- 2
65
- ], ne = (e, t) => e ? {
66
- w: t,
67
- h: "full",
68
- hitArea: {
69
- top: 0,
70
- bottom: 0,
71
- insetInlineStart: "-1",
72
- insetInlineEnd: "-1"
73
- },
74
- gripDirection: "column",
75
- bar: {
76
- top: "0",
77
- bottom: "0",
78
- insetInlineStart: "50%",
79
- w: "0.5",
80
- transform: "translateX(-50%)"
81
- }
82
- } : {
83
- w: "full",
84
- h: t,
85
- hitArea: {
86
- insetInline: 0,
87
- top: "-1",
88
- bottom: "-1"
89
- },
90
- gripDirection: "row",
91
- bar: {
92
- top: "50%",
93
- insetInline: "0",
94
- h: "0.5",
95
- transform: "translateY(-50%)"
96
- }
97
- }, re = (e) => {
98
- let t = f(4), { active: n, layout: r } = e, a = r.gripDirection, o = +!n, s;
99
- t[0] === Symbol.for("react.memo_cache_sentinel") ? (s = K.map(ae), t[0] = s) : s = t[0];
100
- let c;
101
- return t[1] !== r.gripDirection || t[2] !== o ? (c = /* @__PURE__ */ m(i, {
102
- "data-part": "grip",
103
- direction: a,
104
- gap: "3xs",
105
- opacity: o,
106
- transition: "opacity 120ms ease",
107
- children: s
108
- }), t[1] = r.gripDirection, t[2] = o, t[3] = c) : c = t[3], c;
109
- }, ie = (e) => {
110
- let t = f(3), { active: n, layout: i } = e, a = +!!n, o;
111
- return t[0] !== i.bar || t[1] !== a ? (o = /* @__PURE__ */ m(r, {
112
- "data-part": "bar",
113
- position: "absolute",
114
- borderRadius: "xs",
115
- bg: "fg.info",
116
- opacity: a,
117
- transition: "opacity 120ms ease",
118
- pointerEvents: "none",
119
- ...i.bar
120
- }), t[0] = i.bar, t[1] = a, t[2] = o) : o = t[2], o;
121
- }, q = (e) => {
122
- let t = f(47), { css: n, axis: i, bounds: a, collapsed: o, collapsible: s, contentPanelId: c, dragging: l, resizablePanelId: u, resizeLabel: d, resolvedPanelSize: p, separator: g, separatorRef: _, onCollapse: v, onResizeKeyDown: b, onResizeStart: C } = e, w = g === "line", T = i.separatorOrientation === "vertical", E = w ? "1px" : "panel-gap", D;
123
- t[0] !== T || t[1] !== E ? (D = ne(T, E), t[0] = T, t[1] = E, t[2] = D) : D = t[2];
124
- let O = D, [k, A] = S(!1), j = x(0), M = k || l, N;
125
- t[3] === o ? N = t[4] : (N = o ? {
126
- "aria-hidden": !0,
127
- tabIndex: -1
128
- } : { tabIndex: 0 }, t[3] = o, t[4] = N);
129
- let P = N, F, I;
130
- t[5] === Symbol.for("react.memo_cache_sentinel") ? (F = () => () => window.clearTimeout(j.current), I = [], t[5] = F, t[6] = I) : (F = t[5], I = t[6]), y(F, I);
131
- let L;
132
- t[7] === Symbol.for("react.memo_cache_sentinel") ? (L = () => {
133
- j.current = window.setTimeout(() => A(!0), te);
134
- }, t[7] = L) : L = t[7];
135
- let R = L, z;
136
- t[8] === Symbol.for("react.memo_cache_sentinel") ? (z = () => {
137
- window.clearTimeout(j.current), A(!1);
138
- }, t[8] = z) : z = t[8];
139
- let B = z, V = i.separatorOrientation, H = `${u} ${c}`, U;
140
- t[9] !== a.minSize || t[10] !== s ? (U = s ? 0 : Math.round(a.minSize), t[9] = a.minSize, t[10] = s, t[11] = U) : U = t[11];
141
- let W;
142
- t[12] === a.maxSize ? W = t[13] : (W = Math.round(a.maxSize), t[12] = a.maxSize, t[13] = W);
143
- let G;
144
- t[14] === p ? G = t[15] : (G = Math.round(p), t[14] = p, t[15] = G);
145
- let ee = w ? "border.subtle" : void 0, K;
146
- t[16] === O.hitArea ? K = t[17] : (K = {
147
- content: "\"\"",
148
- position: "absolute",
149
- ...O.hitArea
150
- }, t[16] = O.hitArea, t[17] = K);
151
- let q;
152
- t[18] === Symbol.for("react.memo_cache_sentinel") ? (q = {
153
- "& [data-part=bar]": { opacity: 1 },
154
- "& [data-part=grip]": { opacity: 0 }
155
- }, t[18] = q) : q = t[18];
156
- let ae = s ? v : void 0, oe;
157
- t[19] !== M || t[20] !== O || t[21] !== w ? (oe = w ? null : /* @__PURE__ */ m(re, {
158
- active: M,
159
- layout: O
160
- }), t[19] = M, t[20] = O, t[21] = w, t[22] = oe) : oe = t[22];
161
- let se;
162
- t[23] !== M || t[24] !== O ? (se = /* @__PURE__ */ m(ie, {
163
- active: M,
164
- layout: O
165
- }), t[23] = M, t[24] = O, t[25] = se) : se = t[25];
166
- let ce;
167
- return t[26] !== i.cursor || t[27] !== i.separatorOrientation || t[28] !== o || t[29] !== n || t[30] !== O.h || t[31] !== O.w || t[32] !== b || t[33] !== C || t[34] !== d || t[35] !== _ || t[36] !== U || t[37] !== W || t[38] !== G || t[39] !== ee || t[40] !== K || t[41] !== ae || t[42] !== oe || t[43] !== se || t[44] !== H || t[45] !== P ? (ce = /* @__PURE__ */ h(r, {
168
- css: n,
169
- ref: _,
170
- "data-collapsed": o,
171
- role: "separator",
172
- "aria-label": d,
173
- "aria-orientation": V,
174
- "aria-controls": H,
175
- "aria-valuemin": U,
176
- "aria-valuemax": W,
177
- "aria-valuenow": G,
178
- ...P,
179
- position: "relative",
180
- zIndex: "docked",
181
- alignItems: "center",
182
- justifyContent: "center",
183
- flexShrink: 0,
184
- w: O.w,
185
- h: O.h,
186
- bg: ee,
187
- cursor: i.cursor,
188
- touchAction: "none",
189
- outline: "none",
190
- _before: K,
191
- _focusVisible: q,
192
- onPointerEnter: R,
193
- onPointerLeave: B,
194
- onPointerDown: C,
195
- onDoubleClick: ae,
196
- onKeyDown: b,
197
- children: [oe, se]
198
- }), t[26] = i.cursor, t[27] = i.separatorOrientation, t[28] = o, t[29] = n, t[30] = O.h, t[31] = O.w, t[32] = b, t[33] = C, t[34] = d, t[35] = _, t[36] = U, t[37] = W, t[38] = G, t[39] = ee, t[40] = K, t[41] = ae, t[42] = oe, t[43] = se, t[44] = H, t[45] = P, t[46] = ce) : ce = t[46], ce;
199
- };
200
- function ae(e) {
201
- return /* @__PURE__ */ m(r, {
202
- boxSize: "0.5",
203
- borderRadius: "full",
204
- bg: "border"
205
- }, e);
206
- }
207
- //#endregion
208
- //#region src/components/layout/resizable-split-layout.panels.tsx
209
- var oe = (e) => {
210
- let t = f(36), { styles: n, axis: i, bounds: a, collapsed: o, collapsible: s, contentPanel: c, contentPanelId: l, contentPanelRef: u, resizablePanel: d, resizablePanelId: g, resizablePanelRef: _, dragging: v, resizeLabel: y, resolvedPanelSize: b, separator: x, separatorRef: S, onCollapse: C, onResizeKeyDown: w, onResizeStart: T } = e, E = o ? !0 : void 0, D;
211
- t[0] !== o || t[1] !== d || t[2] !== g || t[3] !== _ || t[4] !== n.resizablePanel || t[5] !== E ? (D = /* @__PURE__ */ m(r, {
212
- id: g,
213
- ref: _,
214
- css: n.resizablePanel,
215
- "data-collapsed": o,
216
- "aria-hidden": E,
217
- children: d
218
- }, "resizable-panel"), t[0] = o, t[1] = d, t[2] = g, t[3] = _, t[4] = n.resizablePanel, t[5] = E, t[6] = D) : D = t[6];
219
- let O = D, k;
220
- t[7] !== c || t[8] !== l || t[9] !== u || t[10] !== n.contentPanel ? (k = /* @__PURE__ */ m(r, {
221
- id: l,
222
- ref: u,
223
- css: n.contentPanel,
224
- children: c
225
- }, "content-panel"), t[7] = c, t[8] = l, t[9] = u, t[10] = n.contentPanel, t[11] = k) : k = t[11];
226
- let A = k, j;
227
- t[12] !== i || t[13] !== a || t[14] !== o || t[15] !== s || t[16] !== l || t[17] !== v || t[18] !== C || t[19] !== w || t[20] !== T || t[21] !== g || t[22] !== y || t[23] !== b || t[24] !== x || t[25] !== S || t[26] !== n.separator ? (j = /* @__PURE__ */ m(q, {
228
- css: n.separator,
229
- axis: i,
230
- bounds: a,
231
- collapsed: o,
232
- collapsible: s,
233
- contentPanelId: l,
234
- resizablePanelId: g,
235
- dragging: v,
236
- resizeLabel: y,
237
- resolvedPanelSize: b,
238
- separator: x,
239
- separatorRef: S,
240
- onCollapse: C,
241
- onResizeKeyDown: w,
242
- onResizeStart: T
243
- }, "resize-handle"), t[12] = i, t[13] = a, t[14] = o, t[15] = s, t[16] = l, t[17] = v, t[18] = C, t[19] = w, t[20] = T, t[21] = g, t[22] = y, t[23] = b, t[24] = x, t[25] = S, t[26] = n.separator, t[27] = j) : j = t[27];
244
- let M = j;
245
- if (i.panelFirst) {
246
- let e;
247
- return t[28] !== A || t[29] !== O || t[30] !== M ? (e = /* @__PURE__ */ h(p, { children: [
248
- O,
249
- M,
250
- A
251
- ] }), t[28] = A, t[29] = O, t[30] = M, t[31] = e) : e = t[31], e;
252
- }
253
- let N;
254
- return t[32] !== A || t[33] !== O || t[34] !== M ? (N = /* @__PURE__ */ h(p, { children: [
255
- A,
256
- M,
257
- O
258
- ] }), t[32] = A, t[33] = O, t[34] = M, t[35] = N) : N = t[35], N;
259
- }, se = (e, t, n) => {
260
- let r = f(6), i;
261
- r[0] === Symbol.for("react.memo_cache_sentinel") ? (i = {
262
- rootSize: 0,
263
- separatorSize: 0
264
- }, r[0] = i) : i = r[0];
265
- let [a, o] = S(i), s, c;
266
- return r[1] !== n || r[2] !== e || r[3] !== t ? (s = () => {
267
- let r = e.current;
268
- if (!r) return;
269
- let i = () => {
270
- o({
271
- rootSize: r.getBoundingClientRect()[n],
272
- separatorSize: t.current?.getBoundingClientRect()[n] ?? 0
273
- });
274
- };
275
- if (i(), typeof ResizeObserver > "u") return;
276
- let a = new ResizeObserver(i);
277
- return a.observe(r), t.current && a.observe(t.current), () => {
278
- a.disconnect();
279
- };
280
- }, c = [
281
- e,
282
- t,
283
- n
284
- ], r[1] = n, r[2] = e, r[3] = t, r[4] = s, r[5] = c) : (s = r[4], c = r[5]), y(s, c), a;
285
- }, ce = {
286
- width: 1200,
287
- height: 720
288
- }, le = 24, ue = (e, t, n) => Math.min(Math.max(e, t), n), de = (e, t) => e?.getBoundingClientRect()[t] ?? 0, fe = (e) => {
289
- let t = f(96), n, r, a, o, s, c, l, u, p, h, g, _, v, C, w;
290
- t[0] === e ? (n = t[1], r = t[2], a = t[3], o = t[4], s = t[5], c = t[6], l = t[7], u = t[8], p = t[9], h = t[10], g = t[11], _ = t[12], v = t[13], C = t[14], w = t[15]) : ({resizablePanel: c, contentPanel: n, resizableSide: u, defaultSizePx: p, minSizePx: h, maxSizePx: a, contentMinSizePx: g, collapsed: r, collapsible: _, resizeLabel: v, separator: C, layout: w, onSizeChange: s, onCollapsedChange: o, ...l} = e, t[0] = e, t[1] = n, t[2] = r, t[3] = a, t[4] = o, t[5] = s, t[6] = c, t[7] = l, t[8] = u, t[9] = p, t[10] = h, t[11] = g, t[12] = _, t[13] = v, t[14] = C, t[15] = w);
291
- let T = u === void 0 ? "left" : u, E = p === void 0 ? 240 : p, D = h === void 0 ? 200 : h, O = g === void 0 ? 0 : g, k = _ === void 0 || _, A = v === void 0 ? "Resize panel" : v, j = C === void 0 ? "gap" : C, M = w === void 0 ? "split" : w, N;
292
- t[16] === T ? N = t[17] : (N = U(T), t[16] = T, t[17] = N);
293
- let P = N, F;
294
- t[18] === Symbol.for("react.memo_cache_sentinel") ? (F = { key: "resizableSplitLayout" }, t[18] = F) : F = t[18];
295
- let I = d(F), L = P.dimension === "width" ? "horizontal" : "vertical", R;
296
- t[19] !== M || t[20] !== I || t[21] !== L ? (R = I({
297
- orientation: L,
298
- layout: M
299
- }), t[19] = M, t[20] = I, t[21] = L, t[22] = R) : R = t[22];
300
- let z = R, B = b(), V = x(null), H = x(null), G = x(null), te = x(null), K = x(pe), { rootSize: ne, separatorSize: re } = se(V, te, P.dimension), ie = x(E), [q, ae] = S(E), [fe, he] = S(!1), [ge, _e] = S(!1), J = r ?? fe, Y, ve;
301
- t[23] !== P.dimension || t[24] !== J || t[25] !== O || t[26] !== a || t[27] !== D || t[28] !== q || t[29] !== ne || t[30] !== re ? (Y = W({
302
- rootSize: ne,
303
- fallbackRootSize: ce[P.dimension],
304
- minSize: D,
305
- maxSize: a,
306
- contentMinSize: O,
307
- separatorSize: re
308
- }), ve = J ? 0 : ue(q, Y.minSize, Y.maxSize), t[23] = P.dimension, t[24] = J, t[25] = O, t[26] = a, t[27] = D, t[28] = q, t[29] = ne, t[30] = re, t[31] = Y, t[32] = ve) : (Y = t[31], ve = t[32]);
309
- let ye = ve, be = `${B}-content`, xe = `${B}-resizable`, Se = `${ye}px`, Ce;
310
- t[33] !== l.style || t[34] !== Se ? (Ce = {
311
- ...l.style,
312
- "--split-size": Se
313
- }, t[33] = l.style, t[34] = Se, t[35] = Ce) : Ce = t[35];
314
- let we = Ce, Te, Ee;
315
- t[36] === E ? (Te = t[37], Ee = t[38]) : (Te = () => {
316
- ie.current = E, ae(E);
317
- }, Ee = [E], t[36] = E, t[37] = Te, t[38] = Ee), y(Te, Ee);
318
- let De, Oe;
319
- t[39] === Symbol.for("react.memo_cache_sentinel") ? (De = () => () => K.current(), Oe = [], t[39] = De, t[40] = Oe) : (De = t[39], Oe = t[40]), y(De, Oe);
320
- let ke;
321
- t[41] === Symbol.for("react.memo_cache_sentinel") ? (ke = (e) => {
322
- V.current?.style.setProperty("--split-size", `${e}px`);
323
- }, t[41] = ke) : ke = t[41];
324
- let Ae = ke, je;
325
- t[42] !== P.dimension || t[43] !== O || t[44] !== a || t[45] !== D || t[46] !== s ? (je = (e) => {
326
- let t = W({
327
- rootSize: de(V.current, P.dimension),
328
- fallbackRootSize: ce[P.dimension],
329
- minSize: D,
330
- maxSize: a,
331
- contentMinSize: O,
332
- separatorSize: de(te.current, P.dimension)
333
- }), n = ue(e, t.minSize, t.maxSize);
334
- ie.current = n, ae(n), Ae(n), s?.(n);
335
- }, t[42] = P.dimension, t[43] = O, t[44] = a, t[45] = D, t[46] = s, t[47] = je) : je = t[47];
336
- let X = je, Me;
337
- t[48] !== r || t[49] !== o ? (Me = (e) => {
338
- r === void 0 && he(e), o?.(e);
339
- }, t[48] = r, t[49] = o, t[50] = Me) : Me = t[50];
340
- let Z = Me, Ne;
341
- t[51] !== P.cursor || t[52] !== P.dimension || t[53] !== P.pointerCoordinate || t[54] !== J || t[55] !== k || t[56] !== X || t[57] !== O || t[58] !== a || t[59] !== D || t[60] !== T || t[61] !== Z ? (Ne = (e) => {
342
- if (e.button !== 0 || J && !k) return;
343
- e.preventDefault(), K.current();
344
- let t = e.currentTarget, n = W({
345
- rootSize: de(V.current, P.dimension),
346
- fallbackRootSize: ce[P.dimension],
347
- minSize: D,
348
- maxSize: a,
349
- contentMinSize: O,
350
- separatorSize: de(te.current, P.dimension)
351
- }), r = e[P.pointerCoordinate], i = J ? 0 : de(H.current, P.dimension) || ie.current, o = document.body.style.cursor, s = document.body.style.userSelect, c = i === 0 ? 0 : ue(i, n.minSize, n.maxSize), l = J, u = 0, d = (e) => {
352
- H.current && (H.current.style.pointerEvents = e), G.current && (G.current.style.pointerEvents = e);
353
- }, f = () => {
354
- u ||= window.requestAnimationFrame(() => {
355
- u = 0, Ae(c);
356
- });
357
- }, p = (e) => {
358
- let t = ee({
359
- side: T,
360
- startSize: i,
361
- pointerDelta: e[P.pointerCoordinate] - r,
362
- minSize: n.minSize,
363
- maxSize: n.maxSize,
364
- collapsible: k
365
- });
366
- l = t.collapsed, c = t.size, f();
367
- }, m = () => {
368
- window.removeEventListener("pointermove", p), window.removeEventListener("pointerup", m), window.removeEventListener("pointercancel", m), window.removeEventListener("blur", m), document.body.style.cursor = o, document.body.style.userSelect = s, t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId), d(""), _e(!1), u &&= (window.cancelAnimationFrame(u), 0), K.current = me, l ? (Ae(0), Z(!0)) : (Z(!1), X(c));
369
- };
370
- K.current = m, t.setPointerCapture(e.pointerId), document.body.style.cursor = P.cursor, document.body.style.userSelect = "none", d("none"), _e(!0), window.addEventListener("pointermove", p), window.addEventListener("pointerup", m, { once: !0 }), window.addEventListener("pointercancel", m, { once: !0 }), window.addEventListener("blur", m, { once: !0 });
371
- }, t[51] = P.cursor, t[52] = P.dimension, t[53] = P.pointerCoordinate, t[54] = J, t[55] = k, t[56] = X, t[57] = O, t[58] = a, t[59] = D, t[60] = T, t[61] = Z, t[62] = Ne) : Ne = t[62];
372
- let Pe = Ne, Fe;
373
- t[63] !== k || t[64] !== Z ? (Fe = () => {
374
- k && Z(!0);
375
- }, t[63] = k, t[64] = Z, t[65] = Fe) : Fe = t[65];
376
- let Ie = Fe, Le;
377
- t[66] !== P.deltaDirection || t[67] !== P.dimension || t[68] !== Y || t[69] !== J || t[70] !== k || t[71] !== X || t[72] !== Z ? (Le = (e) => {
378
- let t = P.dimension === "width" ? "ArrowLeft" : "ArrowUp", n = P.dimension === "width" ? "ArrowRight" : "ArrowDown", r = ie.current;
379
- J && (e.key === t || e.key === n || e.key === "End") ? (e.preventDefault(), Z(!1), X(r)) : e.key === t ? (e.preventDefault(), X(r - le * P.deltaDirection)) : e.key === n ? (e.preventDefault(), X(r + le * P.deltaDirection)) : e.key === "Home" ? (e.preventDefault(), k ? Z(!0) : X(Y.minSize)) : e.key === "End" && (e.preventDefault(), X(Y.maxSize));
380
- }, t[66] = P.deltaDirection, t[67] = P.dimension, t[68] = Y, t[69] = J, t[70] = k, t[71] = X, t[72] = Z, t[73] = Le) : Le = t[73];
381
- let Re = Le, Q;
382
- t[74] !== P || t[75] !== Y || t[76] !== J || t[77] !== k || t[78] !== n || t[79] !== be || t[80] !== ge || t[81] !== Ie || t[82] !== Re || t[83] !== Pe || t[84] !== c || t[85] !== xe || t[86] !== A || t[87] !== ye || t[88] !== j || t[89] !== z ? (Q = /* @__PURE__ */ m(oe, {
383
- styles: z,
384
- axis: P,
385
- bounds: Y,
386
- collapsed: J,
387
- collapsible: k,
388
- contentPanel: n,
389
- contentPanelId: be,
390
- contentPanelRef: G,
391
- resizablePanel: c,
392
- resizablePanelId: xe,
393
- resizablePanelRef: H,
394
- dragging: ge,
395
- resizeLabel: A,
396
- resolvedPanelSize: ye,
397
- separator: j,
398
- separatorRef: te,
399
- onCollapse: Ie,
400
- onResizeKeyDown: Re,
401
- onResizeStart: Pe
402
- }), t[74] = P, t[75] = Y, t[76] = J, t[77] = k, t[78] = n, t[79] = be, t[80] = ge, t[81] = Ie, t[82] = Re, t[83] = Pe, t[84] = c, t[85] = xe, t[86] = A, t[87] = ye, t[88] = j, t[89] = z, t[90] = Q) : Q = t[90];
403
- let $;
404
- return t[91] !== l || t[92] !== we || t[93] !== z.root || t[94] !== Q ? ($ = /* @__PURE__ */ m(i, {
405
- ref: V,
406
- css: z.root,
407
- ...l,
408
- style: we,
409
- children: Q
410
- }), t[91] = l, t[92] = we, t[93] = z.root, t[94] = Q, t[95] = $) : $ = t[95], $;
411
- };
412
- function pe() {}
413
- function me() {}
414
- //#endregion
415
- //#region src/components/primitives/drop-indicator.tsx
416
- var he = (e) => {
417
- let t = f(8), n, i;
418
- t[0] === e ? (n = t[1], i = t[2]) : ({orientation: i, ...n} = e, t[0] = e, t[1] = n, t[2] = i);
419
- let a = i === void 0 ? "horizontal" : i, o;
420
- t[3] === a ? o = t[4] : (o = a === "vertical" ? {
421
- insetY: "0",
422
- w: "drop-indicator"
423
- } : {
424
- insetX: "0",
425
- h: "drop-indicator"
426
- }, t[3] = a, t[4] = o);
427
- let s;
428
- return t[5] !== n || t[6] !== o ? (s = /* @__PURE__ */ m(r, {
429
- "aria-hidden": !0,
430
- layerStyle: "dropIndicator",
431
- ...o,
432
- ...n
433
- }), t[5] = n, t[6] = o, t[7] = s) : s = t[7], s;
434
- }, ge = (t) => {
435
- let n = f(8), { actions: i, children: a } = t, o;
436
- n[0] === Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */ m(r, {
437
- position: "absolute",
438
- inset: "0",
439
- zIndex: 0,
440
- "aria-hidden": !0,
441
- "data-tree-list-background": "true"
442
- }), n[0] = o) : o = n[0];
443
- let s;
444
- n[1] === i ? s = n[2] : (s = /* @__PURE__ */ m(e, {
445
- actions: i,
446
- closeOnSelect: !1,
447
- children: o
448
- }), n[1] = i, n[2] = s);
449
- let c;
450
- n[3] === a ? c = n[4] : (c = /* @__PURE__ */ m(r, {
451
- position: "relative",
452
- zIndex: 1,
453
- w: "full",
454
- minW: "0",
455
- maxW: "full",
456
- children: a
457
- }), n[3] = a, n[4] = c);
458
- let l;
459
- return n[5] !== s || n[6] !== c ? (l = /* @__PURE__ */ h(r, {
460
- position: "relative",
461
- flex: "1 0 auto",
462
- minH: "full",
463
- w: "full",
464
- minW: "0",
465
- maxW: "full",
466
- children: [s, c]
467
- }), n[5] = s, n[6] = c, n[7] = l) : l = n[7], l;
468
- }, _e = (e, t) => t.includes(e), J = (e, t) => Array.isArray(t) ? t.includes(e) : t === e, Y = (e) => e.isNavigable || e.navigationIntent !== void 0, ve = (e) => e.children ?? [], ye = (e) => ve(e).length > 0 || e.isContainer === !0, be = (e) => {
469
- let { rows: t, sectionId: n, nodes: r, expandedNodeIds: i, level: a, parentNodeId: o } = e;
470
- for (let e of r) {
471
- t.push({
472
- kind: "node",
473
- key: `${n}:${e.id}`,
474
- sectionId: n,
475
- node: e,
476
- level: a,
477
- parentNodeId: o
478
- });
479
- let r = ve(e);
480
- r.length !== 0 && _e(e.id, i) && be({
481
- rows: t,
482
- sectionId: n,
483
- nodes: r,
484
- expandedNodeIds: i,
485
- level: a + 1,
486
- parentNodeId: e.id
487
- });
488
- }
489
- }, xe = (e, t, n) => {
490
- let r = [];
491
- for (let i of e) {
492
- let e = i.collapsible !== !1 && i.label !== void 0, a = !e || _e(i.id, t);
493
- if (i.label && r.push({
494
- kind: "section-header",
495
- key: `header:${i.id}`,
496
- sectionId: i.id,
497
- section: i,
498
- collapsible: e,
499
- expanded: a
500
- }), a) {
501
- if (i.nodes.length === 0) {
502
- i.emptyState && r.push({
503
- kind: "section-empty",
504
- key: `empty:${i.id}`,
505
- sectionId: i.id,
506
- emptyState: i.emptyState
507
- });
508
- continue;
509
- }
510
- be({
511
- rows: r,
512
- sectionId: i.id,
513
- nodes: i.nodes,
514
- expandedNodeIds: n,
515
- level: 0
516
- });
517
- }
518
- }
519
- return r;
520
- }, Se = (e) => e.kind === "node" ? e.node.id : e.key, Ce = (e) => e.kind === "node" ? e.node.disabled !== !0 : e.kind === "section-header" && e.collapsible, we = (e) => e.filter(Ce), Te = (e, t, n) => {
521
- let r = we(n), i = new Set(r.map(Se));
522
- if (e && i.has(e)) return e;
523
- let a = (t ? [t].flat() : []).find((e) => i.has(e));
524
- if (a) return a;
525
- let o = r[0];
526
- return o ? Se(o) : void 0;
527
- }, Ee = (e) => {
528
- let { row: t, focusableRows: n, currentIndex: r, key: i } = e;
529
- if (i === "Enter" || i === " ") return {
530
- type: "toggle-section",
531
- sectionId: t.sectionId
532
- };
533
- if (i === "ArrowRight") {
534
- if (!t.expanded) return {
535
- type: "toggle-section",
536
- sectionId: t.sectionId
537
- };
538
- let e = n[r + 1];
539
- return e?.kind === "node" && e.sectionId === t.sectionId ? {
540
- type: "focus",
541
- rowId: e.node.id
542
- } : null;
543
- }
544
- return i === "ArrowLeft" && t.expanded ? {
545
- type: "toggle-section",
546
- sectionId: t.sectionId
547
- } : null;
548
- }, De = (e) => {
549
- let { row: t, focusableRows: n, currentIndex: r, expandedNodeIds: i, key: a } = e, o = _e(t.node.id, i), s = ye(t.node);
550
- if (a === "ArrowRight") {
551
- if (!s) return null;
552
- if (!o) return {
553
- type: "toggle-node",
554
- nodeId: t.node.id
555
- };
556
- let e = n[r + 1];
557
- return e?.kind === "node" && e.parentNodeId === t.node.id ? {
558
- type: "focus",
559
- rowId: e.node.id
560
- } : null;
561
- }
562
- if (a === "ArrowLeft") {
563
- if (s && o) return {
564
- type: "toggle-node",
565
- nodeId: t.node.id
566
- };
567
- if (t.parentNodeId) return {
568
- type: "focus",
569
- rowId: t.parentNodeId
570
- };
571
- }
572
- return null;
573
- }, Oe = (e) => {
574
- let { rows: t, focusedRowId: n, activeNodeId: r, expandedNodeIds: i, key: a } = e, o = we(t);
575
- if (o.length === 0) return null;
576
- let s = Te(n, r, t), c = Math.max(0, o.findIndex((e) => Se(e) === s)), l = o[c];
577
- if (!l) return null;
578
- let u = (e) => {
579
- let t = Math.min(Math.max(e, 0), o.length - 1);
580
- return {
581
- type: "focus",
582
- rowId: Se(o[t])
583
- };
584
- };
585
- return a === "ArrowDown" ? u(c + 1) : a === "ArrowUp" ? u(c - 1) : a === "Home" ? u(0) : a === "End" ? u(o.length - 1) : l.kind === "section-header" ? Ee({
586
- row: l,
587
- focusableRows: o,
588
- currentIndex: c,
589
- key: a
590
- }) : De({
591
- row: l,
592
- focusableRows: o,
593
- currentIndex: c,
594
- expandedNodeIds: i,
595
- key: a
596
- });
597
- }, ke = "application/x-pstdio-tree-node", Ae = (e, t) => {
598
- e.setData(ke, t);
599
- }, je = (e) => e.getData(ke) || void 0, X = (e) => {
600
- let t = f(8), { children: n, onMoveNode: i } = e, a;
601
- t[0] === i ? a = t[1] : (a = (e) => {
602
- i && (e.preventDefault(), e.dataTransfer.dropEffect = "move");
603
- }, t[0] = i, t[1] = a);
604
- let o = a, s;
605
- t[2] === i ? s = t[3] : (s = (e) => {
606
- if (!i) return;
607
- e.preventDefault();
608
- let t = je(e.dataTransfer);
609
- t && i(t);
610
- }, t[2] = i, t[3] = s);
611
- let c = s, l;
612
- return t[4] !== n || t[5] !== o || t[6] !== c ? (l = /* @__PURE__ */ m(r, {
613
- p: "xs",
614
- w: "full",
615
- minW: "0",
616
- maxW: "full",
617
- minH: "full",
618
- flex: "1 0 auto",
619
- onDragOver: o,
620
- onDrop: c,
621
- children: n
622
- }), t[4] = n, t[5] = o, t[6] = c, t[7] = l) : l = t[7], l;
623
- }, Me = (e) => e <= 0 ? "sm" : `calc(var(--chakra-spacing-1) + ${e} * 12px)`, Z = (e) => {
624
- let { input: t, icon: n, level: a } = e, [o, c] = S(t.defaultValue ?? ""), [l, u] = S(), d = x(null), f = x(!1), p = async () => {
625
- if (!f.current) {
626
- f.current = !0, u(void 0);
627
- try {
628
- await t.onCommit(o.trim());
629
- } catch (e) {
630
- u(e instanceof Error ? e.message : "Could not create file."), queueMicrotask(() => d.current?.focus());
631
- } finally {
632
- f.current = !1;
633
- }
634
- }
635
- };
636
- return /* @__PURE__ */ h(i, {
637
- h: "1.75rem",
638
- w: "full",
639
- minW: "0",
640
- alignItems: "center",
641
- gap: "1",
642
- pr: "sm",
643
- pl: Me(a),
644
- onMouseDown: (e) => e.stopPropagation(),
645
- children: [n ? /* @__PURE__ */ m(r, {
646
- boxSize: "16px",
647
- color: "fg.muted",
648
- flexShrink: 0,
649
- display: "inline-flex",
650
- alignItems: "center",
651
- justifyContent: "center",
652
- css: { "& > svg": {
653
- width: "16px",
654
- height: "16px"
655
- } },
656
- children: n
657
- }) : null, /* @__PURE__ */ m(s, {
658
- ref: d,
659
- autoFocus: !0,
660
- size: "xs",
661
- value: o,
662
- "aria-label": t.ariaLabel,
663
- "aria-invalid": !!l || void 0,
664
- placeholder: t.placeholder,
665
- title: l,
666
- onChange: (e) => c(e.currentTarget.value),
667
- onBlur: () => {
668
- f.current || t.onCancel?.();
669
- },
670
- onKeyDown: (e) => {
671
- e.stopPropagation(), e.key === "Enter" && (e.preventDefault(), p()), e.key === "Escape" && !f.current && (e.preventDefault(), t.onCancel?.());
672
- }
673
- })]
674
- });
675
- }, Ne = (e) => {
676
- let t = f(69), { sectionId: r, node: i, level: a, expandedNodeIds: o, activeNodeId: s, rowVariant: c, nodeGap: u, linkComponent: d, tabIndex: p, onFocus: h, onNavigate: g, onToggleNode: _, onMoveNode: v } = e;
677
- if (i.inlineInput) {
678
- let e;
679
- return t[0] !== a || t[1] !== i.icon || t[2] !== i.inlineInput ? (e = /* @__PURE__ */ m(Z, {
680
- input: i.inlineInput,
681
- icon: i.icon,
682
- level: a
683
- }), t[0] = a, t[1] = i.icon, t[2] = i.inlineInput, t[3] = e) : e = t[3], e;
684
- }
685
- let y;
686
- t[4] === i ? y = t[5] : (y = ye(i), t[4] = i, t[5] = y);
687
- let b = y, x;
688
- t[6] !== o || t[7] !== b || t[8] !== i.id ? (x = b && _e(i.id, o), t[6] = o, t[7] = b, t[8] = i.id, t[9] = x) : x = t[9];
689
- let S = x, C;
690
- t[10] !== s || t[11] !== i.id ? (C = J(i.id, s), t[10] = s, t[11] = i.id, t[12] = C) : C = t[12];
691
- let w = C, T = i.disabled === !0, E;
692
- t[13] === i ? E = t[14] : (E = Y(i), t[13] = i, t[14] = E);
693
- let D = E, O = !!(d && i.href && D && !b && !T), k;
694
- t[15] !== b || t[16] !== T || t[17] !== D || t[18] !== i || t[19] !== g || t[20] !== _ || t[21] !== r ? (k = () => {
695
- if (!T) {
696
- if (b) {
697
- _?.(i.id);
698
- return;
699
- }
700
- if (D && g) {
701
- g({
702
- sectionId: r,
703
- nodeId: i.id,
704
- node: i,
705
- intent: i.navigationIntent
706
- });
707
- return;
708
- }
709
- i.onActivate?.();
710
- }
711
- }, t[15] = b, t[16] = T, t[17] = D, t[18] = i, t[19] = g, t[20] = _, t[21] = r, t[22] = k) : k = t[22];
712
- let A = k, j;
713
- t[23] === i.id ? j = t[24] : (j = (e) => {
714
- Ae(e.dataTransfer, i.id), e.dataTransfer.effectAllowed = "move";
715
- }, t[23] = i.id, t[24] = j);
716
- let M = j, N;
717
- t[25] !== i.canDrop || t[26] !== v ? (N = (e) => {
718
- v && (e.stopPropagation(), i.canDrop && (e.preventDefault(), e.dataTransfer.dropEffect = "move"));
719
- }, t[25] = i.canDrop, t[26] = v, t[27] = N) : N = t[27];
720
- let P = N, F;
721
- t[28] !== i.canDrop || t[29] !== i.id || t[30] !== v ? (F = (e) => {
722
- if (!v || (e.stopPropagation(), !i.canDrop)) return;
723
- e.preventDefault();
724
- let t = je(e.dataTransfer);
725
- t && t !== i.id && v(t, i.id);
726
- }, t[28] = i.canDrop, t[29] = i.id, t[30] = v, t[31] = F) : F = t[31];
727
- let I = F, L;
728
- t[32] !== i.actions || t[33] !== i.id || t[34] !== r ? (L = i.actions?.map((e) => ({
729
- ...e,
730
- onAction: e.onAction ? (t) => e.onAction?.({
731
- sectionId: r,
732
- nodeId: i.id,
733
- ...t
734
- }) : void 0
735
- })), t[32] = i.actions, t[33] = i.id, t[34] = r, t[35] = L) : L = t[35];
736
- let R, z;
737
- if (t[36] !== i || t[37] !== L) {
738
- let { inlineInput: e, rowVariant: n, ...r } = {
739
- ...i,
740
- actions: L
741
- };
742
- z = n, R = r, t[36] = i, t[37] = L, t[38] = R, t[39] = z;
743
- } else R = t[38], z = t[39];
744
- let B = z ?? c, V = a + 1, H = b ? S : void 0, U;
745
- t[40] !== i.id || t[41] !== _ ? (U = () => _?.(i.id), t[40] = i.id, t[41] = _, t[42] = U) : U = t[42];
746
- let W;
747
- t[43] !== S || t[44] !== A || t[45] !== b || t[46] !== w || t[47] !== a || t[48] !== R || t[49] !== i.id || t[50] !== h || t[51] !== V || t[52] !== H || t[53] !== U || t[54] !== B || t[55] !== p ? (W = {
748
- ...R,
749
- depth: a,
750
- variant: B,
751
- isSelected: w,
752
- isExpanded: S,
753
- showExpandToggle: b,
754
- tabIndex: p,
755
- "data-tree-list-focus-id": i.id,
756
- "aria-level": V,
757
- "aria-expanded": H,
758
- "data-tree-list-node-id": i.id,
759
- onFocus: h,
760
- onActivate: A,
761
- onToggleExpand: U
762
- }, t[43] = S, t[44] = A, t[45] = b, t[46] = w, t[47] = a, t[48] = R, t[49] = i.id, t[50] = h, t[51] = V, t[52] = H, t[53] = U, t[54] = B, t[55] = p, t[56] = W) : W = t[56];
763
- let G = W, ee;
764
- t[57] !== d || t[58] !== O || t[59] !== i.href || t[60] !== G ? (ee = O && d && i.href ? /* @__PURE__ */ m(d, {
765
- to: i.href,
766
- children: /* @__PURE__ */ m(n, {
767
- ...G,
768
- asChild: !0
769
- })
770
- }) : /* @__PURE__ */ m(n, { ...G }), t[57] = d, t[58] = O, t[59] = i.href, t[60] = G, t[61] = ee) : ee = t[61];
771
- let te = ee, K = !!(v && i.canDrag), ne = i.canDrag ? M : void 0, re = v ? P : void 0, ie = v ? I : void 0, q;
772
- return t[62] !== u || t[63] !== te || t[64] !== K || t[65] !== ne || t[66] !== re || t[67] !== ie ? (q = /* @__PURE__ */ m(l, {
773
- gap: u,
774
- w: "full",
775
- minW: "0",
776
- maxW: "full",
777
- draggable: K,
778
- onDragStart: ne,
779
- onDragOver: re,
780
- onDrop: ie,
781
- children: te
782
- }), t[62] = u, t[63] = te, t[64] = K, t[65] = ne, t[66] = re, t[67] = ie, t[68] = q) : q = t[68], q;
783
- }, Pe = (e) => {
784
- let n = f(9), { sectionId: r, actions: i } = e;
785
- if (i.length === 0) return null;
786
- let s, l;
787
- n[0] === Symbol.for("react.memo_cache_sentinel") ? (s = {
788
- opacity: "1",
789
- pointerEvents: "auto"
790
- }, l = {
791
- opacity: "1",
792
- pointerEvents: "auto"
793
- }, n[0] = s, n[1] = l) : (s = n[0], l = n[1]);
794
- let u;
795
- if (n[2] !== i || n[3] !== r) {
796
- let e;
797
- n[5] === r ? e = n[6] : (e = (e) => e.menuItems && e.menuItems.length >= 8 ? /* @__PURE__ */ m(t, { action: e }, e.id) : e.menuItems && e.menuItems.length > 0 ? /* @__PURE__ */ h(c.Root, { children: [/* @__PURE__ */ m(c.Trigger, {
798
- asChild: !0,
799
- children: /* @__PURE__ */ m(o, {
800
- variant: "ghost",
801
- size: "2xs",
802
- "aria-label": e.label,
803
- children: e.icon
804
- })
805
- }), /* @__PURE__ */ m(c.Positioner, { children: /* @__PURE__ */ m(c.Content, {
806
- minW: "160px",
807
- bg: "bg",
808
- children: e.menuItems.map(Le)
809
- }) })] }, e.id) : /* @__PURE__ */ m(o, {
810
- variant: "ghost",
811
- size: "2xs",
812
- "aria-label": e.label,
813
- onClick: (t) => {
814
- t.stopPropagation(), e.onAction?.({ sectionId: r });
815
- },
816
- children: e.icon
817
- }, e.id), n[5] = r, n[6] = e), u = i.map(e), n[2] = i, n[3] = r, n[4] = u;
818
- } else u = n[4];
819
- let d;
820
- return n[7] === u ? d = n[8] : (d = /* @__PURE__ */ m(a, {
821
- gap: "0",
822
- opacity: "0",
823
- pointerEvents: "none",
824
- _groupHover: s,
825
- _groupFocusWithin: l,
826
- transition: "opacity 120ms ease",
827
- onClick: Ie,
828
- children: u
829
- }), n[7] = u, n[8] = d), d;
830
- }, Fe = (e) => {
831
- let t = f(32), { section: n, collapsible: i, expanded: o, focusId: s, tabIndex: c, onFocus: l, onToggle: d, onContextMenu: p } = e, g = i ? "pointer" : "default", _ = i ? c : void 0, v = i ? s : void 0, y = i ? o : void 0, b;
832
- t[0] === i ? b = t[1] : (b = i ? { bg: "bg.hover" } : void 0, t[0] = i, t[1] = b);
833
- let x;
834
- t[2] === i ? x = t[3] : (x = i ? { bg: "bg.hover" } : void 0, t[2] = i, t[3] = x);
835
- let S = i ? l : void 0, w = i ? d : void 0, T;
836
- t[4] !== p || t[5] !== n.id ? (T = p ? (e) => {
837
- e.preventDefault(), p(e, n.id);
838
- } : void 0, t[4] = p, t[5] = n.id, t[6] = T) : T = t[6];
839
- let E;
840
- t[7] === n.label ? E = t[8] : (E = /* @__PURE__ */ m(u, {
841
- textStyle: "label/XS",
842
- textTransform: "uppercase",
843
- color: "fg.muted",
844
- letterSpacing: "0.08em",
845
- truncate: !0,
846
- children: n.label
847
- }), t[7] = n.label, t[8] = E);
848
- let D;
849
- t[9] !== i || t[10] !== o ? (D = i ? /* @__PURE__ */ m(r, {
850
- color: "fg.muted",
851
- flexShrink: 0,
852
- children: /* @__PURE__ */ m(r, {
853
- asChild: !0,
854
- transform: o ? "rotate(90deg)" : "rotate(0deg)",
855
- transition: "120ms",
856
- children: /* @__PURE__ */ m(C, { size: 14 })
857
- })
858
- }) : null, t[9] = i, t[10] = o, t[11] = D) : D = t[11];
859
- let O;
860
- t[12] !== D || t[13] !== E ? (O = /* @__PURE__ */ h(a, {
861
- gap: "1",
862
- flex: "1",
863
- minW: "0",
864
- children: [E, D]
865
- }), t[12] = D, t[13] = E, t[14] = O) : O = t[14];
866
- let k;
867
- t[15] === n.actions ? k = t[16] : (k = n.actions ?? [], t[15] = n.actions, t[16] = k);
868
- let A;
869
- t[17] !== n.id || t[18] !== k ? (A = /* @__PURE__ */ m(Pe, {
870
- sectionId: n.id,
871
- actions: k
872
- }), t[17] = n.id, t[18] = k, t[19] = A) : A = t[19];
873
- let j;
874
- return t[20] !== g || t[21] !== _ || t[22] !== O || t[23] !== A || t[24] !== v || t[25] !== y || t[26] !== b || t[27] !== x || t[28] !== S || t[29] !== w || t[30] !== T ? (j = /* @__PURE__ */ h(a, {
875
- className: "group",
876
- justify: "space-between",
877
- align: "center",
878
- w: "full",
879
- minW: "0",
880
- maxW: "full",
881
- px: "sm",
882
- py: "2xs",
883
- height: "7",
884
- cursor: g,
885
- tabIndex: _,
886
- "data-tree-list-focus-id": v,
887
- "aria-expanded": y,
888
- _hover: b,
889
- _focusVisible: x,
890
- onFocus: S,
891
- onClick: w,
892
- onContextMenu: T,
893
- children: [O, A]
894
- }), t[20] = g, t[21] = _, t[22] = O, t[23] = A, t[24] = v, t[25] = y, t[26] = b, t[27] = x, t[28] = S, t[29] = w, t[30] = T, t[31] = j) : j = t[31], j;
895
- };
896
- function Ie(e) {
897
- return e.stopPropagation();
898
- }
899
- function Le(e) {
900
- return /* @__PURE__ */ m(c.Item, {
901
- value: e.id,
902
- disabled: e.disabled,
903
- onClick: () => e.onAction?.(),
904
- children: e.label
905
- }, e.id);
906
- }
907
- //#endregion
908
- //#region src/components/tree-list/tree-list-reorder.ts
909
- var Re = "section:", Q = (e) => `${Re}${e}`, $ = (e) => e.startsWith(Re), ze = (e) => e.slice(8), Be = "after-section:", Ve = (e) => `${Be}${e}`, He = (e) => e.startsWith(Be), Ue = (e) => e.slice(14), We = (e) => {
910
- if ($(e)) return ze(e);
911
- if (He(e)) return Ue(e);
912
- }, Ge = (e, t) => {
913
- for (let n of e) {
914
- let e = n.nodes.findIndex((e) => e.id === t);
915
- if (e >= 0) return {
916
- section: n,
917
- index: e,
918
- node: n.nodes[e]
919
- };
920
- }
921
- }, Ke = (e, t) => t?.(e) ?? !0, qe = (e, t, n, r) => {
922
- if (t === n) return !0;
923
- let i = We(n);
924
- if ($(t)) {
925
- if (i === void 0) return !1;
926
- let n = e.find((e) => e.id === ze(t)), a = e.find((e) => e.id === i);
927
- return !n || !a || n.canReorder === !1 || a.canReorder === !1 ? !1 : Ke({
928
- source: {
929
- kind: "section",
930
- sectionId: n.id,
931
- id: n.id,
932
- moveScope: n.moveScope
933
- },
934
- destination: {
935
- kind: "section",
936
- sectionId: a.id,
937
- id: a.id,
938
- moveScope: a.moveScope
939
- }
940
- }, r);
941
- }
942
- let a = Ge(e, t);
943
- if (!a || a.node.canReorder === !1) return !1;
944
- let o = i === void 0 ? void 0 : e.find((e) => e.id === i), s = i === void 0 ? Ge(e, n) : void 0, c = o ?? s?.section;
945
- return !c || c.canReorder === !1 || s?.node.canReorder === !1 ? !1 : Ke({
946
- source: {
947
- kind: "node",
948
- sectionId: a.section.id,
949
- id: a.node.id,
950
- moveScope: a.node.moveScope ?? a.section.moveScope
951
- },
952
- destination: s ? {
953
- kind: "node",
954
- sectionId: c.id,
955
- id: s.node.id,
956
- moveScope: s.node.moveScope ?? c.moveScope
957
- } : {
958
- kind: "section",
959
- sectionId: c.id,
960
- id: c.id,
961
- moveScope: c.moveScope
962
- }
963
- }, r);
964
- }, Je = {
965
- modifiers: [({ transform: e }) => ({
966
- ...e,
967
- x: 0
968
- })],
969
- autoScroll: { threshold: {
970
- x: 0,
971
- y: .2
972
- } },
973
- measuring: { droppable: { strategy: E.Always } }
974
- }, Ye = (e, t, n, r) => {
975
- if (e === t) return null;
976
- let i = n ? "before" : "after";
977
- return He(t) ? {
978
- kind: "section",
979
- id: Ue(t),
980
- edge: "after",
981
- nextSectionId: r
982
- } : $(t) ? {
983
- kind: "section",
984
- id: ze(t),
985
- edge: $(e) ? i : "inside"
986
- } : $(e) ? null : {
987
- kind: "node",
988
- id: t,
989
- edge: i
990
- };
991
- }, Xe = (e, t, n, r) => {
992
- let i = ze(t);
993
- if (n.kind !== "section" || n.edge === "inside" || n.id === i || !qe(e, t, Q(n.id), r)) return null;
994
- let a = e.map((e) => e.id), o = a.filter((e) => e !== i);
995
- return o.splice(o.indexOf(n.id) + +(n.edge === "after"), 0, i), o.every((e, t) => e === a[t]) ? null : {
996
- kind: "section",
997
- nextSectionIds: o
998
- };
999
- }, Ze = (e, t, n, r) => {
1000
- if (n.kind === "node") {
1001
- let t = Ge(e, n.id);
1002
- return t ? {
1003
- sectionId: t.section.id,
1004
- index: t.index + +(n.edge === "after")
1005
- } : null;
1006
- }
1007
- let i = e.find((e) => e.id === n.id);
1008
- if (!i) return null;
1009
- if (n.edge === "inside" || !i.label) return {
1010
- sectionId: i.id,
1011
- index: i.nodes.length
1012
- };
1013
- let a = e.find((e) => e.id === n.nextSectionId);
1014
- return a && !a.label && a.canReorder !== !1 && qe(e, t, Q(a.id), r) ? {
1015
- sectionId: a.id,
1016
- index: 0
1017
- } : void 0;
1018
- }, Qe = (e, t, n, r, i) => {
1019
- if ($(t)) return Xe(e, t, n, r);
1020
- let a = Ge(e, t);
1021
- if (!a || a.node.canReorder === !1 || !qe(e, t, n.kind === "node" ? n.id : Ve(n.id), r)) return null;
1022
- let o = Ze(e, t, n, r);
1023
- if (o === null) return null;
1024
- let s = a.section.nodes.map((e) => e.id).filter((e) => e !== t);
1025
- if (!o) {
1026
- if (!i || n.kind !== "section") return null;
1027
- let r = e.map((e) => e.id);
1028
- return r.splice(r.indexOf(n.id) + 1, 0, i), {
1029
- kind: "node",
1030
- orders: {
1031
- [a.section.id]: s,
1032
- [i]: [t]
1033
- },
1034
- looseSection: {
1035
- id: i,
1036
- afterSectionId: n.id,
1037
- nextSectionIds: r
1038
- }
1039
- };
1040
- }
1041
- if (o.sectionId === a.section.id) {
1042
- let e = o.index - +(a.index < o.index);
1043
- return e === a.index ? null : (s.splice(e, 0, t), {
1044
- kind: "node",
1045
- orders: { [a.section.id]: s }
1046
- });
1047
- }
1048
- let c = e.find((e) => e.id === o.sectionId)?.nodes.map((e) => e.id) ?? [];
1049
- return c.splice(o.index, 0, t), {
1050
- kind: "node",
1051
- orders: {
1052
- [a.section.id]: s,
1053
- [o.sectionId]: c
1054
- }
1055
- };
1056
- }, $e = (e) => $(e) ? 2 : +!!He(e), et = (e, t) => (n) => {
1057
- let r = String(n.active.id), i = (n) => qe(e, r, String(n.id), t), a = n.pointerCoordinates && {
1058
- x: n.collisionRect.left + n.collisionRect.width / 2,
1059
- y: n.pointerCoordinates.y
1060
- }, o = a ? k({
1061
- ...n,
1062
- pointerCoordinates: a
1063
- }).filter(i) : [];
1064
- return o.length === 0 ? O(n).filter(i) : o.sort((e, t) => $e(String(e.id)) - $e(String(t.id)));
1065
- }, tt = (e, t) => (e instanceof MouseEvent ? e.clientY : 0) + t, nt = (e, t, n) => t ? Ye(e, String(t.id), n < t.rect.top + t.rect.height / 2, t.data.current?.nextSectionId) : null, rt = () => `tree-list-loose:${crypto.randomUUID()}`, it = (e) => (t) => {
1066
- let n = String(t.active.id), r = nt(n, t.over, tt(t.activatorEvent, t.delta.y));
1067
- if (!r) return;
1068
- let i = Qe(e.sections, n, r, e.canMove, rt());
1069
- if (!i) return;
1070
- if (i.kind === "section") {
1071
- e.onReorderSections?.(i.nextSectionIds, ze(n), r.id);
1072
- return;
1073
- }
1074
- let a = i.looseSection;
1075
- a && e.onReorderSections?.(a.nextSectionIds, a.id, a.afterSectionId);
1076
- for (let [t, n] of Object.entries(i.orders)) e.onReorderNodes?.(t, n);
1077
- }, at = _(!1), ot = (e) => {
1078
- let t = f(16), { sections: n, canMove: r, onReorderSections: i, onReorderNodes: a, children: o } = e, s;
1079
- t[0] === Symbol.for("react.memo_cache_sentinel") ? (s = { activationConstraint: { distance: 4 } }, t[0] = s) : s = t[0];
1080
- let c = P(N(D, s)), l;
1081
- t[1] !== r || t[2] !== n ? (l = et(n, r), t[1] = r, t[2] = n, t[3] = l) : l = t[3];
1082
- let u = l, d;
1083
- t[4] !== r || t[5] !== a || t[6] !== i || t[7] !== n ? (d = it({
1084
- sections: n,
1085
- canMove: r,
1086
- onReorderSections: i,
1087
- onReorderNodes: a
1088
- }), t[4] = r, t[5] = a, t[6] = i, t[7] = n, t[8] = d) : d = t[8];
1089
- let p = d, h;
1090
- t[9] === o ? h = t[10] : (h = /* @__PURE__ */ m(at.Provider, {
1091
- value: !0,
1092
- children: o
1093
- }), t[9] = o, t[10] = h);
1094
- let g;
1095
- return t[11] !== u || t[12] !== p || t[13] !== c || t[14] !== h ? (g = /* @__PURE__ */ m(T, {
1096
- sensors: c,
1097
- collisionDetection: u,
1098
- onDragEnd: p,
1099
- ...Je,
1100
- children: h
1101
- }), t[11] = u, t[12] = p, t[13] = c, t[14] = h, t[15] = g) : g = t[15], g;
1102
- }, st = (e) => e?.label ? e.id : void 0, ct = (e, t) => {
1103
- if (!t) return null;
1104
- if (t.kind === "node") {
1105
- let n = Ge(e, t.id);
1106
- return n ? {
1107
- lineId: t.id,
1108
- edge: t.edge,
1109
- groupId: st(n.section)
1110
- } : null;
1111
- }
1112
- let n = e.find((e) => e.id === t.id);
1113
- if (!n) return null;
1114
- if (t.edge === "inside") {
1115
- let e = n.nodes.at(-1);
1116
- return {
1117
- lineId: e ? e.id : Q(n.id),
1118
- edge: "after",
1119
- groupId: st(n)
1120
- };
1121
- }
1122
- return t.edge === "after" ? {
1123
- lineId: Ve(n.id),
1124
- edge: "middle"
1125
- } : {
1126
- lineId: Q(n.id),
1127
- edge: "before"
1128
- };
1129
- }, lt = {
1130
- before: {
1131
- top: "0",
1132
- transform: "translateY(-50%)"
1133
- },
1134
- after: {
1135
- bottom: "0",
1136
- transform: "translateY(50%)"
1137
- },
1138
- middle: {
1139
- top: "50%",
1140
- transform: "translateY(-50%)"
1141
- }
1142
- }, ut = (e) => {
1143
- let t = f(3), { edge: n } = e, r = lt[n], i;
1144
- return t[0] !== n || t[1] !== r ? (i = /* @__PURE__ */ m(he, {
1145
- "data-tree-list-drop-indicator": n,
1146
- ...r
1147
- }), t[0] = n, t[1] = r, t[2] = i) : i = t[2], i;
1148
- }, dt = (e) => {
1149
- let { id: t, disabled: n, indicator: i, handle: a, liftedBg: o, highlighted: s, children: c } = e, l = I({
1150
- id: t,
1151
- disabled: n
1152
- }), u = i?.lineId === t ? i.edge : void 0, d = l.isDragging ? o : void 0;
1153
- return /* @__PURE__ */ h(r, {
1154
- ref: l.setNodeRef,
1155
- position: "relative",
1156
- w: "full",
1157
- minW: "0",
1158
- borderRadius: "xs",
1159
- opacity: l.isDragging ? .5 : 1,
1160
- bg: s ? "bg.accent-subtle" : d,
1161
- "data-tree-list-drop-group": s ? "" : void 0,
1162
- onPointerDownCapture: a === "self" ? (e) => l.listeners?.onPointerDown?.(e) : void 0,
1163
- children: [c(l.listeners), u ? /* @__PURE__ */ m(ut, { edge: u }) : null]
1164
- });
1165
- }, ft = (e) => {
1166
- let { sectionId: t, nextSectionId: n, gap: i, indicator: a } = e, o = Ve(t), s = M({
1167
- id: o,
1168
- data: { nextSectionId: n }
1169
- });
1170
- return /* @__PURE__ */ m(r, {
1171
- ref: s.setNodeRef,
1172
- position: "relative",
1173
- w: "full",
1174
- pt: i,
1175
- flexShrink: 0,
1176
- children: a?.lineId === o ? /* @__PURE__ */ m(ut, { edge: "middle" }) : null
1177
- });
1178
- }, pt = (e) => {
1179
- let t = f(28), { section: n, sectionRows: i, expandedNodeIds: a, activeNodeId: o, rowVariant: s, nodeGap: c, linkComponent: u, onNavigate: d, onToggleSection: g, onToggleNode: _, onSectionContextMenu: v, indicator: y, dragging: b } = e, x;
1180
- t[0] === i ? x = t[1] : (x = i.find(_t), t[0] = i, t[1] = x);
1181
- let S = x, C, w;
1182
- t[2] === i ? (C = t[3], w = t[4]) : (C = i.filter(vt), w = C.filter(yt).map(bt), t[2] = i, t[3] = C, t[4] = w);
1183
- let T = w, E;
1184
- t[5] === n.id ? E = t[6] : (E = Q(n.id), t[5] = n.id, t[6] = E);
1185
- let D = n.canReorder === !1, O = y?.groupId === n.id, k;
1186
- t[7] !== o || t[8] !== b || t[9] !== a || t[10] !== S || t[11] !== y || t[12] !== u || t[13] !== c || t[14] !== C || t[15] !== d || t[16] !== v || t[17] !== _ || t[18] !== g || t[19] !== s || t[20] !== T ? (k = (e) => /* @__PURE__ */ h(p, { children: [
1187
- S && S.kind === "section-header" ? /* @__PURE__ */ m(r, {
1188
- onPointerDownCapture: (t) => e?.onPointerDown?.(t),
1189
- children: /* @__PURE__ */ m(Fe, {
1190
- section: S.section,
1191
- collapsible: S.collapsible,
1192
- expanded: S.expanded,
1193
- focusId: S.key,
1194
- tabIndex: -1,
1195
- onFocus: xt,
1196
- onToggle: () => g?.(S.sectionId),
1197
- onContextMenu: v
1198
- })
1199
- }) : null,
1200
- b && !S && C.length === 0 ? /* @__PURE__ */ m(r, {
1201
- h: "tree-empty-drop-zone",
1202
- "data-tree-list-empty-drop-zone": ""
1203
- }) : null,
1204
- /* @__PURE__ */ m(F, {
1205
- items: T,
1206
- strategy: L,
1207
- children: /* @__PURE__ */ m(l, {
1208
- gap: c,
1209
- w: "full",
1210
- minW: "0",
1211
- children: C.map((e) => e.kind === "node" ? /* @__PURE__ */ m(mt, {
1212
- row: e,
1213
- expandedNodeIds: a,
1214
- activeNodeId: o,
1215
- rowVariant: s,
1216
- nodeGap: c,
1217
- linkComponent: u,
1218
- onNavigate: d,
1219
- onToggleNode: _,
1220
- indicator: y
1221
- }, e.key) : null)
1222
- })
1223
- })
1224
- ] }), t[7] = o, t[8] = b, t[9] = a, t[10] = S, t[11] = y, t[12] = u, t[13] = c, t[14] = C, t[15] = d, t[16] = v, t[17] = _, t[18] = g, t[19] = s, t[20] = T, t[21] = k) : k = t[21];
1225
- let A;
1226
- return t[22] !== y || t[23] !== E || t[24] !== D || t[25] !== O || t[26] !== k ? (A = /* @__PURE__ */ m(dt, {
1227
- id: E,
1228
- disabled: D,
1229
- indicator: y,
1230
- handle: "child",
1231
- highlighted: O,
1232
- children: k
1233
- }), t[22] = y, t[23] = E, t[24] = D, t[25] = O, t[26] = k, t[27] = A) : A = t[27], A;
1234
- }, mt = (e) => {
1235
- let t = f(18), { row: n, expandedNodeIds: r, activeNodeId: i, rowVariant: a, nodeGap: o, linkComponent: s, onNavigate: c, onToggleNode: l, indicator: u } = e, d;
1236
- t[0] !== i || t[1] !== r || t[2] !== s || t[3] !== o || t[4] !== c || t[5] !== l || t[6] !== n.level || t[7] !== n.node || t[8] !== n.sectionId || t[9] !== a ? (d = /* @__PURE__ */ m(Ne, {
1237
- sectionId: n.sectionId,
1238
- node: n.node,
1239
- level: n.level,
1240
- expandedNodeIds: r,
1241
- activeNodeId: i,
1242
- rowVariant: a,
1243
- nodeGap: o,
1244
- linkComponent: s,
1245
- onNavigate: c,
1246
- onToggleNode: l
1247
- }), t[0] = i, t[1] = r, t[2] = s, t[3] = o, t[4] = c, t[5] = l, t[6] = n.level, t[7] = n.node, t[8] = n.sectionId, t[9] = a, t[10] = d) : d = t[10];
1248
- let p = d;
1249
- if (n.level > 0) return p;
1250
- let h = n.node.canReorder === !1, g;
1251
- t[11] === p ? g = t[12] : (g = () => p, t[11] = p, t[12] = g);
1252
- let _;
1253
- return t[13] !== u || t[14] !== n.node.id || t[15] !== h || t[16] !== g ? (_ = /* @__PURE__ */ m(dt, {
1254
- id: n.node.id,
1255
- disabled: h,
1256
- indicator: u,
1257
- handle: "self",
1258
- liftedBg: "bg.hover",
1259
- children: g
1260
- }), t[13] = u, t[14] = n.node.id, t[15] = h, t[16] = g, t[17] = _) : _ = t[17], _;
1261
- }, ht = (e) => {
1262
- let t = f(42), n, r, i, a, o;
1263
- t[0] === e ? (n = t[1], r = t[2], i = t[3], a = t[4], o = t[5]) : ({sections: o, expandedSectionIds: r, expandedNodeIds: n, sectionGap: a, ...i} = e, t[0] = e, t[1] = n, t[2] = r, t[3] = i, t[4] = a, t[5] = o);
1264
- let { active: s, over: c } = A(), [u, d] = S(null), p;
1265
- t[6] === Symbol.for("react.memo_cache_sentinel") ? (p = {
1266
- onDragMove: (e) => d(tt(e.activatorEvent, e.delta.y)),
1267
- onDragEnd: () => d(null),
1268
- onDragCancel: () => d(null)
1269
- }, t[6] = p) : p = t[6], j(p);
1270
- let _;
1271
- if (t[7] !== s || t[8] !== c || t[9] !== u || t[10] !== o) {
1272
- let e = s && u !== null ? nt(String(s.id), c, u) : null;
1273
- _ = ct(o, e), t[7] = s, t[8] = c, t[9] = u, t[10] = o, t[11] = _;
1274
- } else _ = t[11];
1275
- let v = _, y, b, x, C, w, T, E, D, O;
1276
- if (t[12] !== s || t[13] !== n || t[14] !== r || t[15] !== v || t[16] !== i || t[17] !== a || t[18] !== o) {
1277
- let e = xe(o, r, n);
1278
- b = F, t[28] === o ? D = t[29] : (D = o.map(St), t[28] = o, t[29] = D), O = L, y = l, x = "0", C = "full", w = "0", T = "full", E = o.map((t, r) => /* @__PURE__ */ h(g, { children: [/* @__PURE__ */ m(pt, {
1279
- section: t,
1280
- sectionRows: e.filter((e) => e.sectionId === t.id),
1281
- expandedNodeIds: n,
1282
- rowVariant: i.rowVariant ?? "tree",
1283
- nodeGap: i.nodeGap,
1284
- activeNodeId: i.activeNodeId,
1285
- linkComponent: i.linkComponent,
1286
- onNavigate: i.onNavigate,
1287
- onToggleSection: i.onToggleSection,
1288
- onToggleNode: i.onToggleNode,
1289
- onSectionContextMenu: i.onSectionContextMenu,
1290
- indicator: v,
1291
- dragging: !!s
1292
- }), /* @__PURE__ */ m(ft, {
1293
- sectionId: t.id,
1294
- nextSectionId: o[r + 1]?.id,
1295
- gap: a,
1296
- indicator: v
1297
- })] }, t.id)), t[12] = s, t[13] = n, t[14] = r, t[15] = v, t[16] = i, t[17] = a, t[18] = o, t[19] = y, t[20] = b, t[21] = x, t[22] = C, t[23] = w, t[24] = T, t[25] = E, t[26] = D, t[27] = O;
1298
- } else y = t[19], b = t[20], x = t[21], C = t[22], w = t[23], T = t[24], E = t[25], D = t[26], O = t[27];
1299
- let k;
1300
- t[30] !== y || t[31] !== x || t[32] !== C || t[33] !== w || t[34] !== T || t[35] !== E ? (k = /* @__PURE__ */ m(y, {
1301
- gap: x,
1302
- w: C,
1303
- minW: w,
1304
- maxW: T,
1305
- children: E
1306
- }), t[30] = y, t[31] = x, t[32] = C, t[33] = w, t[34] = T, t[35] = E, t[36] = k) : k = t[36];
1307
- let M;
1308
- return t[37] !== b || t[38] !== D || t[39] !== O || t[40] !== k ? (M = /* @__PURE__ */ m(b, {
1309
- items: D,
1310
- strategy: O,
1311
- children: k
1312
- }), t[37] = b, t[38] = D, t[39] = O, t[40] = k, t[41] = M) : M = t[41], M;
1313
- }, gt = (e) => {
1314
- let t = f(33), { sections: n, expandedSectionIds: r, expandedNodeIds: i, activeNodeId: a, rowVariant: o, sectionGap: s, nodeGap: c, linkComponent: l, onNavigate: u, onToggleSection: d, onToggleNode: p, onSectionContextMenu: h, onReorderSections: g, onReorderNodes: _, canMove: y } = e, b;
1315
- t[0] === r ? b = t[1] : (b = r === void 0 ? [] : r, t[0] = r, t[1] = b);
1316
- let x = b, S;
1317
- t[2] === i ? S = t[3] : (S = i === void 0 ? [] : i, t[2] = i, t[3] = S);
1318
- let C = S, w = o === void 0 ? "tree" : o, E = s === void 0 ? "0" : s, O = c === void 0 ? "0" : c, k;
1319
- t[4] === Symbol.for("react.memo_cache_sentinel") ? (k = { activationConstraint: { distance: 4 } }, t[4] = k) : k = t[4];
1320
- let A = P(N(D, k)), j = v(at), M;
1321
- t[5] !== y || t[6] !== n ? (M = et(n, y), t[5] = y, t[6] = n, t[7] = M) : M = t[7];
1322
- let F = M, I;
1323
- t[8] === g ? I = t[9] : (I = (e) => g?.(e), t[8] = g, t[9] = I);
1324
- let L;
1325
- t[10] !== y || t[11] !== _ || t[12] !== n || t[13] !== I ? (L = it({
1326
- sections: n,
1327
- canMove: y,
1328
- onReorderSections: I,
1329
- onReorderNodes: _
1330
- }), t[10] = y, t[11] = _, t[12] = n, t[13] = I, t[14] = L) : L = t[14];
1331
- let R = L, z;
1332
- t[15] !== a || t[16] !== C || t[17] !== x || t[18] !== l || t[19] !== O || t[20] !== u || t[21] !== h || t[22] !== p || t[23] !== d || t[24] !== w || t[25] !== E || t[26] !== n ? (z = /* @__PURE__ */ m(ht, {
1333
- sections: n,
1334
- expandedSectionIds: x,
1335
- expandedNodeIds: C,
1336
- activeNodeId: a,
1337
- rowVariant: w,
1338
- sectionGap: E,
1339
- nodeGap: O,
1340
- linkComponent: l,
1341
- onNavigate: u,
1342
- onToggleSection: d,
1343
- onToggleNode: p,
1344
- onSectionContextMenu: h
1345
- }), t[15] = a, t[16] = C, t[17] = x, t[18] = l, t[19] = O, t[20] = u, t[21] = h, t[22] = p, t[23] = d, t[24] = w, t[25] = E, t[26] = n, t[27] = z) : z = t[27];
1346
- let B = z;
1347
- if (j) return B;
1348
- let V;
1349
- return t[28] !== F || t[29] !== B || t[30] !== R || t[31] !== A ? (V = /* @__PURE__ */ m(T, {
1350
- sensors: A,
1351
- collisionDetection: F,
1352
- onDragEnd: R,
1353
- ...Je,
1354
- children: B
1355
- }), t[28] = F, t[29] = B, t[30] = R, t[31] = A, t[32] = V) : V = t[32], V;
1356
- };
1357
- function _t(e) {
1358
- return e.kind === "section-header";
1359
- }
1360
- function vt(e) {
1361
- return e.kind === "node";
1362
- }
1363
- function yt(e) {
1364
- return e.kind === "node" && e.level === 0;
1365
- }
1366
- function bt(e) {
1367
- return e.kind === "node" ? e.node.id : "";
1368
- }
1369
- function xt() {}
1370
- function St(e) {
1371
- return Q(e.id);
1372
- }
1373
- //#endregion
1374
- //#region src/components/tree-list/use-tree-list-keyboard-navigation.ts
1375
- var Ct = (e, t) => e ? [...e.querySelectorAll("[data-tree-list-focus-id]")].find((e) => e.dataset.treeListFocusId === t) ?? null : null, wt = (e, t) => {
1376
- if (e && t instanceof HTMLElement && e.contains(t)) return t.closest("[data-tree-list-focus-id]")?.dataset.treeListFocusId;
1377
- }, Tt = (e) => e instanceof HTMLElement ? e.isContentEditable ? !0 : [
1378
- "INPUT",
1379
- "TEXTAREA",
1380
- "SELECT"
1381
- ].includes(e.tagName) : !1, Et = (e, t) => e.findIndex((e) => Ce(e) && Se(e) === t), Dt = (e) => {
1382
- let t = f(28), { rows: n, activeNodeId: r, expandedNodeIds: i, onToggleNode: a, onToggleSection: o, scrollToRow: s } = e, c = x(null), [l, u] = S(), [d, p] = S(), m;
1383
- t[0] !== r || t[1] !== l || t[2] !== n ? (m = Te(l, r, n), t[0] = r, t[1] = l, t[2] = n, t[3] = m) : m = t[3];
1384
- let h = m, g;
1385
- t[4] === n ? g = t[5] : (g = we(n).map(Se).join("\0"), t[4] = n, t[5] = g);
1386
- let _ = g, v, b;
1387
- t[6] !== _ || t[7] !== l ? (v = () => {
1388
- l && (_.split("\0").includes(l) || u(void 0));
1389
- }, b = [l, _], t[6] = _, t[7] = l, t[8] = v, t[9] = b) : (v = t[8], b = t[9]), y(v, b);
1390
- let C, w;
1391
- t[10] === d ? (C = t[11], w = t[12]) : (C = () => {
1392
- if (!d) return;
1393
- let e = requestAnimationFrame(() => {
1394
- requestAnimationFrame(() => {
1395
- let e = Ct(c.current, d);
1396
- e && (e.focus(), p(void 0));
1397
- });
1398
- });
1399
- return () => cancelAnimationFrame(e);
1400
- }, w = [d], t[10] = d, t[11] = C, t[12] = w), y(C, w);
1401
- let T;
1402
- t[13] !== n || t[14] !== s ? (T = (e) => {
1403
- u(e);
1404
- let t = Ct(c.current, e);
1405
- if (t) {
1406
- t.focus();
1407
- return;
1408
- }
1409
- let r = Et(n, e);
1410
- r !== -1 && (s?.(r), p(e));
1411
- }, t[13] = n, t[14] = s, t[15] = T) : T = t[15];
1412
- let E = T, D;
1413
- t[16] !== r || t[17] !== i || t[18] !== E || t[19] !== h || t[20] !== a || t[21] !== o || t[22] !== n ? (D = (e) => {
1414
- if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || Tt(e.target)) return;
1415
- let t = Oe({
1416
- rows: n,
1417
- focusedRowId: wt(c.current, e.target) ?? h,
1418
- activeNodeId: r,
1419
- expandedNodeIds: i,
1420
- key: e.key
1421
- });
1422
- if (t) {
1423
- if (e.preventDefault(), t.type === "toggle-node") {
1424
- a?.(t.nodeId);
1425
- return;
1426
- }
1427
- if (t.type === "toggle-section") {
1428
- o?.(t.sectionId);
1429
- return;
1430
- }
1431
- E(t.rowId);
1432
- }
1433
- }, t[16] = r, t[17] = i, t[18] = E, t[19] = h, t[20] = a, t[21] = o, t[22] = n, t[23] = D) : D = t[23];
1434
- let O = D, k;
1435
- t[24] === Symbol.for("react.memo_cache_sentinel") ? (k = (e) => u(e), t[24] = k) : k = t[24];
1436
- let A;
1437
- return t[25] !== h || t[26] !== O ? (A = {
1438
- focusRowId: h,
1439
- rootRef: c,
1440
- handleKeyDown: O,
1441
- onRowFocus: k
1442
- }, t[25] = h, t[26] = O, t[27] = A) : A = t[27], A;
1443
- }, Ot = 32, kt = 4, At = (e) => {
1444
- let t = f(32), { row: n, expandedNodeIds: r, activeNodeId: i, focusRowId: a, rowVariant: o, nodeGap: s, linkComponent: c, onRowFocus: l, onNavigate: u, onToggleSection: d, onToggleNode: p, onSectionContextMenu: h, onMoveNode: g } = e;
1445
- if (n.kind === "section-header") {
1446
- let e = n.key === a ? 0 : -1, r;
1447
- t[0] !== l || t[1] !== n.key ? (r = () => l(n.key), t[0] = l, t[1] = n.key, t[2] = r) : r = t[2];
1448
- let i;
1449
- t[3] !== d || t[4] !== n.sectionId ? (i = () => d?.(n.sectionId), t[3] = d, t[4] = n.sectionId, t[5] = i) : i = t[5];
1450
- let o;
1451
- return t[6] !== h || t[7] !== n.collapsible || t[8] !== n.expanded || t[9] !== n.key || t[10] !== n.section || t[11] !== e || t[12] !== r || t[13] !== i ? (o = /* @__PURE__ */ m(Fe, {
1452
- section: n.section,
1453
- collapsible: n.collapsible,
1454
- expanded: n.expanded,
1455
- focusId: n.key,
1456
- tabIndex: e,
1457
- onFocus: r,
1458
- onToggle: i,
1459
- onContextMenu: h
1460
- }), t[6] = h, t[7] = n.collapsible, t[8] = n.expanded, t[9] = n.key, t[10] = n.section, t[11] = e, t[12] = r, t[13] = i, t[14] = o) : o = t[14], o;
1461
- }
1462
- if (n.kind === "section-empty") return n.emptyState ?? null;
1463
- let _ = n.node.id === a ? 0 : -1, v;
1464
- t[15] !== l || t[16] !== n.node.id ? (v = () => l(n.node.id), t[15] = l, t[16] = n.node.id, t[17] = v) : v = t[17];
1465
- let y;
1466
- return t[18] !== i || t[19] !== r || t[20] !== c || t[21] !== s || t[22] !== g || t[23] !== u || t[24] !== p || t[25] !== n.level || t[26] !== n.node || t[27] !== n.sectionId || t[28] !== o || t[29] !== _ || t[30] !== v ? (y = /* @__PURE__ */ m(Ne, {
1467
- sectionId: n.sectionId,
1468
- node: n.node,
1469
- level: n.level,
1470
- expandedNodeIds: r,
1471
- activeNodeId: i,
1472
- rowVariant: o,
1473
- nodeGap: s,
1474
- linkComponent: c,
1475
- tabIndex: _,
1476
- onFocus: v,
1477
- onNavigate: u,
1478
- onToggleNode: p,
1479
- onMoveNode: g
1480
- }), t[18] = i, t[19] = r, t[20] = c, t[21] = s, t[22] = g, t[23] = u, t[24] = p, t[25] = n.level, t[26] = n.node, t[27] = n.sectionId, t[28] = o, t[29] = _, t[30] = v, t[31] = y) : y = t[31], y;
1481
- }, jt = (e) => {
1482
- let { rows: t, expandedNodeIds: n = [], activeNodeId: i, rowVariant: a = "tree", nodeGap: o = "0", linkComponent: s, onNavigate: c, onToggleSection: l, onToggleNode: u, onSectionContextMenu: d, onMoveNode: f, scrollRef: p } = e, h = w({
1483
- count: t.length,
1484
- getScrollElement: () => p.current,
1485
- estimateSize: () => Ot,
1486
- overscan: kt,
1487
- getItemKey: (e) => t[e]?.key ?? e
1488
- }), g = Dt({
1489
- rows: t,
1490
- activeNodeId: i,
1491
- expandedNodeIds: n,
1492
- onToggleNode: u,
1493
- onToggleSection: l,
1494
- scrollToRow: (e) => h.scrollToIndex(e, { align: "auto" })
1495
- });
1496
- return /* @__PURE__ */ m(r, {
1497
- ref: g.rootRef,
1498
- role: "listbox",
1499
- w: "full",
1500
- minW: "0",
1501
- maxW: "full",
1502
- position: "relative",
1503
- style: { height: h.getTotalSize() },
1504
- onKeyDown: g.handleKeyDown,
1505
- children: h.getVirtualItems().map((e) => {
1506
- let p = t[e.index];
1507
- return p ? /* @__PURE__ */ m(r, {
1508
- ref: h.measureElement,
1509
- "data-index": e.index,
1510
- "data-tree-list-row": p.kind,
1511
- position: "absolute",
1512
- top: "0",
1513
- left: "0",
1514
- w: "full",
1515
- pb: e.index === t.length - 1 ? "0" : o,
1516
- style: { transform: `translateY(${e.start}px)` },
1517
- children: /* @__PURE__ */ m(At, {
1518
- row: p,
1519
- expandedNodeIds: n,
1520
- activeNodeId: i,
1521
- focusRowId: g.focusRowId,
1522
- rowVariant: a,
1523
- nodeGap: o,
1524
- linkComponent: s,
1525
- onRowFocus: g.onRowFocus,
1526
- onNavigate: c,
1527
- onToggleSection: l,
1528
- onToggleNode: u,
1529
- onSectionContextMenu: d,
1530
- onMoveNode: f
1531
- })
1532
- }, e.key) : null;
1533
- })
1534
- });
1535
- }, Mt = (e) => {
1536
- let { sections: t, expandedSectionIds: n = [], expandedNodeIds: i = [], activeNodeId: a, rowVariant: o = "tree", sectionGap: s = "0", nodeGap: c = "0", linkComponent: u, onNavigate: d, onToggleSection: f, onToggleNode: p, onSectionContextMenu: h, onMoveNode: g, virtualize: _, scrollRef: v } = e, y = xe(t, n, i), b = Dt({
1537
- rows: y,
1538
- activeNodeId: a,
1539
- expandedNodeIds: i,
1540
- onToggleNode: p,
1541
- onToggleSection: f
1542
- });
1543
- return _ && v ? /* @__PURE__ */ m(jt, {
1544
- ...e,
1545
- rows: y,
1546
- scrollRef: v
1547
- }) : /* @__PURE__ */ m(l, {
1548
- ref: b.rootRef,
1549
- role: "listbox",
1550
- gap: s,
1551
- w: "full",
1552
- minW: "0",
1553
- maxW: "full",
1554
- overflowX: "hidden",
1555
- onKeyDown: b.handleKeyDown,
1556
- children: t.map((e) => {
1557
- let t = y.filter((t) => t.sectionId === e.id);
1558
- return /* @__PURE__ */ m(l, {
1559
- gap: c,
1560
- w: "full",
1561
- minW: "0",
1562
- maxW: "full",
1563
- "data-testid": `tree-list-section-${e.id}`,
1564
- children: t.map((e) => /* @__PURE__ */ m(r, {
1565
- w: "full",
1566
- minW: "0",
1567
- children: /* @__PURE__ */ m(At, {
1568
- row: e,
1569
- expandedNodeIds: i,
1570
- activeNodeId: a,
1571
- focusRowId: b.focusRowId,
1572
- rowVariant: o,
1573
- nodeGap: c,
1574
- linkComponent: u,
1575
- onRowFocus: b.onRowFocus,
1576
- onNavigate: d,
1577
- onToggleSection: f,
1578
- onToggleNode: p,
1579
- onSectionContextMenu: h,
1580
- onMoveNode: g
1581
- })
1582
- }, e.key))
1583
- }, e.id);
1584
- })
1585
- });
1586
- }, Nt = (e) => {
1587
- let t = f(8), n;
1588
- t[0] === e ? n = t[1] : (n = e.draggable ? /* @__PURE__ */ m(gt, {
1589
- sections: e.sections,
1590
- expandedSectionIds: e.expandedSectionIds,
1591
- expandedNodeIds: e.expandedNodeIds,
1592
- activeNodeId: e.activeNodeId,
1593
- rowVariant: e.rowVariant,
1594
- sectionGap: e.sectionGap,
1595
- nodeGap: e.nodeGap,
1596
- linkComponent: e.linkComponent,
1597
- onNavigate: e.onNavigate,
1598
- onToggleSection: e.onToggleSection,
1599
- onToggleNode: e.onToggleNode,
1600
- onSectionContextMenu: e.onSectionContextMenu,
1601
- onReorderSections: e.onReorderSections,
1602
- onReorderNodes: e.onReorderNodes,
1603
- canMove: e.canMove
1604
- }) : /* @__PURE__ */ m(Mt, { ...e }), t[0] = e, t[1] = n);
1605
- let r = n, i;
1606
- t[2] !== r || t[3] !== e.onMoveNode ? (i = /* @__PURE__ */ m(X, {
1607
- onMoveNode: e.onMoveNode,
1608
- children: r
1609
- }), t[2] = r, t[3] = e.onMoveNode, t[4] = i) : i = t[4];
1610
- let a = i;
1611
- if (!e.backgroundContextActions || e.backgroundContextActions.length === 0) return a;
1612
- let o;
1613
- return t[5] !== a || t[6] !== e.backgroundContextActions ? (o = /* @__PURE__ */ m(ge, {
1614
- actions: e.backgroundContextActions,
1615
- children: a
1616
- }), t[5] = a, t[6] = e.backgroundContextActions, t[7] = o) : o = t[7], o;
1617
- };
1618
- //#endregion
1619
- export { fe as i, ot as n, he as r, Nt as t };
1620
-
1621
- //# sourceMappingURL=tree-list-Cqgl8mnN.js.map