@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/registry.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 useState2 = 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 = useState2({ 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 = useState2({
|
|
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, useState2 = 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 useRef2 = React.useRef;
|
|
180
|
-
var useEffect2 = React.useEffect;
|
|
181
|
-
var useMemo3 = React.useMemo;
|
|
182
|
-
var useDebugValue2 = React.useDebugValue;
|
|
183
|
-
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
184
|
-
var instRef = useRef2(null);
|
|
185
|
-
if (null === instRef.current) {
|
|
186
|
-
var inst = { hasValue: false, value: null };
|
|
187
|
-
instRef.current = inst;
|
|
188
|
-
} else inst = instRef.current;
|
|
189
|
-
instRef = useMemo3(
|
|
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, useRef2 = React.useRef, useEffect2 = React.useEffect, useMemo3 = React.useMemo, useDebugValue2 = React.useDebugValue;
|
|
246
|
-
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
247
|
-
var instRef = useRef2(null);
|
|
248
|
-
if (null === instRef.current) {
|
|
249
|
-
var inst = { hasValue: false, value: null };
|
|
250
|
-
instRef.current = inst;
|
|
251
|
-
} else inst = instRef.current;
|
|
252
|
-
instRef = useMemo3(
|
|
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/registry/registry.ts
|
|
315
12
|
var kinds = /* @__PURE__ */ new Map();
|
|
316
13
|
var listeners = /* @__PURE__ */ new Set();
|
|
@@ -3358,10 +3055,10 @@ function zoom_default2() {
|
|
|
3358
3055
|
|
|
3359
3056
|
// node_modules/@xyflow/system/dist/esm/index.js
|
|
3360
3057
|
var errorMessages = {
|
|
3361
|
-
error001: (
|
|
3058
|
+
error001: (lib = "react") => `Seems like you have not used zustand provider as an ancestor. Help: https://${lib}flow.dev/error#001`,
|
|
3362
3059
|
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.",
|
|
3363
3060
|
error003: (nodeType) => `Node type "${nodeType}" not found. Using fallback type "default".`,
|
|
3364
|
-
error004: () => "The
|
|
3061
|
+
error004: () => "The parent container needs a width and a height to render the graph.",
|
|
3365
3062
|
error005: () => "Only child nodes can use a parent extent.",
|
|
3366
3063
|
error006: () => "Can't create edge. An edge needs a source and a target.",
|
|
3367
3064
|
error007: (id2) => `The old edge with id=${id2} does not exist.`,
|
|
@@ -3372,7 +3069,8 @@ var errorMessages = {
|
|
|
3372
3069
|
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.`,
|
|
3373
3070
|
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.`,
|
|
3374
3071
|
error014: () => "useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",
|
|
3375
|
-
error015: () => "It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."
|
|
3072
|
+
error015: () => "It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",
|
|
3073
|
+
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.`
|
|
3376
3074
|
};
|
|
3377
3075
|
var infiniteExtent = [
|
|
3378
3076
|
[Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY],
|
|
@@ -3540,7 +3238,7 @@ function getFitViewNodes(nodeLookup, options) {
|
|
|
3540
3238
|
}
|
|
3541
3239
|
async function fitViewport({ nodes, width, height, panZoom, minZoom, maxZoom }, options) {
|
|
3542
3240
|
if (nodes.size === 0) {
|
|
3543
|
-
return
|
|
3241
|
+
return true;
|
|
3544
3242
|
}
|
|
3545
3243
|
const nodesToFit = getFitViewNodes(nodes, options);
|
|
3546
3244
|
const bounds = getInternalNodesBounds(nodesToFit);
|
|
@@ -3550,7 +3248,7 @@ async function fitViewport({ nodes, width, height, panZoom, minZoom, maxZoom },
|
|
|
3550
3248
|
ease: options?.ease,
|
|
3551
3249
|
interpolate: options?.interpolate
|
|
3552
3250
|
});
|
|
3553
|
-
return
|
|
3251
|
+
return true;
|
|
3554
3252
|
}
|
|
3555
3253
|
function calculateNodePosition({ nodeId, nextPosition, nodeLookup, nodeOrigin = [0, 0], nodeExtent, onError }) {
|
|
3556
3254
|
const node = nodeLookup.get(nodeId);
|
|
@@ -3697,9 +3395,9 @@ var getOverlappingArea = (rectA, rectB) => {
|
|
|
3697
3395
|
};
|
|
3698
3396
|
var isRectObject = (obj) => isNumeric(obj.width) && isNumeric(obj.height) && isNumeric(obj.x) && isNumeric(obj.y);
|
|
3699
3397
|
var isNumeric = (n) => !isNaN(n) && isFinite(n);
|
|
3700
|
-
var
|
|
3398
|
+
var createDevWarn = (lib, helpUrl) => (id2, message) => {
|
|
3701
3399
|
if (process.env.NODE_ENV === "development") {
|
|
3702
|
-
console.warn(`[
|
|
3400
|
+
console.warn(`[${lib}]: ${message} Help: ${helpUrl}error#${id2}`);
|
|
3703
3401
|
}
|
|
3704
3402
|
};
|
|
3705
3403
|
var snapPosition = (position, snapGrid = [1, 1]) => {
|
|
@@ -3737,7 +3435,7 @@ function parsePadding(padding, viewport) {
|
|
|
3737
3435
|
return Math.floor(viewport * paddingValue * 0.01);
|
|
3738
3436
|
}
|
|
3739
3437
|
}
|
|
3740
|
-
console.error(`
|
|
3438
|
+
console.error(`The padding value "${padding}" is invalid. Please provide a number or a string with a valid unit (px or %).`);
|
|
3741
3439
|
return 0;
|
|
3742
3440
|
}
|
|
3743
3441
|
function parsePaddings(padding, width, height) {
|
|
@@ -3991,7 +3689,7 @@ var connectionExists = (edge, edges) => {
|
|
|
3991
3689
|
};
|
|
3992
3690
|
var addEdge = (edgeParams, edges, options = {}) => {
|
|
3993
3691
|
if (!edgeParams.source || !edgeParams.target) {
|
|
3994
|
-
|
|
3692
|
+
options.onError?.("006", errorMessages["error006"]());
|
|
3995
3693
|
return edges;
|
|
3996
3694
|
}
|
|
3997
3695
|
const edgeIdGenerator = options.getEdgeId || getEdgeId;
|
|
@@ -4587,7 +4285,7 @@ function updateNodeInternals(updates, nodeLookup, parentLookup, domNode, nodeOri
|
|
|
4587
4285
|
}
|
|
4588
4286
|
async function panBy({ delta, panZoom, transform: transform2, translateExtent, width, height }) {
|
|
4589
4287
|
if (!panZoom || !delta.x && !delta.y) {
|
|
4590
|
-
return
|
|
4288
|
+
return false;
|
|
4591
4289
|
}
|
|
4592
4290
|
const nextViewport = await panZoom.setViewportConstrained({
|
|
4593
4291
|
x: transform2[0] + delta.x,
|
|
@@ -4598,7 +4296,7 @@ async function panBy({ delta, panZoom, transform: transform2, translateExtent, w
|
|
|
4598
4296
|
[width, height]
|
|
4599
4297
|
], translateExtent);
|
|
4600
4298
|
const transformChanged = !!nextViewport && (nextViewport.x !== transform2[0] || nextViewport.y !== transform2[1] || nextViewport.k !== transform2[2]);
|
|
4601
|
-
return
|
|
4299
|
+
return transformChanged;
|
|
4602
4300
|
}
|
|
4603
4301
|
function addConnectionToLookup(type, connection, connectionKey, connectionLookup, nodeId, handleId) {
|
|
4604
4302
|
let key = nodeId;
|
|
@@ -4888,6 +4586,9 @@ function XYDrag({ onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragSto
|
|
|
4888
4586
|
}
|
|
4889
4587
|
}).on("end", (event) => {
|
|
4890
4588
|
if (!dragStarted || abortDrag) {
|
|
4589
|
+
if (abortDrag && dragItems.size > 0) {
|
|
4590
|
+
getStoreItems().updateNodePositions(dragItems, false);
|
|
4591
|
+
}
|
|
4891
4592
|
return;
|
|
4892
4593
|
}
|
|
4893
4594
|
autoPanStarted = false;
|
|
@@ -5429,7 +5130,7 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5429
5130
|
const zoomPanValues = {
|
|
5430
5131
|
isZoomingOrPanning: false,
|
|
5431
5132
|
usedRightMouseButton: false,
|
|
5432
|
-
prevViewport: {
|
|
5133
|
+
prevViewport: {},
|
|
5433
5134
|
mouseButton: 0,
|
|
5434
5135
|
timerId: void 0,
|
|
5435
5136
|
panScrollTimeout: void 0,
|
|
@@ -5449,13 +5150,13 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5449
5150
|
const d3ZoomHandler = d3Selection.on("wheel.zoom");
|
|
5450
5151
|
const d3DblClickZoomHandler = d3Selection.on("dblclick.zoom");
|
|
5451
5152
|
d3ZoomInstance.wheelDelta(wheelDelta);
|
|
5452
|
-
function setTransform(transform2, options) {
|
|
5153
|
+
async function setTransform(transform2, options) {
|
|
5453
5154
|
if (d3Selection) {
|
|
5454
5155
|
return new Promise((resolve) => {
|
|
5455
5156
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).transform(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), transform2);
|
|
5456
5157
|
});
|
|
5457
5158
|
}
|
|
5458
|
-
return
|
|
5159
|
+
return false;
|
|
5459
5160
|
}
|
|
5460
5161
|
function update({ noWheelClassName, noPanClassName, onPaneContextMenu, userSelectionActive, panOnScroll, panOnDrag, panOnScrollMode, panOnScrollSpeed, preventScrolling, zoomOnPinch, zoomOnScroll, zoomOnDoubleClick, zoomActivationKeyPressed, lib, onTransformChange, connectionInProgress, paneClickDistance, selectionOnDrag }) {
|
|
5461
5162
|
if (userSelectionActive && !zoomPanValues.isZoomingOrPanning) {
|
|
@@ -5480,31 +5181,29 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5480
5181
|
d3ZoomHandler
|
|
5481
5182
|
});
|
|
5482
5183
|
d3Selection.on("wheel.zoom", wheelHandler, { passive: false });
|
|
5483
|
-
|
|
5484
|
-
|
|
5485
|
-
|
|
5486
|
-
|
|
5487
|
-
|
|
5488
|
-
|
|
5489
|
-
|
|
5490
|
-
|
|
5491
|
-
|
|
5492
|
-
|
|
5493
|
-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5501
|
-
|
|
5502
|
-
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5506
|
-
d3ZoomInstance.on("end", panZoomEndHandler);
|
|
5507
|
-
}
|
|
5184
|
+
const startHandler = createPanZoomStartHandler({
|
|
5185
|
+
zoomPanValues,
|
|
5186
|
+
onDraggingChange,
|
|
5187
|
+
onPanZoomStart
|
|
5188
|
+
});
|
|
5189
|
+
d3ZoomInstance.on("start", startHandler);
|
|
5190
|
+
const panZoomHandler = createPanZoomHandler({
|
|
5191
|
+
zoomPanValues,
|
|
5192
|
+
panOnDrag,
|
|
5193
|
+
onPaneContextMenu: !!onPaneContextMenu,
|
|
5194
|
+
onPanZoom,
|
|
5195
|
+
onTransformChange
|
|
5196
|
+
});
|
|
5197
|
+
d3ZoomInstance.on("zoom", panZoomHandler);
|
|
5198
|
+
const panZoomEndHandler = createPanZoomEndHandler({
|
|
5199
|
+
zoomPanValues,
|
|
5200
|
+
panOnDrag,
|
|
5201
|
+
panOnScroll,
|
|
5202
|
+
onPaneContextMenu,
|
|
5203
|
+
onPanZoomEnd,
|
|
5204
|
+
onDraggingChange
|
|
5205
|
+
});
|
|
5206
|
+
d3ZoomInstance.on("end", panZoomEndHandler);
|
|
5508
5207
|
const filter2 = createFilter({
|
|
5509
5208
|
zoomActivationKeyPressed,
|
|
5510
5209
|
panOnDrag,
|
|
@@ -5534,12 +5233,12 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5534
5233
|
if (contrainedTransform) {
|
|
5535
5234
|
await setTransform(contrainedTransform);
|
|
5536
5235
|
}
|
|
5537
|
-
return
|
|
5236
|
+
return contrainedTransform;
|
|
5538
5237
|
}
|
|
5539
5238
|
async function setViewport(viewport2, options) {
|
|
5540
5239
|
const nextTransform = viewportToTransform(viewport2);
|
|
5541
5240
|
await setTransform(nextTransform, options);
|
|
5542
|
-
return
|
|
5241
|
+
return nextTransform;
|
|
5543
5242
|
}
|
|
5544
5243
|
function syncViewport(viewport2) {
|
|
5545
5244
|
if (d3Selection) {
|
|
@@ -5554,21 +5253,21 @@ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPan
|
|
|
5554
5253
|
const transform2 = d3Selection ? transform(d3Selection.node()) : { x: 0, y: 0, k: 1 };
|
|
5555
5254
|
return { x: transform2.x, y: transform2.y, zoom: transform2.k };
|
|
5556
5255
|
}
|
|
5557
|
-
function scaleTo(zoom, options) {
|
|
5256
|
+
async function scaleTo(zoom, options) {
|
|
5558
5257
|
if (d3Selection) {
|
|
5559
5258
|
return new Promise((resolve) => {
|
|
5560
5259
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).scaleTo(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), zoom);
|
|
5561
5260
|
});
|
|
5562
5261
|
}
|
|
5563
|
-
return
|
|
5262
|
+
return false;
|
|
5564
5263
|
}
|
|
5565
|
-
function scaleBy(factor, options) {
|
|
5264
|
+
async function scaleBy(factor, options) {
|
|
5566
5265
|
if (d3Selection) {
|
|
5567
5266
|
return new Promise((resolve) => {
|
|
5568
5267
|
d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? value_default : zoom_default).scaleBy(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(true)), factor);
|
|
5569
5268
|
});
|
|
5570
5269
|
}
|
|
5571
|
-
return
|
|
5270
|
+
return false;
|
|
5572
5271
|
}
|
|
5573
5272
|
function setScaleExtent(scaleExtent) {
|
|
5574
5273
|
d3ZoomInstance?.scaleExtent(scaleExtent);
|
|
@@ -5763,12 +5462,6 @@ var initStartValues = {
|
|
|
5763
5462
|
pointerY: 0,
|
|
5764
5463
|
aspectRatio: 1
|
|
5765
5464
|
};
|
|
5766
|
-
function nodeToParentExtent(node) {
|
|
5767
|
-
return [
|
|
5768
|
-
[0, 0],
|
|
5769
|
-
[node.measured.width, node.measured.height]
|
|
5770
|
-
];
|
|
5771
|
-
}
|
|
5772
5465
|
function nodeToChildExtent(child, parent, nodeOrigin) {
|
|
5773
5466
|
const x = parent.position.x + child.position.x;
|
|
5774
5467
|
const y = parent.position.y + child.position.y;
|
|
@@ -5807,7 +5500,7 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5807
5500
|
let containerBounds = null;
|
|
5808
5501
|
let childNodes = [];
|
|
5809
5502
|
let parentNode = void 0;
|
|
5810
|
-
let
|
|
5503
|
+
let nodeExtent = void 0;
|
|
5811
5504
|
let childExtent = void 0;
|
|
5812
5505
|
let resizeDetected = false;
|
|
5813
5506
|
const dragHandler = drag_default().on("start", (event) => {
|
|
@@ -5836,9 +5529,15 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5836
5529
|
aspectRatio: prevValues.width / prevValues.height
|
|
5837
5530
|
};
|
|
5838
5531
|
parentNode = void 0;
|
|
5532
|
+
nodeExtent = isCoordinateExtent(node.extent) ? node.extent : void 0;
|
|
5839
5533
|
if (node.parentId && (node.extent === "parent" || node.expandParent)) {
|
|
5840
5534
|
parentNode = nodeLookup.get(node.parentId);
|
|
5841
|
-
|
|
5535
|
+
}
|
|
5536
|
+
if (parentNode && node.extent === "parent") {
|
|
5537
|
+
nodeExtent = [
|
|
5538
|
+
[0, 0],
|
|
5539
|
+
[parentNode.measured.width, parentNode.measured.height]
|
|
5540
|
+
];
|
|
5842
5541
|
}
|
|
5843
5542
|
childNodes = [];
|
|
5844
5543
|
childExtent = void 0;
|
|
@@ -5878,7 +5577,7 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5878
5577
|
const { x: prevX, y: prevY, width: prevWidth, height: prevHeight } = prevValues;
|
|
5879
5578
|
const change = {};
|
|
5880
5579
|
const nodeOrigin = node.origin ?? storeNodeOrigin;
|
|
5881
|
-
const { width, height, x, y } = getDimensionsAfterResize(startValues, params.controlDirection, pointerPosition, params.boundaries, params.keepAspectRatio, nodeOrigin,
|
|
5580
|
+
const { width, height, x, y } = getDimensionsAfterResize(startValues, params.controlDirection, pointerPosition, params.boundaries, params.keepAspectRatio, nodeOrigin, nodeExtent, childExtent);
|
|
5882
5581
|
const isWidthChange = width !== prevWidth;
|
|
5883
5582
|
const isHeightChange = height !== prevHeight;
|
|
5884
5583
|
const isXPosChange = x !== prevX && isWidthChange;
|
|
@@ -5955,9 +5654,62 @@ function XYResizer({ domNode, nodeId, getStoreItems, onChange, onEnd }) {
|
|
|
5955
5654
|
destroy
|
|
5956
5655
|
};
|
|
5957
5656
|
}
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5657
|
+
function useSyncExternalStoreWithSelector(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
5658
|
+
const instRef = ReactExports.useRef(null);
|
|
5659
|
+
let inst;
|
|
5660
|
+
if (instRef.current === null) {
|
|
5661
|
+
inst = { hasValue: false, value: null };
|
|
5662
|
+
instRef.current = inst;
|
|
5663
|
+
} else {
|
|
5664
|
+
inst = instRef.current;
|
|
5665
|
+
}
|
|
5666
|
+
const [getSelection, getServerSelection] = ReactExports.useMemo(() => {
|
|
5667
|
+
let hasMemo = false;
|
|
5668
|
+
let memoizedSnapshot;
|
|
5669
|
+
let memoizedSelection;
|
|
5670
|
+
const memoizedSelector = (nextSnapshot) => {
|
|
5671
|
+
if (!hasMemo) {
|
|
5672
|
+
hasMemo = true;
|
|
5673
|
+
memoizedSnapshot = nextSnapshot;
|
|
5674
|
+
const nextSelection2 = selector(nextSnapshot);
|
|
5675
|
+
if (isEqual !== void 0 && inst.hasValue) {
|
|
5676
|
+
const currentSelection = inst.value;
|
|
5677
|
+
if (isEqual(currentSelection, nextSelection2)) {
|
|
5678
|
+
memoizedSelection = currentSelection;
|
|
5679
|
+
return currentSelection;
|
|
5680
|
+
}
|
|
5681
|
+
}
|
|
5682
|
+
memoizedSelection = nextSelection2;
|
|
5683
|
+
return nextSelection2;
|
|
5684
|
+
}
|
|
5685
|
+
const prevSnapshot = memoizedSnapshot;
|
|
5686
|
+
const prevSelection = memoizedSelection;
|
|
5687
|
+
if (Object.is(prevSnapshot, nextSnapshot)) {
|
|
5688
|
+
return prevSelection;
|
|
5689
|
+
}
|
|
5690
|
+
const nextSelection = selector(nextSnapshot);
|
|
5691
|
+
if (isEqual !== void 0 && isEqual(prevSelection, nextSelection)) {
|
|
5692
|
+
memoizedSnapshot = nextSnapshot;
|
|
5693
|
+
return prevSelection;
|
|
5694
|
+
}
|
|
5695
|
+
memoizedSnapshot = nextSnapshot;
|
|
5696
|
+
memoizedSelection = nextSelection;
|
|
5697
|
+
return nextSelection;
|
|
5698
|
+
};
|
|
5699
|
+
const maybeGetServerSnapshot = getServerSnapshot === void 0 || getServerSnapshot === null ? null : getServerSnapshot;
|
|
5700
|
+
const getSnapshotWithSelector = () => memoizedSelector(getSnapshot());
|
|
5701
|
+
const getServerSnapshotWithSelector = maybeGetServerSnapshot === null ? void 0 : () => memoizedSelector(maybeGetServerSnapshot());
|
|
5702
|
+
return [getSnapshotWithSelector, getServerSnapshotWithSelector];
|
|
5703
|
+
}, [getSnapshot, getServerSnapshot, selector, isEqual]);
|
|
5704
|
+
const value = ReactExports.useSyncExternalStore(subscribe, getSelection, getServerSelection);
|
|
5705
|
+
ReactExports.useEffect(() => {
|
|
5706
|
+
inst.hasValue = true;
|
|
5707
|
+
inst.value = value;
|
|
5708
|
+
}, [value]);
|
|
5709
|
+
ReactExports.useDebugValue(value);
|
|
5710
|
+
return value;
|
|
5711
|
+
}
|
|
5712
|
+
var use_sync_external_store_with_selector_default = { useSyncExternalStoreWithSelector };
|
|
5961
5713
|
|
|
5962
5714
|
// node_modules/zustand/esm/vanilla.mjs
|
|
5963
5715
|
var createStoreImpl = (createState) => {
|
|
@@ -5992,18 +5744,18 @@ var createStoreImpl = (createState) => {
|
|
|
5992
5744
|
var createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;
|
|
5993
5745
|
|
|
5994
5746
|
// node_modules/zustand/esm/traditional.mjs
|
|
5995
|
-
var { useDebugValue } = ReactExports__default.default;
|
|
5996
|
-
var { useSyncExternalStoreWithSelector } =
|
|
5747
|
+
var { useDebugValue: useDebugValue2 } = ReactExports__default.default;
|
|
5748
|
+
var { useSyncExternalStoreWithSelector: useSyncExternalStoreWithSelector2 } = use_sync_external_store_with_selector_default;
|
|
5997
5749
|
var identity3 = (arg) => arg;
|
|
5998
5750
|
function useStoreWithEqualityFn(api, selector = identity3, equalityFn) {
|
|
5999
|
-
const slice =
|
|
5751
|
+
const slice = useSyncExternalStoreWithSelector2(
|
|
6000
5752
|
api.subscribe,
|
|
6001
5753
|
api.getState,
|
|
6002
5754
|
api.getServerState || api.getInitialState,
|
|
6003
5755
|
selector,
|
|
6004
5756
|
equalityFn
|
|
6005
5757
|
);
|
|
6006
|
-
|
|
5758
|
+
useDebugValue2(slice);
|
|
6007
5759
|
return slice;
|
|
6008
5760
|
}
|
|
6009
5761
|
var createWithEqualityFnImpl = (createState, defaultEqualityFn) => {
|
|
@@ -6053,7 +5805,7 @@ function shallow$1(objA, objB) {
|
|
|
6053
5805
|
}
|
|
6054
5806
|
var StoreContext = ReactExports.createContext(null);
|
|
6055
5807
|
var Provider$1 = StoreContext.Provider;
|
|
6056
|
-
var zustandErrorMessage = errorMessages["error001"]();
|
|
5808
|
+
var zustandErrorMessage = errorMessages["error001"]("react");
|
|
6057
5809
|
function useStore(selector, equalityFn) {
|
|
6058
5810
|
const store = ReactExports.useContext(StoreContext);
|
|
6059
5811
|
if (store === null) {
|
|
@@ -6145,7 +5897,6 @@ function SelectionListener({ onSelectionChange }) {
|
|
|
6145
5897
|
}
|
|
6146
5898
|
return null;
|
|
6147
5899
|
}
|
|
6148
|
-
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? ReactExports.useLayoutEffect : ReactExports.useEffect;
|
|
6149
5900
|
var defaultNodeOrigin = [0, 0];
|
|
6150
5901
|
var defaultViewport = { x: 0, y: 0, zoom: 1 };
|
|
6151
5902
|
var reactFlowFieldsToTrack = [
|
|
@@ -6236,7 +5987,7 @@ var initPrevValues2 = {
|
|
|
6236
5987
|
function StoreUpdater(props) {
|
|
6237
5988
|
const { setNodes, setEdges, setMinZoom, setMaxZoom, setTranslateExtent, setNodeExtent, reset, setDefaultNodesAndEdges } = useStore(selector$l, shallow$1);
|
|
6238
5989
|
const store = useStoreApi();
|
|
6239
|
-
|
|
5990
|
+
ReactExports.useEffect(() => {
|
|
6240
5991
|
setDefaultNodesAndEdges(props.defaultNodes, props.defaultEdges);
|
|
6241
5992
|
return () => {
|
|
6242
5993
|
previousFields.current = initPrevValues2;
|
|
@@ -6244,7 +5995,7 @@ function StoreUpdater(props) {
|
|
|
6244
5995
|
};
|
|
6245
5996
|
}, []);
|
|
6246
5997
|
const previousFields = ReactExports.useRef(initPrevValues2);
|
|
6247
|
-
|
|
5998
|
+
ReactExports.useEffect(
|
|
6248
5999
|
() => {
|
|
6249
6000
|
for (const fieldName of fieldsToTrack) {
|
|
6250
6001
|
const fieldValue = props[fieldName];
|
|
@@ -6380,30 +6131,30 @@ var useViewportHelper = () => {
|
|
|
6380
6131
|
const store = useStoreApi();
|
|
6381
6132
|
return ReactExports.useMemo(() => {
|
|
6382
6133
|
return {
|
|
6383
|
-
zoomIn: (options) => {
|
|
6134
|
+
zoomIn: async (options) => {
|
|
6384
6135
|
const { panZoom } = store.getState();
|
|
6385
|
-
return panZoom ? panZoom.scaleBy(1.2, options) :
|
|
6136
|
+
return panZoom ? panZoom.scaleBy(1.2, options) : false;
|
|
6386
6137
|
},
|
|
6387
|
-
zoomOut: (options) => {
|
|
6138
|
+
zoomOut: async (options) => {
|
|
6388
6139
|
const { panZoom } = store.getState();
|
|
6389
|
-
return panZoom ? panZoom.scaleBy(1 / 1.2, options) :
|
|
6140
|
+
return panZoom ? panZoom.scaleBy(1 / 1.2, options) : false;
|
|
6390
6141
|
},
|
|
6391
|
-
zoomTo: (zoomLevel, options) => {
|
|
6142
|
+
zoomTo: async (zoomLevel, options) => {
|
|
6392
6143
|
const { panZoom } = store.getState();
|
|
6393
|
-
return panZoom ? panZoom.scaleTo(zoomLevel, options) :
|
|
6144
|
+
return panZoom ? panZoom.scaleTo(zoomLevel, options) : false;
|
|
6394
6145
|
},
|
|
6395
6146
|
getZoom: () => store.getState().transform[2],
|
|
6396
6147
|
setViewport: async (viewport, options) => {
|
|
6397
6148
|
const { transform: [tX, tY, tZoom], panZoom } = store.getState();
|
|
6398
6149
|
if (!panZoom) {
|
|
6399
|
-
return
|
|
6150
|
+
return false;
|
|
6400
6151
|
}
|
|
6401
6152
|
await panZoom.setViewport({
|
|
6402
6153
|
x: viewport.x ?? tX,
|
|
6403
6154
|
y: viewport.y ?? tY,
|
|
6404
6155
|
zoom: viewport.zoom ?? tZoom
|
|
6405
6156
|
}, options);
|
|
6406
|
-
return
|
|
6157
|
+
return true;
|
|
6407
6158
|
},
|
|
6408
6159
|
getViewport: () => {
|
|
6409
6160
|
const [x, y, zoom] = store.getState().transform;
|
|
@@ -6416,14 +6167,14 @@ var useViewportHelper = () => {
|
|
|
6416
6167
|
const { width, height, minZoom, maxZoom, panZoom } = store.getState();
|
|
6417
6168
|
const viewport = getViewportForBounds(bounds, width, height, minZoom, maxZoom, options?.padding ?? 0.1);
|
|
6418
6169
|
if (!panZoom) {
|
|
6419
|
-
return
|
|
6170
|
+
return false;
|
|
6420
6171
|
}
|
|
6421
6172
|
await panZoom.setViewport(viewport, {
|
|
6422
6173
|
duration: options?.duration,
|
|
6423
6174
|
ease: options?.ease,
|
|
6424
6175
|
interpolate: options?.interpolate
|
|
6425
6176
|
});
|
|
6426
|
-
return
|
|
6177
|
+
return true;
|
|
6427
6178
|
},
|
|
6428
6179
|
screenToFlowPosition: (clientPosition, options = {}) => {
|
|
6429
6180
|
const { transform: transform2, snapGrid, snapToGrid, domNode } = store.getState();
|
|
@@ -6592,11 +6343,19 @@ function elementToRemoveChange(item) {
|
|
|
6592
6343
|
type: "remove"
|
|
6593
6344
|
};
|
|
6594
6345
|
}
|
|
6346
|
+
var defaultOnError = createDevWarn("React Flow", "https://reactflow.dev/");
|
|
6347
|
+
function addEdge2(edgeParams, edges, options = {}) {
|
|
6348
|
+
return addEdge(edgeParams, edges, {
|
|
6349
|
+
...options,
|
|
6350
|
+
onError: options.onError ?? defaultOnError
|
|
6351
|
+
});
|
|
6352
|
+
}
|
|
6595
6353
|
var isNode = (element) => isNodeBase(element);
|
|
6596
6354
|
var isEdge = (element) => isEdgeBase(element);
|
|
6597
6355
|
function fixedForwardRef(render) {
|
|
6598
6356
|
return ReactExports.forwardRef(render);
|
|
6599
6357
|
}
|
|
6358
|
+
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? ReactExports.useLayoutEffect : ReactExports.useEffect;
|
|
6600
6359
|
function useQueue(runQueue) {
|
|
6601
6360
|
const [serial, setSerial] = ReactExports.useState(BigInt(0));
|
|
6602
6361
|
const [queue] = ReactExports.useState(() => createQueue(() => setSerial((n) => n + BigInt(1))));
|
|
@@ -7027,17 +6786,22 @@ var selector$h = (s) => ({
|
|
|
7027
6786
|
userSelectionActive: s.userSelectionActive,
|
|
7028
6787
|
elementsSelectable: s.elementsSelectable,
|
|
7029
6788
|
connectionInProgress: s.connection.inProgress,
|
|
7030
|
-
dragging: s.paneDragging
|
|
6789
|
+
dragging: s.paneDragging,
|
|
6790
|
+
panBy: s.panBy,
|
|
6791
|
+
autoPanSpeed: s.autoPanSpeed
|
|
7031
6792
|
});
|
|
7032
|
-
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, paneClickDistance, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
6793
|
+
function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, autoPanOnSelection, paneClickDistance, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
|
|
6794
|
+
const autoPanId = ReactExports.useRef(0);
|
|
7033
6795
|
const store = useStoreApi();
|
|
7034
|
-
const { userSelectionActive, elementsSelectable, dragging, connectionInProgress } = useStore(selector$h, shallow$1);
|
|
6796
|
+
const { userSelectionActive, elementsSelectable, dragging, connectionInProgress, panBy: panBy2, autoPanSpeed } = useStore(selector$h, shallow$1);
|
|
7035
6797
|
const isSelectionEnabled = elementsSelectable && (isSelecting || userSelectionActive);
|
|
7036
6798
|
const container = ReactExports.useRef(null);
|
|
7037
6799
|
const containerBounds = ReactExports.useRef();
|
|
7038
6800
|
const selectedNodeIds = ReactExports.useRef(/* @__PURE__ */ new Set());
|
|
7039
6801
|
const selectedEdgeIds = ReactExports.useRef(/* @__PURE__ */ new Set());
|
|
7040
6802
|
const selectionInProgress = ReactExports.useRef(false);
|
|
6803
|
+
const position = ReactExports.useRef({ x: 0, y: 0 });
|
|
6804
|
+
const autoPanStarted = ReactExports.useRef(false);
|
|
7041
6805
|
const onClick = (event) => {
|
|
7042
6806
|
if (selectionInProgress.current || connectionInProgress) {
|
|
7043
6807
|
selectionInProgress.current = false;
|
|
@@ -7062,7 +6826,7 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7062
6826
|
}
|
|
7063
6827
|
};
|
|
7064
6828
|
const onPointerDownCapture = (event) => {
|
|
7065
|
-
const { domNode } = store.getState();
|
|
6829
|
+
const { domNode, transform: transform2 } = store.getState();
|
|
7066
6830
|
containerBounds.current = domNode?.getBoundingClientRect();
|
|
7067
6831
|
if (!containerBounds.current)
|
|
7068
6832
|
return;
|
|
@@ -7075,12 +6839,13 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7075
6839
|
event.target?.setPointerCapture?.(event.pointerId);
|
|
7076
6840
|
selectionInProgress.current = false;
|
|
7077
6841
|
const { x, y } = getEventPosition(event.nativeEvent, containerBounds.current);
|
|
6842
|
+
const userSelectionStartPosition = pointToRendererPoint({ x, y }, transform2);
|
|
7078
6843
|
store.setState({
|
|
7079
6844
|
userSelectionRect: {
|
|
7080
6845
|
width: 0,
|
|
7081
6846
|
height: 0,
|
|
7082
|
-
startX: x,
|
|
7083
|
-
startY: y,
|
|
6847
|
+
startX: userSelectionStartPosition.x,
|
|
6848
|
+
startY: userSelectionStartPosition.y,
|
|
7084
6849
|
x,
|
|
7085
6850
|
y
|
|
7086
6851
|
}
|
|
@@ -7090,30 +6855,21 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7090
6855
|
event.preventDefault();
|
|
7091
6856
|
}
|
|
7092
6857
|
};
|
|
7093
|
-
|
|
7094
|
-
const { userSelectionRect
|
|
7095
|
-
if (!
|
|
6858
|
+
function commitUserSelectionRect(mouseX, mouseY) {
|
|
6859
|
+
const { userSelectionRect } = store.getState();
|
|
6860
|
+
if (!userSelectionRect) {
|
|
7096
6861
|
return;
|
|
7097
6862
|
}
|
|
7098
|
-
const {
|
|
7099
|
-
const { startX, startY }
|
|
7100
|
-
|
|
7101
|
-
const requiredDistance = selectionKeyPressed ? 0 : paneClickDistance;
|
|
7102
|
-
const distance2 = Math.hypot(mouseX - startX, mouseY - startY);
|
|
7103
|
-
if (distance2 <= requiredDistance) {
|
|
7104
|
-
return;
|
|
7105
|
-
}
|
|
7106
|
-
resetSelectedElements();
|
|
7107
|
-
onSelectionStart?.(event);
|
|
7108
|
-
}
|
|
7109
|
-
selectionInProgress.current = true;
|
|
6863
|
+
const { transform: transform2, nodeLookup, edgeLookup, connectionLookup, triggerNodeChanges, triggerEdgeChanges, defaultEdgeOptions } = store.getState();
|
|
6864
|
+
const userStartPosition = { x: userSelectionRect.startX, y: userSelectionRect.startY };
|
|
6865
|
+
const { x: screenStartX, y: screenStartY } = rendererPointToPoint(userStartPosition, transform2);
|
|
7110
6866
|
const nextUserSelectRect = {
|
|
7111
|
-
startX,
|
|
7112
|
-
startY,
|
|
7113
|
-
x: mouseX <
|
|
7114
|
-
y: mouseY <
|
|
7115
|
-
width: Math.abs(mouseX -
|
|
7116
|
-
height: Math.abs(mouseY -
|
|
6867
|
+
startX: userStartPosition.x,
|
|
6868
|
+
startY: userStartPosition.y,
|
|
6869
|
+
x: mouseX < screenStartX ? mouseX : screenStartX,
|
|
6870
|
+
y: mouseY < screenStartY ? mouseY : screenStartY,
|
|
6871
|
+
width: Math.abs(mouseX - screenStartX),
|
|
6872
|
+
height: Math.abs(mouseY - screenStartY)
|
|
7117
6873
|
};
|
|
7118
6874
|
const prevSelectedNodeIds = selectedNodeIds.current;
|
|
7119
6875
|
const prevSelectedEdgeIds = selectedEdgeIds.current;
|
|
@@ -7144,6 +6900,53 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7144
6900
|
userSelectionActive: true,
|
|
7145
6901
|
nodesSelectionActive: false
|
|
7146
6902
|
});
|
|
6903
|
+
}
|
|
6904
|
+
function autoPan() {
|
|
6905
|
+
if (!autoPanOnSelection || !containerBounds.current) {
|
|
6906
|
+
return;
|
|
6907
|
+
}
|
|
6908
|
+
const [x, y] = calcAutoPan(position.current, containerBounds.current, autoPanSpeed);
|
|
6909
|
+
panBy2({ x, y }).then((panned) => {
|
|
6910
|
+
if (!selectionInProgress.current || !panned) {
|
|
6911
|
+
autoPanId.current = requestAnimationFrame(autoPan);
|
|
6912
|
+
return;
|
|
6913
|
+
}
|
|
6914
|
+
const { x: mx, y: my } = position.current;
|
|
6915
|
+
commitUserSelectionRect(mx, my);
|
|
6916
|
+
autoPanId.current = requestAnimationFrame(autoPan);
|
|
6917
|
+
});
|
|
6918
|
+
}
|
|
6919
|
+
const cleanupAutoPan = () => {
|
|
6920
|
+
cancelAnimationFrame(autoPanId.current);
|
|
6921
|
+
autoPanId.current = 0;
|
|
6922
|
+
autoPanStarted.current = false;
|
|
6923
|
+
};
|
|
6924
|
+
ReactExports.useEffect(() => {
|
|
6925
|
+
return () => cleanupAutoPan();
|
|
6926
|
+
}, []);
|
|
6927
|
+
const onPointerMove = (event) => {
|
|
6928
|
+
const { userSelectionRect, transform: transform2, resetSelectedElements } = store.getState();
|
|
6929
|
+
if (!containerBounds.current || !userSelectionRect) {
|
|
6930
|
+
return;
|
|
6931
|
+
}
|
|
6932
|
+
const { x: mouseX, y: mouseY } = getEventPosition(event.nativeEvent, containerBounds.current);
|
|
6933
|
+
position.current = { x: mouseX, y: mouseY };
|
|
6934
|
+
const screenStart = rendererPointToPoint({ x: userSelectionRect.startX, y: userSelectionRect.startY }, transform2);
|
|
6935
|
+
if (!selectionInProgress.current) {
|
|
6936
|
+
const requiredDistance = selectionKeyPressed ? 0 : paneClickDistance;
|
|
6937
|
+
const distance2 = Math.hypot(mouseX - screenStart.x, mouseY - screenStart.y);
|
|
6938
|
+
if (distance2 <= requiredDistance) {
|
|
6939
|
+
return;
|
|
6940
|
+
}
|
|
6941
|
+
resetSelectedElements();
|
|
6942
|
+
onSelectionStart?.(event);
|
|
6943
|
+
}
|
|
6944
|
+
selectionInProgress.current = true;
|
|
6945
|
+
if (!autoPanStarted.current) {
|
|
6946
|
+
autoPan();
|
|
6947
|
+
autoPanStarted.current = true;
|
|
6948
|
+
}
|
|
6949
|
+
commitUserSelectionRect(mouseX, mouseY);
|
|
7147
6950
|
};
|
|
7148
6951
|
const onPointerUp = (event) => {
|
|
7149
6952
|
if (event.button !== 0) {
|
|
@@ -7163,9 +6966,14 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
|
|
|
7163
6966
|
nodesSelectionActive: selectedNodeIds.current.size > 0
|
|
7164
6967
|
});
|
|
7165
6968
|
}
|
|
6969
|
+
cleanupAutoPan();
|
|
6970
|
+
};
|
|
6971
|
+
const onPointerCancel = (event) => {
|
|
6972
|
+
event.target?.releasePointerCapture?.(event.pointerId);
|
|
6973
|
+
cleanupAutoPan();
|
|
7166
6974
|
};
|
|
7167
6975
|
const draggable = panOnDrag === true || Array.isArray(panOnDrag) && panOnDrag.includes(0);
|
|
7168
|
-
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, {})] });
|
|
6976
|
+
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, {})] });
|
|
7169
6977
|
}
|
|
7170
6978
|
function handleNodeClick({ id: id2, store, unselect = false, nodeRef }) {
|
|
7171
6979
|
const { addSelectedNodes, unselectNodesAndEdges, multiSelectionActive, nodeLookup, onError } = store.getState();
|
|
@@ -7303,8 +7111,8 @@ function HandleComponent({ type = "source", position = Position.Top, isValidConn
|
|
|
7303
7111
|
...params
|
|
7304
7112
|
};
|
|
7305
7113
|
if (hasDefaultEdges) {
|
|
7306
|
-
const { edges, setEdges } = store.getState();
|
|
7307
|
-
setEdges(
|
|
7114
|
+
const { edges, setEdges, onError } = store.getState();
|
|
7115
|
+
setEdges(addEdge2(edgeParams, edges, { onError }));
|
|
7308
7116
|
}
|
|
7309
7117
|
onConnectAction?.(edgeParams);
|
|
7310
7118
|
onConnect?.(edgeParams);
|
|
@@ -7500,7 +7308,7 @@ var win = typeof window !== "undefined" ? window : void 0;
|
|
|
7500
7308
|
var selector$e = (s) => {
|
|
7501
7309
|
return { nodesSelectionActive: s.nodesSelectionActive, userSelectionActive: s.userSelectionActive };
|
|
7502
7310
|
};
|
|
7503
|
-
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 }) {
|
|
7311
|
+
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 }) {
|
|
7504
7312
|
const { nodesSelectionActive, userSelectionActive } = useStore(selector$e, shallow$1);
|
|
7505
7313
|
const selectionKeyPressed = useKeyPress(selectionKeyCode, { target: win });
|
|
7506
7314
|
const panActivationKeyPressed = useKeyPress(panActivationKeyCode, { target: win });
|
|
@@ -7509,7 +7317,7 @@ function FlowRendererComponent({ children: children2, onPaneClick, onPaneMouseEn
|
|
|
7509
7317
|
const _selectionOnDrag = selectionOnDrag && panOnDrag !== true;
|
|
7510
7318
|
const isSelecting = selectionKeyPressed || userSelectionActive || _selectionOnDrag;
|
|
7511
7319
|
useGlobalKeyHandler({ deleteKeyCode, multiSelectionKeyCode });
|
|
7512
|
-
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 })] }) });
|
|
7320
|
+
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 })] }) });
|
|
7513
7321
|
}
|
|
7514
7322
|
FlowRendererComponent.displayName = "FlowRenderer";
|
|
7515
7323
|
var FlowRenderer = ReactExports.memo(FlowRendererComponent);
|
|
@@ -8314,16 +8122,17 @@ function useStylesLoadedWarning() {
|
|
|
8314
8122
|
}
|
|
8315
8123
|
}, []);
|
|
8316
8124
|
}
|
|
8317
|
-
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 }) {
|
|
8125
|
+
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 }) {
|
|
8318
8126
|
useNodeOrEdgeTypesWarning(nodeTypes);
|
|
8319
8127
|
useNodeOrEdgeTypesWarning(edgeTypes);
|
|
8320
8128
|
useStylesLoadedWarning();
|
|
8321
8129
|
useOnInitHandler(onInit);
|
|
8322
8130
|
useViewportSync(viewport);
|
|
8323
|
-
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" })] }) });
|
|
8131
|
+
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" })] }) });
|
|
8324
8132
|
}
|
|
8325
8133
|
GraphViewComponent.displayName = "GraphView";
|
|
8326
8134
|
var GraphView = ReactExports.memo(GraphViewComponent);
|
|
8135
|
+
var devWarn = createDevWarn("React Flow", "https://reactflow.dev/");
|
|
8327
8136
|
var getInitialState = ({ nodes, edges, defaultNodes, defaultEdges, width, height, fitView, fitViewOptions, minZoom = 0.5, maxZoom = 2, nodeOrigin, nodeExtent, zIndexMode = "basic" } = {}) => {
|
|
8328
8137
|
const nodeLookup = /* @__PURE__ */ new Map();
|
|
8329
8138
|
const parentLookup = /* @__PURE__ */ new Map();
|
|
@@ -8670,7 +8479,7 @@ var createStore2 = ({ nodes, edges, defaultNodes, defaultEdges, width, height, f
|
|
|
8670
8479
|
setCenter: async (x, y, options) => {
|
|
8671
8480
|
const { width: width2, height: height2, maxZoom: maxZoom2, panZoom } = get3();
|
|
8672
8481
|
if (!panZoom) {
|
|
8673
|
-
return
|
|
8482
|
+
return false;
|
|
8674
8483
|
}
|
|
8675
8484
|
const nextZoom = typeof options?.zoom !== "undefined" ? options.zoom : maxZoom2;
|
|
8676
8485
|
await panZoom.setViewport({
|
|
@@ -8678,7 +8487,7 @@ var createStore2 = ({ nodes, edges, defaultNodes, defaultEdges, width, height, f
|
|
|
8678
8487
|
y: height2 / 2 - y * nextZoom,
|
|
8679
8488
|
zoom: nextZoom
|
|
8680
8489
|
}, { duration: options?.duration, ease: options?.ease, interpolate: options?.interpolate });
|
|
8681
|
-
return
|
|
8490
|
+
return true;
|
|
8682
8491
|
},
|
|
8683
8492
|
cancelConnection: () => {
|
|
8684
8493
|
set3({
|
|
@@ -8723,14 +8532,14 @@ var wrapperStyle = {
|
|
|
8723
8532
|
position: "relative",
|
|
8724
8533
|
zIndex: 0
|
|
8725
8534
|
};
|
|
8726
|
-
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) {
|
|
8535
|
+
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) {
|
|
8727
8536
|
const rfId = id2 || "1";
|
|
8728
8537
|
const colorModeClassName = useColorModeClass(colorMode);
|
|
8729
8538
|
const wrapperOnScroll = ReactExports.useCallback((e) => {
|
|
8730
8539
|
e.currentTarget.scrollTo({ top: 0, left: 0, behavior: "instant" });
|
|
8731
8540
|
onScroll?.(e);
|
|
8732
8541
|
}, [onScroll]);
|
|
8733
|
-
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 })] }) });
|
|
8542
|
+
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 })] }) });
|
|
8734
8543
|
}
|
|
8735
8544
|
fixedForwardRef(ReactFlow);
|
|
8736
8545
|
function LinePattern({ dimensions, lineWidth, variant, className }) {
|
|
@@ -9663,52 +9472,6 @@ function buildNodeTypes() {
|
|
|
9663
9472
|
for (const k of listNodeKinds()) map[k.name] = RegistryNode;
|
|
9664
9473
|
return map;
|
|
9665
9474
|
}
|
|
9666
|
-
/*! Bundled license information:
|
|
9667
|
-
|
|
9668
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
9669
|
-
(**
|
|
9670
|
-
* @license React
|
|
9671
|
-
* use-sync-external-store-shim.production.js
|
|
9672
|
-
*
|
|
9673
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9674
|
-
*
|
|
9675
|
-
* This source code is licensed under the MIT license found in the
|
|
9676
|
-
* LICENSE file in the root directory of this source tree.
|
|
9677
|
-
*)
|
|
9678
|
-
|
|
9679
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.development.js:
|
|
9680
|
-
(**
|
|
9681
|
-
* @license React
|
|
9682
|
-
* use-sync-external-store-shim.development.js
|
|
9683
|
-
*
|
|
9684
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9685
|
-
*
|
|
9686
|
-
* This source code is licensed under the MIT license found in the
|
|
9687
|
-
* LICENSE file in the root directory of this source tree.
|
|
9688
|
-
*)
|
|
9689
|
-
|
|
9690
|
-
use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js:
|
|
9691
|
-
(**
|
|
9692
|
-
* @license React
|
|
9693
|
-
* use-sync-external-store-shim/with-selector.production.js
|
|
9694
|
-
*
|
|
9695
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9696
|
-
*
|
|
9697
|
-
* This source code is licensed under the MIT license found in the
|
|
9698
|
-
* LICENSE file in the root directory of this source tree.
|
|
9699
|
-
*)
|
|
9700
|
-
|
|
9701
|
-
use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js:
|
|
9702
|
-
(**
|
|
9703
|
-
* @license React
|
|
9704
|
-
* use-sync-external-store-shim/with-selector.development.js
|
|
9705
|
-
*
|
|
9706
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
9707
|
-
*
|
|
9708
|
-
* This source code is licensed under the MIT license found in the
|
|
9709
|
-
* LICENSE file in the root directory of this source tree.
|
|
9710
|
-
*)
|
|
9711
|
-
*/
|
|
9712
9475
|
|
|
9713
9476
|
exports.BUILTIN_KINDS = BUILTIN_KINDS;
|
|
9714
9477
|
exports.RegistryNode = RegistryNode;
|