@synnaxlabs/pluto 0.23.0 → 0.24.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 (193) hide show
  1. package/dist/{Animated-DjcnDVGC.cjs → Animated-Cbt7tqBk.cjs} +1 -1
  2. package/dist/{Animated-DPIV1IH6.js → Animated-DGp8qHGT.js} +2 -2
  3. package/dist/{Keyboard-CJLEUbYu.cjs → Keyboard-BjnOIJ5V.cjs} +1 -1
  4. package/dist/{Keyboard-BLHHROrq.js → Keyboard-HZ6Llqo5.js} +2 -2
  5. package/dist/{LinePlot-C9MVJErC.js → LinePlot-Dw8vQLJw.js} +154 -148
  6. package/dist/LinePlot-tnVASicV.cjs +66 -0
  7. package/dist/{Link-C3NUk5cp.cjs → Link-CmzvCQDi.cjs} +1 -1
  8. package/dist/{Link-BsqVxj6V.js → Link-j-xpQ9HD.js} +1 -1
  9. package/dist/List-BX3MLMNz.cjs +1 -0
  10. package/dist/List-BlgM15Pf.js +22 -0
  11. package/dist/{Pack-mkZBsSIU.js → Pack-B5JX1aqf.js} +5 -5
  12. package/dist/{Pack-CBNcamuh.cjs → Pack-D93gFUU9.cjs} +1 -1
  13. package/dist/Toggle-BvWOTk9-.cjs +188 -0
  14. package/dist/{Toggle-W4K3cLf7.js → Toggle-Cq3FTFfq.js} +8169 -8032
  15. package/dist/{Video-Kb-c-N69.cjs → Video-D382cbrn.cjs} +1 -1
  16. package/dist/{Video-C2EYBKLN.js → Video-DIIo17du.js} +1 -1
  17. package/dist/{aggregator-BZJAV5yZ.js → aggregator-BIhLPgXc.js} +4811 -4482
  18. package/dist/aggregator-CaPKb9Zv.cjs +51 -0
  19. package/dist/align.cjs +1 -1
  20. package/dist/align.js +1 -1
  21. package/dist/button.cjs +1 -1
  22. package/dist/button.js +1 -1
  23. package/dist/color.cjs +1 -1
  24. package/dist/color.js +1 -1
  25. package/dist/css-BNL3vU5o.cjs +1 -0
  26. package/dist/{css-TXuXKs3A.js → css-CDB-JY4S.js} +358 -352
  27. package/dist/css.cjs +1 -1
  28. package/dist/css.js +2 -2
  29. package/dist/dropdown.cjs +1 -1
  30. package/dist/dropdown.js +1 -1
  31. package/dist/ether.cjs +1 -1
  32. package/dist/ether.js +5 -5
  33. package/dist/{external-BB2SaR1o.js → external-B4-opRnY.js} +1 -1
  34. package/dist/{external-BKWizK6o.cjs → external-B5j7Ee09.cjs} +1 -1
  35. package/dist/{external-DsNtnR-y.cjs → external-BCyTR9bj.cjs} +1 -1
  36. package/dist/{external-TNsi3_BK.js → external-BJI4w1QU.js} +26 -26
  37. package/dist/external-BK0QWtit.cjs +1 -0
  38. package/dist/{external-WGyRiKbb.js → external-C3TJ5wKl.js} +24 -24
  39. package/dist/{external-DlCoToEB.cjs → external-CD2dFTTj.cjs} +1 -1
  40. package/dist/{external-XoJlPNFB.js → external-CDZA7f7F.js} +2 -2
  41. package/dist/{external-mlV4Onnq.cjs → external-CFqe6ymi.cjs} +1 -1
  42. package/dist/{external-BphNoXuB.js → external-CRbJq-i4.js} +8 -8
  43. package/dist/{external-CduvGaPN.js → external-CZiW7AR4.js} +18 -18
  44. package/dist/{external-D1NnASGa.cjs → external-CjjdhnS5.cjs} +1 -1
  45. package/dist/external-D6mqXF0b.js +272 -0
  46. package/dist/external-D9eq1UnF.cjs +1 -0
  47. package/dist/external-DKxxR-uc.cjs +1 -0
  48. package/dist/{external-DjjMU4Z6.cjs → external-DUeGQ4si.cjs} +1 -1
  49. package/dist/external-DVg6hQ24.js +98 -0
  50. package/dist/external-DvFgLm4v.js +222 -0
  51. package/dist/external-IpylADnr.cjs +1 -0
  52. package/dist/external-RIKGjo5R.js +74 -0
  53. package/dist/external-jSb_axxw.js +346 -0
  54. package/dist/{external-0w2SHXg_.js → external-lDVnD7Yi.js} +2 -2
  55. package/dist/{external-CztU6wom.cjs → external-v3jmKHoB.cjs} +1 -1
  56. package/dist/external-zDAAJJHM.cjs +1 -0
  57. package/dist/header.cjs +1 -1
  58. package/dist/header.js +1 -1
  59. package/dist/index.cjs +1 -1
  60. package/dist/index.js +3311 -3123
  61. package/dist/input.cjs +1 -1
  62. package/dist/input.js +1 -1
  63. package/dist/list.cjs +1 -1
  64. package/dist/list.js +1 -1
  65. package/dist/menu.cjs +1 -1
  66. package/dist/menu.js +1 -1
  67. package/dist/src/button/Button.d.ts +3 -1
  68. package/dist/src/button/Button.d.ts.map +1 -1
  69. package/dist/src/channel/LinePlot.d.ts +4 -1
  70. package/dist/src/channel/LinePlot.d.ts.map +1 -1
  71. package/dist/src/dialog/index.d.ts +2 -0
  72. package/dist/src/dialog/index.d.ts.map +1 -0
  73. package/dist/src/dialog/use.d.ts +28 -0
  74. package/dist/src/dialog/use.d.ts.map +1 -0
  75. package/dist/src/divider/Divider.d.ts +2 -2
  76. package/dist/src/divider/Divider.d.ts.map +1 -1
  77. package/dist/src/dropdown/Dropdown.d.ts +5 -27
  78. package/dist/src/dropdown/Dropdown.d.ts.map +1 -1
  79. package/dist/src/form/Field.d.ts +35 -0
  80. package/dist/src/form/Field.d.ts.map +1 -0
  81. package/dist/src/form/Form.d.ts +15 -45
  82. package/dist/src/form/Form.d.ts.map +1 -1
  83. package/dist/src/form/external.d.ts +1 -0
  84. package/dist/src/form/external.d.ts.map +1 -1
  85. package/dist/src/haul/Haul.d.ts +79 -2
  86. package/dist/src/haul/Haul.d.ts.map +1 -1
  87. package/dist/src/index.d.ts +4 -0
  88. package/dist/src/index.d.ts.map +1 -1
  89. package/dist/src/input/Text.d.ts +2 -0
  90. package/dist/src/input/Text.d.ts.map +1 -1
  91. package/dist/src/list/Column.d.ts +1 -0
  92. package/dist/src/list/Column.d.ts.map +1 -1
  93. package/dist/src/list/Core.d.ts.map +1 -1
  94. package/dist/src/list/Hover.d.ts.map +1 -1
  95. package/dist/src/list/Selector.d.ts +1 -7
  96. package/dist/src/list/Selector.d.ts.map +1 -1
  97. package/dist/src/list/useSelect.d.ts +5 -1
  98. package/dist/src/list/useSelect.d.ts.map +1 -1
  99. package/dist/src/menu/Menu.d.ts +5 -3
  100. package/dist/src/menu/Menu.d.ts.map +1 -1
  101. package/dist/src/modal/Modal.d.ts +8 -0
  102. package/dist/src/modal/Modal.d.ts.map +1 -0
  103. package/dist/src/modal/index.d.ts +2 -0
  104. package/dist/src/modal/index.d.ts.map +1 -0
  105. package/dist/src/mosaic/Mosaic.d.ts +1 -1
  106. package/dist/src/mosaic/Mosaic.d.ts.map +1 -1
  107. package/dist/src/mosaic/tree.d.ts +1 -0
  108. package/dist/src/mosaic/tree.d.ts.map +1 -1
  109. package/dist/src/mosaic/types.d.ts +62 -0
  110. package/dist/src/mosaic/types.d.ts.map +1 -1
  111. package/dist/src/note/Note.d.ts.map +1 -1
  112. package/dist/src/observe/index.d.ts +2 -0
  113. package/dist/src/observe/index.d.ts.map +1 -0
  114. package/dist/src/observe/use.d.ts +19 -0
  115. package/dist/src/observe/use.d.ts.map +1 -0
  116. package/dist/src/os/Controls/Windows.d.ts +1 -1
  117. package/dist/src/os/Controls/Windows.d.ts.map +1 -1
  118. package/dist/src/ranger/TimeRangeChip.d.ts +3 -2
  119. package/dist/src/ranger/TimeRangeChip.d.ts.map +1 -1
  120. package/dist/src/select/List.d.ts +3 -2
  121. package/dist/src/select/List.d.ts.map +1 -1
  122. package/dist/src/select/Multiple.d.ts +3 -2
  123. package/dist/src/select/Multiple.d.ts.map +1 -1
  124. package/dist/src/select/Select.spec.d.ts.map +1 -1
  125. package/dist/src/select/Single.d.ts +5 -3
  126. package/dist/src/select/Single.d.ts.map +1 -1
  127. package/dist/src/state/state.d.ts +1 -0
  128. package/dist/src/state/state.d.ts.map +1 -1
  129. package/dist/src/status/Notification.d.ts +1 -1
  130. package/dist/src/status/Notification.d.ts.map +1 -1
  131. package/dist/src/tabs/Selector.d.ts +4 -10
  132. package/dist/src/tabs/Selector.d.ts.map +1 -1
  133. package/dist/src/tabs/Tabs.d.ts +6 -11
  134. package/dist/src/tabs/Tabs.d.ts.map +1 -1
  135. package/dist/src/tabs/external.d.ts +1 -0
  136. package/dist/src/tabs/external.d.ts.map +1 -1
  137. package/dist/src/tabs/types.d.ts +54 -0
  138. package/dist/src/tabs/types.d.ts.map +1 -0
  139. package/dist/src/text/Editable.d.ts +5 -1
  140. package/dist/src/text/Editable.d.ts.map +1 -1
  141. package/dist/src/text/WithIcon.d.ts.map +1 -1
  142. package/dist/src/tree/Tree.d.ts +7 -2
  143. package/dist/src/tree/Tree.d.ts.map +1 -1
  144. package/dist/src/tree/core.d.ts +1 -0
  145. package/dist/src/tree/core.d.ts.map +1 -1
  146. package/dist/src/triggers/Text.d.ts +1 -1
  147. package/dist/src/triggers/Text.d.ts.map +1 -1
  148. package/dist/src/triggers/hooks.d.ts +1 -1
  149. package/dist/src/triggers/hooks.d.ts.map +1 -1
  150. package/dist/src/triggers/triggers.d.ts +2 -1
  151. package/dist/src/triggers/triggers.d.ts.map +1 -1
  152. package/dist/src/util/rootElement.d.ts +2 -0
  153. package/dist/src/util/rootElement.d.ts.map +1 -0
  154. package/dist/src/viewport/use.d.ts +2 -0
  155. package/dist/src/viewport/use.d.ts.map +1 -1
  156. package/dist/src/vis/legend/Container.d.ts +99 -5
  157. package/dist/src/vis/legend/Container.d.ts.map +1 -1
  158. package/dist/src/vis/line/aether/line.d.ts +2 -2
  159. package/dist/src/vis/line/aether/line.d.ts.map +1 -1
  160. package/dist/src/vis/render/context.d.ts.map +1 -1
  161. package/dist/src/vis/schematic/Forms.d.ts.map +1 -1
  162. package/dist/style.css +1 -1
  163. package/dist/tabs.cjs +1 -1
  164. package/dist/tabs.js +1 -1
  165. package/dist/text.cjs +1 -1
  166. package/dist/text.js +2 -2
  167. package/dist/theming.cjs +1 -1
  168. package/dist/theming.js +2 -2
  169. package/dist/tree.cjs +1 -1
  170. package/dist/tree.js +1 -1
  171. package/dist/triggers.cjs +1 -1
  172. package/dist/triggers.js +1 -1
  173. package/dist/{units-DechjShe.js → units-DeLVJ01P.js} +1 -1
  174. package/dist/{units-BsHX82D_.cjs → units-MTRY0KtD.cjs} +1 -1
  175. package/dist/video.cjs +1 -1
  176. package/dist/video.js +1 -1
  177. package/package.json +4 -4
  178. package/dist/LinePlot-DkAUE5Nq.cjs +0 -68
  179. package/dist/List-BbB1S5Vo.cjs +0 -1
  180. package/dist/List-DPugi06W.js +0 -22
  181. package/dist/Toggle-BBGPiXIA.cjs +0 -188
  182. package/dist/aggregator-DueF6Q-Z.cjs +0 -45
  183. package/dist/css-DZx3bWkH.cjs +0 -1
  184. package/dist/external-B-CtJFCn.js +0 -96
  185. package/dist/external-B39SmpRo.js +0 -201
  186. package/dist/external-BbnWD0Pc.js +0 -66
  187. package/dist/external-CsPOXIEm.cjs +0 -1
  188. package/dist/external-CyiLaYmg.js +0 -322
  189. package/dist/external-DrS33VU5.cjs +0 -1
  190. package/dist/external-WzX6JA2j.cjs +0 -1
  191. package/dist/external-fg-pJfZR.js +0 -260
  192. package/dist/external-vZfda3xX.cjs +0 -1
  193. package/dist/external-vgqH7hLg.cjs +0 -1
