@particle-academy/fancy-flow 0.3.0 → 0.4.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.
- package/dist/{chunk-DDHKYIH2.js → chunk-2BZ6OE5H.js} +229 -435
- package/dist/chunk-2BZ6OE5H.js.map +1 -0
- package/dist/{chunk-FGUJNX65.js → chunk-35OXF6W3.js} +3 -3
- package/dist/{chunk-FGUJNX65.js.map → chunk-35OXF6W3.js.map} +1 -1
- package/dist/chunk-4PZQRN5Y.js +114 -0
- package/dist/chunk-4PZQRN5Y.js.map +1 -0
- package/dist/chunk-DW66NGU5.js +138 -0
- package/dist/chunk-DW66NGU5.js.map +1 -0
- package/dist/{chunk-YPINKH2D.js → engine.cjs} +4 -111
- package/dist/engine.cjs.map +1 -0
- package/dist/engine.d.cts +35 -0
- package/dist/engine.d.ts +35 -0
- package/dist/engine.js +3 -0
- package/dist/engine.js.map +1 -0
- package/dist/index.cjs +227 -464
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +19 -19
- package/dist/index.d.ts +19 -19
- package/dist/index.js +6 -6
- package/dist/registry/index.d.cts +2 -3
- package/dist/registry/index.d.ts +2 -3
- package/dist/registry.cjs +225 -462
- package/dist/registry.cjs.map +1 -1
- package/dist/registry.js +2 -3
- package/dist/runtime/index.d.cts +4 -32
- package/dist/runtime/index.d.ts +4 -32
- package/dist/runtime.cjs +226 -463
- package/dist/runtime.cjs.map +1 -1
- package/dist/runtime.js +3 -3
- package/dist/schema/index.d.cts +1 -1
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema.js +0 -1
- package/dist/{types-Ch4sAvum.d.cts → types-TemTtb04.d.cts} +1 -1
- package/dist/{types-Ch4sAvum.d.ts → types-TemTtb04.d.ts} +1 -1
- package/package.json +46 -9
- package/dist/chunk-7D4SUZUM.js +0 -35
- package/dist/chunk-7D4SUZUM.js.map +0 -1
- package/dist/chunk-DDHKYIH2.js.map +0 -1
- package/dist/chunk-YPINKH2D.js.map +0 -1
package/dist/runtime.cjs
CHANGED
|
@@ -8,309 +8,6 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
8
8
|
|
|
9
9
|
var ReactExports__default = /*#__PURE__*/_interopDefault(ReactExports);
|
|
10
10
|
|
|
11
|
-
var __create = Object.create;
|
|
12
|
-
var __defProp = Object.defineProperty;
|
|
13
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
14
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
15
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
16
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
17
|
-
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
18
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
19
|
-
}) : x)(function(x) {
|
|
20
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
21
|
-
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
22
|
-
});
|
|
23
|
-
var __commonJS = (cb, mod) => function __require2() {
|
|
24
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
25
|
-
};
|
|
26
|
-
var __copyProps = (to, from, except, desc) => {
|
|
27
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
28
|
-
for (let key of __getOwnPropNames(from))
|
|
29
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
30
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
31
|
-
}
|
|
32
|
-
return to;
|
|
33
|
-
};
|
|
34
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
35
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
36
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
37
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
38
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
39
|
-
__defProp(target, "default", { value: mod, enumerable: true }) ,
|
|
40
|
-
mod
|
|
41
|
-
));
|
|
42
|
-
|
|
43
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js
|
|
44
|
-
var require_use_sync_external_store_shim_production = __commonJS({
|
|
45
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js"(exports) {
|
|
46
|
-
var React = __require("react");
|
|
47
|
-
function is(x, y) {
|
|
48
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
49
|
-
}
|
|
50
|
-
var objectIs = "function" === typeof Object.is ? Object.is : is;
|
|
51
|
-
var useState4 = React.useState;
|
|
52
|
-
var useEffect2 = React.useEffect;
|
|
53
|
-
var useLayoutEffect2 = React.useLayoutEffect;
|
|
54
|
-
var useDebugValue2 = React.useDebugValue;
|
|
55
|
-
function useSyncExternalStore$2(subscribe, getSnapshot) {
|
|
56
|
-
var value = getSnapshot(), _useState = useState4({ inst: { value, getSnapshot } }), inst = _useState[0].inst, forceUpdate = _useState[1];
|
|
57
|
-
useLayoutEffect2(
|
|
58
|
-
function() {
|
|
59
|
-
inst.value = value;
|
|
60
|
-
inst.getSnapshot = getSnapshot;
|
|
61
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
62
|
-
},
|
|
63
|
-
[subscribe, value, getSnapshot]
|
|
64
|
-
);
|
|
65
|
-
useEffect2(
|
|
66
|
-
function() {
|
|
67
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
68
|
-
return subscribe(function() {
|
|
69
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
70
|
-
});
|
|
71
|
-
},
|
|
72
|
-
[subscribe]
|
|
73
|
-
);
|
|
74
|
-
useDebugValue2(value);
|
|
75
|
-
return value;
|
|
76
|
-
}
|
|
77
|
-
function checkIfSnapshotChanged(inst) {
|
|
78
|
-
var latestGetSnapshot = inst.getSnapshot;
|
|
79
|
-
inst = inst.value;
|
|
80
|
-
try {
|
|
81
|
-
var nextValue = latestGetSnapshot();
|
|
82
|
-
return !objectIs(inst, nextValue);
|
|
83
|
-
} catch (error) {
|
|
84
|
-
return true;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
function useSyncExternalStore$1(subscribe, getSnapshot) {
|
|
88
|
-
return getSnapshot();
|
|
89
|
-
}
|
|
90
|
-
var shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
91
|
-
exports.useSyncExternalStore = void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js
|
|
96
|
-
var require_use_sync_external_store_shim_development = __commonJS({
|
|
97
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js"(exports) {
|
|
98
|
-
"production" !== process.env.NODE_ENV && (function() {
|
|
99
|
-
function is(x, y) {
|
|
100
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
101
|
-
}
|
|
102
|
-
function useSyncExternalStore$2(subscribe, getSnapshot) {
|
|
103
|
-
didWarnOld18Alpha || void 0 === React.startTransition || (didWarnOld18Alpha = true, console.error(
|
|
104
|
-
"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."
|
|
105
|
-
));
|
|
106
|
-
var value = getSnapshot();
|
|
107
|
-
if (!didWarnUncachedGetSnapshot) {
|
|
108
|
-
var cachedValue = getSnapshot();
|
|
109
|
-
objectIs(value, cachedValue) || (console.error(
|
|
110
|
-
"The result of getSnapshot should be cached to avoid an infinite loop"
|
|
111
|
-
), didWarnUncachedGetSnapshot = true);
|
|
112
|
-
}
|
|
113
|
-
cachedValue = useState4({
|
|
114
|
-
inst: { value, getSnapshot }
|
|
115
|
-
});
|
|
116
|
-
var inst = cachedValue[0].inst, forceUpdate = cachedValue[1];
|
|
117
|
-
useLayoutEffect2(
|
|
118
|
-
function() {
|
|
119
|
-
inst.value = value;
|
|
120
|
-
inst.getSnapshot = getSnapshot;
|
|
121
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
122
|
-
},
|
|
123
|
-
[subscribe, value, getSnapshot]
|
|
124
|
-
);
|
|
125
|
-
useEffect2(
|
|
126
|
-
function() {
|
|
127
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
128
|
-
return subscribe(function() {
|
|
129
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
130
|
-
});
|
|
131
|
-
},
|
|
132
|
-
[subscribe]
|
|
133
|
-
);
|
|
134
|
-
useDebugValue2(value);
|
|
135
|
-
return value;
|
|
136
|
-
}
|
|
137
|
-
function checkIfSnapshotChanged(inst) {
|
|
138
|
-
var latestGetSnapshot = inst.getSnapshot;
|
|
139
|
-
inst = inst.value;
|
|
140
|
-
try {
|
|
141
|
-
var nextValue = latestGetSnapshot();
|
|
142
|
-
return !objectIs(inst, nextValue);
|
|
143
|
-
} catch (error) {
|
|
144
|
-
return true;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
function useSyncExternalStore$1(subscribe, getSnapshot) {
|
|
148
|
-
return getSnapshot();
|
|
149
|
-
}
|
|
150
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
|
|
151
|
-
var React = __require("react"), objectIs = "function" === typeof Object.is ? Object.is : is, useState4 = React.useState, useEffect2 = React.useEffect, useLayoutEffect2 = React.useLayoutEffect, useDebugValue2 = React.useDebugValue, didWarnOld18Alpha = false, didWarnUncachedGetSnapshot = false, shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
152
|
-
exports.useSyncExternalStore = void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;
|
|
153
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
|
|
154
|
-
})();
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
// node_modules/use-sync-external-store/shim/index.js
|
|
159
|
-
var require_shim = __commonJS({
|
|
160
|
-
"node_modules/use-sync-external-store/shim/index.js"(exports, module) {
|
|
161
|
-
if (process.env.NODE_ENV === "production") {
|
|
162
|
-
module.exports = require_use_sync_external_store_shim_production();
|
|
163
|
-
} else {
|
|
164
|
-
module.exports = require_use_sync_external_store_shim_development();
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
|
|
169
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js
|
|
170
|
-
var require_with_selector_production = __commonJS({
|
|
171
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js"(exports) {
|
|
172
|
-
var React = __require("react");
|
|
173
|
-
var shim = require_shim();
|
|
174
|
-
function is(x, y) {
|
|
175
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
176
|
-
}
|
|
177
|
-
var objectIs = "function" === typeof Object.is ? Object.is : is;
|
|
178
|
-
var useSyncExternalStore = shim.useSyncExternalStore;
|
|
179
|
-
var useRef3 = React.useRef;
|
|
180
|
-
var useEffect2 = React.useEffect;
|
|
181
|
-
var useMemo2 = React.useMemo;
|
|
182
|
-
var useDebugValue2 = React.useDebugValue;
|
|
183
|
-
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
184
|
-
var instRef = useRef3(null);
|
|
185
|
-
if (null === instRef.current) {
|
|
186
|
-
var inst = { hasValue: false, value: null };
|
|
187
|
-
instRef.current = inst;
|
|
188
|
-
} else inst = instRef.current;
|
|
189
|
-
instRef = useMemo2(
|
|
190
|
-
function() {
|
|
191
|
-
function memoizedSelector(nextSnapshot) {
|
|
192
|
-
if (!hasMemo) {
|
|
193
|
-
hasMemo = true;
|
|
194
|
-
memoizedSnapshot = nextSnapshot;
|
|
195
|
-
nextSnapshot = selector(nextSnapshot);
|
|
196
|
-
if (void 0 !== isEqual && inst.hasValue) {
|
|
197
|
-
var currentSelection = inst.value;
|
|
198
|
-
if (isEqual(currentSelection, nextSnapshot))
|
|
199
|
-
return memoizedSelection = currentSelection;
|
|
200
|
-
}
|
|
201
|
-
return memoizedSelection = nextSnapshot;
|
|
202
|
-
}
|
|
203
|
-
currentSelection = memoizedSelection;
|
|
204
|
-
if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;
|
|
205
|
-
var nextSelection = selector(nextSnapshot);
|
|
206
|
-
if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))
|
|
207
|
-
return memoizedSnapshot = nextSnapshot, currentSelection;
|
|
208
|
-
memoizedSnapshot = nextSnapshot;
|
|
209
|
-
return memoizedSelection = nextSelection;
|
|
210
|
-
}
|
|
211
|
-
var hasMemo = false, memoizedSnapshot, memoizedSelection, maybeGetServerSnapshot = void 0 === getServerSnapshot ? null : getServerSnapshot;
|
|
212
|
-
return [
|
|
213
|
-
function() {
|
|
214
|
-
return memoizedSelector(getSnapshot());
|
|
215
|
-
},
|
|
216
|
-
null === maybeGetServerSnapshot ? void 0 : function() {
|
|
217
|
-
return memoizedSelector(maybeGetServerSnapshot());
|
|
218
|
-
}
|
|
219
|
-
];
|
|
220
|
-
},
|
|
221
|
-
[getSnapshot, getServerSnapshot, selector, isEqual]
|
|
222
|
-
);
|
|
223
|
-
var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);
|
|
224
|
-
useEffect2(
|
|
225
|
-
function() {
|
|
226
|
-
inst.hasValue = true;
|
|
227
|
-
inst.value = value;
|
|
228
|
-
},
|
|
229
|
-
[value]
|
|
230
|
-
);
|
|
231
|
-
useDebugValue2(value);
|
|
232
|
-
return value;
|
|
233
|
-
};
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
|
|
237
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js
|
|
238
|
-
var require_with_selector_development = __commonJS({
|
|
239
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js"(exports) {
|
|
240
|
-
"production" !== process.env.NODE_ENV && (function() {
|
|
241
|
-
function is(x, y) {
|
|
242
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
243
|
-
}
|
|
244
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
|
|
245
|
-
var React = __require("react"), shim = require_shim(), objectIs = "function" === typeof Object.is ? Object.is : is, useSyncExternalStore = shim.useSyncExternalStore, useRef3 = React.useRef, useEffect2 = React.useEffect, useMemo2 = React.useMemo, useDebugValue2 = React.useDebugValue;
|
|
246
|
-
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
247
|
-
var instRef = useRef3(null);
|
|
248
|
-
if (null === instRef.current) {
|
|
249
|
-
var inst = { hasValue: false, value: null };
|
|
250
|
-
instRef.current = inst;
|
|
251
|
-
} else inst = instRef.current;
|
|
252
|
-
instRef = useMemo2(
|
|
253
|
-
function() {
|
|
254
|
-
function memoizedSelector(nextSnapshot) {
|
|
255
|
-
if (!hasMemo) {
|
|
256
|
-
hasMemo = true;
|
|
257
|
-
memoizedSnapshot = nextSnapshot;
|
|
258
|
-
nextSnapshot = selector(nextSnapshot);
|
|
259
|
-
if (void 0 !== isEqual && inst.hasValue) {
|
|
260
|
-
var currentSelection = inst.value;
|
|
261
|
-
if (isEqual(currentSelection, nextSnapshot))
|
|
262
|
-
return memoizedSelection = currentSelection;
|
|
263
|
-
}
|
|
264
|
-
return memoizedSelection = nextSnapshot;
|
|
265
|
-
}
|
|
266
|
-
currentSelection = memoizedSelection;
|
|
267
|
-
if (objectIs(memoizedSnapshot, nextSnapshot))
|
|
268
|
-
return currentSelection;
|
|
269
|
-
var nextSelection = selector(nextSnapshot);
|
|
270
|
-
if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))
|
|
271
|
-
return memoizedSnapshot = nextSnapshot, currentSelection;
|
|
272
|
-
memoizedSnapshot = nextSnapshot;
|
|
273
|
-
return memoizedSelection = nextSelection;
|
|
274
|
-
}
|
|
275
|
-
var hasMemo = false, memoizedSnapshot, memoizedSelection, maybeGetServerSnapshot = void 0 === getServerSnapshot ? null : getServerSnapshot;
|
|
276
|
-
return [
|
|
277
|
-
function() {
|
|
278
|
-
return memoizedSelector(getSnapshot());
|
|
279
|
-
},
|
|
280
|
-
null === maybeGetServerSnapshot ? void 0 : function() {
|
|
281
|
-
return memoizedSelector(maybeGetServerSnapshot());
|
|
282
|
-
}
|
|
283
|
-
];
|
|
284
|
-
},
|
|
285
|
-
[getSnapshot, getServerSnapshot, selector, isEqual]
|
|
286
|
-
);
|
|
287
|
-
var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);
|
|
288
|
-
useEffect2(
|
|
289
|
-
function() {
|
|
290
|
-
inst.hasValue = true;
|
|
291
|
-
inst.value = value;
|
|
292
|
-
},
|
|
293
|
-
[value]
|
|
294
|
-
);
|
|
295
|
-
useDebugValue2(value);
|
|
296
|
-
return value;
|
|
297
|
-
};
|
|
298
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
|
|
299
|
-
})();
|
|
300
|
-
}
|
|
301
|
-
});
|
|
302
|
-
|
|
303
|
-
// node_modules/use-sync-external-store/shim/with-selector.js
|
|
304
|
-
var require_with_selector = __commonJS({
|
|
305
|
-
"node_modules/use-sync-external-store/shim/with-selector.js"(exports, module) {
|
|
306
|
-
if (process.env.NODE_ENV === "production") {
|
|
307
|
-
module.exports = require_with_selector_production();
|
|
308
|
-
} else {
|
|
309
|
-
module.exports = require_with_selector_development();
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
});
|
|
313
|
-
|
|
314
11
|
// src/runtime/run-flow.ts
|
|
315
12
|
async function runFlow(graph, executors, onEvent = () => {
|
|
316
13
|
}, options = {}) {
|
|
@@ -3486,10 +3183,10 @@ function zoom_default2() {
|
|
|
3486
3183
|
|
|
3487
3184
|
// node_modules/@xyflow/system/dist/esm/index.js
|
|
3488
3185
|
var errorMessages = {
|
|
3489
|
-
error001: (
|
|
3186
|
+
error001: (lib = "react") => `Seems like you have not used zustand provider as an ancestor. Help: https://${lib}flow.dev/error#001`,
|
|
3490
3187
|
error002: () => "It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",
|
|
3491
3188
|
error003: (nodeType) => `Node type "${nodeType}" not found. Using fallback type "default".`,
|
|
3492
|
-
error004: () => "The
|
|
3189
|
+
error004: () => "The parent container needs a width and a height to render the graph.",
|
|
3493
3190
|
error005: () => "Only child nodes can use a parent extent.",
|
|
3494
3191
|
error006: () => "Can't create edge. An edge needs a source and a target.",
|
|
3495
3192
|
error007: (id2) => `The old edge with id=${id2} does not exist.`,
|
|
@@ -3500,7 +3197,8 @@ var errorMessages = {
|
|
|
3500
3197
|
error012: (id2) => `Node with id "${id2}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,
|
|
3501
3198
|
error013: (lib = "react") => `It seems that you haven't loaded the styles. Please import '@xyflow/${lib}/dist/style.css' or base.css to make sure everything is working properly.`,
|
|
3502
3199
|
error014: () => "useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",
|
|
3503
|
-
error015: () => "It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."
|
|
3200
|
+
error015: () => "It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",
|
|
3201
|
+
error016: (id2) => `Edge with id "${id2}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`
|
|
3504
3202
|
};
|
|
3505
3203
|
var infiniteExtent = [
|
|
3506
3204
|
[Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY],
|
|
@@ -3668,7 +3366,7 @@ function getFitViewNodes(nodeLookup, options) {
|
|
|
3668
3366
|
}
|
|
3669
3367
|
async function fitViewport({ nodes, width, height, panZoom, minZoom, maxZoom }, options) {
|
|
3670
3368
|
if (nodes.size === 0) {
|
|
3671
|
-
return
|
|
3369
|
+
return true;
|
|
3672
3370
|
}
|
|
3673
3371
|
const nodesToFit = getFitViewNodes(nodes, options);
|
|
3674
3372
|
const bounds = getInternalNodesBounds(nodesToFit);
|
|
@@ -3678,7 +3376,7 @@ async function fitViewport({ nodes, width, height, panZoom, minZoom, maxZoom },
|
|
|
3678
3376
|
ease: options?.ease,
|
|
3679
3377
|
interpolate: options?.interpolate
|
|
3680
3378
|
});
|
|
3681
|
-
return
|
|
3379
|
+
return true;
|
|
3682
3380
|
}
|
|
3683
3381
|
function calculateNodePosition({ nodeId, nextPosition, nodeLookup, nodeOrigin = [0, 0], nodeExtent, onError }) {
|
|
3684
3382
|
const node = nodeLookup.get(nodeId);
|
|
@@ -3825,9 +3523,9 @@ var getOverlappingArea = (rectA, rectB) => {
|
|
|
3825
3523
|
};
|
|
3826
3524
|
var isRectObject = (obj) => isNumeric(obj.width) && isNumeric(obj.height) && isNumeric(obj.x) && isNumeric(obj.y);
|
|
3827
3525
|
var isNumeric = (n) => !isNaN(n) && isFinite(n);
|
|
3828
|
-
var
|
|
3526
|
+
var createDevWarn = (lib, helpUrl) => (id2, message) => {
|
|
3829
3527
|
if (process.env.NODE_ENV === "development") {
|
|
3830
|
-
console.warn(`[
|
|
3528
|
+
console.warn(`[${lib}]: ${message} Help: ${helpUrl}error#${id2}`);
|
|
3831
3529
|
}
|
|
3832
3530
|
};
|
|
3833
3531
|
var snapPosition = (position, snapGrid = [1, 1]) => {
|
|
@@ -3865,7 +3563,7 @@ function parsePadding(padding, viewport) {
|
|
|
3865
3563
|
return Math.floor(viewport * paddingValue * 0.01);
|
|
3866
3564
|
}
|
|
3867
3565
|
}
|
|
3868
|
-
console.error(`
|
|
3566
|
+
console.error(`The padding value "${padding}" is invalid. Please provide a number or a string with a valid unit (px or %).`);
|
|
3869
3567
|
return 0;
|
|
3870
3568
|
}
|
|
3871
3569
|
function parsePaddings(padding, width, height) {
|
|
@@ -4119,7 +3817,7 @@ var connectionExists = (edge, edges) => {
|
|
|
4119
3817
|
};
|
|
4120
3818
|
var addEdge = (edgeParams, edges, options = {}) => {
|
|
4121
3819
|
if (!edgeParams.source || !edgeParams.target) {
|
|
4122
|
-
|
|
3820
|
+
options.onError?.("006", errorMessages["error006"]());
|
|
4123
3821
|
return edges;
|
|
4124
3822
|
}
|
|
4125
3823
|
const edgeIdGenerator = options.getEdgeId || getEdgeId;
|
|
@@ -4715,7 +4413,7 @@ function updateNodeInternals(updates, nodeLookup, parentLookup, domNode, nodeOri
|
|
|
4715
4413
|
}
|
|
4716
4414
|
async function panBy({ delta, panZoom, transform: transform2, translateExtent, width, height }) {
|
|
4717
4415
|
if (!panZoom || !delta.x && !delta.y) {
|
|
4718
|
-
return
|
|
4416
|
+
return false;
|
|
4719
4417
|
}
|
|
4720
4418
|
const nextViewport = await panZoom.setViewportConstrained({
|
|
4721
4419
|
x: transform2[0] + delta.x,
|
|
@@ -4726,7 +4424,7 @@ async function panBy({ delta, panZoom, transform: transform2, translateExtent, w
|
|
|
4726
4424
|
[width, height]
|
|
4727
4425
|
], translateExtent);
|
|
4728
4426
|
const transformChanged = !!nextViewport && (nextViewport.x !== transform2[0] || nextViewport.y !== transform2[1] || nextViewport.k !== transform2[2]);
|
|
4729
|
-
return
|
|
4427
|
+
return transformChanged;
|
|
4730
4428
|
}
|
|
4731
4429
|
function addConnectionToLookup(type, connection, connectionKey, connectionLookup, nodeId, handleId) {
|
|
4732
4430
|
let key = nodeId;
|
|
@@ -5016,6 +4714,9 @@ function XYDrag({ onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragSto
|
|
|
5016
4714
|
}
|
|
5017
4715
|
}).on("end", (event) => {
|
|
5018
4716
|
if (!dragStarted || abortDrag) {
|
|
4717
|
+
if (abortDrag && dragItems.size > 0) {
|
|
4718
|
+
getStoreItems().updateNodePositions(dragItems, false);
|
|
4719
|
+
}
|
|
5019
4720
|
return;
|
|
5020
4721
|
}
|
|
5021
4722
|
autoPanStarted = false;
|
|
@@ -5557,7 +5258,7 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5557
5258
|
const zoomPanValues = {
|
|
5558
5259
|
isZoomingOrPanning: false,
|
|
5559
5260
|
usedRightMouseButton: false,
|
|
5560
|
-
prevViewport: {
|
|
5261
|
+
prevViewport: {},
|
|
5561
5262
|
mouseButton: 0,
|
|
5562
5263
|
timerId: void 0,
|
|
5563
5264
|
panScrollTimeout: void 0,
|
|
@@ -5577,13 +5278,13 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5577
5278
|
const d3ZoomHandler = d3Selection.on("wheel.zoom");
|
|
5578
5279
|
const d3DblClickZoomHandler = d3Selection.on("dblclick.zoom");
|
|
5579
5280
|
d3ZoomInstance.wheelDelta(wheelDelta);
|
|
5580
|
-
function setTransform(transform2, options) {
|
|
5281
|
+
async function setTransform(transform2, options) {
|
|
5581
5282
|
if (d3Selection) {
|
|
5582
5283
|
return new Promise((resolve) => {
|
|
5583
5284
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).transform(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), transform2);
|
|
5584
5285
|
});
|
|
5585
5286
|
}
|
|
5586
|
-
return
|
|
5287
|
+
return false;
|
|
5587
5288
|
}
|
|
5588
5289
|
function update({ noWheelClassName, noPanClassName, onPaneContextMenu, userSelectionActive, panOnScroll, panOnDrag, panOnScrollMode, panOnScrollSpeed, preventScrolling, zoomOnPinch, zoomOnScroll, zoomOnDoubleClick, zoomActivationKeyPressed, lib, onTransformChange, connectionInProgress, paneClickDistance, selectionOnDrag }) {
|
|
5589
5290
|
if (userSelectionActive && !zoomPanValues.isZoomingOrPanning) {
|
|
@@ -5608,31 +5309,29 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5608
5309
|
d3ZoomHandler
|
|
5609
5310
|
});
|
|
5610
5311
|
d3Selection.on("wheel.zoom", wheelHandler, { passive: false });
|
|
5611
|
-
|
|
5612
|
-
|
|
5613
|
-
|
|
5614
|
-
|
|
5615
|
-
|
|
5616
|
-
|
|
5617
|
-
|
|
5618
|
-
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
|
|
5623
|
-
|
|
5624
|
-
|
|
5625
|
-
|
|
5626
|
-
|
|
5627
|
-
|
|
5628
|
-
|
|
5629
|
-
|
|
5630
|
-
|
|
5631
|
-
|
|
5632
|
-
|
|
5633
|
-
|
|
5634
|
-
d3ZoomInstance.on("end", panZoomEndHandler);
|
|
5635
|
-
}
|
|
5312
|
+
const startHandler = createPanZoomStartHandler({
|
|
5313
|
+
zoomPanValues,
|
|
5314
|
+
onDraggingChange,
|
|
5315
|
+
onPanZoomStart
|
|
5316
|
+
});
|
|
5317
|
+
d3ZoomInstance.on("start", startHandler);
|
|
5318
|
+
const panZoomHandler = createPanZoomHandler({
|
|
5319
|
+
zoomPanValues,
|
|
5320
|
+
panOnDrag,
|
|
5321
|
+
onPaneContextMenu: !!onPaneContextMenu,
|
|
5322
|
+
onPanZoom,
|
|
5323
|
+
onTransformChange
|
|
5324
|
+
});
|
|
5325
|
+
d3ZoomInstance.on("zoom", panZoomHandler);
|
|
5326
|
+
const panZoomEndHandler = createPanZoomEndHandler({
|
|
5327
|
+
zoomPanValues,
|
|
5328
|
+
panOnDrag,
|
|
5329
|
+
panOnScroll,
|
|
5330
|
+
onPaneContextMenu,
|
|
5331
|
+
onPanZoomEnd,
|
|
5332
|
+
onDraggingChange
|
|
5333
|
+
});
|
|
5334
|
+
d3ZoomInstance.on("end", panZoomEndHandler);
|
|
5636
5335
|
const filter2 = createFilter({
|
|
5637
5336
|
zoomActivationKeyPressed,
|
|
5638
5337
|
panOnDrag,
|
|
@@ -5662,12 +5361,12 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5662
5361
|
if (contrainedTransform) {
|
|
5663
5362
|
await setTransform(contrainedTransform);
|
|
5664
5363
|
}
|
|
5665
|
-
return
|
|
5364
|
+
return contrainedTransform;
|
|
5666
5365
|
}
|
|
5667
5366
|
async function setViewport(viewport2, options) {
|
|
5668
5367
|
const nextTransform = viewportToTransform(viewport2);
|
|
5669
5368
|
await setTransform(nextTransform, options);
|
|
5670
|
-
return
|
|
5369
|
+
return nextTransform;
|
|
5671
5370
|
}
|
|
5672
5371
|
function syncViewport(viewport2) {
|
|
5673
5372
|
if (d3Selection) {
|
|
@@ -5682,21 +5381,21 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5682
5381
|
const transform2 = d3Selection ? transform(d3Selection.node()) : { x: 0, y: 0, k: 1 };
|
|
5683
5382
|
return { x: transform2.x, y: transform2.y, zoom: transform2.k };
|
|
5684
5383
|
}
|
|
5685
|
-
function scaleTo(zoom, options) {
|
|
5384
|
+
async function scaleTo(zoom, options) {
|
|
5686
5385
|
if (d3Selection) {
|
|
5687
5386
|
return new Promise((resolve) => {
|
|
5688
5387
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).scaleTo(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), zoom);
|
|
5689
5388
|
});
|
|
5690
5389
|
}
|
|
5691
|
-
return
|
|
5390
|
+
return false;
|
|
5692
5391
|
}
|
|
5693
|
-
function scaleBy(factor, options) {
|
|
5392
|
+
async function scaleBy(factor, options) {
|
|
5694
5393
|
if (d3Selection) {
|
|
5695
5394
|
return new Promise((resolve) => {
|
|
5696
5395
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).scaleBy(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), factor);
|
|
5697
5396
|
});
|
|
5698
5397
|
}
|
|
5699
|
-
return
|
|
5398
|
+
return false;
|
|
5700
5399
|
}
|
|
5701
5400
|
function setScaleExtent(scaleExtent) {
|
|
5702
5401
|
d3ZoomInstance?.scaleExtent(scaleExtent);
|
|
@@ -5891,12 +5590,6 @@ var initStartValues = {
|
|
|
5891
5590
|
pointerY: 0,
|
|
5892
5591
|
aspectRatio: 1
|
|
5893
5592
|
};
|
|
5894
|
-
function nodeToParentExtent(node) {
|
|
5895
|
-
return [
|
|
5896
|
-
[0, 0],
|
|
5897
|
-
[node.measured.width, node.measured.height]
|
|
5898
|
-
];
|
|
5899
|
-
}
|
|
5900
5593
|
function nodeToChildExtent(child, parent, nodeOrigin) {
|
|
5901
5594
|
const x = parent.position.x + child.position.x;
|
|
5902
5595
|
const y = parent.position.y + child.position.y;
|
|
@@ -5935,7 +5628,7 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5935
5628
|
let containerBounds = null;
|
|
5936
5629
|
let childNodes = [];
|
|
5937
5630
|
let parentNode = void 0;
|
|
5938
|
-
let
|
|
5631
|
+
let nodeExtent = void 0;
|
|
5939
5632
|
let childExtent = void 0;
|
|
5940
5633
|
let resizeDetected = false;
|
|
5941
5634
|
const dragHandler = drag_default().on("start", (event) => {
|
|
@@ -5964,9 +5657,15 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5964
5657
|
aspectRatio: prevValues.width / prevValues.height
|
|
5965
5658
|
};
|
|
5966
5659
|
parentNode = void 0;
|
|
5660
|
+
nodeExtent = isCoordinateExtent(node.extent) ? node.extent : void 0;
|
|
5967
5661
|
if (node.parentId && (node.extent === "parent" || node.expandParent)) {
|
|
5968
5662
|
parentNode = nodeLookup.get(node.parentId);
|
|
5969
|
-
|
|
5663
|
+
}
|
|
5664
|
+
if (parentNode && node.extent === "parent") {
|
|
5665
|
+
nodeExtent = [
|
|
5666
|
+
[0, 0],
|
|
5667
|
+
[parentNode.measured.width, parentNode.measured.height]
|
|
5668
|
+
];
|
|
5970
5669
|
}
|
|
5971
5670
|
childNodes = [];
|
|
5972
5671
|
childExtent = void 0;
|
|
@@ -6006,7 +5705,7 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
6006
5705
|
const { x: prevX, y: prevY, width: prevWidth, height: prevHeight } = prevValues;
|
|
6007
5706
|
const change = {};
|
|
6008
5707
|
const nodeOrigin = node.origin ?? storeNodeOrigin;
|
|
6009
|
-
const { width, height, x, y } = getDimensionsAfterResize(startValues, params.controlDirection, pointerPosition, params.boundaries, params.keepAspectRatio, nodeOrigin,
|
|
5708
|
+
const { width, height, x, y } = getDimensionsAfterResize(startValues, params.controlDirection, pointerPosition, params.boundaries, params.keepAspectRatio, nodeOrigin, nodeExtent, childExtent);
|
|
6010
5709
|
const isWidthChange = width !== prevWidth;
|
|
6011
5710
|
const isHeightChange = height !== prevHeight;
|
|
6012
5711
|
const isXPosChange = x !== prevX && isWidthChange;
|
|
@@ -6083,9 +5782,62 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
6083
5782
|
destroy
|
|
6084
5783
|
};
|
|
6085
5784
|
}
|
|
6086
|
-
|
|
6087
|
-
|
|
6088
|
-
|
|
5785
|
+
function useSyncExternalStoreWithSelector(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
5786
|
+
const instRef = ReactExports.useRef(null);
|
|
5787
|
+
let inst;
|
|
5788
|
+
if (instRef.current === null) {
|
|
5789
|
+
inst = { hasValue: false, value: null };
|
|
5790
|
+
instRef.current = inst;
|
|
5791
|
+
} else {
|
|
5792
|
+
inst = instRef.current;
|
|
5793
|
+
}
|
|
5794
|
+
const [getSelection, getServerSelection] = ReactExports.useMemo(() => {
|
|
5795
|
+
let hasMemo = false;
|
|
5796
|
+
let memoizedSnapshot;
|
|
5797
|
+
let memoizedSelection;
|
|
5798
|
+
const memoizedSelector = (nextSnapshot) => {
|
|
5799
|
+
if (!hasMemo) {
|
|
5800
|
+
hasMemo = true;
|
|
5801
|
+
memoizedSnapshot = nextSnapshot;
|
|
5802
|
+
const nextSelection2 = selector(nextSnapshot);
|
|
5803
|
+
if (isEqual !== void 0 && inst.hasValue) {
|
|
5804
|
+
const currentSelection = inst.value;
|
|
5805
|
+
if (isEqual(currentSelection, nextSelection2)) {
|
|
5806
|
+
memoizedSelection = currentSelection;
|
|
5807
|
+
return currentSelection;
|
|
5808
|
+
}
|
|
5809
|
+
}
|
|
5810
|
+
memoizedSelection = nextSelection2;
|
|
5811
|
+
return nextSelection2;
|
|
5812
|
+
}
|
|
5813
|
+
const prevSnapshot = memoizedSnapshot;
|
|
5814
|
+
const prevSelection = memoizedSelection;
|
|
5815
|
+
if (Object.is(prevSnapshot, nextSnapshot)) {
|
|
5816
|
+
return prevSelection;
|
|
5817
|
+
}
|
|
5818
|
+
const nextSelection = selector(nextSnapshot);
|
|
5819
|
+
if (isEqual !== void 0 && isEqual(prevSelection, nextSelection)) {
|
|
5820
|
+
memoizedSnapshot = nextSnapshot;
|
|
5821
|
+
return prevSelection;
|
|
5822
|
+
}
|
|
5823
|
+
memoizedSnapshot = nextSnapshot;
|
|
5824
|
+
memoizedSelection = nextSelection;
|
|
5825
|
+
return nextSelection;
|
|
5826
|
+
};
|
|
5827
|
+
const maybeGetServerSnapshot = getServerSnapshot === void 0 || getServerSnapshot === null ? null : getServerSnapshot;
|
|
5828
|
+
const getSnapshotWithSelector = () => memoizedSelector(getSnapshot());
|
|
5829
|
+
const getServerSnapshotWithSelector = maybeGetServerSnapshot === null ? void 0 : () => memoizedSelector(maybeGetServerSnapshot());
|
|
5830
|
+
return [getSnapshotWithSelector, getServerSnapshotWithSelector];
|
|
5831
|
+
}, [getSnapshot, getServerSnapshot, selector, isEqual]);
|
|
5832
|
+
const value = ReactExports.useSyncExternalStore(subscribe, getSelection, getServerSelection);
|
|
5833
|
+
ReactExports.useEffect(() => {
|
|
5834
|
+
inst.hasValue = true;
|
|
5835
|
+
inst.value = value;
|
|
5836
|
+
}, [value]);
|
|
5837
|
+
ReactExports.useDebugValue(value);
|
|
5838
|
+
return value;
|
|
5839
|
+
}
|
|
5840
|
+
var use_sync_external_store_with_selector_default = { useSyncExternalStoreWithSelector };
|
|
6089
5841
|
|
|
6090
5842
|
// node_modules/zustand/esm/vanilla.mjs
|
|
6091
5843
|
var createStoreImpl = (createState) => {
|
|
@@ -6120,18 +5872,18 @@ var createStoreImpl = (createState) => {
|
|
|
6120
5872
|
var createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;
|
|
6121
5873
|
|
|
6122
5874
|
// node_modules/zustand/esm/traditional.mjs
|
|
6123
|
-
var { useDebugValue } = ReactExports__default.default;
|
|
6124
|
-
var { useSyncExternalStoreWithSelector } =
|
|
5875
|
+
var { useDebugValue: useDebugValue2 } = ReactExports__default.default;
|
|
5876
|
+
var { useSyncExternalStoreWithSelector: useSyncExternalStoreWithSelector2 } = use_sync_external_store_with_selector_default;
|
|
6125
5877
|
var identity3 = (arg) => arg;
|
|
6126
5878
|
function useStoreWithEqualityFn(api, selector = identity3, equalityFn) {
|
|
6127
|
-
const slice =
|
|
5879
|
+
const slice = useSyncExternalStoreWithSelector2(
|
|
6128
5880
|
api.subscribe,
|
|
6129
5881
|
api.getState,
|
|
6130
5882
|
api.getServerState || api.getInitialState,
|
|
6131
5883
|
selector,
|
|
6132
5884
|
equalityFn
|
|
6133
5885
|
);
|
|
6134
|
-
|
|
5886
|
+
useDebugValue2(slice);
|
|
6135
5887
|
return slice;
|
|
6136
5888
|
}
|
|
6137
5889
|
var createWithEqualityFnImpl = (createState, defaultEqualityFn) => {
|
|
@@ -6181,7 +5933,7 @@ function shallow$1(objA, objB) {
|
|
|
6181
5933
|
}
|
|
6182
5934
|
var StoreContext = ReactExports.createContext(null);
|
|
6183
5935
|
var Provider$1 = StoreContext.Provider;
|
|
6184
|
-
var zustandErrorMessage = errorMessages["error001"]();
|
|
5936
|
+
var zustandErrorMessage = errorMessages["error001"]("react");
|
|
6185
5937
|
function useStore(selector, equalityFn) {
|
|
6186
5938
|
const store = ReactExports.useContext(StoreContext);
|
|
6187
5939
|
if (store === null) {
|
|
@@ -6273,7 +6025,6 @@ function SelectionListener({ onSelectionChange }) {
|
|
|
6273
6025
|
}
|
|
6274
6026
|
return null;
|
|
6275
6027
|
}
|
|
6276
|
-
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? ReactExports.useLayoutEffect : ReactExports.useEffect;
|
|
6277
6028
|
var defaultNodeOrigin = [0, 0];
|
|
6278
6029
|
var defaultViewport = { x: 0, y: 0, zoom: 1 };
|
|
6279
6030
|
var reactFlowFieldsToTrack = [
|
|
@@ -6364,7 +6115,7 @@ var initPrevValues2 = {
|
|
|
6364
6115
|
function StoreUpdater(props) {
|
|
6365
6116
|
const { setNodes, setEdges, setMinZoom, setMaxZoom, setTranslateExtent, setNodeExtent, reset, setDefaultNodesAndEdges } = useStore(selector$l, shallow$1);
|
|
6366
6117
|
const store = useStoreApi();
|
|
6367
|
-
|
|
6118
|
+
ReactExports.useEffect(() => {
|
|
6368
6119
|
setDefaultNodesAndEdges(props.defaultNodes, props.defaultEdges);
|
|
6369
6120
|
return () => {
|
|
6370
6121
|
previousFields.current = initPrevValues2;
|
|
@@ -6372,7 +6123,7 @@ function StoreUpdater(props) {
|
|
|
6372
6123
|
};
|
|
6373
6124
|
}, []);
|
|
6374
6125
|
const previousFields = ReactExports.useRef(initPrevValues2);
|
|
6375
|
-
|
|
6126
|
+
ReactExports.useEffect(
|
|
6376
6127
|
() => {
|
|
6377
6128
|
for (const fieldName of fieldsToTrack) {
|
|
6378
6129
|
const fieldValue = props[fieldName];
|
|
@@ -6508,30 +6259,30 @@ var useViewportHelper = () => {
|
|
|
6508
6259
|
const store = useStoreApi();
|
|
6509
6260
|
return ReactExports.useMemo(() => {
|
|
6510
6261
|
return {
|
|
6511
|
-
zoomIn: (options) => {
|
|
6262
|
+
zoomIn: async (options) => {
|
|
6512
6263
|
const { panZoom } = store.getState();
|
|
6513
|
-
return panZoom ? panZoom.scaleBy(1.2, options) :
|
|
6264
|
+
return panZoom ? panZoom.scaleBy(1.2, options) : false;
|
|
6514
6265
|
},
|
|
6515
|
-
zoomOut: (options) => {
|
|
6266
|
+
zoomOut: async (options) => {
|
|
6516
6267
|
const { panZoom } = store.getState();
|
|
6517
|
-
return panZoom ? panZoom.scaleBy(1 / 1.2, options) :
|
|
6268
|
+
return panZoom ? panZoom.scaleBy(1 / 1.2, options) : false;
|
|
6518
6269
|
},
|
|
6519
|
-
zoomTo: (zoomLevel, options) => {
|
|
6270
|
+
zoomTo: async (zoomLevel, options) => {
|
|
6520
6271
|
const { panZoom } = store.getState();
|
|
6521
|
-
return panZoom ? panZoom.scaleTo(zoomLevel, options) :
|
|
6272
|
+
return panZoom ? panZoom.scaleTo(zoomLevel, options) : false;
|
|
6522
6273
|
},
|
|
6523
6274
|
getZoom: () => store.getState().transform[2],
|
|
6524
6275
|
setViewport: async (viewport, options) => {
|
|
6525
6276
|
const { transform: [tX, tY, tZoom], panZoom } = store.getState();
|
|
6526
6277
|
if (!panZoom) {
|
|
6527
|
-
return
|
|
6278
|
+
return false;
|
|
6528
6279
|
}
|
|
6529
6280
|
await panZoom.setViewport({
|
|
6530
6281
|
x: viewport.x ?? tX,
|
|
6531
6282
|
y: viewport.y ?? tY,
|
|
6532
6283
|
zoom: viewport.zoom ?? tZoom
|
|
6533
6284
|
}, options);
|
|
6534
|
-
return
|
|
6285
|
+
return true;
|
|
6535
6286
|
},
|
|
6536
6287
|
getViewport: () => {
|
|
6537
6288
|
const [x, y, zoom] = store.getState().transform;
|
|
@@ -6544,14 +6295,14 @@ var useViewportHelper = () => {
|
|
|
6544
6295
|
const { width, height, minZoom, maxZoom, panZoom } = store.getState();
|
|
6545
6296
|
const viewport = getViewportForBounds(bounds, width, height, minZoom, maxZoom, options?.padding ?? 0.1);
|
|
6546
6297
|
if (!panZoom) {
|
|
6547
|
-
return
|
|
6298
|
+
return false;
|
|
6548
6299
|
}
|
|
6549
6300
|
await panZoom.setViewport(viewport, {
|
|
6550
6301
|
duration: options?.duration,
|
|
6551
6302
|
ease: options?.ease,
|
|
6552
6303
|
interpolate: options?.interpolate
|
|
6553
6304
|
});
|
|
6554
|
-
return
|
|
6305
|
+
return true;
|
|
6555
6306
|
},
|
|
6556
6307
|
screenToFlowPosition: (clientPosition, options = {}) => {
|
|
6557
6308
|
const { transform: transform2, snapGrid, snapToGrid, domNode } = store.getState();
|
|
@@ -6720,11 +6471,19 @@ function elementToRemoveChange(item) {
|
|
|
6720
6471
|
type: "remove"
|
|
6721
6472
|
};
|
|
6722
6473
|
}
|
|
6474
|
+
var defaultOnError = createDevWarn("React Flow", "https://reactflow.dev/");
|
|
6475
|
+
function addEdge2(edgeParams, edges, options = {}) {
|
|
6476
|
+
return addEdge(edgeParams, edges, {
|
|
6477
|
+
...options,
|
|
6478
|
+
onError: options.onError ?? defaultOnError
|
|
6479
|
+
});
|
|
6480
|
+
}
|
|
6723
6481
|
var isNode = (element) => isNodeBase(element);
|
|
6724
6482
|
var isEdge = (element) => isEdgeBase(element);
|
|
6725
6483
|
function fixedForwardRef(render) {
|
|
6726
6484
|
return ReactExports.forwardRef(render);
|
|
6727
6485
|
}
|
|
6486
|
+
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? ReactExports.useLayoutEffect : ReactExports.useEffect;
|
|
6728
6487
|
function useQueue(runQueue) {
|
|
6729
6488
|
const [serial, setSerial] = ReactExports.useState(BigInt(0));
|
|
6730
6489
|
const [queue] = ReactExports.useState(() => createQueue(() => setSerial((n) => n + BigInt(1))));
|
|
@@ -7155,17 +6914,22 @@ var selector$h = (s) => ({
|
|
|
7155
6914
|
userSelectionActive: s.userSelectionActive,
|
|
7156
6915
|
elementsSelectable: s.elementsSelectable,
|
|
7157
6916
|
connectionInProgress: s.connection.inProgress,
|
|
7158
|
-
dragging: s.paneDragging
|
|
6917
|
+
dragging: s.paneDragging,
|
|
6918
|
+
panBy: s.panBy,
|
|
6919
|
+
autoPanSpeed: s.autoPanSpeed
|
|
7159
6920
|
});
|
|
7160
|
-
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, paneClickDistance, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
6921
|
+
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, autoPanOnSelection, paneClickDistance, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
6922
|
+
const autoPanId = ReactExports.useRef(0);
|
|
7161
6923
|
const store = useStoreApi();
|
|
7162
|
-
const { userSelectionActive, elementsSelectable, dragging, connectionInProgress } = useStore(selector$h, shallow$1);
|
|
6924
|
+
const { userSelectionActive, elementsSelectable, dragging, connectionInProgress, panBy: panBy2, autoPanSpeed } = useStore(selector$h, shallow$1);
|
|
7163
6925
|
const isSelectionEnabled = elementsSelectable && (isSelecting || userSelectionActive);
|
|
7164
6926
|
const container = ReactExports.useRef(null);
|
|
7165
6927
|
const containerBounds = ReactExports.useRef();
|
|
7166
6928
|
const selectedNodeIds = ReactExports.useRef(/* @__PURE__ */ new Set());
|
|
7167
6929
|
const selectedEdgeIds = ReactExports.useRef(/* @__PURE__ */ new Set());
|
|
7168
6930
|
const selectionInProgress = ReactExports.useRef(false);
|
|
6931
|
+
const position = ReactExports.useRef({ x: 0, y: 0 });
|
|
6932
|
+
const autoPanStarted = ReactExports.useRef(false);
|
|
7169
6933
|
const onClick = (event) => {
|
|
7170
6934
|
if (selectionInProgress.current || connectionInProgress) {
|
|
7171
6935
|
selectionInProgress.current = false;
|
|
@@ -7190,7 +6954,7 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7190
6954
|
}
|
|
7191
6955
|
};
|
|
7192
6956
|
const onPointerDownCapture = (event) => {
|
|
7193
|
-
const { domNode } = store.getState();
|
|
6957
|
+
const { domNode, transform: transform2 } = store.getState();
|
|
7194
6958
|
containerBounds.current = domNode?.getBoundingClientRect();
|
|
7195
6959
|
if (!containerBounds.current)
|
|
7196
6960
|
return;
|
|
@@ -7203,12 +6967,13 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7203
6967
|
event.target?.setPointerCapture?.(event.pointerId);
|
|
7204
6968
|
selectionInProgress.current = false;
|
|
7205
6969
|
const { x, y } = getEventPosition(event.nativeEvent, containerBounds.current);
|
|
6970
|
+
const userSelectionStartPosition = pointToRendererPoint({ x, y }, transform2);
|
|
7206
6971
|
store.setState({
|
|
7207
6972
|
userSelectionRect: {
|
|
7208
6973
|
width: 0,
|
|
7209
6974
|
height: 0,
|
|
7210
|
-
startX: x,
|
|
7211
|
-
startY: y,
|
|
6975
|
+
startX: userSelectionStartPosition.x,
|
|
6976
|
+
startY: userSelectionStartPosition.y,
|
|
7212
6977
|
x,
|
|
7213
6978
|
y
|
|
7214
6979
|
}
|
|
@@ -7218,30 +6983,21 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7218
6983
|
event.preventDefault();
|
|
7219
6984
|
}
|
|
7220
6985
|
};
|
|
7221
|
-
|
|
7222
|
-
const { userSelectionRect
|
|
7223
|
-
if (!
|
|
6986
|
+
function commitUserSelectionRect(mouseX, mouseY) {
|
|
6987
|
+
const { userSelectionRect } = store.getState();
|
|
6988
|
+
if (!userSelectionRect) {
|
|
7224
6989
|
return;
|
|
7225
6990
|
}
|
|
7226
|
-
const {
|
|
7227
|
-
const { startX, startY }
|
|
7228
|
-
|
|
7229
|
-
const requiredDistance = selectionKeyPressed ? 0 : paneClickDistance;
|
|
7230
|
-
const distance2 = Math.hypot(mouseX - startX, mouseY - startY);
|
|
7231
|
-
if (distance2 <= requiredDistance) {
|
|
7232
|
-
return;
|
|
7233
|
-
}
|
|
7234
|
-
resetSelectedElements();
|
|
7235
|
-
onSelectionStart?.(event);
|
|
7236
|
-
}
|
|
7237
|
-
selectionInProgress.current = true;
|
|
6991
|
+
const { transform: transform2, nodeLookup, edgeLookup, connectionLookup, triggerNodeChanges, triggerEdgeChanges, defaultEdgeOptions } = store.getState();
|
|
6992
|
+
const userStartPosition = { x: userSelectionRect.startX, y: userSelectionRect.startY };
|
|
6993
|
+
const { x: screenStartX, y: screenStartY } = rendererPointToPoint(userStartPosition, transform2);
|
|
7238
6994
|
const nextUserSelectRect = {
|
|
7239
|
-
startX,
|
|
7240
|
-
startY,
|
|
7241
|
-
x: mouseX <
|
|
7242
|
-
y: mouseY <
|
|
7243
|
-
width: Math.abs(mouseX -
|
|
7244
|
-
height: Math.abs(mouseY -
|
|
6995
|
+
startX: userStartPosition.x,
|
|
6996
|
+
startY: userStartPosition.y,
|
|
6997
|
+
x: mouseX < screenStartX ? mouseX : screenStartX,
|
|
6998
|
+
y: mouseY < screenStartY ? mouseY : screenStartY,
|
|
6999
|
+
width: Math.abs(mouseX - screenStartX),
|
|
7000
|
+
height: Math.abs(mouseY - screenStartY)
|
|
7245
7001
|
};
|
|
7246
7002
|
const prevSelectedNodeIds = selectedNodeIds.current;
|
|
7247
7003
|
const prevSelectedEdgeIds = selectedEdgeIds.current;
|
|
@@ -7272,6 +7028,53 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7272
7028
|
userSelectionActive: true,
|
|
7273
7029
|
nodesSelectionActive: false
|
|
7274
7030
|
});
|
|
7031
|
+
}
|
|
7032
|
+
function autoPan() {
|
|
7033
|
+
if (!autoPanOnSelection || !containerBounds.current) {
|
|
7034
|
+
return;
|
|
7035
|
+
}
|
|
7036
|
+
const [x, y] = calcAutoPan(position.current, containerBounds.current, autoPanSpeed);
|
|
7037
|
+
panBy2({ x, y }).then((panned) => {
|
|
7038
|
+
if (!selectionInProgress.current || !panned) {
|
|
7039
|
+
autoPanId.current = requestAnimationFrame(autoPan);
|
|
7040
|
+
return;
|
|
7041
|
+
}
|
|
7042
|
+
const { x: mx, y: my } = position.current;
|
|
7043
|
+
commitUserSelectionRect(mx, my);
|
|
7044
|
+
autoPanId.current = requestAnimationFrame(autoPan);
|
|
7045
|
+
});
|
|
7046
|
+
}
|
|
7047
|
+
const cleanupAutoPan = () => {
|
|
7048
|
+
cancelAnimationFrame(autoPanId.current);
|
|
7049
|
+
autoPanId.current = 0;
|
|
7050
|
+
autoPanStarted.current = false;
|
|
7051
|
+
};
|
|
7052
|
+
ReactExports.useEffect(() => {
|
|
7053
|
+
return () => cleanupAutoPan();
|
|
7054
|
+
}, []);
|
|
7055
|
+
const onPointerMove = (event) => {
|
|
7056
|
+
const { userSelectionRect, transform: transform2, resetSelectedElements } = store.getState();
|
|
7057
|
+
if (!containerBounds.current || !userSelectionRect) {
|
|
7058
|
+
return;
|
|
7059
|
+
}
|
|
7060
|
+
const { x: mouseX, y: mouseY } = getEventPosition(event.nativeEvent, containerBounds.current);
|
|
7061
|
+
position.current = { x: mouseX, y: mouseY };
|
|
7062
|
+
const screenStart = rendererPointToPoint({ x: userSelectionRect.startX, y: userSelectionRect.startY }, transform2);
|
|
7063
|
+
if (!selectionInProgress.current) {
|
|
7064
|
+
const requiredDistance = selectionKeyPressed ? 0 : paneClickDistance;
|
|
7065
|
+
const distance2 = Math.hypot(mouseX - screenStart.x, mouseY - screenStart.y);
|
|
7066
|
+
if (distance2 <= requiredDistance) {
|
|
7067
|
+
return;
|
|
7068
|
+
}
|
|
7069
|
+
resetSelectedElements();
|
|
7070
|
+
onSelectionStart?.(event);
|
|
7071
|
+
}
|
|
7072
|
+
selectionInProgress.current = true;
|
|
7073
|
+
if (!autoPanStarted.current) {
|
|
7074
|
+
autoPan();
|
|
7075
|
+
autoPanStarted.current = true;
|
|
7076
|
+
}
|
|
7077
|
+
commitUserSelectionRect(mouseX, mouseY);
|
|
7275
7078
|
};
|
|
7276
7079
|
const onPointerUp = (event) => {
|
|
7277
7080
|
if (event.button !== 0) {
|
|
@@ -7291,9 +7094,14 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7291
7094
|
nodesSelectionActive: selectedNodeIds.current.size > 0
|
|
7292
7095
|
});
|
|
7293
7096
|
}
|
|
7097
|
+
cleanupAutoPan();
|
|
7098
|
+
};
|
|
7099
|
+
const onPointerCancel = (event) => {
|
|
7100
|
+
event.target?.releasePointerCapture?.(event.pointerId);
|
|
7101
|
+
cleanupAutoPan();
|
|
7294
7102
|
};
|
|
7295
7103
|
const draggable = panOnDrag === true || Array.isArray(panOnDrag) && panOnDrag.includes(0);
|
|
7296
|
-
return jsxRuntime.jsxs("div", { className: cc(["react-flow__pane", { draggable, dragging, selection: isSelecting }]), onClick: isSelectionEnabled ? void 0 : wrapHandler(onClick, container), onContextMenu: wrapHandler(onContextMenu, container), onWheel: wrapHandler(onWheel, container), onPointerEnter: isSelectionEnabled ? void 0 : onPaneMouseEnter, onPointerMove: isSelectionEnabled ? onPointerMove : onPaneMouseMove, onPointerUp: isSelectionEnabled ? onPointerUp : void 0, onPointerDownCapture: isSelectionEnabled ? onPointerDownCapture : void 0, onClickCapture: isSelectionEnabled ? onClickCapture : void 0, onPointerLeave: onPaneMouseLeave, ref: container, style: containerStyle, children: [children2, jsxRuntime.jsx(UserSelection, {})] });
|
|
7104
|
+
return jsxRuntime.jsxs("div", { className: cc(["react-flow__pane", { draggable, dragging, selection: isSelecting }]), onClick: isSelectionEnabled ? void 0 : wrapHandler(onClick, container), onContextMenu: wrapHandler(onContextMenu, container), onWheel: wrapHandler(onWheel, container), onPointerEnter: isSelectionEnabled ? void 0 : onPaneMouseEnter, onPointerMove: isSelectionEnabled ? onPointerMove : onPaneMouseMove, onPointerUp: isSelectionEnabled ? onPointerUp : void 0, onPointerCancel: isSelectionEnabled ? onPointerCancel : void 0, onPointerDownCapture: isSelectionEnabled ? onPointerDownCapture : void 0, onClickCapture: isSelectionEnabled ? onClickCapture : void 0, onPointerLeave: onPaneMouseLeave, ref: container, style: containerStyle, children: [children2, jsxRuntime.jsx(UserSelection, {})] });
|
|
7297
7105
|
}
|
|
7298
7106
|
function handleNodeClick({ id: id2, store, unselect = false, nodeRef }) {
|
|
7299
7107
|
const { addSelectedNodes, unselectNodesAndEdges, multiSelectionActive, nodeLookup, onError } = store.getState();
|
|
@@ -7431,8 +7239,8 @@ function HandleComponent({ type = "source", position = Position.Top, isValidConn
|
|
|
7431
7239
|
...params
|
|
7432
7240
|
};
|
|
7433
7241
|
if (hasDefaultEdges) {
|
|
7434
|
-
const { edges, setEdges } = store.getState();
|
|
7435
|
-
setEdges(
|
|
7242
|
+
const { edges, setEdges, onError } = store.getState();
|
|
7243
|
+
setEdges(addEdge2(edgeParams, edges, { onError }));
|
|
7436
7244
|
}
|
|
7437
7245
|
onConnectAction?.(edgeParams);
|
|
7438
7246
|
onConnect?.(edgeParams);
|
|
@@ -7628,7 +7436,7 @@ var win = typeof window !== "undefined" ? window : void 0;
|
|
|
7628
7436
|
var selector$e = (s) => {
|
|
7629
7437
|
return { nodesSelectionActive: s.nodesSelectionActive, userSelectionActive: s.userSelectionActive };
|
|
7630
7438
|
};
|
|
7631
|
-
function FlowRendererComponent({ children: children2, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, paneClickDistance, deleteKeyCode, selectionKeyCode, selectionOnDrag, selectionMode, onSelectionStart, onSelectionEnd, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll: _panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: _panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, preventScrolling, onSelectionContextMenu, noWheelClassName, noPanClassName, disableKeyboardA11y, onViewportChange, isControlledViewport }) {
|
|
7439
|
+
function FlowRendererComponent({ children: children2, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, paneClickDistance, deleteKeyCode, selectionKeyCode, selectionOnDrag, selectionMode, onSelectionStart, onSelectionEnd, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll: _panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: _panOnDrag, autoPanOnSelection, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, preventScrolling, onSelectionContextMenu, noWheelClassName, noPanClassName, disableKeyboardA11y, onViewportChange, isControlledViewport }) {
|
|
7632
7440
|
const { nodesSelectionActive, userSelectionActive } = useStore(selector$e, shallow$1);
|
|
7633
7441
|
const selectionKeyPressed = useKeyPress(selectionKeyCode, { target: win });
|
|
7634
7442
|
const panActivationKeyPressed = useKeyPress(panActivationKeyCode, { target: win });
|
|
@@ -7637,7 +7445,7 @@ function FlowRendererComponent({ children: children2, onPaneClick, onPaneMouseEn
|
|
|
7637
7445
|
const _selectionOnDrag = selectionOnDrag && panOnDrag !== true;
|
|
7638
7446
|
const isSelecting = selectionKeyPressed || userSelectionActive || _selectionOnDrag;
|
|
7639
7447
|
useGlobalKeyHandler({ deleteKeyCode, multiSelectionKeyCode });
|
|
7640
|
-
return jsxRuntime.jsx(ZoomPane, { onPaneContextMenu, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: !selectionKeyPressed && panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: jsxRuntime.jsxs(Pane, { onSelectionStart, onSelectionEnd, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, panOnDrag, isSelecting: !!isSelecting, selectionMode, selectionKeyPressed, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: [children2, nodesSelectionActive && jsxRuntime.jsx(NodesSelection, { onSelectionContextMenu, noPanClassName, disableKeyboardA11y })] }) });
|
|
7448
|
+
return jsxRuntime.jsx(ZoomPane, { onPaneContextMenu, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: !selectionKeyPressed && panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: jsxRuntime.jsxs(Pane, { onSelectionStart, onSelectionEnd, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, panOnDrag, autoPanOnSelection, isSelecting: !!isSelecting, selectionMode, selectionKeyPressed, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: [children2, nodesSelectionActive && jsxRuntime.jsx(NodesSelection, { onSelectionContextMenu, noPanClassName, disableKeyboardA11y })] }) });
|
|
7641
7449
|
}
|
|
7642
7450
|
FlowRendererComponent.displayName = "FlowRenderer";
|
|
7643
7451
|
var FlowRenderer = ReactExports.memo(FlowRendererComponent);
|
|
@@ -8442,16 +8250,17 @@ function useStylesLoadedWarning() {
|
|
|
8442
8250
|
}
|
|
8443
8251
|
}, []);
|
|
8444
8252
|
}
|
|
8445
|
-
function GraphViewComponent({ nodeTypes, edgeTypes, onInit, onNodeClick, onEdgeClick, onNodeDoubleClick, onEdgeDoubleClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onSelectionContextMenu, onSelectionStart, onSelectionEnd, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, deleteKeyCode, onlyRenderVisibleElements, elementsSelectable, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, preventScrolling, defaultMarkerColor, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onEdgeContextMenu, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, onReconnect, onReconnectStart, onReconnectEnd, noDragClassName, noWheelClassName, noPanClassName, disableKeyboardA11y, nodeExtent, rfId, viewport, onViewportChange }) {
|
|
8253
|
+
function GraphViewComponent({ nodeTypes, edgeTypes, onInit, onNodeClick, onEdgeClick, onNodeDoubleClick, onEdgeDoubleClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onSelectionContextMenu, onSelectionStart, onSelectionEnd, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, deleteKeyCode, onlyRenderVisibleElements, elementsSelectable, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, preventScrolling, defaultMarkerColor, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag, autoPanOnSelection, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onEdgeContextMenu, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, onReconnect, onReconnectStart, onReconnectEnd, noDragClassName, noWheelClassName, noPanClassName, disableKeyboardA11y, nodeExtent, rfId, viewport, onViewportChange }) {
|
|
8446
8254
|
useNodeOrEdgeTypesWarning(nodeTypes);
|
|
8447
8255
|
useNodeOrEdgeTypesWarning(edgeTypes);
|
|
8448
8256
|
useStylesLoadedWarning();
|
|
8449
8257
|
useOnInitHandler(onInit);
|
|
8450
8258
|
useViewportSync(viewport);
|
|
8451
|
-
return jsxRuntime.jsx(FlowRenderer, { onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, paneClickDistance, deleteKeyCode, selectionKeyCode, selectionOnDrag, selectionMode, onSelectionStart, onSelectionEnd, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, elementsSelectable, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, onSelectionContextMenu, preventScrolling, noDragClassName, noWheelClassName, noPanClassName, disableKeyboardA11y, onViewportChange, isControlledViewport: !!viewport, children: jsxRuntime.jsxs(Viewport, { children: [jsxRuntime.jsx(EdgeRenderer, { edgeTypes, onEdgeClick, onEdgeDoubleClick, onReconnect, onReconnectStart, onReconnectEnd, onlyRenderVisibleElements, onEdgeContextMenu, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noPanClassName, disableKeyboardA11y, rfId }), jsxRuntime.jsx(ConnectionLineWrapper, { style: connectionLineStyle, type: connectionLineType, component: connectionLineComponent, containerStyle: connectionLineContainerStyle }), jsxRuntime.jsx("div", { className: "react-flow__edgelabel-renderer" }), jsxRuntime.jsx(NodeRenderer, { nodeTypes, onNodeClick, onNodeDoubleClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, nodeClickDistance, onlyRenderVisibleElements, noPanClassName, noDragClassName, disableKeyboardA11y, nodeExtent, rfId }), jsxRuntime.jsx("div", { className: "react-flow__viewport-portal" })] }) });
|
|
8259
|
+
return jsxRuntime.jsx(FlowRenderer, { onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, paneClickDistance, deleteKeyCode, selectionKeyCode, selectionOnDrag, selectionMode, onSelectionStart, onSelectionEnd, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, elementsSelectable, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, autoPanOnSelection, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, onSelectionContextMenu, preventScrolling, noDragClassName, noWheelClassName, noPanClassName, disableKeyboardA11y, onViewportChange, isControlledViewport: !!viewport, children: jsxRuntime.jsxs(Viewport, { children: [jsxRuntime.jsx(EdgeRenderer, { edgeTypes, onEdgeClick, onEdgeDoubleClick, onReconnect, onReconnectStart, onReconnectEnd, onlyRenderVisibleElements, onEdgeContextMenu, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noPanClassName, disableKeyboardA11y, rfId }), jsxRuntime.jsx(ConnectionLineWrapper, { style: connectionLineStyle, type: connectionLineType, component: connectionLineComponent, containerStyle: connectionLineContainerStyle }), jsxRuntime.jsx("div", { className: "react-flow__edgelabel-renderer" }), jsxRuntime.jsx(NodeRenderer, { nodeTypes, onNodeClick, onNodeDoubleClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, nodeClickDistance, onlyRenderVisibleElements, noPanClassName, noDragClassName, disableKeyboardA11y, nodeExtent, rfId }), jsxRuntime.jsx("div", { className: "react-flow__viewport-portal" })] }) });
|
|
8452
8260
|
}
|
|
8453
8261
|
GraphViewComponent.displayName = "GraphView";
|
|
8454
8262
|
var GraphView = ReactExports.memo(GraphViewComponent);
|
|
8263
|
+
var devWarn = createDevWarn("React Flow", "https://reactflow.dev/");
|
|
8455
8264
|
var getInitialState = ({ nodes, edges, defaultNodes, defaultEdges, width, height, fitView, fitViewOptions, minZoom = 0.5, maxZoom = 2, nodeOrigin, nodeExtent, zIndexMode = "basic" } = {}) => {
|
|
8456
8265
|
const nodeLookup = /* @__PURE__ */ new Map();
|
|
8457
8266
|
const parentLookup = /* @__PURE__ */ new Map();
|
|
@@ -8798,7 +8607,7 @@ var createStore2 = ({ nodes, edges, defaultNodes, defaultEdges, width, height, f
|
|
|
8798
8607
|
setCenter: async (x, y, options) => {
|
|
8799
8608
|
const { width: width2, height: height2, maxZoom: maxZoom2, panZoom } = get3();
|
|
8800
8609
|
if (!panZoom) {
|
|
8801
|
-
return
|
|
8610
|
+
return false;
|
|
8802
8611
|
}
|
|
8803
8612
|
const nextZoom = typeof options?.zoom !== "undefined" ? options.zoom : maxZoom2;
|
|
8804
8613
|
await panZoom.setViewport({
|
|
@@ -8806,7 +8615,7 @@ var createStore2 = ({ nodes, edges, defaultNodes, defaultEdges, width, height, f
|
|
|
8806
8615
|
y: height2 / 2 - y * nextZoom,
|
|
8807
8616
|
zoom: nextZoom
|
|
8808
8617
|
}, { duration: options?.duration, ease: options?.ease, interpolate: options?.interpolate });
|
|
8809
|
-
return
|
|
8618
|
+
return true;
|
|
8810
8619
|
},
|
|
8811
8620
|
cancelConnection: () => {
|
|
8812
8621
|
set3({
|
|
@@ -8851,14 +8660,14 @@ var wrapperStyle = {
|
|
|
8851
8660
|
position: "relative",
|
|
8852
8661
|
zIndex: 0
|
|
8853
8662
|
};
|
|
8854
|
-
function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes, edgeTypes, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = false, selectionMode = SelectionMode.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = false, selectNodesOnDrag, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = true, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = true, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = true, zoomOnPinch = true, panOnScroll = false, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = true, panOnDrag = true, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 1, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect = true, elevateEdgesOnSelect = false, disableKeyboardA11y = false, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, connectionDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug, onScroll, ariaLabelConfig, zIndexMode = "basic", ...rest }, ref) {
|
|
8663
|
+
function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes, edgeTypes, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = false, selectionMode = SelectionMode.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = false, selectNodesOnDrag, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = true, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = true, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = true, zoomOnPinch = true, panOnScroll = false, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = true, panOnDrag = true, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 1, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect = true, elevateEdgesOnSelect = false, disableKeyboardA11y = false, autoPanOnConnect, autoPanOnNodeDrag, autoPanOnSelection = true, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, connectionDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug, onScroll, ariaLabelConfig, zIndexMode = "basic", ...rest }, ref) {
|
|
8855
8664
|
const rfId = id2 || "1";
|
|
8856
8665
|
const colorModeClassName = useColorModeClass(colorMode);
|
|
8857
8666
|
const wrapperOnScroll = ReactExports.useCallback((e) => {
|
|
8858
8667
|
e.currentTarget.scrollTo({ top: 0, left: 0, behavior: "instant" });
|
|
8859
8668
|
onScroll?.(e);
|
|
8860
8669
|
}, [onScroll]);
|
|
8861
|
-
return jsxRuntime.jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxRuntime.jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, zIndexMode, children: [jsxRuntime.jsx(StoreUpdater, { nodes, edges, defaultNodes, defaultEdges, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, edgesFocusable, edgesReconnectable, elementsSelectable, elevateNodesOnSelect, elevateEdgesOnSelect, minZoom, maxZoom, nodeExtent, onNodesChange, onEdgesChange, snapToGrid, snapGrid, connectionMode, translateExtent, connectOnClick, defaultEdgeOptions, fitView, fitViewOptions, onNodesDelete, onEdgesDelete, onDelete, onNodeDragStart, onNodeDrag, onNodeDragStop, onSelectionDrag, onSelectionDragStart, onSelectionDragStop, onMove, onMoveStart, onMoveEnd, noPanClassName, nodeOrigin, rfId, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, onError, connectionRadius, isValidConnection, selectNodesOnDrag, nodeDragThreshold, connectionDragThreshold, onBeforeDelete, debug, ariaLabelConfig, zIndexMode }), jsxRuntime.jsx(GraphView, { onInit, onNodeClick, onEdgeClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, nodeTypes, edgeTypes, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, deleteKeyCode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, onlyRenderVisibleElements, defaultViewport: defaultViewport$1, translateExtent, minZoom, maxZoom, preventScrolling, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noDragClassName, noWheelClassName, noPanClassName, rfId, disableKeyboardA11y, nodeExtent, viewport, onViewportChange }), jsxRuntime.jsx(SelectionListener, { onSelectionChange }), children2, jsxRuntime.jsx(Attribution, { proOptions, position: attributionPosition }), jsxRuntime.jsx(A11yDescriptions, { rfId, disableKeyboardA11y })] }) });
|
|
8670
|
+
return jsxRuntime.jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxRuntime.jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, zIndexMode, children: [jsxRuntime.jsx(StoreUpdater, { nodes, edges, defaultNodes, defaultEdges, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, edgesFocusable, edgesReconnectable, elementsSelectable, elevateNodesOnSelect, elevateEdgesOnSelect, minZoom, maxZoom, nodeExtent, onNodesChange, onEdgesChange, snapToGrid, snapGrid, connectionMode, translateExtent, connectOnClick, defaultEdgeOptions, fitView, fitViewOptions, onNodesDelete, onEdgesDelete, onDelete, onNodeDragStart, onNodeDrag, onNodeDragStop, onSelectionDrag, onSelectionDragStart, onSelectionDragStop, onMove, onMoveStart, onMoveEnd, noPanClassName, nodeOrigin, rfId, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, onError, connectionRadius, isValidConnection, selectNodesOnDrag, nodeDragThreshold, connectionDragThreshold, onBeforeDelete, debug, ariaLabelConfig, zIndexMode }), jsxRuntime.jsx(GraphView, { onInit, onNodeClick, onEdgeClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, nodeTypes, edgeTypes, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, deleteKeyCode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, onlyRenderVisibleElements, defaultViewport: defaultViewport$1, translateExtent, minZoom, maxZoom, preventScrolling, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, autoPanOnSelection, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noDragClassName, noWheelClassName, noPanClassName, rfId, disableKeyboardA11y, nodeExtent, viewport, onViewportChange }), jsxRuntime.jsx(SelectionListener, { onSelectionChange }), children2, jsxRuntime.jsx(Attribution, { proOptions, position: attributionPosition }), jsxRuntime.jsx(A11yDescriptions, { rfId, disableKeyboardA11y })] }) });
|
|
8862
8671
|
}
|
|
8863
8672
|
fixedForwardRef(ReactFlow);
|
|
8864
8673
|
function LinePattern({ dimensions, lineWidth, variant, className }) {
|
|
@@ -9305,57 +9114,11 @@ function useFlowState(initial) {
|
|
|
9305
9114
|
setEdges((es) => applyEdgeChanges(changes, es));
|
|
9306
9115
|
}, []);
|
|
9307
9116
|
const onConnect = ReactExports.useCallback((connection) => {
|
|
9308
|
-
setEdges((es) =>
|
|
9117
|
+
setEdges((es) => addEdge2(connection, es));
|
|
9309
9118
|
}, []);
|
|
9310
9119
|
const toGraph = ReactExports.useCallback(() => ({ nodes, edges }), [nodes, edges]);
|
|
9311
9120
|
return { nodes, edges, setNodes, setEdges, onNodesChange, onEdgesChange, onConnect, toGraph };
|
|
9312
9121
|
}
|
|
9313
|
-
/*! Bundled license information:
|
|
9314
|
-
|
|
9315
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
9316
|
-
(**
|
|
9317
|
-
* @license React
|
|
9318
|
-
* use-sync-external-store-shim.production.js
|
|
9319
|
-
*
|
|
9320
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9321
|
-
*
|
|
9322
|
-
* This source code is licensed under the MIT license found in the
|
|
9323
|
-
* LICENSE file in the root directory of this source tree.
|
|
9324
|
-
*)
|
|
9325
|
-
|
|
9326
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.development.js:
|
|
9327
|
-
(**
|
|
9328
|
-
* @license React
|
|
9329
|
-
* use-sync-external-store-shim.development.js
|
|
9330
|
-
*
|
|
9331
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9332
|
-
*
|
|
9333
|
-
* This source code is licensed under the MIT license found in the
|
|
9334
|
-
* LICENSE file in the root directory of this source tree.
|
|
9335
|
-
*)
|
|
9336
|
-
|
|
9337
|
-
use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js:
|
|
9338
|
-
(**
|
|
9339
|
-
* @license React
|
|
9340
|
-
* use-sync-external-store-shim/with-selector.production.js
|
|
9341
|
-
*
|
|
9342
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9343
|
-
*
|
|
9344
|
-
* This source code is licensed under the MIT license found in the
|
|
9345
|
-
* LICENSE file in the root directory of this source tree.
|
|
9346
|
-
*)
|
|
9347
|
-
|
|
9348
|
-
use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js:
|
|
9349
|
-
(**
|
|
9350
|
-
* @license React
|
|
9351
|
-
* use-sync-external-store-shim/with-selector.development.js
|
|
9352
|
-
*
|
|
9353
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9354
|
-
*
|
|
9355
|
-
* This source code is licensed under the MIT license found in the
|
|
9356
|
-
* LICENSE file in the root directory of this source tree.
|
|
9357
|
-
*)
|
|
9358
|
-
*/
|
|
9359
9122
|
|
|
9360
9123
|
exports.applyStatusesToNodes = applyStatusesToNodes;
|
|
9361
9124
|
exports.runFlow = runFlow;
|