@bemedev/mind-flow 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs.js +1 -1
- package/lib/index.es.js +244 -268
- package/lib/server.cjs.js +153 -189
- package/lib/server.es.js +153 -189
- package/lib/services/main.machine.d.ts +994 -14
- package/lib/services/main.machine.d.ts.map +1 -1
- package/lib/ui/components/EdgeComponent.d.ts.map +1 -1
- package/lib/ui/components/FlowChart.context.d.ts +994 -14
- package/lib/ui/components/FlowChart.context.d.ts.map +1 -1
- package/lib/ui/components/NodeComponent.d.ts.map +1 -1
- package/lib/ui/components/NodesBoard.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/services/main.machine.ts +148 -41
- package/src/ui/components/EdgeComponent.tsx +46 -56
- package/src/ui/components/FlowChart.context.ts +2 -131
- package/src/ui/components/FlowChart.tsx +10 -10
- package/src/ui/components/NodeComponent.tsx +13 -14
- package/src/ui/components/NodesBoard.tsx +32 -49
package/lib/index.es.js
CHANGED
|
@@ -14,7 +14,7 @@ var M = /* @__PURE__ */ "fill-transparent cursor-pointer relative stroke-[rgba(1
|
|
|
14
14
|
}), I = {
|
|
15
15
|
horizontal: 55,
|
|
16
16
|
vertical: 40
|
|
17
|
-
},
|
|
17
|
+
}, ee = [{
|
|
18
18
|
id: "node-0",
|
|
19
19
|
data: {
|
|
20
20
|
content: "Some text",
|
|
@@ -25,7 +25,7 @@ var M = /* @__PURE__ */ "fill-transparent cursor-pointer relative stroke-[rgba(1
|
|
|
25
25
|
x: 350,
|
|
26
26
|
y: 100
|
|
27
27
|
}
|
|
28
|
-
}],
|
|
28
|
+
}], te = (e, t) => {
|
|
29
29
|
let n = h(e(), t);
|
|
30
30
|
return [
|
|
31
31
|
({ children: e }) => n.Provider({
|
|
@@ -35,11 +35,11 @@ var M = /* @__PURE__ */ "fill-transparent cursor-pointer relative stroke-[rgba(1
|
|
|
35
35
|
() => x(n),
|
|
36
36
|
n
|
|
37
37
|
];
|
|
38
|
-
},
|
|
38
|
+
}, ne = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", re = (e = 21) => {
|
|
39
39
|
let t = "", n = crypto.getRandomValues(new Uint8Array(e |= 0));
|
|
40
|
-
for (; e--;) t +=
|
|
40
|
+
for (; e--;) t += ne[n[e] & 63];
|
|
41
41
|
return t;
|
|
42
|
-
},
|
|
42
|
+
}, L = (e, t) => `edge = ${e} => ${t}`, R = (e) => `node-${e}`, ie = (e, t = {
|
|
43
43
|
width: 192,
|
|
44
44
|
height: 50,
|
|
45
45
|
inputOffset: P
|
|
@@ -59,37 +59,37 @@ var M = /* @__PURE__ */ "fill-transparent cursor-pointer relative stroke-[rgba(1
|
|
|
59
59
|
outputOffset: i,
|
|
60
60
|
inputOffset: a
|
|
61
61
|
};
|
|
62
|
-
},
|
|
62
|
+
}, z = E({
|
|
63
63
|
x: "number",
|
|
64
64
|
y: "number"
|
|
65
65
|
});
|
|
66
66
|
E(({ optional: e, use: t }) => ({
|
|
67
|
-
input: e(t(
|
|
68
|
-
output: t(
|
|
67
|
+
input: e(t(z)),
|
|
68
|
+
output: t(z)
|
|
69
69
|
}));
|
|
70
|
-
var
|
|
70
|
+
var B = E({
|
|
71
71
|
from: "string",
|
|
72
72
|
to: "string"
|
|
73
|
-
}),
|
|
74
|
-
position: t(
|
|
73
|
+
}), V = E(({ optional: e, use: t }) => ({
|
|
74
|
+
position: t(z),
|
|
75
75
|
data: {
|
|
76
76
|
label: e("string"),
|
|
77
77
|
content: "string"
|
|
78
78
|
},
|
|
79
79
|
input: "boolean"
|
|
80
|
-
})),
|
|
80
|
+
})), H = B, U = E(({ optional: e, use: t }) => ({
|
|
81
81
|
width: "number",
|
|
82
82
|
height: "number",
|
|
83
|
-
output: t(
|
|
84
|
-
input: e(t(
|
|
85
|
-
inputOffset: e(t(
|
|
86
|
-
outputOffset: e(t(
|
|
87
|
-
})),
|
|
83
|
+
output: t(z),
|
|
84
|
+
input: e(t(z)),
|
|
85
|
+
inputOffset: e(t(z)),
|
|
86
|
+
outputOffset: e(t(z))
|
|
87
|
+
})), W = E({
|
|
88
88
|
x0: "number",
|
|
89
89
|
y0: "number",
|
|
90
90
|
x1: "number",
|
|
91
91
|
y1: "number"
|
|
92
|
-
}),
|
|
92
|
+
}), ae = E(({ intersection: e, use: t }) => e({ from: "string" }, t(W))), G = E(({ optional: e }) => ({
|
|
93
93
|
self: {
|
|
94
94
|
left: "number",
|
|
95
95
|
top: "number",
|
|
@@ -102,7 +102,7 @@ var U = E({
|
|
|
102
102
|
height: "number",
|
|
103
103
|
width: "number"
|
|
104
104
|
})
|
|
105
|
-
})),
|
|
105
|
+
})), oe = S({
|
|
106
106
|
initial: "idle",
|
|
107
107
|
on: { SET_BOARD: { actions: ["setBoard"] } },
|
|
108
108
|
states: {
|
|
@@ -181,10 +181,10 @@ var U = E({
|
|
|
181
181
|
}, {
|
|
182
182
|
eventsMap: E(({ intersection: e, use: t, array: n }) => ({
|
|
183
183
|
CONFIGURE: {
|
|
184
|
-
nodes: n(e(t(
|
|
185
|
-
edges: n(e(t(
|
|
184
|
+
nodes: n(e(t(V), { id: "string" })),
|
|
185
|
+
edges: n(e(t(H), { id: "string" }))
|
|
186
186
|
},
|
|
187
|
-
SET_BOARD: t(
|
|
187
|
+
SET_BOARD: t(G),
|
|
188
188
|
CONFIGURE_EMPTY: "never",
|
|
189
189
|
MOVE: {
|
|
190
190
|
id: "string",
|
|
@@ -202,22 +202,22 @@ var U = E({
|
|
|
202
202
|
DELETE: "string",
|
|
203
203
|
SELECT: "string",
|
|
204
204
|
DESELECT: "never",
|
|
205
|
-
ADD_EDGE: t(
|
|
205
|
+
ADD_EDGE: t(B),
|
|
206
206
|
START_NEW_EDGE: "string",
|
|
207
|
-
MOVE_NEW_EDGE: t(
|
|
207
|
+
MOVE_NEW_EDGE: t(z),
|
|
208
208
|
CLEAR_NEW_EDGE: "never",
|
|
209
209
|
ZOOM: "number",
|
|
210
210
|
TOGGLE_ZOOM: "never",
|
|
211
211
|
ADD_DIMENSION: {
|
|
212
212
|
id: "string",
|
|
213
|
-
dimension: t(
|
|
213
|
+
dimension: t(U)
|
|
214
214
|
}
|
|
215
215
|
})),
|
|
216
216
|
sync: !0,
|
|
217
217
|
pContext: E(({ union: e, optional: t, record: n, use: r, custom: i }) => ({
|
|
218
218
|
generatedId: e("string", "null"),
|
|
219
219
|
previousZoom: t("number"),
|
|
220
|
-
dimensions: n(r(
|
|
220
|
+
dimensions: n(r(U)),
|
|
221
221
|
getBoardPosition: i(),
|
|
222
222
|
clampPosition: i(),
|
|
223
223
|
calculateDimensions: i()
|
|
@@ -225,30 +225,35 @@ var U = E({
|
|
|
225
225
|
context: E(({ optional: e, use: t, array: n, record: r }) => ({
|
|
226
226
|
data: e({
|
|
227
227
|
nodes: n({
|
|
228
|
-
...t(
|
|
228
|
+
...t(V),
|
|
229
229
|
id: "string"
|
|
230
230
|
}),
|
|
231
231
|
edges: n({
|
|
232
|
-
...t(
|
|
232
|
+
...t(H),
|
|
233
233
|
id: "string"
|
|
234
234
|
})
|
|
235
235
|
}),
|
|
236
|
-
board: e(t(
|
|
237
|
-
edgesPositions: r(t(
|
|
238
|
-
newEdge: e(t(
|
|
236
|
+
board: e(t(G)),
|
|
237
|
+
edgesPositions: r(t(W)),
|
|
238
|
+
newEdge: e(t(ae)),
|
|
239
239
|
selected: e("string"),
|
|
240
240
|
updatingUI: e("boolean"),
|
|
241
241
|
zoom: "number",
|
|
242
|
-
bounds: t(
|
|
242
|
+
bounds: t(z)
|
|
243
243
|
}))
|
|
244
244
|
}).provideOptions(({ assign: e, batch: t, erase: n, filter: r, action: i }) => ({ actions: {
|
|
245
245
|
configure: t(e("data", { CONFIGURE: ({ payload: e }) => e }), e("newEdge", () => void 0), e("updatingUI", () => !1), i(({ pContext: e }) => {
|
|
246
246
|
e.generatedId = null;
|
|
247
247
|
}), i({ CONFIGURE: ({ payload: { nodes: e }, pContext: { dimensions: t } }) => {
|
|
248
248
|
e.forEach(({ id: e, position: n }) => {
|
|
249
|
-
t[e] =
|
|
249
|
+
t[e] = ie(n);
|
|
250
250
|
});
|
|
251
251
|
} })),
|
|
252
|
+
setBoard: e("board", { SET_BOARD: ({ payload: e }) => e }),
|
|
253
|
+
generateID: i(({ pContext: e }) => e.generatedId = re()),
|
|
254
|
+
select: e("selected", { SELECT: ({ payload: e }) => e }),
|
|
255
|
+
clearNewEdge: n("newEdge"),
|
|
256
|
+
deselect: n("selected"),
|
|
252
257
|
startNewEdge: e("newEdge", { START_NEW_EDGE: ({ payload: e, pContext: { dimensions: t } }) => {
|
|
253
258
|
let { x: n, y: r } = t[e].output;
|
|
254
259
|
return {
|
|
@@ -259,7 +264,6 @@ var U = E({
|
|
|
259
264
|
y1: r
|
|
260
265
|
};
|
|
261
266
|
} }),
|
|
262
|
-
setBoard: e("board", { SET_BOARD: ({ payload: e }) => e }),
|
|
263
267
|
buildUI: t(e("edgesPositions", {
|
|
264
268
|
MOVE: ({ context: { data: e, edgesPositions: t }, payload: n, pContext: { dimensions: r } }) => {
|
|
265
269
|
let i = e?.edges, a = r[n.id], o = a?.outputOffset ?? F(a?.width), s = a?.inputOffset ?? P, c = {
|
|
@@ -274,20 +278,26 @@ var U = E({
|
|
|
274
278
|
}), t;
|
|
275
279
|
},
|
|
276
280
|
MOVE_IMMEDIATE: ({ context: { data: e, edgesPositions: t }, payload: n, pContext: { dimensions: r } }) => ((e?.edges)?.forEach(({ from: e, to: i, id: a }) => {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
281
|
+
let o = r[n.id], s = t[a];
|
|
282
|
+
if (!(!s || !o)) {
|
|
283
|
+
if (e === n.id) {
|
|
284
|
+
let e = o.outputOffset ?? F(o.width), t = n.x + e.x, r = n.y + e.y;
|
|
285
|
+
s.x0 = t, s.y0 = r, o.output = {
|
|
286
|
+
x: t,
|
|
287
|
+
y: r
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
if (i === n.id) {
|
|
291
|
+
let e = o?.inputOffset ?? P, t = n.x + e.x, r = n.y + e.y;
|
|
292
|
+
s.x1 = t, s.y1 = r, o.input = {
|
|
293
|
+
x: t,
|
|
294
|
+
y: r
|
|
295
|
+
};
|
|
296
|
+
}
|
|
287
297
|
}
|
|
288
298
|
}), t),
|
|
289
299
|
else: ({ context: { data: e, edgesPositions: t }, pContext: { dimensions: n } }) => {
|
|
290
|
-
let r = e?.edges
|
|
300
|
+
let r = T.typed(e?.edges);
|
|
291
301
|
return t = {}, r.forEach(({ from: e, id: r, to: i }) => {
|
|
292
302
|
let a = n[e]?.output, o = n[i]?.input;
|
|
293
303
|
a && o ? t[r] = {
|
|
@@ -302,50 +312,41 @@ var U = E({
|
|
|
302
312
|
addDimension: i({ ADD_DIMENSION: ({ payload: { id: e, dimension: t }, pContext: { dimensions: n } }) => {
|
|
303
313
|
n[e] = t;
|
|
304
314
|
} }),
|
|
305
|
-
generateID: i(({ pContext: e }) => {
|
|
306
|
-
e.generatedId = ee();
|
|
307
|
-
}),
|
|
308
315
|
linkChild: t(e("data.edges", { ADD_CHILD: ({ context: { data: e }, pContext: t, payload: n }) => {
|
|
309
|
-
let r = T.typed(e?.edges), i = n, a = t?.generatedId, o =
|
|
316
|
+
let r = T.typed(e?.edges), i = n, a = t?.generatedId, o = R(a), s = L(i, o);
|
|
310
317
|
return r.push({
|
|
311
318
|
id: s,
|
|
312
319
|
from: i,
|
|
313
320
|
to: o
|
|
314
321
|
}), r;
|
|
315
|
-
} }), e("selected", ({ pContext: { generatedId: e } }) =>
|
|
322
|
+
} }), e("selected", ({ pContext: { generatedId: e } }) => R(e))),
|
|
316
323
|
linkSibling: t(e("data.edges", { ADD_SIBLING: ({ pContext: e, payload: t, context: { data: n } }) => {
|
|
317
324
|
let r = T.typed(n?.edges), i = e?.generatedId, a = r.find(({ to: e }) => e === t)?.from;
|
|
318
325
|
if (!a) return r;
|
|
319
|
-
let o =
|
|
326
|
+
let o = R(i), s = L(a, o);
|
|
320
327
|
return r.push({
|
|
321
328
|
from: a,
|
|
322
329
|
to: o,
|
|
323
330
|
id: s
|
|
324
331
|
}), r;
|
|
325
|
-
} }), e("selected", ({ pContext: { generatedId: e } }) =>
|
|
326
|
-
selectParent: e("selected", ({ pContext: { generatedId: e } }) =>
|
|
327
|
-
moveNode: e("data.nodes", { MOVE: ({ context: { data: e }, payload: t }) => {
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
}
|
|
335
|
-
} : e) ?? [];
|
|
336
|
-
} }),
|
|
337
|
-
select: e("selected", { SELECT: ({ payload: e }) => e }),
|
|
332
|
+
} }), e("selected", ({ pContext: { generatedId: e } }) => R(e))),
|
|
333
|
+
selectParent: e("selected", ({ pContext: { generatedId: e } }) => R(e)),
|
|
334
|
+
moveNode: e("data.nodes", { MOVE: ({ context: { data: e }, payload: { id: t, x: n, y: r } }) => e?.nodes?.map((e) => e.id === t ? {
|
|
335
|
+
...e,
|
|
336
|
+
position: {
|
|
337
|
+
x: n,
|
|
338
|
+
y: r
|
|
339
|
+
}
|
|
340
|
+
} : e) }),
|
|
338
341
|
delete: t(r("data.edges", { DELETE: ({ id: e, from: t, to: n }, r, { payload: i }) => e !== i && t !== i && n !== i }), r("data.nodes", { DELETE: ({ id: e }, t, { payload: n }) => e !== n })),
|
|
339
342
|
addEdge: t(e("data.edges", { ADD_EDGE: ({ context: e, payload: { from: t, to: n } }) => {
|
|
340
|
-
let r = e.data?.edges ?? [], i =
|
|
343
|
+
let r = e.data?.edges ?? [], i = L(t, n);
|
|
341
344
|
return r.some((e) => e.id === i) ? r : [...r, {
|
|
342
345
|
id: i,
|
|
343
346
|
from: t,
|
|
344
347
|
to: n
|
|
345
348
|
}];
|
|
346
349
|
} }), n("newEdge")),
|
|
347
|
-
clearNewEdge: n("newEdge"),
|
|
348
|
-
deselect: n("selected"),
|
|
349
350
|
zoom: e("zoom", { ZOOM: ({ context: { zoom: e }, payload: t, pContext: n }) => {
|
|
350
351
|
let r = e + t, i = Math.min(Math.max(Number(r.toFixed(2)), .2), 3);
|
|
351
352
|
return n.previousZoom = void 0, i;
|
|
@@ -353,9 +354,56 @@ var U = E({
|
|
|
353
354
|
toggleZoom: e("zoom", { TOGGLE_ZOOM: ({ context: { zoom: e }, pContext: t }) => {
|
|
354
355
|
let n = t.previousZoom;
|
|
355
356
|
return n === void 0 ? (t.previousZoom = e, 1) : (t.previousZoom = void 0, n);
|
|
357
|
+
} }),
|
|
358
|
+
placeChild: e("data.nodes", { ADD_CHILD: ({ payload: e, context: { data: t, board: n }, pContext: r }) => {
|
|
359
|
+
if (!n) return t?.nodes;
|
|
360
|
+
let i = t?.nodes;
|
|
361
|
+
if (!e) return i;
|
|
362
|
+
let a = i?.find((t) => t.id === e);
|
|
363
|
+
if (!a) return i;
|
|
364
|
+
let o = r.dimensions[e], s = `node-${r.generatedId}`, c = o?.width ?? 192, l = o?.height ?? 50, u = a.position.x + c + 100, d = a.position.y, f = r.clampPosition(n, u, d, c, l), p = r.calculateDimensions(f, o);
|
|
365
|
+
return i?.push({
|
|
366
|
+
id: s,
|
|
367
|
+
data: { content: "<Nouveau nœud>" },
|
|
368
|
+
input: !0,
|
|
369
|
+
position: f
|
|
370
|
+
}), r.dimensions[s] = p, i;
|
|
371
|
+
} }),
|
|
372
|
+
placeParent: e("data.nodes", { ADD_PARENT: ({ context: { data: e, zoom: t = 1, board: n }, pContext: r }) => {
|
|
373
|
+
if (!n) return e?.nodes;
|
|
374
|
+
let i = e?.nodes, a = `node-${r.generatedId}`, o = n.parent, s = o?.scrollLeft ?? 0, c = o?.scrollTop ?? 0, l = o?.width ?? 0, u = o?.height ?? 0, d = t, f = (s + l / 2) / d, p = (c + u / 2) / d, m = r.clampPosition(n, f, p), h = r.calculateDimensions(m);
|
|
375
|
+
return i?.push({
|
|
376
|
+
id: a,
|
|
377
|
+
data: { content: "<Nouveau nœud>" },
|
|
378
|
+
input: !1,
|
|
379
|
+
position: m
|
|
380
|
+
}), r.dimensions[a] = h, i;
|
|
381
|
+
} }),
|
|
382
|
+
placeSibling: e("data.nodes", { ADD_SIBLING: ({ payload: e, context: { data: t, board: n }, pContext: r }) => {
|
|
383
|
+
if (!n) return t?.nodes;
|
|
384
|
+
let i = t?.edges, a = t?.nodes, o = i?.find((t) => t.to === e)?.from;
|
|
385
|
+
if (!o) return a;
|
|
386
|
+
let s = a?.find((e) => e.id === o);
|
|
387
|
+
if (!s) return a;
|
|
388
|
+
let c = r.dimensions[o], l = `node-${r.generatedId}`, u = c?.width ?? 192, d = c?.height ?? 50, f = s.position.x + u + 100, p = s.position.y + 100, m = r.clampPosition(n, f, p, u, d), h = r.calculateDimensions(m, c);
|
|
389
|
+
return a?.push({
|
|
390
|
+
id: l,
|
|
391
|
+
data: { content: "<Nouveau nœud>" },
|
|
392
|
+
input: !0,
|
|
393
|
+
position: m
|
|
394
|
+
}), r.dimensions[l] = h, a;
|
|
395
|
+
} }),
|
|
396
|
+
moveNewEdge: e("newEdge", { MOVE_NEW_EDGE: ({ context: { newEdge: e, board: t }, payload: n, pContext: r }) => {
|
|
397
|
+
if (!t || !e) return;
|
|
398
|
+
let { x: i, y: a } = r.getBoardPosition(n.x, n.y, t);
|
|
399
|
+
return {
|
|
400
|
+
...e,
|
|
401
|
+
x1: i,
|
|
402
|
+
y1: a
|
|
403
|
+
};
|
|
356
404
|
} })
|
|
357
|
-
} })), [
|
|
358
|
-
let e = C(
|
|
405
|
+
} })), [K, q] = te(() => {
|
|
406
|
+
let e = C(oe, {
|
|
359
407
|
context: {
|
|
360
408
|
zoom: 1,
|
|
361
409
|
edgesPositions: {},
|
|
@@ -367,7 +415,7 @@ var U = E({
|
|
|
367
415
|
pContext: {
|
|
368
416
|
generatedId: null,
|
|
369
417
|
dimensions: {},
|
|
370
|
-
getBoardPosition(t, n, r) {
|
|
418
|
+
getBoardPosition: (t, n, r) => {
|
|
371
419
|
if (!r) return {
|
|
372
420
|
x: t,
|
|
373
421
|
y: n
|
|
@@ -378,7 +426,7 @@ var U = E({
|
|
|
378
426
|
y: (n - r.self.top) / i
|
|
379
427
|
};
|
|
380
428
|
},
|
|
381
|
-
clampPosition(t, n, r, i = 192, a = 50) {
|
|
429
|
+
clampPosition: (t, n, r, i = 192, a = 50) => {
|
|
382
430
|
let o = t?.parent;
|
|
383
431
|
if (!o) return {
|
|
384
432
|
x: n,
|
|
@@ -413,77 +461,29 @@ var U = E({
|
|
|
413
461
|
}
|
|
414
462
|
}
|
|
415
463
|
});
|
|
416
|
-
return e.
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
if (!e) return i;
|
|
421
|
-
let a = i?.find((t) => t.id === e);
|
|
422
|
-
if (!a) return i;
|
|
423
|
-
let o = r.dimensions[e], s = `node-${r.generatedId}`, c = o?.width ?? 192, l = o?.height ?? 50, u = a.position.x + c + 100, d = a.position.y, f = r.clampPosition(n, u, d, c, l), p = r.calculateDimensions(f, o);
|
|
424
|
-
return i?.push({
|
|
425
|
-
id: s,
|
|
426
|
-
data: { content: "<Nouveau nœud>" },
|
|
427
|
-
input: !0,
|
|
428
|
-
position: f
|
|
429
|
-
}), r.dimensions[s] = p, i;
|
|
430
|
-
} }),
|
|
431
|
-
placeParent: e("data.nodes", { ADD_PARENT: ({ context: { data: e, zoom: t = 1, board: n }, pContext: r }) => {
|
|
432
|
-
if (!n) return e?.nodes;
|
|
433
|
-
let i = e?.nodes, a = `node-${r.generatedId}`, o = n.parent, s = o?.scrollLeft ?? 0, c = o?.scrollTop ?? 0, l = o?.width ?? 0, u = o?.height ?? 0, d = t, f = (s + l / 2) / d, p = (c + u / 2) / d, m = r.clampPosition(n, f, p), h = r.calculateDimensions(m);
|
|
434
|
-
return i?.push({
|
|
435
|
-
id: a,
|
|
436
|
-
data: { content: "<Nouveau nœud>" },
|
|
437
|
-
input: !1,
|
|
438
|
-
position: m
|
|
439
|
-
}), r.dimensions[a] = h, i;
|
|
440
|
-
} }),
|
|
441
|
-
placeSibling: e("data.nodes", { ADD_SIBLING: ({ payload: e, context: { data: t, board: n }, pContext: r }) => {
|
|
442
|
-
if (!n) return t?.nodes;
|
|
443
|
-
let i = t?.edges, a = t?.nodes, o = i?.find((t) => t.to === e)?.from;
|
|
444
|
-
if (!o) return a;
|
|
445
|
-
let s = a?.find((e) => e.id === o);
|
|
446
|
-
if (!s) return a;
|
|
447
|
-
let c = r.dimensions[o], l = `node-${r.generatedId}`, u = c?.width ?? 192, d = c?.height ?? 50, f = s.position.x + u + 100, p = s.position.y + 100, m = r.clampPosition(n, f, p, u, d), h = r.calculateDimensions(m, c);
|
|
448
|
-
return a?.push({
|
|
449
|
-
id: l,
|
|
450
|
-
data: { content: "<Nouveau nœud>" },
|
|
451
|
-
input: !0,
|
|
452
|
-
position: m
|
|
453
|
-
}), r.dimensions[l] = h, a;
|
|
454
|
-
} }),
|
|
455
|
-
moveNewEdge: e("newEdge", { MOVE_NEW_EDGE: ({ context: { newEdge: e, board: t }, payload: n, pContext: r }) => {
|
|
456
|
-
if (!t || !e) return;
|
|
457
|
-
let { x: i, y: a } = r.getBoardPosition(n.x, n.y, t);
|
|
458
|
-
return {
|
|
459
|
-
...e,
|
|
460
|
-
x1: i,
|
|
461
|
-
y1: a
|
|
462
|
-
};
|
|
463
|
-
} })
|
|
464
|
-
} })), e.start(), e;
|
|
465
|
-
}, { name: "FlowContext" }), X = Object.prototype.hasOwnProperty;
|
|
466
|
-
function Z(e, t, n) {
|
|
467
|
-
for (n of e.keys()) if (Q(n, t)) return n;
|
|
464
|
+
return e.start(), e;
|
|
465
|
+
}, { name: "FlowContext" }), J = Object.prototype.hasOwnProperty;
|
|
466
|
+
function Y(e, t, n) {
|
|
467
|
+
for (n of e.keys()) if (X(n, t)) return n;
|
|
468
468
|
}
|
|
469
|
-
function
|
|
469
|
+
function X(e, t) {
|
|
470
470
|
var n, r, i;
|
|
471
471
|
if (e === t) return !0;
|
|
472
472
|
if (e && t && (n = e.constructor) === t.constructor) {
|
|
473
473
|
if (n === Date) return e.getTime() === t.getTime();
|
|
474
474
|
if (n === RegExp) return e.toString() === t.toString();
|
|
475
475
|
if (n === Array) {
|
|
476
|
-
if ((r = e.length) === t.length) for (; r-- &&
|
|
476
|
+
if ((r = e.length) === t.length) for (; r-- && X(e[r], t[r]););
|
|
477
477
|
return r === -1;
|
|
478
478
|
}
|
|
479
479
|
if (n === Set) {
|
|
480
480
|
if (e.size !== t.size) return !1;
|
|
481
|
-
for (r of e) if (i = r, i && typeof i == "object" && (i =
|
|
481
|
+
for (r of e) if (i = r, i && typeof i == "object" && (i = Y(t, i), !i) || !t.has(i)) return !1;
|
|
482
482
|
return !0;
|
|
483
483
|
}
|
|
484
484
|
if (n === Map) {
|
|
485
485
|
if (e.size !== t.size) return !1;
|
|
486
|
-
for (r of e) if (i = r[0], i && typeof i == "object" && (i =
|
|
486
|
+
for (r of e) if (i = r[0], i && typeof i == "object" && (i = Y(t, i), !i) || !X(r[1], t.get(i))) return !1;
|
|
487
487
|
return !0;
|
|
488
488
|
}
|
|
489
489
|
if (n === ArrayBuffer) e = new Uint8Array(e), t = new Uint8Array(t);
|
|
@@ -496,7 +496,7 @@ function Q(e, t) {
|
|
|
496
496
|
return r === -1;
|
|
497
497
|
}
|
|
498
498
|
if (!n || typeof e == "object") {
|
|
499
|
-
for (n in r = 0, e) if (
|
|
499
|
+
for (n in r = 0, e) if (J.call(e, n) && ++r && !J.call(t, n) || !(n in t) || !X(e[n], t[n])) return !1;
|
|
500
500
|
return Object.keys(t).length === r;
|
|
501
501
|
}
|
|
502
502
|
}
|
|
@@ -504,8 +504,8 @@ function Q(e, t) {
|
|
|
504
504
|
}
|
|
505
505
|
//#endregion
|
|
506
506
|
//#region src/ui/components/Bounds.tsx
|
|
507
|
-
var
|
|
508
|
-
let e =
|
|
507
|
+
var se = () => {
|
|
508
|
+
let e = q(), t = f(e, { selector: ({ context: e }) => e.zoom }), n = f(e, { selector: ({ context: e }) => e.board }), [r, { addTransformer: i, removeTransformer: a, onDragStart: o, onDragEnd: s }] = j(), c = {
|
|
509
509
|
id: "clamp-to-container",
|
|
510
510
|
order: 100,
|
|
511
511
|
callback: (e) => {
|
|
@@ -525,84 +525,65 @@ var ae = () => {
|
|
|
525
525
|
}), s(({ draggable: e }) => {
|
|
526
526
|
a("draggables", e.id, c.id);
|
|
527
527
|
}), null;
|
|
528
|
-
},
|
|
529
|
-
let a =
|
|
530
|
-
selector: ({ context: e }) =>
|
|
531
|
-
|
|
532
|
-
let t = e.newEdge;
|
|
533
|
-
return t ? {
|
|
534
|
-
x0: t.x0,
|
|
535
|
-
y0: t.y0,
|
|
536
|
-
x1: t.x1,
|
|
537
|
-
y1: t.y1
|
|
538
|
-
} : void 0;
|
|
539
|
-
}
|
|
540
|
-
return e.edgesPositions[n.id];
|
|
541
|
-
},
|
|
542
|
-
equals: Q
|
|
528
|
+
}, ce = /*#__PURE__*/ u("<svg><path class=\"relative cursor-pointer fill-transparent\"></svg>", !1, !0, !1), le = /*#__PURE__*/ u("<svg><g cursor=pointer style=pointer-events:all;z-index:30><circle cx=0 cy=0 r=12 fill=\"rgba(168, 168, 168, 1)\"></circle><svg fill=currentColor stroke-width=0 xmlns=http://www.w3.org/2000/svg class=\"h-25 w-25 bg-white fill-white\"width=20 height=20 viewBox=\"0 0 20 20\"color=white x=-10 y=-10><path d=\"M10.185,1.417c-4.741,0-8.583,3.842-8.583,8.583c0,4.74,3.842,8.582,8.583,8.582S18.768,14.74,18.768,10C18.768,5.259,14.926,1.417,10.185,1.417 M10.185,17.68c-4.235,0-7.679-3.445-7.679-7.68c0-4.235,3.444-7.679,7.679-7.679S17.864,5.765,17.864,10C17.864,14.234,14.42,17.68,10.185,17.68 M10.824,10l2.842-2.844c0.178-0.176,0.178-0.46,0-0.637c-0.177-0.178-0.461-0.178-0.637,0l-2.844,2.841L7.341,6.52c-0.176-0.178-0.46-0.178-0.637,0c-0.178,0.176-0.178,0.461,0,0.637L9.546,10l-2.841,2.844c-0.178,0.176-0.178,0.461,0,0.637c0.178,0.178,0.459,0.178,0.637,0l2.844-2.841l2.844,2.841c0.178,0.178,0.459,0.178,0.637,0c0.178-0.176,0.178-0.461,0-0.637L10.824,10z\"></svg>", !1, !0, !1), Z = (e) => e * 100 / 200, ue = ({ x0: e, y0: t, x1: n, y1: r }) => `M ${e} ${t} C ${e + Z(Math.abs(n - e))} ${t}, ${n - Z(Math.abs(n - e))} ${r}, ${n} ${r}`, Q = (n) => {
|
|
529
|
+
let a = q(), o = f(a, {
|
|
530
|
+
selector: ({ context: { newEdge: e, edgesPositions: t } }) => n.isNew ? e : t[n.id],
|
|
531
|
+
equals: X
|
|
543
532
|
}), u = f(a, { selector: (e) => e.context.selected === n.id }), d = () => {
|
|
544
533
|
let e = o();
|
|
545
|
-
return
|
|
534
|
+
return {
|
|
546
535
|
x: e.x0 + (e.x1 - e.x0) / 2,
|
|
547
536
|
y: e.y0 + (e.y1 - e.y0) / 2
|
|
548
|
-
} : {
|
|
549
|
-
x: 0,
|
|
550
|
-
y: 0
|
|
551
537
|
};
|
|
552
538
|
};
|
|
553
|
-
return
|
|
539
|
+
return [(() => {
|
|
540
|
+
var t = i(ce);
|
|
541
|
+
return t.$$mousedown = (e) => (e.stopPropagation(), a.send({
|
|
542
|
+
type: "SELECT",
|
|
543
|
+
payload: n.id
|
|
544
|
+
})), r((r) => {
|
|
545
|
+
var i = {
|
|
546
|
+
"stroke-[rgba(168,168,168,0.4)] stroke-3 z-200": !!n.isNew,
|
|
547
|
+
"stroke-[rgba(168,168,168,1)] stroke-4 z-100": u() && !n.isNew,
|
|
548
|
+
"stroke-[rgba(168,168,168,0.8)] stroke-3": !u() && !n.isNew
|
|
549
|
+
}, a = n.isNew ? "none" : "all", s = ue(o());
|
|
550
|
+
return r.e = e(t, i, r.e), a !== r.t && l(t, "pointer-events", r.t = a), s !== r.a && c(t, "d", r.a = s), r;
|
|
551
|
+
}, {
|
|
552
|
+
e: void 0,
|
|
553
|
+
t: void 0,
|
|
554
|
+
a: void 0
|
|
555
|
+
}), s(), t;
|
|
556
|
+
})(), t(m, {
|
|
554
557
|
get when() {
|
|
555
|
-
return
|
|
558
|
+
return u();
|
|
556
559
|
},
|
|
557
|
-
children
|
|
558
|
-
var
|
|
559
|
-
return
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
}, a = n.isNew ? "none" : "all", s = ce(o());
|
|
568
|
-
return r.e = e(t, i, r.e), a !== r.t && l(t, "pointer-events", r.t = a), s !== r.a && c(t, "d", r.a = s), r;
|
|
569
|
-
}, {
|
|
570
|
-
e: void 0,
|
|
571
|
-
t: void 0,
|
|
572
|
-
a: void 0
|
|
573
|
-
}), s(), t;
|
|
574
|
-
})(), t(m, {
|
|
575
|
-
get when() {
|
|
576
|
-
return u();
|
|
577
|
-
},
|
|
578
|
-
get children() {
|
|
579
|
-
var e = i(se);
|
|
580
|
-
return e.$$mousedown = (e) => {
|
|
581
|
-
e.stopPropagation(), a.send({
|
|
582
|
-
type: "DELETE",
|
|
583
|
-
payload: n.id
|
|
584
|
-
});
|
|
585
|
-
}, r(() => c(e, "transform", `translate(${d().x}, ${d().y})`)), s(), e;
|
|
586
|
-
}
|
|
587
|
-
})]
|
|
588
|
-
});
|
|
560
|
+
get children() {
|
|
561
|
+
var e = i(le);
|
|
562
|
+
return e.$$mousedown = (e) => {
|
|
563
|
+
e.stopPropagation(), a.send({
|
|
564
|
+
type: "DELETE",
|
|
565
|
+
payload: n.id
|
|
566
|
+
});
|
|
567
|
+
}, r(() => c(e, "transform", `translate(${d().x}, ${d().y})`)), s(), e;
|
|
568
|
+
}
|
|
569
|
+
})];
|
|
589
570
|
};
|
|
590
571
|
n(["mousedown"]);
|
|
591
572
|
//#endregion
|
|
592
573
|
//#region src/ui/components/EdgesBoard.tsx
|
|
593
|
-
var
|
|
594
|
-
let e =
|
|
574
|
+
var de = /*#__PURE__*/ u("<svg class=\"pointer-events-none h-full w-full overflow-visible\"><!$><!/><!$><!/>"), fe = () => {
|
|
575
|
+
let e = q(), n = f(e, { selector: (e) => !!e.context.newEdge }), r = f(e, {
|
|
595
576
|
selector: ({ context: e }) => Object.keys(e.edgesPositions),
|
|
596
577
|
equals: (e, t) => e.length === t.length
|
|
597
578
|
});
|
|
598
579
|
return (() => {
|
|
599
|
-
var e = i(
|
|
580
|
+
var e = i(de), s = e.firstChild, [c, l] = a(s.nextSibling), u = c.nextSibling, [d, f] = a(u.nextSibling);
|
|
600
581
|
return o(e, t(m, {
|
|
601
582
|
get when() {
|
|
602
583
|
return n();
|
|
603
584
|
},
|
|
604
585
|
get children() {
|
|
605
|
-
return t(
|
|
586
|
+
return t(Q, {
|
|
606
587
|
id: "__#new-edge#__TEMP",
|
|
607
588
|
isNew: !0
|
|
608
589
|
});
|
|
@@ -611,14 +592,14 @@ var ue = /*#__PURE__*/ u("<svg class=\"pointer-events-none h-full w-full overflo
|
|
|
611
592
|
get each() {
|
|
612
593
|
return r();
|
|
613
594
|
},
|
|
614
|
-
children: (e) => t(
|
|
595
|
+
children: (e) => t(Q, { id: e })
|
|
615
596
|
}), d, f), e;
|
|
616
597
|
})();
|
|
617
|
-
},
|
|
618
|
-
let u =
|
|
598
|
+
}, pe = /*#__PURE__*/ u("<svg class=\"cursor-pointer overflow-visible rounded-full bg-green-500 p-0.5 text-center font-bold hover:bg-green-600\"viewBox=\"0 0 1024 1024\"preserveAspectRatio=xMaxYMax xmlns=http://www.w3.org/2000/svg fill=white style=pointer-events:all;fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2><g id=background><path d=\"M467.40667,277.66696c-0.05948,-14.53055 5.75527,-22.95613 -8.62044,-20.90487c-112.55699,16.0607 -222.1609,112.14558 -245.06161,239.85765c-46.52056,259.43466 231.33083,443.06705 449.51209,316.97506c117.31668,-67.80002 160.95215,-190.43324 151.34416,-288.29849c-5.92276,-60.32819 -27.80273,-107.95668 -53.44246,-144.25469l59.39269,-42.05363c111.72214,156.309 73.11535,351.55635 -25.06953,459.45565c-184.18877,202.4124 -470.46624,145.52064 -592.95027,-32.92123c-156.18269,-227.53604 -27.15324,-543.64371 261.18883,-582.44416c5.0579,-0.68061 3.56556,-7.04079 3.56442,-8.58985c-0.05594,-76.3354 -0.11021,-76.7687 1.10909,-77.24589c2.06886,-0.80969 151.41433,118.4561 151.92482,118.95524c4.65592,4.55233 -0.99548,7.829 -29.07828,30.50907c-120.49369,97.31245 -120.4977,98.55675 -123.0691,97.87586c-0.43639,-0.11555 -0.80698,-0.31322 -0.74442,-66.91571Z\"></path><path d=\"M316.61562,611.03414c0.11517,-90.16257 -0.25516,-99.92912 0.64739,-101.78856c1.56486,-3.22393 131.99102,0.91032 134.6959,-1.89763c2.21336,-2.2977 -0.59362,-129.97807 1.1376,-132.37034c0.7253,-1.00225 11.10552,-0.99175 12.07474,-0.99077c104.50336,0.10564 104.90098,-0.37811 105.967,0.85765c1.56461,1.81373 0.25596,114.18436 0.67852,129.81412c0.1322,4.88975 3.22386,3.28152 99.72028,3.4563c33.0841,0.05992 36.14259,-1.40368 36.21852,4.50462c0.11713,9.11348 1.41954,110.45369 -0.40274,113.92715c-1.81106,3.45208 -130.39967,-0.42618 -134.48289,1.62075c-2.29035,1.14816 -0.36989,101.12392 -1.11542,130.51904c-0.09548,3.76459 -2.13506,3.20617 -47.84854,3.17365c-69.30253,-0.0493 -69.31099,-0.25627 -69.65762,-0.42191c-3.77927,-1.80595 0.16287,-129.33555 -2.24266,-132.58994c-1.79931,-2.43424 -124.06108,-0.29118 -132.80252,-0.97392c-3.81102,-0.29766 -2.58229,-14.8847 -2.58758,-16.8402Z\">"), me = /*#__PURE__*/ u("<div id=inputs class=\"pointer-events-none absolute top-0 z-10 flex cursor-default flex-col\"><div class=\"cursor-default rounded-full bg-[#e38b29] shadow-md\"style=pointer-events:all>"), he = /*#__PURE__*/ u("<div class=min-w-48><div><svg class=\"cursor-pointer rounded-full fill-[#a11111] opacity-100 transition-all duration-200 ease-in-out\"fill=currentColor stroke-width=2 viewBox=\"4 4 16 16\"style=overflow:visible;pointer-events:all><path d=\"M12 4c-4.419 0-8 3.582-8 8s3.581 8 8 8 8-3.582 8-8-3.581-8-8-8zm3.707 10.293a.999.999 0 11-1.414 1.414L12 13.414l-2.293 2.293a.997.997 0 01-1.414 0 .999.999 0 010-1.414L10.586 12 8.293 9.707a.999.999 0 111.414-1.414L12 10.586l2.293-2.293a.999.999 0 111.414 1.414L13.414 12l2.293 2.293z\"></path></svg><!$><!/><svg class=\"flex cursor-pointer items-center justify-center rounded-lg bg-blue-500 p-0.5 text-center font-bold text-white hover:bg-blue-600\"viewBox=\"0 0 24 24\"stroke=currentColor stroke-width=2 style=pointer-events:all><path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\"></path></svg></div><!$><!/><!$><!/><!$><!/><div id=outputs class=\"pointer-events-none absolute top-0 z-10 flex flex-col\"><div class=\"cursor-crosshair rounded-full bg-[#e38b29] shadow-md\"style=pointer-events:all>"), ge = /*#__PURE__*/ u("<span class=\"min-w-max border-b border-[#f0f0f0] p-3 whitespace-nowrap text-red-600 select-none\">"), $ = /*#__PURE__*/ u("<div class=\"p-3 select-none\">"), _e = (n) => {
|
|
599
|
+
let u = q(), p = f(u, { selector: (e) => e.context.newEdge }), h = A(n.id), g = f(u, {
|
|
619
600
|
selector: ({ context: e }) => {
|
|
620
601
|
let t = w.typed(e.data?.nodes).find((e) => e.id === n.id);
|
|
621
|
-
|
|
602
|
+
return {
|
|
622
603
|
x: t.position.x,
|
|
623
604
|
y: t.position.y,
|
|
624
605
|
label: t.data.label,
|
|
@@ -626,29 +607,29 @@ var ue = /*#__PURE__*/ u("<svg class=\"pointer-events-none h-full w-full overflo
|
|
|
626
607
|
input: t.input
|
|
627
608
|
};
|
|
628
609
|
},
|
|
629
|
-
equals:
|
|
630
|
-
}),
|
|
610
|
+
equals: X
|
|
611
|
+
}), _ = f(u, { selector: ({ context: e }) => e.selected === n.id }), v = f(u, { selector: ({ context: { data: e } }) => {
|
|
631
612
|
let t = e?.edges;
|
|
632
613
|
return t ? t.some(({ to: e }) => e === n.id) : !1;
|
|
633
|
-
} })
|
|
614
|
+
} });
|
|
634
615
|
return (() => {
|
|
635
|
-
var f = i(
|
|
616
|
+
var f = i(he), y = f.firstChild, b = y.firstChild, x = b.nextSibling, [S, C] = a(x.nextSibling), w = S.nextSibling, T = y.nextSibling, [E, D] = a(T.nextSibling), O = E.nextSibling, [k, A] = a(O.nextSibling), j = k.nextSibling, [M, N] = a(j.nextSibling), P = M.nextSibling, F = P.firstChild;
|
|
636
617
|
return f.$$mousedown = (e) => {
|
|
637
618
|
e.stopPropagation(), u.send({
|
|
638
619
|
type: "SELECT",
|
|
639
620
|
payload: n.id
|
|
640
621
|
});
|
|
641
|
-
}, d(
|
|
622
|
+
}, d(h, f, () => ({ skipTransform: !0 })), b.$$click = (e) => {
|
|
642
623
|
e.stopPropagation(), u.send({
|
|
643
624
|
type: "DELETE",
|
|
644
625
|
payload: n.id
|
|
645
626
|
});
|
|
646
627
|
}, l(b, "width", "24px"), l(b, "height", "24px"), o(y, t(m, {
|
|
647
628
|
get when() {
|
|
648
|
-
return
|
|
629
|
+
return v();
|
|
649
630
|
},
|
|
650
631
|
get children() {
|
|
651
|
-
var e = i(
|
|
632
|
+
var e = i(pe);
|
|
652
633
|
return e.$$click = () => u.send({
|
|
653
634
|
type: "ADD_SIBLING",
|
|
654
635
|
payload: n.id
|
|
@@ -659,31 +640,31 @@ var ue = /*#__PURE__*/ u("<svg class=\"pointer-events-none h-full w-full overflo
|
|
|
659
640
|
payload: n.id
|
|
660
641
|
}), l(w, "width", "24px"), l(w, "height", "24px"), o(f, t(m, {
|
|
661
642
|
get when() {
|
|
662
|
-
return
|
|
643
|
+
return g().label;
|
|
663
644
|
},
|
|
664
645
|
keyed: !0,
|
|
665
646
|
children: (e) => (() => {
|
|
666
|
-
var t = i(
|
|
647
|
+
var t = i(ge);
|
|
667
648
|
return o(t, e), t;
|
|
668
649
|
})()
|
|
669
650
|
}), E, D), o(f, t(m, {
|
|
670
651
|
get when() {
|
|
671
|
-
return
|
|
652
|
+
return g().content;
|
|
672
653
|
},
|
|
673
654
|
keyed: !0,
|
|
674
655
|
children: (e) => (() => {
|
|
675
|
-
var t = i(
|
|
656
|
+
var t = i($);
|
|
676
657
|
return o(t, e), t;
|
|
677
658
|
})()
|
|
678
659
|
}), k, A), o(f, t(m, {
|
|
679
660
|
get when() {
|
|
680
|
-
return
|
|
661
|
+
return g().input || v();
|
|
681
662
|
},
|
|
682
663
|
get children() {
|
|
683
|
-
var e = i(
|
|
664
|
+
var e = i(me), t = e.firstChild;
|
|
684
665
|
return l(e, "left", "-18px"), t.$$mouseup = (e) => {
|
|
685
666
|
e.stopPropagation();
|
|
686
|
-
let t =
|
|
667
|
+
let t = p()?.from;
|
|
687
668
|
t ? u.send({
|
|
688
669
|
type: "ADD_EDGE",
|
|
689
670
|
payload: {
|
|
@@ -703,12 +684,12 @@ var ue = /*#__PURE__*/ u("<svg class=\"pointer-events-none h-full w-full overflo
|
|
|
703
684
|
}, l(F, "width", "12px"), l(F, "height", "12px"), l(F, "margin-top", "12px"), r((t) => {
|
|
704
685
|
var r = {
|
|
705
686
|
"flex flex-col absolute cursor-grab bg-white rounded-md shadow-md select-none transition-[border,box-shadow] duration-200 ease-in-out hover:shadow-lg draggable": !0,
|
|
706
|
-
"border border-[#e38c29] z-[100]":
|
|
707
|
-
"border border-[#e6d4be] z-[1]": !
|
|
708
|
-
}, i = `${
|
|
687
|
+
"border border-[#e38c29] z-[100]": _(),
|
|
688
|
+
"border border-[#e6d4be] z-[1]": !_()
|
|
689
|
+
}, i = `${g().y}px`, a = `${g().x}px`, o = n.id, s = {
|
|
709
690
|
"pointer-events-none absolute flex items-center justify-end -top-7.5 right-0 transition-all duration-200 ease-in-out space-x-2": !0,
|
|
710
|
-
"w-full opacity-100":
|
|
711
|
-
"w-0 -right-3 opacity-0 overflow-hidden": !
|
|
691
|
+
"w-full opacity-100": _(),
|
|
692
|
+
"w-0 -right-3 opacity-0 overflow-hidden": !_()
|
|
712
693
|
};
|
|
713
694
|
return t.e = e(f, r, t.e), i !== t.t && l(f, "top", t.t = i), a !== t.a && l(f, "left", t.a = a), o !== t.o && c(f, "id", t.o = o), t.i = e(y, s, t.i), t;
|
|
714
695
|
}, {
|
|
@@ -731,13 +712,13 @@ var ve = /*#__PURE__*/ u("<div class=\"relative h-full w-full overflow-auto roun
|
|
|
731
712
|
let e, [n, c] = _(!1), [u, h] = _({
|
|
732
713
|
x: 0,
|
|
733
714
|
y: 0
|
|
734
|
-
}), [y, x] = _(
|
|
715
|
+
}), [y, x] = _(), S = 0, C = 0, T = q(), E = f(T, {
|
|
735
716
|
selector: (e) => e.context.newEdge,
|
|
736
|
-
equals:
|
|
737
|
-
}),
|
|
738
|
-
let e =
|
|
717
|
+
equals: X
|
|
718
|
+
}), A = f(T, { selector: (e) => e.context.zoom ?? 1 }), j = () => {
|
|
719
|
+
let e = y();
|
|
739
720
|
if (!e) return;
|
|
740
|
-
let t = e.getBoundingClientRect(), n = () =>
|
|
721
|
+
let t = e.getBoundingClientRect(), n = () => y()?.parentElement, r = {
|
|
741
722
|
self: {
|
|
742
723
|
left: t.left,
|
|
743
724
|
top: t.top,
|
|
@@ -751,54 +732,51 @@ var ve = /*#__PURE__*/ u("<div class=\"relative h-full w-full overflow-auto roun
|
|
|
751
732
|
width: n().clientWidth
|
|
752
733
|
} : void 0
|
|
753
734
|
};
|
|
754
|
-
|
|
735
|
+
T.send({
|
|
755
736
|
type: "SET_BOARD",
|
|
756
737
|
payload: r
|
|
757
738
|
});
|
|
758
|
-
},
|
|
739
|
+
}, M = () => {
|
|
759
740
|
let t = e.scrollWidth - e.clientWidth, n = e.scrollHeight - e.clientHeight;
|
|
760
|
-
|
|
741
|
+
S = t > 0 ? e.scrollLeft / t : 0, C = n > 0 ? e.scrollTop / n : 0, j();
|
|
761
742
|
};
|
|
762
|
-
g(v(
|
|
743
|
+
g(v(A, () => {
|
|
763
744
|
let t = e.scrollWidth - e.clientWidth, n = e.scrollHeight - e.clientHeight;
|
|
764
|
-
t > 0 && (e.scrollLeft =
|
|
765
|
-
}, { defer: !0 })), b(
|
|
766
|
-
let
|
|
745
|
+
t > 0 && (e.scrollLeft = S * t), n > 0 && (e.scrollTop = C * n);
|
|
746
|
+
}, { defer: !0 })), b(j);
|
|
747
|
+
let N = f(T, { selector: (e) => e.context?.selected }), P = f(T, {
|
|
767
748
|
selector: ({ context: e }) => w.typed(e.data?.nodes).map((e) => e.id),
|
|
768
749
|
equals: (e, t) => e.length === t.length
|
|
769
|
-
}),
|
|
750
|
+
}), F = () => `calc((500vw - 265px) * ${A()})`, I = () => `calc((500vh - 425px) * ${A()})`;
|
|
770
751
|
return (() => {
|
|
771
752
|
var f = i(be);
|
|
772
753
|
return f.addEventListener("wheel", (e) => {
|
|
773
754
|
if (e.ctrlKey || e.metaKey) {
|
|
774
|
-
e.preventDefault(),
|
|
755
|
+
e.preventDefault(), M();
|
|
775
756
|
let t = e.deltaY < 0 ? .1 : -.1;
|
|
776
|
-
|
|
757
|
+
T.send({
|
|
777
758
|
type: "ZOOM",
|
|
778
759
|
payload: t
|
|
779
760
|
});
|
|
780
761
|
}
|
|
781
762
|
}), o(f, t(D, {
|
|
782
763
|
onDragMove: ({ draggable: { transform: e, node: t, id: n } }) => {
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
});
|
|
796
|
-
}
|
|
764
|
+
let r = t.parentElement?.parentElement, i = A(), a = r ? Math.max(0, r.clientWidth / i - t.offsetWidth) : Infinity, o = r ? Math.max(0, r.clientHeight / i - t.offsetHeight) : Infinity, s = t.offsetLeft + e.x / i, c = t.offsetTop + e.y / i, l = Math.min(Math.max(s, 0), a), u = Math.min(Math.max(c, 0), o), d = l - t.offsetLeft, f = u - t.offsetTop;
|
|
765
|
+
t.style.setProperty("transform", `translate3d(${d}px, ${f}px, 0)`), T.send({
|
|
766
|
+
type: "MOVE_IMMEDIATE",
|
|
767
|
+
payload: {
|
|
768
|
+
id: `${n}`,
|
|
769
|
+
x: l,
|
|
770
|
+
y: u
|
|
771
|
+
}
|
|
772
|
+
}), h({
|
|
773
|
+
x: d * i,
|
|
774
|
+
y: f * i
|
|
775
|
+
});
|
|
797
776
|
},
|
|
798
777
|
onDragEnd: ({ draggable: { node: e, id: t } }) => {
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
e.style.setProperty("top", l + "px"), e.style.setProperty("left", c + "px"), e.style.removeProperty("transform"), A.send({
|
|
778
|
+
let n = e.parentElement?.parentElement, r = A(), i = n ? Math.max(0, n.clientWidth / r - e.offsetWidth) : Infinity, a = n ? Math.max(0, n.clientHeight / r - e.offsetHeight) : Infinity, o = e.offsetLeft + u().x / r, s = e.offsetTop + u().y / r, c = Math.min(Math.max(o, 0), i), l = Math.min(Math.max(s, 0), a);
|
|
779
|
+
e.style.setProperty("top", l + "px"), e.style.setProperty("left", c + "px"), e.style.removeProperty("transform"), T.send({
|
|
802
780
|
type: "MOVE",
|
|
803
781
|
payload: {
|
|
804
782
|
id: `${t}`,
|
|
@@ -815,26 +793,24 @@ var ve = /*#__PURE__*/ u("<div class=\"relative h-full w-full overflow-auto roun
|
|
|
815
793
|
get children() {
|
|
816
794
|
return [
|
|
817
795
|
(() => {
|
|
818
|
-
var u = i(ve), f = u.firstChild, [m, h] = a(f.nextSibling), g = m.nextSibling, _ = g.firstChild, v = _.firstChild, [y, b] = a(v.nextSibling),
|
|
819
|
-
return u.addEventListener("scroll",
|
|
820
|
-
if (
|
|
821
|
-
|
|
822
|
-
let n = t.clientX, r = t.clientY, i = e.scrollLeft, a = e.scrollTop
|
|
823
|
-
c(!0);
|
|
824
|
-
let o = (t) => {
|
|
796
|
+
var u = i(ve), f = u.firstChild, [m, h] = a(f.nextSibling), g = m.nextSibling, _ = g.firstChild, v = _.firstChild, [y, b] = a(v.nextSibling), S = y.nextSibling, [C, w] = a(S.nextSibling), D = C.nextSibling, [k, j] = a(D.nextSibling);
|
|
797
|
+
return u.addEventListener("scroll", M), d((t) => e = t, u), o(u, t(O, {}), m, h), g.$$mousedown = (t) => {
|
|
798
|
+
if (E() || t.button !== 0) return;
|
|
799
|
+
T.send("DESELECT"), c(!0);
|
|
800
|
+
let n = t.clientX, r = t.clientY, i = e.scrollLeft, a = e.scrollTop, o = (t) => {
|
|
825
801
|
let o = t.clientX - n, s = t.clientY - r;
|
|
826
|
-
e.scrollLeft = i - o * 3, e.scrollTop = a - s * 3,
|
|
802
|
+
e.scrollLeft = i - o * 3, e.scrollTop = a - s * 3, M();
|
|
827
803
|
}, s = () => {
|
|
828
804
|
window.removeEventListener("mousemove", o), window.removeEventListener("mouseup", s), setTimeout(() => c(!1), 200);
|
|
829
805
|
};
|
|
830
806
|
window.addEventListener("mousemove", o), window.addEventListener("mouseup", s);
|
|
831
|
-
},
|
|
807
|
+
}, d(x, g), o(_, t(se, {}), y, b), o(_, t(fe, {}), C, w), o(_, t(p, {
|
|
832
808
|
get each() {
|
|
833
|
-
return
|
|
809
|
+
return P();
|
|
834
810
|
},
|
|
835
811
|
children: (e) => t(_e, { id: e })
|
|
836
|
-
}),
|
|
837
|
-
var t = !!n(), r =
|
|
812
|
+
}), k, j), r((e) => {
|
|
813
|
+
var t = !!n(), r = I(), i = F(), a = A();
|
|
838
814
|
return t !== e.e && g.classList.toggle("cursor-grabbing", e.e = t), r !== e.t && l(g, "height", e.t = r), i !== e.a && l(g, "width", e.a = i), a !== e.o && l(_, "scale", e.o = a), e;
|
|
839
815
|
}, {
|
|
840
816
|
e: void 0,
|
|
@@ -848,22 +824,22 @@ var ve = /*#__PURE__*/ u("<div class=\"relative h-full w-full overflow-auto roun
|
|
|
848
824
|
c.nextSibling;
|
|
849
825
|
var u = n.nextSibling, d = u.nextSibling.nextSibling;
|
|
850
826
|
return t.$$click = () => {
|
|
851
|
-
|
|
827
|
+
M(), T.send({
|
|
852
828
|
type: "ZOOM",
|
|
853
829
|
payload: -.1
|
|
854
830
|
});
|
|
855
831
|
}, n.$$click = () => {
|
|
856
|
-
|
|
857
|
-
}, o(n, () => Math.round(
|
|
858
|
-
|
|
832
|
+
M(), T.send("TOGGLE_ZOOM");
|
|
833
|
+
}, o(n, () => Math.round(A() * 100), c, l), u.$$click = () => {
|
|
834
|
+
M(), T.send({
|
|
859
835
|
type: "ZOOM",
|
|
860
836
|
payload: .1
|
|
861
837
|
});
|
|
862
|
-
}, d.$$click = () =>
|
|
838
|
+
}, d.$$click = () => T.send("ADD_PARENT"), s(), e;
|
|
863
839
|
})(),
|
|
864
840
|
t(m, {
|
|
865
841
|
get when() {
|
|
866
|
-
return !
|
|
842
|
+
return !N();
|
|
867
843
|
},
|
|
868
844
|
get children() {
|
|
869
845
|
return t(k, { children: "" });
|
|
@@ -878,8 +854,8 @@ n(["mousedown", "click"]);
|
|
|
878
854
|
//#endregion
|
|
879
855
|
//#region src/ui/components/FlowChart.tsx
|
|
880
856
|
var Se = /*#__PURE__*/ u("<div class=\"relative h-full w-full\"><div class=\"relative h-full w-full bg-white bg-size-[30px_30px]\"style=\"background-image:radial-gradient(circle, #b8b8b8bf 1px, rgba(0, 0, 0, 0) 1px)\">"), Ce = (e) => {
|
|
881
|
-
let n = e.config?.nodes ??
|
|
882
|
-
return b(() => {
|
|
857
|
+
let n = e.config?.nodes ?? ee, a = e.config?.edges, c = q(), u = f(c, { selector: (e) => !!e.context.newEdge });
|
|
858
|
+
return y(c.pause), b(() => {
|
|
883
859
|
c.resume(), c.send({
|
|
884
860
|
type: "CONFIGURE",
|
|
885
861
|
payload: {
|
|
@@ -887,14 +863,14 @@ var Se = /*#__PURE__*/ u("<div class=\"relative h-full w-full\"><div class=\"rel
|
|
|
887
863
|
edges: a ?? []
|
|
888
864
|
}
|
|
889
865
|
});
|
|
890
|
-
}),
|
|
866
|
+
}), (() => {
|
|
891
867
|
var e = i(Se), n = e.firstChild;
|
|
892
|
-
return e.$$mousemove = (e) => {
|
|
893
|
-
c.send({
|
|
868
|
+
return e.$$mousemove = ({ clientX: e, clientY: t }) => {
|
|
869
|
+
u() && c.send({
|
|
894
870
|
type: "MOVE_NEW_EDGE",
|
|
895
871
|
payload: {
|
|
896
|
-
x: e
|
|
897
|
-
y:
|
|
872
|
+
x: e,
|
|
873
|
+
y: t
|
|
898
874
|
}
|
|
899
875
|
});
|
|
900
876
|
}, e.$$mouseup = () => c.send("CLEAR_NEW_EDGE"), o(n, t(xe, {})), r((e) => l(n, "cursor", u() ? "inherit" : "crosshair")), s(), e;
|
|
@@ -903,7 +879,7 @@ var Se = /*#__PURE__*/ u("<div class=\"relative h-full w-full\"><div class=\"rel
|
|
|
903
879
|
n(["mouseup", "mousemove"]);
|
|
904
880
|
//#endregion
|
|
905
881
|
//#region src/ui/Flow.tsx
|
|
906
|
-
var we = (e) => t(
|
|
882
|
+
var we = (e) => t(K, { get children() {
|
|
907
883
|
return t(Ce, e);
|
|
908
884
|
} });
|
|
909
885
|
//#endregion
|