@ankhzet/graph 0.4.1 → 0.5.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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ankhzet/graph
2
2
 
3
+ ## 0.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Add layouter prop to canvas
8
+
3
9
  ## 0.4.1
4
10
 
5
11
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -135,7 +135,7 @@ export declare class GraphAdapter<Node extends GraphNodeInterface> extends Batch
135
135
 
136
136
  export declare type GraphBarrier<N extends GraphNodeInterface> = (node: N) => boolean;
137
137
 
138
- export declare function GraphCanvas<Node extends GraphNodeInterface<ID, Data, Render>, ID = any, Data = any, Render = any>({ innerRef, nodes, subset, coordinator, menu, onSelectNode, onContextMenu, ...rest }: GraphNodeProps<Node>): JSX.Element;
138
+ export declare function GraphCanvas<Node extends GraphNodeInterface<ID, Data, Render>, ID = any, Data = any, Render = any>({ innerRef, nodes, subset, coordinator, layouter, menu, onSelectNode, onContextMenu, ...rest }: GraphNodeProps<Node>): JSX.Element;
139
139
 
140
140
  declare interface GraphDTO {
141
141
  title: string;
@@ -231,6 +231,7 @@ export declare class GraphNodeJoints<ID> implements NodeJoints<ID> {
231
231
  export declare interface GraphNodeProps<Node extends GraphNodeInterface> {
232
232
  innerRef?: Ref<GraphRef<Node>>;
233
233
  coordinator: Coordinator;
234
+ layouter?: Layouter<Node>;
234
235
  nodes: Node[];
235
236
  subset?: Node['id'][];
236
237
  menu: IMenuProvider<any>;
@@ -317,8 +318,8 @@ export declare interface Layer<Node extends GraphNodeInterface> {
317
318
  }
318
319
 
319
320
  export declare class LayeredLayout<Node extends GraphNodeInterface> extends NodesGraph<Node> implements Layout<Node> {
321
+ #private;
320
322
  layers: Layers<Node>;
321
- private hash;
322
323
  get center(): Position;
323
324
  spread(layer: number, nodes: Node['id'][]): number;
324
325
  findMax(node: Node): number;
@@ -327,28 +328,27 @@ export declare class LayeredLayout<Node extends GraphNodeInterface> extends Node
327
328
  remove(node: Node, layer: number): boolean;
328
329
  put(node: Node, layer: number): void;
329
330
  findLayer(node: Node): number;
330
- findLayers(nodes: Node[]): Partial<Record<string, number>>;
331
+ findLayers(nodes: Node[]): Record<string, number>;
331
332
  shift(node: Node, fromLayer: number, offset: number, chain?: Node[]): number;
332
333
  private all;
333
334
  private walk;
334
335
  }
335
336
 
336
- export declare interface Layers<Node extends GraphNodeInterface> extends Iterable<Layer<Node>> {
337
- [idx: number]: Layer<Node>;
337
+ export declare interface Layers<Node extends GraphNodeInterface> extends Array<Layer<Node>> {
338
338
  }
339
339
 
340
- declare interface Layout<Node extends GraphNodeInterface<any, any>> {
340
+ declare interface Layout<Node extends GraphNodeInterface> {
341
341
  readonly center: Position;
342
342
  getSubGraphs(subset?: Node['id'][]): Node['id'][][];
343
343
  spread(layer: number, nodes: Node['id'][]): number;
344
344
  }
345
345
 
346
- export declare class Layouter<Node extends GraphNodeInterface<any, any>> {
346
+ export declare class Layouter<Node extends GraphNodeInterface> {
347
347
  private readonly isBarrier;
348
348
  private readonly klass;
349
349
  constructor(klass: Constructor<Layout<Node>, [nodes: Node[], isBarrier: GraphBarrier<Node>]>, isBarrier: GraphBarrier<Node>);
350
350
  layout(nodes: Node[], subset?: Node['id'][]): Layout<Node>;
351
- getSubGraphs(nodes: Node[]): Node["id"][][];
351
+ getSubGraphs(nodes: Node[], subset?: Node['id'][]): Node["id"][][];
352
352
  }
353
353
 
354
354
  export declare type Line = {
package/dist/index.js CHANGED
@@ -13,22 +13,22 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
13
13
  enumerable: !0
14
14
  });
15
15
  return t || S(n, Symbol.toStringTag, { value: "Module" }), n;
16
- }, ee = (e, t, n, r) => {
16
+ }, D = (e, t, n, r) => {
17
17
  if (t && typeof t == "object" || typeof t == "function") for (var i = w(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !T.call(e, s) && s !== n && S(e, s, {
18
18
  get: ((e) => t[e]).bind(null, s),
19
19
  enumerable: !(r = C(t, s)) || r.enumerable
20
20
  });
21
21
  return e;
22
- }, D = (e, t, n) => (ee(e, t, "default"), n && ee(n, t, "default")), O = (e, t, n = 1) => ({
22
+ }, O = (e, t, n) => (D(e, t, "default"), n && D(n, t, "default")), k = (e, t, n = 1) => ({
23
23
  x: ~~(e.x + t.x * n),
24
24
  y: ~~(e.y + t.y * n)
25
- }), k = (e, t) => (n) => n.node === e && n.port === t, te = (e) => (t) => t.node === e, ne = (e, t, n) => {
25
+ }), A = (e, t) => (n) => n.node === e && n.port === t, ee = (e) => (t) => t.node === e, j = (e, t, n) => {
26
26
  if (n) for (let r of n) {
27
- let n = t.nodes.findIndex(k(r.node, r.port));
27
+ let n = t.nodes.findIndex(A(r.node, r.port));
28
28
  n >= 0 !== e && (e ? t.nodes.push(r) : t.nodes.splice(n, 1));
29
29
  }
30
30
  else e || (t.nodes = []);
31
- }, re = (e, t, n, r, i, a, o, s) => {
31
+ }, te = (e, t, n, r, i, a, o, s) => {
32
32
  if (e === n && t === r || i === o && a === s) return !1;
33
33
  let c = (s - a) * (n - e) - (o - i) * (r - t);
34
34
  if (c === 0) return !1;
@@ -37,7 +37,7 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
37
37
  x: e + l * (n - e),
38
38
  y: t + l * (r - t)
39
39
  };
40
- }, A = class {
40
+ }, M = class {
41
41
  joints = /* @__PURE__ */ new Map();
42
42
  parentId;
43
43
  constructor(e, t) {
@@ -64,16 +64,16 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
64
64
  return !!this.getPort(e, t);
65
65
  }
66
66
  hasAtPort(e, t, n) {
67
- return !!this.joints.get(e)?.nodes.some(k(t, n));
67
+ return !!this.joints.get(e)?.nodes.some(A(t, n));
68
68
  }
69
69
  getPort(e, t) {
70
- let n = this.find(t === void 0 ? (t) => t.nodes.some(te(e)) : (n) => n.nodes.some(k(e, t)));
70
+ let n = this.find(t === void 0 ? (t) => t.nodes.some(ee(e)) : (n) => n.nodes.some(A(e, t)));
71
71
  if (n) return n.port;
72
72
  }
73
73
  connect({ port: e, target: t, connect: n }) {
74
74
  let r = this.joints.get(e);
75
75
  if (!r) throw Error(`Node ${this.parentId} does not have joint "${e}"`);
76
- return ne(n, r, t), r;
76
+ return j(n, r, t), r;
77
77
  }
78
78
  getNodes(e) {
79
79
  return this.joints.get(e)?.nodes;
@@ -86,7 +86,7 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
86
86
  get count() {
87
87
  return this.joints.size;
88
88
  }
89
- }, j = Symbol("E_CONNECT"), M = Symbol("E_MOVE"), ie = class extends e {
89
+ }, ne = Symbol("E_CONNECT"), re = Symbol("E_MOVE"), ie = class extends e {
90
90
  id;
91
91
  description;
92
92
  inputs;
@@ -97,7 +97,7 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
97
97
  y: 0
98
98
  };
99
99
  constructor({ id: e, coordinator: t, inputs: n = [], outputs: r = [], ...i }) {
100
- super(), this.id = e, this.coordinator = t, this.description = i, this.inputs = new A(e, n), this.outputs = new A(e, r);
100
+ super(), this.id = e, this.coordinator = t, this.description = i, this.inputs = new M(e, n), this.outputs = new M(e, r);
101
101
  }
102
102
  get title() {
103
103
  return this.description.title;
@@ -112,7 +112,7 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
112
112
  return this.#e;
113
113
  }
114
114
  set position({ x: e, y: t }) {
115
- e = this.coordinator.snap(e), t = this.coordinator.snap(t), !(this.#e.x === e && this.#e.y === t) && (this.#e.x = e, this.#e.y = t, this.dispatchEvent(M, this.#e));
115
+ e = this.coordinator.snap(e), t = this.coordinator.snap(t), !(this.#e.x === e && this.#e.y === t) && (this.#e.x = e, this.#e.y = t, this.dispatchEvent(re, this.#e));
116
116
  }
117
117
  isInput(e, t, n) {
118
118
  return this.inputs.hasAtPort(e, t, n);
@@ -154,7 +154,7 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
154
154
  nodes: a
155
155
  });
156
156
  }
157
- this.dispatchEvent(j, {
157
+ this.dispatchEvent(ne, {
158
158
  connect: t,
159
159
  input: e,
160
160
  source: i,
@@ -165,10 +165,10 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
165
165
  return this.position = e;
166
166
  }
167
167
  onConnect(e) {
168
- return this.handleEvent(j, e);
168
+ return this.handleEvent(ne, e);
169
169
  }
170
170
  onMove(e) {
171
- return this.handleEvent(M, e);
171
+ return this.handleEvent(re, e);
172
172
  }
173
173
  }, N = class {
174
174
  _barriers = {};
@@ -233,30 +233,20 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
233
233
  }
234
234
  }, ae = class extends N {
235
235
  layers = [];
236
- hash = null;
236
+ #e = null;
237
237
  get center() {
238
- return this.hash ||= this.getCenter((e) => e.position), this.hash;
238
+ return this.#e ??= this.getCenter((e) => e.position);
239
239
  }
240
240
  spread(e, t) {
241
- let n = [], r = 0;
242
- for (let i of t) {
243
- let t = this.map[i], a = this.shift(t, this.findLayer(t), e, n);
244
- r = Math.max(r, a);
245
- }
246
- return r;
241
+ let n = [], r = this.get(t).map((t) => this.shift(t, this.findLayer(t), e, n));
242
+ return Math.max(...r);
247
243
  }
248
244
  findMax(e) {
249
- let t = this.findLayers(this.get(e.inputs.ids)), n = 0;
250
- for (let e of Object.values(t)) {
251
- let t = +e;
252
- t > n && (n = t);
253
- }
254
- return n || 0;
245
+ let t = this.findLayers(this.get(e.inputs.ids));
246
+ return Math.max(0, ...Object.values(t));
255
247
  }
256
248
  dependants({ id: e }) {
257
- let t = [];
258
- for (let n of this.nodes) n.id !== e && n.inputs.has(e) && t.push(n);
259
- return t;
249
+ return this.nodes.filter((t) => t.id !== e && t.inputs.has(e));
260
250
  }
261
251
  get(e) {
262
252
  return e.map((e) => this.map[e]).filter(n);
@@ -265,19 +255,17 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
265
255
  return this.layers[t] ? delete this.layers[t][e.id] : !1;
266
256
  }
267
257
  put(e, t) {
268
- let n = this.layers[t] || (this.layers[t] = {});
269
- n[e.id] = e;
258
+ (this.layers[t] ??= {})[e.id] = e;
270
259
  }
271
260
  findLayer(e) {
272
- for (let [t, n] of Object.entries(this.layers)) if (n[e.id]) return +t;
273
- return 0;
261
+ return Math.max(0, this.layers.findIndex((t) => t[e.id]));
274
262
  }
275
263
  findLayers(e) {
276
264
  let t = {};
277
- for (let n in this.layers) {
278
- let r = this.layers[n], i = [];
279
- for (let a of e) r[a.id] && (t[a.id] = +n, i.push(a));
280
- e = e.filter((e) => i.indexOf(e) < 0);
265
+ for (let [n, r] of this.layers.entries()) {
266
+ let i = e.filter((e) => r[e.id]).map((e) => e.id);
267
+ for (let e of i) t[e] = n;
268
+ e = e.filter((e) => !i.includes(e.id));
281
269
  }
282
270
  return t;
283
271
  }
@@ -409,10 +397,12 @@ var S = Object.defineProperty, C = Object.getOwnPropertyDescriptor, w = Object.g
409
397
  this.klass = e, this.isBarrier = t;
410
398
  }
411
399
  layout(e, t) {
412
- return new this.klass(e, this.isBarrier);
400
+ let n = new this.klass(e, this.isBarrier), r = n.getSubGraphs(t), i = 0;
401
+ for (let e of r) i += n.spread(i, e);
402
+ return n;
413
403
  }
414
- getSubGraphs(e) {
415
- return new this.klass(e, this.isBarrier).getSubGraphs();
404
+ getSubGraphs(e, t) {
405
+ return new this.klass(e, this.isBarrier).getSubGraphs(t);
416
406
  }
417
407
  }, P = Symbol("changed"), F = class extends e {
418
408
  all;
@@ -507,19 +497,19 @@ var R = (e) => {
507
497
  };
508
498
  }, z = /* @__PURE__ */ E({});
509
499
  import * as ue from "@pixi/core";
510
- D(z, ue);
500
+ O(z, ue);
511
501
  import * as de from "@pixi/display";
512
- D(z, de);
502
+ O(z, de);
513
503
  import * as fe from "@pixi/sprite";
514
- D(z, fe);
504
+ O(z, fe);
515
505
  import * as pe from "@pixi/graphics";
516
- D(z, pe);
506
+ O(z, pe);
517
507
  import * as me from "@pixi/text";
518
- D(z, me);
508
+ O(z, me);
519
509
  import * as he from "@pixi/text-bitmap";
520
- D(z, he);
510
+ O(z, he);
521
511
  import * as ge from "@pixi/events";
522
- D(z, ge);
512
+ O(z, ge);
523
513
  //#endregion
524
514
  //#region src/graph/render/Batch.ts
525
515
  var _e = class extends e {
@@ -617,7 +607,7 @@ var _e = class extends e {
617
607
  this.progress = e;
618
608
  let t = e * ye % ye, n = Math.cos(t - be) * this.sizeX * 2, r = Math.sin(t - be) * this.sizeY * 2, i, a = null, o = 0;
619
609
  for (let e = 0; e < this.#r.segments.length; e++) {
620
- let t = this.#r.segments[e], s = re(0, 0, n, r, t[0], t[1], t[2], t[3]);
610
+ let t = this.#r.segments[e], s = te(0, 0, n, r, t[0], t[1], t[2], t[3]);
621
611
  if (s) {
622
612
  a = s, o = e === 0 ? s.x > 0 ? 0 : 4 : 4 - e, i = ve[e];
623
613
  break;
@@ -696,7 +686,7 @@ var _e = class extends e {
696
686
  if (t.hover) {
697
687
  let a = r === t.point.parent || i === t.point.input ? 2 : 1;
698
688
  if (a && n) {
699
- let n = e.point.nodes.some(k(t.point.parent, t.point.port)), r = t.point.nodes.some(k(e.point.parent, e.point.port));
689
+ let n = e.point.nodes.some(A(t.point.parent, t.point.port)), r = t.point.nodes.some(A(e.point.parent, e.point.port));
700
690
  return n && r ? 1 : 0;
701
691
  }
702
692
  return a;
@@ -934,12 +924,12 @@ var Me = (e) => (t) => {
934
924
  #i({ connect: e, input: t, source: { port: n }, target: r }) {
935
925
  let i = this.connectors.find((e) => e.port === n && e.input === t);
936
926
  if (!i) return;
937
- ne(e, i, r);
927
+ j(e, i, r);
938
928
  let a = this.ports.get(n);
939
929
  a && a.setActive(!!i.nodes.length);
940
930
  }
941
931
  connectedAt(e, t, n) {
942
- return this.connectors.find(({ nodes: r, connector: i }) => n !== !i && r.length && r.some(k(e, t)));
932
+ return this.connectors.find(({ nodes: r, connector: i }) => n !== !i && r.length && r.some(A(e, t)));
943
933
  }
944
934
  get connectors() {
945
935
  if (this.#n) return this.#n;
@@ -950,7 +940,7 @@ var Me = (e) => (t) => {
950
940
  let n = {
951
941
  x: 16 / 2,
952
942
  y: t * 16 + 16 / 2
953
- }, r = O(this.data.position, n);
943
+ }, r = k(this.data.position, n);
954
944
  this.#n.push({
955
945
  parent: this.data.id,
956
946
  port: e.port,
@@ -977,11 +967,11 @@ var Me = (e) => (t) => {
977
967
  let t = /* @__PURE__ */ new Map(), n = [];
978
968
  for (let r of this.connectors) {
979
969
  let { connector: i, nodes: a, port: o } = r, s = `${this.id}-${o}`;
980
- if (i) if (i.move(O(this.renderable, r)), a.length) {
970
+ if (i) if (i.move(k(this.renderable, r)), a.length) {
981
971
  let e = 0;
982
972
  for (let { node: t, port: n } of a) {
983
973
  let r = this.find(t), a = r?.connectedAt(this.id, o);
984
- r && a ? (i.moveTargetTo(t, n, O(r.renderable, a)), e++) : i.removeTarget(t, n);
974
+ r && a ? (i.moveTargetTo(t, n, k(r.renderable, a)), e++) : i.removeTarget(t, n);
985
975
  }
986
976
  e && t.set(s, i);
987
977
  } else n.push(s);
@@ -1379,13 +1369,13 @@ var Me = (e) => (t) => {
1379
1369
  };
1380
1370
  }
1381
1371
  fromGlobal(e) {
1382
- return O(e, this.world.transform.position, -1);
1372
+ return k(e, this.world.transform.position, -1);
1383
1373
  }
1384
1374
  fromLocal(e) {
1385
- return O(O(e, this.world.transform.position, -2), this.center);
1375
+ return k(k(e, this.world.transform.position, -2), this.center);
1386
1376
  }
1387
1377
  offsetPos(e, t = 1) {
1388
- return O(e, this.center, t);
1378
+ return k(e, this.center, t);
1389
1379
  }
1390
1380
  translate(e) {
1391
1381
  this.world.transform.position.copyFrom(this.offsetPos(e)), this.overlay.transform.position.copyFrom(this.offsetPos(e)), this.updateViewport();
@@ -1608,7 +1598,7 @@ var Me = (e) => (t) => {
1608
1598
  }
1609
1599
  }
1610
1600
  };
1611
- D(/* @__PURE__ */ E({
1601
+ O(/* @__PURE__ */ E({
1612
1602
  Batch: () => _e,
1613
1603
  E_CONNECTORS_UPDATE: () => J,
1614
1604
  E_NODE_CONTEXT: () => q,
@@ -1812,8 +1802,8 @@ var Ze = (e, t) => {
1812
1802
  }), st = {
1813
1803
  x: 0,
1814
1804
  y: 0
1815
- }, ct = v(function({ innerRef: e, nodes: t, subset: n, coordinator: r, menu: l, onSelectNode: u, onContextMenu: d, ...f }) {
1816
- let p = c(st), h = c(null), g = s(() => new Q(l), [l]), _ = s(() => new Ye({
1805
+ }, ct = v(function({ innerRef: e, nodes: t, subset: n, coordinator: r, layouter: l, menu: u, onSelectNode: d, onContextMenu: f, ...p }) {
1806
+ let h = c(st), g = c(null), _ = s(() => new Q(u), [u]), v = s(() => new Ye({
1817
1807
  maxFPS: 120,
1818
1808
  grid: {
1819
1809
  cellSize: r.gridSize,
@@ -1824,49 +1814,53 @@ var Ze = (e, t) => {
1824
1814
  10066329
1825
1815
  ]
1826
1816
  },
1827
- gui: [g]
1817
+ gui: [_]
1828
1818
  }), [r]);
1829
1819
  a(e, () => ({
1830
- graph: _,
1820
+ graph: v,
1831
1821
  get element() {
1832
- return h.current?.element;
1822
+ return g.current?.element;
1833
1823
  }
1834
1824
  }));
1835
- let v = m(({ width: e, height: t }) => _.resize(e, t)), b = m(() => {
1836
- let { x: e, y: t } = r.toData(_.translation), { x: n, y: i } = r.toData(p.current);
1837
- g.text = `Pos: ${-(e - 1)} x ${-(t - 1)}\nCursor: ${~~(n - 1)} x ${~~(i - 1)}`;
1838
- }), x = m((e) => {
1839
- p.current = _.fromLocal(e), b();
1825
+ let b = m(({ width: e, height: t }) => v.resize(e, t)), x = m(() => {
1826
+ let { x: e, y: t } = r.toData(v.translation), { x: n, y: i } = r.toData(h.current);
1827
+ _.text = `Pos: ${-(e - 1)} x ${-(t - 1)}\nCursor: ${~~(n - 1)} x ${~~(i - 1)}`;
1840
1828
  }), S = m((e) => {
1841
- p.current = _.fromLocal(e), _.releaseNode(), b();
1842
- }), C = m((e, t) => {
1843
- if (x(e), _.capturing && !t?.shiftKey && u(null, r.toData(p.current)), !1 === u(_.capturing || null, r.toData(p.current))) return _.releaseNode(), !1;
1844
- }), w = m((e) => {
1845
- _.capturing || (_.translate(e), b());
1829
+ h.current = v.fromLocal(e), x();
1830
+ }), C = m((e) => {
1831
+ h.current = v.fromLocal(e), v.releaseNode(), x();
1832
+ }), w = m((e, t) => {
1833
+ if (S(e), v.capturing && !t?.shiftKey && d(null, r.toData(h.current)), !1 === d(v.capturing || null, r.toData(h.current))) return v.releaseNode(), !1;
1846
1834
  }), T = m((e) => {
1847
- if (!1 === C(e)) return !1;
1848
- if (!1 === d(_.capturing || null, r.toData(p.current))) return _.releaseNode(), !1;
1849
- }), E = s(() => ({
1835
+ v.capturing || (v.translate(e), x());
1836
+ }), E = m((e) => {
1837
+ if (!1 === w(e)) return !1;
1838
+ if (!1 === f(v.capturing || null, r.toData(h.current))) return v.releaseNode(), !1;
1839
+ }), D = s(() => ({
1850
1840
  get position() {
1851
- return _.translation;
1841
+ return v.translation;
1852
1842
  },
1853
- onDrag: w,
1854
- onPointer: x,
1855
- onClick: C,
1856
- onUp: S,
1857
- onContext: T
1858
- }), [_]);
1843
+ onDrag: T,
1844
+ onPointer: S,
1845
+ onClick: w,
1846
+ onUp: C,
1847
+ onContext: E
1848
+ }), [v]);
1859
1849
  return i(() => {
1860
- if (!h.current) return;
1850
+ if (!g.current) return;
1861
1851
  let e = n || t.map(({ id: e }) => e);
1862
- _.batch(() => {
1863
- for (let t of _) e.includes(t.id) || _.removeNode(t);
1864
- for (let n of t) e.includes(n.id) && (_.addNode(n), _.moveNodeTo(n, n.position));
1865
- _.layout();
1852
+ v.batch(() => {
1853
+ for (let t of v) e.includes(t.id) || v.removeNode(t);
1854
+ for (let n of t) e.includes(n.id) && (v.addNode(n), v.moveNodeTo(n, n.position));
1855
+ l && l.layout(t, n), v.layout();
1866
1856
  });
1867
- }, [n, t]), o(() => {
1868
- let e = h.current?.element;
1869
- if (e) return _.mount(e, { viewport: {
1857
+ }, [
1858
+ n,
1859
+ t,
1860
+ l
1861
+ ]), o(() => {
1862
+ let e = g.current?.element;
1863
+ if (e) return v.mount(e, { viewport: {
1870
1864
  width: e.clientWidth,
1871
1865
  height: e.clientHeight,
1872
1866
  resolution: window.devicePixelRatio,
@@ -1874,11 +1868,11 @@ var Ze = (e, t) => {
1874
1868
  antialias: !0,
1875
1869
  transparent: !1
1876
1870
  } });
1877
- }, [_]), /* @__PURE__ */ y(nt, {
1878
- ref: h,
1879
- handlers: E,
1880
- onResize: v,
1881
- ...f
1871
+ }, [v]), /* @__PURE__ */ y(nt, {
1872
+ ref: g,
1873
+ handlers: D,
1874
+ onResize: b,
1875
+ ...p
1882
1876
  });
1883
1877
  }), lt = (e, { onEdit: t, onMove: n, onConnect: r, onDelete: i, onAddPort: a, onDisconnectPort: o, onDeletePort: s }) => {
1884
1878
  e.onConnect(r), e.onMove((t) => n(e, t)), e.onEditAction(() => t(e)), e.onDeleteAction(() => i(e)), e.onAddPortAction((t) => a(e, t)), e.onDisconnectPortAction(({ port: t }) => o(e, t)), e.onDeletePortAction(({ port: t }) => s(e, t));
@@ -2287,6 +2281,6 @@ var Ze = (e, t) => {
2287
2281
  }
2288
2282
  });
2289
2283
  //#endregion
2290
- export { oe as ClusteredLayout, ce as EdgesSort, Ye as GraphAdapter, ct as GraphCanvas, ie as GraphNode, A as GraphNodeJoints, ae as LayeredLayout, le as Layouter, St as ManagedGraph, yt as ManagedGraphNode, vt as MenuActions, $ as NodeGroups, _t as NodeStatus, N as NodesGraph, se as NodesSort, Q as PIXIGUI, F as Store, nt as Viewport, ht as getChannelName, mt as isChannelName, I as isEqualIdentifiables, R as useDraggable, L as useStore };
2284
+ export { oe as ClusteredLayout, ce as EdgesSort, Ye as GraphAdapter, ct as GraphCanvas, ie as GraphNode, M as GraphNodeJoints, ae as LayeredLayout, le as Layouter, St as ManagedGraph, yt as ManagedGraphNode, vt as MenuActions, $ as NodeGroups, _t as NodeStatus, N as NodesGraph, se as NodesSort, Q as PIXIGUI, F as Store, nt as Viewport, ht as getChannelName, mt as isChannelName, I as isEqualIdentifiables, R as useDraggable, L as useStore };
2291
2285
 
2292
2286
  //# sourceMappingURL=index.js.map