@@ -1,322 +0,0 @@
1
- import { A as k, h as Z, n as D } from "./aggregator-BZJAV5yZ.js";
2
- import { j as C } from "./jsx-runtime-DqxPLdyS.js";
3
- import { v as ee, w as te, p as ne, m as re, q as se, C as le, M as oe, x as ae, o as ie, y as ce, B as de, z as K, A as ue, F as fe, G as he } from "./Toggle-W4K3cLf7.js";
4
- import { memo as me, useState as pe, useCallback as b, useMemo as ge } from "react";
5
- import { L as xe } from "./Link-BsqVxj6V.js";
6
- import { A as ye } from "./Animated-DPIV1IH6.js";
7
- import { C as h } from "./css-TXuXKs3A.js";
8
- import "./Pack-mkZBsSIU.js";
9
- import { L as Ce } from "./List-DPugi06W.js";
10
- const U = (e, t) => t.includes(e.key), B = (e, t) => {
11
- t && e.sort((n, r) => n.name.localeCompare(r.name));
12
- let s = !1;
13
- for (let n = 0; n < e.length; n++) {
14
- const r = e[n];
15
- r.forcePosition != null && n !== r.forcePosition && (s = !0, e.splice(n, 1), e.splice(r.forcePosition, 0, r));
16
- }
17
- return s ? B(e, !1) : e;
18
- }, M = ({
19
- nodes: e,
20
- expanded: t,
21
- depth: s = 0,
22
- sort: n = !0
23
- }) => {
24
- s === 0 && n && (e = e.sort((l, o) => l.name.localeCompare(o.name)));
25
- const r = [];
26
- return e.forEach((l, o) => {
27
- const a = U(l, t);
28
- r.push({ ...l, depth: s, expanded: a, index: o }), a && l.children != null && (l.children = B(l.children, n), r.push(
29
- ...M({ nodes: l.children, expanded: t, depth: s + 1, sort: n })
30
- ));
31
- }), r;
32
- }, Ee = ({ tree: e, destination: t, keys: s }) => (s = k(s), s.forEach((n) => {
33
- const r = E({ tree: e, key: n });
34
- r != null && (z({ tree: e, keys: n }), F({ tree: e, destination: t, additions: r }));
35
- }), e), z = ({ tree: e, keys: t }) => {
36
- t = k(t);
37
- const s = e.map((n) => n.key);
38
- return t.forEach((n) => {
39
- var l;
40
- const r = s.indexOf(n);
41
- if (r !== -1)
42
- e.splice(r, 1);
43
- else {
44
- const o = A({ tree: e, key: n });
45
- o != null && (o.children = (l = o.children) == null ? void 0 : l.filter((a) => a.key !== n));
46
- }
47
- }), e;
48
- }, F = ({ tree: e, destination: t, additions: s }) => {
49
- s = k(s);
50
- const n = E({ tree: e, key: t });
51
- if (n == null)
52
- throw new Error(`Could not find node with key ${t}`);
53
- n.children == null && (n.children = []);
54
- const r = s.map((l) => l.key);
55
- return n.children = [
56
- ...s,
57
- ...n.children.filter((l) => !r.includes(l.key))
58
- ], e;
59
- }, Ie = ({
60
- tree: e,
61
- key: t,
62
- updater: s,
63
- throwOnMissing: n = !0
64
- }) => {
65
- var o, a;
66
- const r = E({ tree: e, key: t });
67
- if (r == null) {
68
- if (n)
69
- throw new Error(`Could not find node with key ${t}`);
70
- return e;
71
- }
72
- const l = A({ tree: e, key: t });
73
- if (l != null) {
74
- const c = (o = l.children) == null ? void 0 : o.findIndex((m) => m.key === t);
75
- c != null && c !== -1 && ((a = l.children) == null || a.splice(c, 1, s(r)));
76
- } else
77
- e.splice(
78
- e.findIndex((c) => c.key === t),
79
- 1,
80
- s(r)
81
- );
82
- return e;
83
- }, Ne = ({
84
- tree: e,
85
- parent: t,
86
- updater: s,
87
- throwOnMissing: n = !0
88
- }) => {
89
- const r = E({ tree: e, key: t });
90
- if (r == null) {
91
- if (n)
92
- throw new Error(`Could not find node with key ${t}`);
93
- return e;
94
- }
95
- return r.children = s(r.children ?? []), e;
96
- }, E = ({
97
- tree: e,
98
- key: t,
99
- depth: s = 0
100
- }) => {
101
- for (let n = 0; n < e.length; n++) {
102
- const r = e[n];
103
- if (r.key === t) {
104
- const l = r;
105
- return l.depth = s, l.position = n, l;
106
- }
107
- if (r.children != null) {
108
- const l = E({ tree: r.children, key: t, depth: s + 1 });
109
- if (l != null)
110
- return l;
111
- }
112
- }
113
- return null;
114
- }, ve = ({ tree: e, keys: t }) => {
115
- const s = [];
116
- for (const n of t) {
117
- const r = E({ tree: e, key: n });
118
- r != null && s.push(r);
119
- }
120
- return s;
121
- }, A = ({ tree: e, key: t }) => {
122
- for (const s of e)
123
- if (s.children != null) {
124
- if (s.children.some((r) => r.key === t))
125
- return s;
126
- const n = A({ tree: s.children, key: t });
127
- if (n != null)
128
- return n;
129
- }
130
- return null;
131
- }, $ = "tree-item", Te = [["Shift"]], be = (e) => {
132
- const {
133
- onExpand: t,
134
- nodes: s,
135
- initialExpanded: n = [],
136
- sort: r = !0,
137
- selected: l,
138
- onSelectedChange: o
139
- } = e ?? {}, [a, c, m] = ae(n), [i, I] = Z({
140
- initial: [],
141
- value: l,
142
- onChange: o
143
- }), w = ge(() => M({ nodes: s, expanded: a, sort: r }), [s, a, r]), N = ie(w), v = ce({ triggers: Te }), L = b(
144
- (u, { clicked: d }) => {
145
- I(u);
146
- const x = N.current.find((g) => g.key === d);
147
- if ((x == null ? void 0 : x.hasChildren) === !1 || d == null || v.current.held)
148
- return;
149
- const T = m.current, j = T.some((g) => g === d) ? "contract" : "expand";
150
- let p = T;
151
- j === "contract" ? p = T.filter((g) => g !== d) : p = [...T, d], c(p), t == null || t({ current: p, action: j, clicked: d });
152
- },
153
- [t, N, c, I]
154
- ), P = b(
155
- (u) => {
156
- c((d) => D([...d, u])), t == null || t({ current: a, action: "expand", clicked: u });
157
- },
158
- [c]
159
- ), S = b(
160
- (u) => {
161
- c((d) => d.filter((x) => x !== u)), t == null || t({ current: a, action: "contract", clicked: u });
162
- },
163
- [c]
164
- );
165
- return {
166
- onSelect: L,
167
- selected: i,
168
- expanded: a,
169
- contract: S,
170
- expand: P,
171
- nodes: w
172
- };
173
- }, H = me(
174
- ({
175
- entry: e,
176
- selected: t,
177
- onSelect: s,
178
- onDrop: n,
179
- onRename: r,
180
- onSuccessfulDrop: l,
181
- onDoubleClick: o,
182
- loading: a = !1,
183
- useMargin: c = !0,
184
- translate: m
185
- }) => {
186
- const {
187
- key: i,
188
- hasChildren: I = !1,
189
- allowRename: w = !1,
190
- children: N,
191
- icon: v,
192
- name: L,
193
- depth: P,
194
- expanded: S,
195
- href: u,
196
- haulItems: d = []
197
- } = e, { getSelected: x } = ee(), { getSourceData: T } = te(), j = I || N != null && N.length > 0, p = [];
198
- j && p.push(
199
- /* @__PURE__ */ C.jsx(ye, { enabled: S, enabledLoc: "bottom", disabledLoc: "right" })
200
- ), v != null && p.push(v);
201
- const g = [];
202
- a && g.push(/* @__PURE__ */ C.jsx(ne.Loading, { className: h.B("loading-indicator") }));
203
- const [X, O] = pe(!1), { startDrag: G, ...Y } = re({
204
- type: "Tree.Item",
205
- key: i,
206
- canDrop: b(({ items: f, source: R }) => {
207
- const y = f.map((_) => _.key);
208
- return O(!1), R.type === "Tree.Item" && !y.includes(i);
209
- }, []),
210
- onDrop: b((f) => (n == null ? void 0 : n(i, f)) ?? [], [i, n]),
211
- onDragOver: b(() => O(!0), [])
212
- }), q = () => {
213
- const f = x(), R = T().filter(
214
- (y) => f.includes(y.key)
215
- );
216
- if (f.includes(i)) {
217
- const y = R.map(({ key: _, haulItems: Q }) => [{ type: $, key: _ }, ...Q ?? []]).flat();
218
- return G(y, (_) => l == null ? void 0 : l(i, _));
219
- }
220
- G(
221
- [{ type: $, key: i }, ...d],
222
- (y) => l == null ? void 0 : l(i, y)
223
- );
224
- }, V = c ? "marginLeft" : "paddingLeft", W = {
225
- id: i,
226
- variant: "text",
227
- draggable: !0,
228
- className: h(
229
- h.BE("list", "item"),
230
- se,
231
- X && h.M("dragging-over"),
232
- t && le,
233
- h.selected(t),
234
- j && h.M("has-children")
235
- ),
236
- onDragLeave: () => O(!1),
237
- onDragStart: q,
238
- onClick: () => s == null ? void 0 : s(i),
239
- style: {
240
- border: "none",
241
- position: m != null ? "absolute" : "relative",
242
- transform: `translateY(${m}px)`,
243
- [V]: `${P * 1.5 + 1}rem`
244
- },
245
- startIcon: p,
246
- iconSpacing: "small",
247
- noWrap: !0,
248
- endIcon: g,
249
- onDoubleClick: (f) => o == null ? void 0 : o(i, f),
250
- href: u,
251
- ...Y
252
- }, J = u != null ? xe : de;
253
- return /* @__PURE__ */ C.jsx(J, { className: h.BE("list", "item"), ...W, children: /* @__PURE__ */ C.jsx(
254
- oe,
255
- {
256
- id: `text-${i}`,
257
- level: "p",
258
- allowDoubleClick: !1,
259
- value: L,
260
- disabled: !w,
261
- onChange: (f) => r == null ? void 0 : r(i, f)
262
- }
263
- ) });
264
- }
265
- );
266
- H.displayName = "Tree.Item";
267
- const we = he(H), Le = ({
268
- nodes: e,
269
- selected: t = [],
270
- onSelect: s,
271
- onDrop: n,
272
- onRename: r,
273
- onSuccessfulDrop: l,
274
- onDoubleClick: o,
275
- className: a,
276
- children: c = we,
277
- itemHeight: m = 27,
278
- useMargin: i = !1,
279
- virtual: I = !0,
280
- expand: w,
281
- contract: N,
282
- ...v
283
- }) => {
284
- const L = I ? K.Virtual : K;
285
- return /* @__PURE__ */ C.jsx(Ce, { data: e, children: /* @__PURE__ */ C.jsx(ue, { value: t, onChange: s, allowMultiple: !0, replaceOnSingle: !0, children: /* @__PURE__ */ C.jsx(
286
- L,
287
- {
288
- itemHeight: m,
289
- className: h(a, h.B("tree")),
290
- ...v,
291
- children: ({ key: P, ...S }) => c({
292
- ...S,
293
- useMargin: i,
294
- onDrop: n,
295
- onRename: r,
296
- onSuccessfulDrop: l,
297
- onDoubleClick: o
298
- })
299
- }
300
- ) }) });
301
- }, Se = (e, t) => fe(`text-${e}`, t), Me = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
302
- __proto__: null,
303
- DefaultItem: H,
304
- HAUL_TYPE: $,
305
- Tree: Le,
306
- findNode: E,
307
- findNodeParent: A,
308
- findNodes: ve,
309
- flatten: M,
310
- moveNode: Ee,
311
- removeNode: z,
312
- setNode: F,
313
- shouldExpand: U,
314
- sortAndSplice: B,
315
- startRenaming: Se,
316
- updateNode: Ie,
317
- updateNodeChildren: Ne,
318
- use: be
319
- }, Symbol.toStringTag, { value: "Module" }));
320
- export {
321
- Me as e
322
- };
@@ -1 +0,0 @@
1
- "use strict";const e=require("./Toggle-BBGPiXIA.cjs"),o=require("./jsx-runtime-fmb_vB8K.cjs"),c=require("react");require("./aggregator-DueF6Q-Z.cjs");const i=require("./css-DZx3bWkH.cjs"),R=require("./Pack-CBNcamuh.cjs"),S=require("./Keyboard-CJLEUbYu.cjs"),y=t=>{const{listen:r}=e.useContext$1(),[l,n]=c.useState([]);return c.useEffect(()=>r(({next:[s]})=>n(s??[])),[r,n]),o.jsxRuntimeExports.jsx(e.Text,{...t,children:l.join(" ")})},p={Control:()=>o.jsxRuntimeExports.jsx(e.Symbols.Meta,{},"control"),Alt:()=>o.jsxRuntimeExports.jsx(e.Symbols.Alt,{},"alt"),Shift:()=>o.jsxRuntimeExports.jsx(e.pt.Keyboard.Shift,{},"shift"),MouseLeft:"Left Click",MouseRight:"Right Click",MouseMiddle:"Middle Click",Enter:()=>o.jsxRuntimeExports.jsx(e.pt.Keyboard.Return,{},"enter")},x=t=>{const r=p[t];return r!=null?typeof r=="function"?r():r:t},C=t=>t.map(r=>x(r)),m=({className:t,style:r,trigger:l,...n})=>o.jsxRuntimeExports.jsx(R.Space,{className:t,style:r,direction:"x",children:l.map(s=>o.jsxRuntimeExports.jsx(S.Keyboard,{...n,children:x(s)},s))}),E=({onDrag:t,triggers:r=[["MouseLeft"],["MouseRight"]],bound:l,loose:n=!1})=>{const s=c.useRef(null),f=c.useRef(i.q.ZERO),g=c.useCallback(u=>{const d=i.q.construct(u);if(s.current===null)return;const{triggers:a}=s.current;t({box:i.To.construct(f.current,d),cursor:d,triggers:a,stage:"during"})},[t]),M=c.useCallback(u=>{const{stage:d,cursor:a}=u;d==="start"?(t({box:i.To.construct(a),...u}),window.addEventListener("mousemove",g),s.current=u,f.current=a):d==="end"&&s.current!=null&&(t({box:i.To.construct(f.current,a),...u}),window.removeEventListener("mousemove",g),s.current=null,f.current=i.q.ZERO)},[t]);e.use$2({triggers:r,callback:M,region:l,loose:n})},K=Object.freeze(Object.defineProperty({__proto__:null,ALPHANUMERIC_KEYS:e.ALPHANUMERIC_KEYS,ALPHANUMERIC_KEYS_SET:e.ALPHANUMERIC_KEYS_SET,KEYS:e.KEYS,MOUSE_KEYS:e.MOUSE_KEYS,Provider:e.Provider$1,Status:y,Text:m,compareModeConfigs:e.compareModeConfigs,determineMode:e.determineMode,diff:e.diff,eventKey:e.eventKey,filter:e.filter,flattenConfig:e.flattenConfig,keyZ:e.keyZ,keyboardKey:e.keyboardKey,match:e.match,mouseKey:e.mouseKey,mouseKeyZ:e.mouseKeyZ,purge:e.purge,purgeMouse:e.purgeMouse,toSymbols:C,triggerZ:e.triggerZ,use:e.use$2,useContext:e.useContext$1,useDrag:E,useFlattenedMemoConfig:e.useFlattenedMemoConfig,useHeld:e.useHeld,useHeldRef:e.useHeldRef},Symbol.toStringTag,{value:"Module"}));exports.Text=m;exports.external=K;exports.useDrag=E;
@@ -1 +0,0 @@
1
- "use strict";const u=require("./jsx-runtime-fmb_vB8K.cjs"),d=require("./Toggle-BBGPiXIA.cjs"),m=require("react"),b=require("./Pack-CBNcamuh.cjs"),o=require("./css-DZx3bWkH.cjs"),k=require("./aggregator-DueF6Q-Z.cjs"),T=(l="",s=[])=>{var t;if(s.length!==0)return s.find(n=>n.tabKey===l)!=null?l:(t=s[s.length-1])==null?void 0:t.tabKey},N=(l,s,t)=>{if(s=s.trim(),s.length===0)return t;const n=t.find(e=>e.tabKey===l);return n==null||n.name===s?t:t.map(e=>e.tabKey===l?{...e,name:s}:e)},_=({tabs:l,content:s,selected:t,onSelect:n})=>{var a;const[e,r]=k.usePurePassthrough({initial:t??((a=l[0])==null?void 0:a.tabKey)??"",value:t,onChange:n}),c=d.useSyncedRef(t??e),i=m.useCallback(x=>{r(x),c.current==null&&(n==null||n(x))},[e,n]);return{tabs:l,selected:e,content:s,onSelect:i}},v=m.createContext({tabs:[]}),B=()=>m.useContext(v),q=({id:l,content:s,children:t,onSelect:n,selected:e,selectedAltColor:r,closable:c,tabs:i,onClose:a,onDragStart:x,onDragEnd:h,onCreate:C,onRename:E,emptyContent:R,className:S,onDragOver:j,onDrop:g,size:p="medium",direction:P="y",...W})=>u.jsxRuntimeExports.jsx(b.Space,{id:l,empty:!0,className:o.CSS(o.CSS.B("tabs"),S),onDragOver:j,onDrop:g,direction:P,...W,children:u.jsxRuntimeExports.jsxs(v.Provider,{value:{tabs:i,emptyContent:R,selected:e,closable:c,content:t??s,onSelect:n,onClose:a,onDragStart:x,onDragEnd:h,onRename:E,onCreate:C,onDrop:g},children:[u.jsxRuntimeExports.jsx(I,{size:p,direction:o.f.swap(P),altColor:r}),u.jsxRuntimeExports.jsx(y,{})]})}),M=v.Provider,y=()=>{const{tabs:l,selected:s,content:t,emptyContent:n,onSelect:e}=B();let r=null;const c=l.find(i=>i.tabKey===s);return s==null||c==null?n??null:(t!=null?typeof t=="function"?r=t(c):r=t:c.content!=null&&(r=c.content),u.jsxRuntimeExports.jsx("div",{className:o.CSS.B("tabs-content"),onClick:()=>e==null?void 0:e(s),children:r}))},f="tabs-selector",I=({className:l,altColor:s=!1,size:t="medium",direction:n="x",...e})=>{const{tabs:r,selected:c,onSelect:i,onClose:a,closable:x,onDragEnd:h,onDragStart:C,onDrop:E,onRename:R,onCreate:S}=B();return u.jsxRuntimeExports.jsxs(b.Space,{className:o.CSS(o.CSS.B(f),o.CSS.size(t),l),align:"center",justify:"spaceBetween",onDrop:E,empty:!0,direction:n,...e,children:[u.jsxRuntimeExports.jsx(b.Space,{direction:n,className:o.CSS.BE(f,"tabs"),empty:!0,children:r.map(j=>u.jsxRuntimeExports.jsx(w,{selected:c,altColor:s,onSelect:i,onClose:a,onDragStart:C,onDragEnd:h,onRename:R,closable:j.closable??x,size:t,...j},j.tabKey))}),S!=null&&u.jsxRuntimeExports.jsx(b.Space,{className:o.CSS.BE(f,"actions"),children:u.jsxRuntimeExports.jsx(d.Icon,{size:t,sharp:!0,onClick:S,children:u.jsxRuntimeExports.jsx(d.pt.Add,{})})})]})},w=({selected:l,altColor:s=!1,onSelect:t,onClose:n,tabKey:e,name:r,onDragStart:c,onDragEnd:i,onRename:a,closable:x=!0,icon:h,size:C,editable:E=!0})=>{const R=m.useCallback(p=>c==null?void 0:c(p,{tabKey:e,name:r}),[c,e,r]),S=m.useCallback(p=>i==null?void 0:i(p,{tabKey:e,name:r}),[i,e,r]),j=m.useCallback(p=>{p.stopPropagation(),n==null||n(e)},[n,e]),g=m.useCallback(()=>t==null?void 0:t(e),[t,e]);return u.jsxRuntimeExports.jsxs(b.Pack,{size:C,id:e,className:o.CSS(o.CSS.BE(f,"btn"),a==null&&o.CSS.BEM(f,"btn","uneditable"),o.CSS.selected(l===e),o.CSS.altColor(s),x&&n!=null&&o.CSS.BEM(f,"btn","closable")),draggable:!0,direction:"x",justify:"center",align:"center",onClick:g,onDragStart:R,onDragEnd:S,bordered:!1,rounded:!1,children:[u.jsxRuntimeExports.jsx(L,{name:r,tabKey:e,onRename:a,icon:h,editable:E,level:k.ComponentSizeLevels[C]}),x&&n!=null&&u.jsxRuntimeExports.jsx(d.Icon,{onClick:j,children:u.jsxRuntimeExports.jsx(d.pt.Close,{"aria-label":"pluto-tabs__close"})})]})},L=({onRename:l,name:s,tabKey:t,icon:n,editable:e=!0,...r})=>l==null||!e?n!=null?u.jsxRuntimeExports.jsx(d.WithIcon,{startIcon:n,noWrap:!0,...r,children:s}):u.jsxRuntimeExports.jsx(d.Text,{noWrap:!0,...r,children:s}):u.jsxRuntimeExports.jsx(d.Editable,{onChange:c=>l(t,c),value:s,noWrap:!0,...r}),O=Object.freeze(Object.defineProperty({__proto__:null,Content:y,Provider:M,Selector:I,Tabs:q,TabsContext:v,rename:N,resetSelection:T,useStatic:_,useTabsContext:B},Symbol.toStringTag,{value:"Module"}));exports.Tabs=q;exports.external=O;exports.rename=N;exports.resetSelection=T;exports.useStatic=_;
@@ -1,260 +0,0 @@
1
- import { j as a } from "./jsx-runtime-DqxPLdyS.js";
2
- import { o as I, I as _, p as y, W as M, e as S, E as w } from "./Toggle-W4K3cLf7.js";
3
- import { createContext as L, useCallback as v, useContext as O } from "react";
4
- import { S as B, P as R } from "./Pack-mkZBsSIU.js";
5
- import { C as c, d as A } from "./css-TXuXKs3A.js";
6
- import { g as q, C as z } from "./aggregator-BZJAV5yZ.js";
7
- const F = (l = "", s = []) => {
8
- var t;
9
- if (s.length !== 0)
10
- return s.find((n) => n.tabKey === l) != null ? l : (t = s[s.length - 1]) == null ? void 0 : t.tabKey;
11
- }, G = (l, s, t) => {
12
- if (s = s.trim(), s.length === 0)
13
- return t;
14
- const n = t.find((e) => e.tabKey === l);
15
- return n == null || n.name === s ? t : t.map((e) => e.tabKey === l ? { ...e, name: s } : e);
16
- }, H = ({
17
- tabs: l,
18
- content: s,
19
- selected: t,
20
- onSelect: n
21
- }) => {
22
- var i;
23
- const [e, r] = q({
24
- initial: t ?? ((i = l[0]) == null ? void 0 : i.tabKey) ?? "",
25
- value: t,
26
- onChange: n
27
- }), o = I(t ?? e), u = v(
28
- (d) => {
29
- r(d), o.current == null && (n == null || n(d));
30
- },
31
- [e, n]
32
- );
33
- return {
34
- tabs: l,
35
- selected: e,
36
- content: s,
37
- onSelect: u
38
- };
39
- }, P = L({ tabs: [] }), N = () => O(P), J = ({
40
- id: l,
41
- content: s,
42
- children: t,
43
- onSelect: n,
44
- selected: e,
45
- selectedAltColor: r,
46
- closable: o,
47
- tabs: u,
48
- onClose: i,
49
- onDragStart: d,
50
- onDragEnd: j,
51
- onCreate: x,
52
- onRename: C,
53
- emptyContent: b,
54
- className: p,
55
- onDragOver: f,
56
- onDrop: g,
57
- size: m = "medium",
58
- direction: T = "y",
59
- ...k
60
- }) => /* @__PURE__ */ a.jsx(
61
- B,
62
- {
63
- id: l,
64
- empty: !0,
65
- className: c(c.B("tabs"), p),
66
- onDragOver: f,
67
- onDrop: g,
68
- direction: T,
69
- ...k,
70
- children: /* @__PURE__ */ a.jsxs(
71
- P.Provider,
72
- {
73
- value: {
74
- tabs: u,
75
- emptyContent: b,
76
- selected: e,
77
- closable: o,
78
- content: t ?? s,
79
- onSelect: n,
80
- onClose: i,
81
- onDragStart: d,
82
- onDragEnd: j,
83
- onRename: C,
84
- onCreate: x,
85
- onDrop: g
86
- },
87
- children: [
88
- /* @__PURE__ */ a.jsx(
89
- W,
90
- {
91
- size: m,
92
- direction: A.swap(T),
93
- altColor: r
94
- }
95
- ),
96
- /* @__PURE__ */ a.jsx(E, {})
97
- ]
98
- }
99
- )
100
- }
101
- ), Q = P.Provider, E = () => {
102
- const {
103
- tabs: l,
104
- selected: s,
105
- content: t,
106
- emptyContent: n,
107
- onSelect: e
108
- } = N();
109
- let r = null;
110
- const o = l.find((u) => u.tabKey === s);
111
- return s == null || o == null ? n ?? null : (t != null ? typeof t == "function" ? r = t(o) : r = t : o.content != null && (r = o.content), /* @__PURE__ */ a.jsx("div", { className: c.B("tabs-content"), onClick: () => e == null ? void 0 : e(s), children: r }));
112
- }, h = "tabs-selector", W = ({
113
- className: l,
114
- altColor: s = !1,
115
- size: t = "medium",
116
- direction: n = "x",
117
- ...e
118
- }) => {
119
- const {
120
- tabs: r,
121
- selected: o,
122
- onSelect: u,
123
- onClose: i,
124
- closable: d,
125
- onDragEnd: j,
126
- onDragStart: x,
127
- onDrop: C,
128
- onRename: b,
129
- onCreate: p
130
- } = N();
131
- return /* @__PURE__ */ a.jsxs(
132
- B,
133
- {
134
- className: c(c.B(h), c.size(t), l),
135
- align: "center",
136
- justify: "spaceBetween",
137
- onDrop: C,
138
- empty: !0,
139
- direction: n,
140
- ...e,
141
- children: [
142
- /* @__PURE__ */ a.jsx(B, { direction: n, className: c.BE(h, "tabs"), empty: !0, children: r.map((f) => /* @__PURE__ */ a.jsx(
143
- U,
144
- {
145
- selected: o,
146
- altColor: s,
147
- onSelect: u,
148
- onClose: i,
149
- onDragStart: x,
150
- onDragEnd: j,
151
- onRename: b,
152
- closable: f.closable ?? d,
153
- size: t,
154
- ...f
155
- },
156
- f.tabKey
157
- )) }),
158
- p != null && /* @__PURE__ */ a.jsx(B, { className: c.BE(h, "actions"), children: /* @__PURE__ */ a.jsx(_, { size: t, sharp: !0, onClick: p, children: /* @__PURE__ */ a.jsx(y.Add, {}) }) })
159
- ]
160
- }
161
- );
162
- }, U = ({
163
- selected: l,
164
- altColor: s = !1,
165
- onSelect: t,
166
- onClose: n,
167
- tabKey: e,
168
- name: r,
169
- onDragStart: o,
170
- onDragEnd: u,
171
- onRename: i,
172
- closable: d = !0,
173
- icon: j,
174
- size: x,
175
- editable: C = !0
176
- }) => {
177
- const b = v(
178
- (m) => o == null ? void 0 : o(m, { tabKey: e, name: r }),
179
- [o, e, r]
180
- ), p = v(
181
- (m) => u == null ? void 0 : u(m, { tabKey: e, name: r }),
182
- [u, e, r]
183
- ), f = v(
184
- (m) => {
185
- m.stopPropagation(), n == null || n(e);
186
- },
187
- [n, e]
188
- ), g = v(() => t == null ? void 0 : t(e), [t, e]);
189
- return /* @__PURE__ */ a.jsxs(
190
- R,
191
- {
192
- size: x,
193
- id: e,
194
- className: c(
195
- c.BE(h, "btn"),
196
- i == null && c.BEM(h, "btn", "uneditable"),
197
- c.selected(l === e),
198
- c.altColor(s),
199
- // TODO: this line
200
- d && n != null && c.BEM(h, "btn", "closable")
201
- ),
202
- draggable: !0,
203
- direction: "x",
204
- justify: "center",
205
- align: "center",
206
- onClick: g,
207
- onDragStart: b,
208
- onDragEnd: p,
209
- bordered: !1,
210
- rounded: !1,
211
- children: [
212
- /* @__PURE__ */ a.jsx(
213
- V,
214
- {
215
- name: r,
216
- tabKey: e,
217
- onRename: i,
218
- icon: j,
219
- editable: C,
220
- level: z[x]
221
- }
222
- ),
223
- d && n != null && /* @__PURE__ */ a.jsx(_, { onClick: f, children: /* @__PURE__ */ a.jsx(y.Close, { "aria-label": "pluto-tabs__close" }) })
224
- ]
225
- }
226
- );
227
- }, V = ({
228
- onRename: l,
229
- name: s,
230
- tabKey: t,
231
- icon: n,
232
- editable: e = !0,
233
- ...r
234
- }) => l == null || !e ? n != null ? /* @__PURE__ */ a.jsx(M, { startIcon: n, noWrap: !0, ...r, children: s }) : /* @__PURE__ */ a.jsx(S, { noWrap: !0, ...r, children: s }) : /* @__PURE__ */ a.jsx(
235
- w,
236
- {
237
- onChange: (o) => l(t, o),
238
- value: s,
239
- noWrap: !0,
240
- ...r
241
- }
242
- ), ee = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
243
- __proto__: null,
244
- Content: E,
245
- Provider: Q,
246
- Selector: W,
247
- Tabs: J,
248
- TabsContext: P,
249
- rename: G,
250
- resetSelection: F,
251
- useStatic: H,
252
- useTabsContext: N
253
- }, Symbol.toStringTag, { value: "Module" }));
254
- export {
255
- J as T,
256
- G as a,
257
- ee as e,
258
- F as r,
259
- H as u
260
- };
@@ -1 +0,0 @@
1
- "use strict";const d=require("./aggregator-DueF6Q-Z.cjs"),e=require("./Toggle-BBGPiXIA.cjs"),D=require("./Keyboard-CJLEUbYu.cjs"),o=require("./jsx-runtime-fmb_vB8K.cjs"),S=require("react"),T=require("./Pack-CBNcamuh.cjs"),q=require("./Animated-DjcnDVGC.cjs"),E=require("./css-DZx3bWkH.cjs"),v=require("./List-BbB1S5Vo.cjs"),A=[],f=({data:t,emptyContent:n,value:l,onChange:r,allowMultiple:u,allowNone:m,hideColumnHeader:i=!1,children:x,columns:p=A,visible:a,replaceOnSingle:s,omit:j,...y})=>o.jsxRuntimeExports.jsx(v.List,{data:t,emptyContent:n,omit:j,children:o.jsxRuntimeExports.jsx(e.Selector,{value:l,onChange:r,allowMultiple:u,allowNone:m,replaceOnSingle:s,children:o.jsxRuntimeExports.jsxs(e.Dialog,{visible:a,className:E.CSS.B("select"),...y,children:[x,o.jsxRuntimeExports.jsx(e.Hover,{disabled:!a,children:o.jsxRuntimeExports.jsx(e.Column.Header,{hide:i,columns:p,children:o.jsxRuntimeExports.jsx(e.Core.Virtual,{itemHeight:e.Column.itemHeight,children:e.componentRenderProp(e.Column.Item)})})})]})})}),h=({children:t=M,value:n,onChange:l,entryRenderKey:r="key",allowNone:u=!1,allowMultiple:m=!1,data:i,replaceOnSingle:x,...p})=>{const{onSelect:a}=e.useSelect({allowMultiple:m,allowNone:u,replaceOnSingle:x,data:i,value:n,onChange:l});return o.jsxRuntimeExports.jsx(T.Pack,{...p,children:i.map(s=>t({key:s.key,onClick:()=>a(s.key),selected:s.key===n,entry:s,title:s[r]}))})},M=({onClick:t,selected:n,title:l})=>o.jsxRuntimeExports.jsx(e.Button,{onClick:t,variant:n?"filled":"outlined",children:l}),C=({selected:t,renderKey:n,toggle:l,visible:r,children:u,...m})=>o.jsxRuntimeExports.jsx(e.Button,{className:E.CSS.B("select-button"),onClick:l,variant:"outlined",endIcon:o.jsxRuntimeExports.jsx(q.Animated,{enabledLoc:"bottom",disabledLoc:"left",enabled:r}),...m,children:u??(t==null?void 0:t[n])}),k=e.componentRenderProp(C),z=({data:t,value:n,columns:l=[],children:r=k,entryRenderKey:u="key",allowNone:m=!1,onChange:i,disabled:x,hideColumnHeader:p=!0,...a})=>{const{close:s,visible:j,toggle:y}=e.use$1(),[B,b]=S.useState((t==null?void 0:t.find(c=>c.key===n))??null);S.useEffect(()=>{b((t==null?void 0:t.find(c=>c.key===n))??null)},[t,n]);const R=S.useCallback((c,g)=>{if(!(Array.isArray(c)||c===null)){if(s(),c==null)return b(null),i(n);b(g.entries[0]),i(c)}},[i,n,s,b]);return o.jsxRuntimeExports.jsx(f,{close:s,data:t,visible:j,value:n,onChange:R,allowMultiple:!1,allowNone:m,columns:l,hideColumnHeader:p,...a,children:r({selected:B,renderKey:u,toggle:y,visible:j,disabled:x})})},P=[{key:"h2",label:"XL"},{key:"h3",label:"L"},{key:"h4",label:"M"},{key:"p",label:"S"},{key:"small",label:"XS"}],_=({key:t,entry:n,onClick:l,selected:r})=>o.jsxRuntimeExports.jsx(e.Button,{variant:r?"filled":"outlined",onClick:l,children:n.label},t),L=({children:t=_,...n})=>o.jsxRuntimeExports.jsx(h,{...n,data:P,children:t}),H=Object.freeze(Object.defineProperty({__proto__:null,ComponentSizeLevels:d.ComponentSizeLevels,CoreDateTime:e.CoreDateTime,DateTime:e.DateTime,Editable:e.Editable,Keyboard:D.Keyboard,LEVELS:d.LEVELS,LevelComponentSizes:d.LevelComponentSizes,Link:e.Link,MaybeEditable:e.MaybeEditable,SelectLevel:L,Symbols:e.Symbols,Text:e.Text,WithIcon:e.WithIcon,dimensions:d.dimensions,edit:e.edit,evalColor:e.evalColor,formatChildren:e.formatChildren,levelZ:d.levelZ,specZ:d.specZ},Symbol.toStringTag,{value:"Module"}));exports.BaseButton=C;exports.Button=h;exports.Core=f;exports.DropdownButton=z;exports.SelectLevel=L;exports.defaultButton=k;exports.external=H;
@@ -1 +0,0 @@
1
- "use strict";const _=require("./aggregator-DueF6Q-Z.cjs"),E=require("./jsx-runtime-fmb_vB8K.cjs"),d=require("./Toggle-BBGPiXIA.cjs"),p=require("react"),Z=require("./Link-C3NUk5cp.cjs"),D=require("./Animated-DjcnDVGC.cjs"),m=require("./css-DZx3bWkH.cjs");require("./Pack-CBNcamuh.cjs");const ee=require("./List-BbB1S5Vo.cjs"),G=(e,t)=>t.includes(e.key),B=(e,t)=>{t&&e.sort((n,r)=>n.name.localeCompare(r.name));let l=!1;for(let n=0;n<e.length;n++){const r=e[n];r.forcePosition!=null&&n!==r.forcePosition&&(l=!0,e.splice(n,1),e.splice(r.forcePosition,0,r))}return l?B(e,!1):e},M=({nodes:e,expanded:t,depth:l=0,sort:n=!0})=>{l===0&&n&&(e=e.sort((s,i)=>s.name.localeCompare(i.name)));const r=[];return e.forEach((s,i)=>{const o=G(s,t);r.push({...s,depth:l,expanded:o,index:i}),o&&s.children!=null&&(s.children=B(s.children,n),r.push(...M({nodes:s.children,expanded:t,depth:l+1,sort:n})))}),r},te=({tree:e,destination:t,keys:l})=>(l=_.A(l),l.forEach(n=>{const r=b({tree:e,key:n});r!=null&&(U({tree:e,keys:n}),X({tree:e,destination:t,additions:r}))}),e),U=({tree:e,keys:t})=>{t=_.A(t);const l=e.map(n=>n.key);return t.forEach(n=>{var s;const r=l.indexOf(n);if(r!==-1)e.splice(r,1);else{const i=P({tree:e,key:n});i!=null&&(i.children=(s=i.children)==null?void 0:s.filter(o=>o.key!==n))}}),e},X=({tree:e,destination:t,additions:l})=>{l=_.A(l);const n=b({tree:e,key:t});if(n==null)throw new Error(`Could not find node with key ${t}`);n.children==null&&(n.children=[]);const r=l.map(s=>s.key);return n.children=[...l,...n.children.filter(s=>!r.includes(s.key))],e},ne=({tree:e,key:t,updater:l,throwOnMissing:n=!0})=>{var i,o;const r=b({tree:e,key:t});if(r==null){if(n)throw new Error(`Could not find node with key ${t}`);return e}const s=P({tree:e,key:t});if(s!=null){const c=(i=s.children)==null?void 0:i.findIndex(g=>g.key===t);c!=null&&c!==-1&&((o=s.children)==null||o.splice(c,1,l(r)))}else e.splice(e.findIndex(c=>c.key===t),1,l(r));return e},re=({tree:e,parent:t,updater:l,throwOnMissing:n=!0})=>{const r=b({tree:e,key:t});if(r==null){if(n)throw new Error(`Could not find node with key ${t}`);return e}return r.children=l(r.children??[]),e},b=({tree:e,key:t,depth:l=0})=>{for(let n=0;n<e.length;n++){const r=e[n];if(r.key===t){const s=r;return s.depth=l,s.position=n,s}if(r.children!=null){const s=b({tree:r.children,key:t,depth:l+1});if(s!=null)return s}}return null},le=({tree:e,keys:t})=>{const l=[];for(const n of t){const r=b({tree:e,key:n});r!=null&&l.push(r)}return l},P=({tree:e,key:t})=>{for(const l of e)if(l.children!=null){if(l.children.some(r=>r.key===t))return l;const n=P({tree:l.children,key:t});if(n!=null)return n}return null},$="tree-item",se=[["Shift"]],ie=e=>{const{onExpand:t,nodes:l,initialExpanded:n=[],sort:r=!0,selected:s,onSelectedChange:i}=e??{},[o,c,g]=d.useCombinedStateAndRef(n),[a,j]=_.usePassthrough({initial:[],value:s,onChange:i}),T=p.useMemo(()=>M({nodes:l,expanded:o,sort:r}),[l,o,r]),I=d.useSyncedRef(T),R=d.useHeldRef({triggers:se}),v=p.useCallback((f,{clicked:u})=>{j(f);const S=I.current.find(C=>C.key===u);if((S==null?void 0:S.hasChildren)===!1||u==null||R.current.held)return;const N=g.current,w=N.some(C=>C===u)?"contract":"expand";let x=N;w==="contract"?x=N.filter(C=>C!==u):x=[...N,u],c(x),t==null||t({current:x,action:w,clicked:u})},[t,I,c,j]),A=p.useCallback(f=>{c(u=>_.n([...u,f])),t==null||t({current:o,action:"expand",clicked:f})},[c]),k=p.useCallback(f=>{c(u=>u.filter(S=>S!==f)),t==null||t({current:o,action:"contract",clicked:f})},[c]);return{onSelect:v,selected:a,expanded:o,contract:k,expand:A,nodes:T}},H=p.memo(({entry:e,selected:t,onSelect:l,onDrop:n,onRename:r,onSuccessfulDrop:s,onDoubleClick:i,loading:o=!1,useMargin:c=!0,translate:g})=>{const{key:a,hasChildren:j=!1,allowRename:T=!1,children:I,icon:R,name:v,depth:A,expanded:k,href:f,haulItems:u=[]}=e,{getSelected:S}=d.useSelectionUtils(),{getSourceData:N}=d.useDataUtilContext(),w=j||I!=null&&I.length>0,x=[];w&&x.push(E.jsxRuntimeExports.jsx(D.Animated,{enabled:k,enabledLoc:"bottom",disabledLoc:"right"})),R!=null&&x.push(R);const C=[];o&&C.push(E.jsxRuntimeExports.jsx(d.pt.Loading,{className:m.CSS.B("loading-indicator")}));const[Y,q]=p.useState(!1),{startDrag:K,...z}=d.useDragAndDrop({type:"Tree.Item",key:a,canDrop:p.useCallback(({items:h,source:O})=>{const y=h.map(L=>L.key);return q(!1),O.type==="Tree.Item"&&!y.includes(a)},[]),onDrop:p.useCallback(h=>(n==null?void 0:n(a,h))??[],[a,n]),onDragOver:p.useCallback(()=>q(!0),[])}),F=()=>{const h=S(),O=N().filter(y=>h.includes(y.key));if(h.includes(a)){const y=O.map(({key:L,haulItems:Q})=>[{type:$,key:L},...Q??[]]).flat();return K(y,L=>s==null?void 0:s(a,L))}K([{type:$,key:a},...u],y=>s==null?void 0:s(a,y))},V=c?"marginLeft":"paddingLeft",W={id:a,variant:"text",draggable:!0,className:m.CSS(m.CSS.BE("list","item"),d.CONTEXT_TARGET,Y&&m.CSS.M("dragging-over"),t&&d.CONTEXT_SELECTED,m.CSS.selected(t),w&&m.CSS.M("has-children")),onDragLeave:()=>q(!1),onDragStart:F,onClick:()=>l==null?void 0:l(a),style:{border:"none",position:g!=null?"absolute":"relative",transform:`translateY(${g}px)`,[V]:`${A*1.5+1}rem`},startIcon:x,iconSpacing:"small",noWrap:!0,endIcon:C,onDoubleClick:h=>i==null?void 0:i(a,h),href:f,...z},J=f!=null?Z.Link:d.Button;return E.jsxRuntimeExports.jsx(J,{className:m.CSS.BE("list","item"),...W,children:E.jsxRuntimeExports.jsx(d.MaybeEditable,{id:`text-${a}`,level:"p",allowDoubleClick:!1,value:v,disabled:!T,onChange:h=>r==null?void 0:r(a,h)})})});H.displayName="Tree.Item";const oe=d.componentRenderProp(H),ae=({nodes:e,selected:t=[],onSelect:l,onDrop:n,onRename:r,onSuccessfulDrop:s,onDoubleClick:i,className:o,children:c=oe,itemHeight:g=27,useMargin:a=!1,virtual:j=!0,expand:T,contract:I,...R})=>{const v=j?d.Core.Virtual:d.Core;return E.jsxRuntimeExports.jsx(ee.List,{data:e,children:E.jsxRuntimeExports.jsx(d.Selector,{value:t,onChange:l,allowMultiple:!0,replaceOnSingle:!0,children:E.jsxRuntimeExports.jsx(v,{itemHeight:g,className:m.CSS(o,m.CSS.B("tree")),...R,children:({key:A,...k})=>c({...k,useMargin:a,onDrop:n,onRename:r,onSuccessfulDrop:s,onDoubleClick:i})})})})},ce=(e,t)=>d.edit(`text-${e}`,t),de=Object.freeze(Object.defineProperty({__proto__:null,DefaultItem:H,HAUL_TYPE:$,Tree:ae,findNode:b,findNodeParent:P,findNodes:le,flatten:M,moveNode:te,removeNode:U,setNode:X,shouldExpand:G,sortAndSplice:B,startRenaming:ce,updateNode:ne,updateNodeChildren:re,use:ie},Symbol.toStringTag,{value:"Module"}));exports.external=de;