@dpuse/dpuse-tool-d3-visualiser 0.0.23 → 0.0.25

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.
@@ -1,52 +1,28 @@
1
1
  import { t as e } from "./select-BIuoFcZG.js";
2
- import { a as t, n, o as r, r as i, t as a } from "./point-BwTGxj8U.js";
3
- import { t as o } from "./linear-J4iYa1Bf.js";
4
- //#region node_modules/d3-shape/src/line.js
5
- function s(e, s) {
6
- var c = r(!0), l = null, u = o, d = null, f = t(p);
7
- e = typeof e == "function" ? e : e === void 0 ? a : r(e), s = typeof s == "function" ? s : s === void 0 ? n : r(s);
8
- function p(t) {
9
- var n, r = (t = i(t)).length, a, o = !1, p;
10
- for (l ?? (d = u(p = f())), n = 0; n <= r; ++n) !(n < r && c(a = t[n], n, t)) === o && ((o = !o) ? d.lineStart() : d.lineEnd()), o && d.point(+e(a, n, t), +s(a, n, t));
11
- if (p) return d = null, p + "" || null;
12
- }
13
- return p.x = function(t) {
14
- return arguments.length ? (e = typeof t == "function" ? t : r(+t), p) : e;
15
- }, p.y = function(e) {
16
- return arguments.length ? (s = typeof e == "function" ? e : r(+e), p) : s;
17
- }, p.defined = function(e) {
18
- return arguments.length ? (c = typeof e == "function" ? e : r(!!e), p) : c;
19
- }, p.curve = function(e) {
20
- return arguments.length ? (u = e, l != null && (d = u(l)), p) : u;
21
- }, p.context = function(e) {
22
- return arguments.length ? (e == null ? l = d = null : d = u(l = e), p) : l;
23
- }, p;
24
- }
25
- //#endregion
26
2
  //#region node_modules/@dagrejs/dagre/dist/dagre.esm.js
27
- var c = Object.defineProperty, l = (e, t, n) => t in e ? c(e, t, {
3
+ var t = Object.defineProperty, n = (e, n, r) => n in e ? t(e, n, {
28
4
  enumerable: !0,
29
5
  configurable: !0,
30
6
  writable: !0,
31
- value: n
32
- }) : e[t] = n, u = (e, t) => {
33
- for (var n in t) c(e, n, {
34
- get: t[n],
7
+ value: r
8
+ }) : e[n] = r, r = (e, n) => {
9
+ for (var r in n) t(e, r, {
10
+ get: n[r],
35
11
  enumerable: !0
36
12
  });
37
- }, d = (e, t, n) => l(e, typeof t == "symbol" ? t : t + "", n), f = {};
38
- u(f, {
39
- Graph: () => h,
40
- alg: () => x,
41
- json: () => te,
42
- version: () => b
13
+ }, i = (e, t, r) => n(e, typeof t == "symbol" ? t : t + "", r), a = {};
14
+ r(a, {
15
+ Graph: () => c,
16
+ alg: () => b,
17
+ json: () => h,
18
+ version: () => m
43
19
  });
44
- var p = Object.defineProperty, m = (e, t) => {
45
- for (var n in t) p(e, n, {
20
+ var o = Object.defineProperty, s = (e, t) => {
21
+ for (var n in t) o(e, n, {
46
22
  get: t[n],
47
23
  enumerable: !0
48
24
  });
49
- }, h = class {
25
+ }, c = class {
50
26
  constructor(e) {
51
27
  this._isDirected = !0, this._isMultigraph = !1, this._isCompound = !1, this._nodes = {}, this._in = {}, this._preds = {}, this._out = {}, this._sucs = {}, this._edgeObjs = {}, this._edgeLabels = {}, this._nodeCount = 0, this._edgeCount = 0, this._defaultNodeLabelFn = () => {}, this._defaultEdgeLabelFn = () => {}, e && (this._isDirected = "directed" in e ? e.directed : !0, this._isMultigraph = "multigraph" in e && e.multigraph, this._isCompound = "compound" in e && e.compound), this._isCompound && (this._parent = {}, this._children = {}, this._children["\0"] = {});
52
28
  }
@@ -181,15 +157,15 @@ var p = Object.defineProperty, m = (e, t) => {
181
157
  setEdge(e, t, n, r) {
182
158
  let i, a, o, s, c = !1;
183
159
  typeof e == "object" && e && "v" in e ? (i = e.v, a = e.w, o = e.name, arguments.length === 2 && (s = t, c = !0)) : (i = e, a = t, o = r, arguments.length > 2 && (s = n, c = !0)), i = "" + i, a = "" + a, o !== void 0 && (o = "" + o);
184
- let l = v(this._isDirected, i, a, o);
185
- if (l in this._edgeLabels) return c && (this._edgeLabels[l] = s), this;
160
+ let u = d(this._isDirected, i, a, o);
161
+ if (u in this._edgeLabels) return c && (this._edgeLabels[u] = s), this;
186
162
  if (o !== void 0 && !this._isMultigraph) throw Error("Cannot set a named edge when isMultigraph = false");
187
- this.setNode(i), this.setNode(a), this._edgeLabels[l] = c ? s : this._defaultEdgeLabelFn(i, a, o);
188
- let u = ee(this._isDirected, i, a, o);
189
- return i = u.v, a = u.w, Object.freeze(u), this._edgeObjs[l] = u, g(this._preds[a], i), g(this._sucs[i], a), this._in[a][l] = u, this._out[i][l] = u, this._edgeCount++, this;
163
+ this.setNode(i), this.setNode(a), this._edgeLabels[u] = c ? s : this._defaultEdgeLabelFn(i, a, o);
164
+ let p = f(this._isDirected, i, a, o);
165
+ return i = p.v, a = p.w, Object.freeze(p), this._edgeObjs[u] = p, l(this._preds[a], i), l(this._sucs[i], a), this._in[a][u] = p, this._out[i][u] = p, this._edgeCount++, this;
190
166
  }
191
167
  edge(e, t, n) {
192
- let r = arguments.length === 1 ? y(this._isDirected, e) : v(this._isDirected, e, t, n);
168
+ let r = arguments.length === 1 ? p(this._isDirected, e) : d(this._isDirected, e, t, n);
193
169
  return this._edgeLabels[r];
194
170
  }
195
171
  edgeAsObj(e, t, n) {
@@ -197,13 +173,13 @@ var p = Object.defineProperty, m = (e, t) => {
197
173
  return typeof r == "object" ? r : { label: r };
198
174
  }
199
175
  hasEdge(e, t, n) {
200
- return (arguments.length === 1 ? y(this._isDirected, e) : v(this._isDirected, e, t, n)) in this._edgeLabels;
176
+ return (arguments.length === 1 ? p(this._isDirected, e) : d(this._isDirected, e, t, n)) in this._edgeLabels;
201
177
  }
202
178
  removeEdge(e, t, n) {
203
- let r = arguments.length === 1 ? y(this._isDirected, e) : v(this._isDirected, e, t, n), i = this._edgeObjs[r];
179
+ let r = arguments.length === 1 ? p(this._isDirected, e) : d(this._isDirected, e, t, n), i = this._edgeObjs[r];
204
180
  if (i) {
205
181
  let e = i.v, t = i.w;
206
- delete this._edgeLabels[r], delete this._edgeObjs[r], _(this._preds[t], e), _(this._sucs[e], t), delete this._in[t][r], delete this._out[e][r], this._edgeCount--;
182
+ delete this._edgeLabels[r], delete this._edgeObjs[r], u(this._preds[t], e), u(this._sucs[e], t), delete this._in[t][r], delete this._out[e][r], this._edgeCount--;
207
183
  }
208
184
  return this;
209
185
  }
@@ -228,13 +204,13 @@ var p = Object.defineProperty, m = (e, t) => {
228
204
  return n ? r.filter((e) => e.v === t && e.w === n || e.v === n && e.w === t) : r;
229
205
  }
230
206
  };
231
- function g(e, t) {
207
+ function l(e, t) {
232
208
  e[t] ? e[t]++ : e[t] = 1;
233
209
  }
234
- function _(e, t) {
210
+ function u(e, t) {
235
211
  e[t] !== void 0 && !--e[t] && delete e[t];
236
212
  }
237
- function v(e, t, n, r) {
213
+ function d(e, t, n, r) {
238
214
  let i = "" + t, a = "" + n;
239
215
  if (!e && i > a) {
240
216
  let e = i;
@@ -242,7 +218,7 @@ function v(e, t, n, r) {
242
218
  }
243
219
  return i + "" + a + "" + (r === void 0 ? "\0" : r);
244
220
  }
245
- function ee(e, t, n, r) {
221
+ function f(e, t, n, r) {
246
222
  let i = "" + t, a = "" + n;
247
223
  if (!e && i > a) {
248
224
  let e = i;
@@ -254,33 +230,33 @@ function ee(e, t, n, r) {
254
230
  };
255
231
  return r && (o.name = r), o;
256
232
  }
257
- function y(e, t) {
258
- return v(e, t.v, t.w, t.name);
233
+ function p(e, t) {
234
+ return d(e, t.v, t.w, t.name);
259
235
  }
260
- var b = "4.0.1", te = {};
261
- m(te, {
262
- read: () => ae,
263
- write: () => ne
236
+ var m = "4.0.1", h = {};
237
+ s(h, {
238
+ read: () => y,
239
+ write: () => g
264
240
  });
265
- function ne(e) {
241
+ function g(e) {
266
242
  let t = {
267
243
  options: {
268
244
  directed: e.isDirected(),
269
245
  multigraph: e.isMultigraph(),
270
246
  compound: e.isCompound()
271
247
  },
272
- nodes: re(e),
273
- edges: ie(e)
248
+ nodes: _(e),
249
+ edges: v(e)
274
250
  }, n = e.graph();
275
251
  return n !== void 0 && (t.value = structuredClone(n)), t;
276
252
  }
277
- function re(e) {
253
+ function _(e) {
278
254
  return e.nodes().map((t) => {
279
255
  let n = e.node(t), r = e.parent(t), i = { v: t };
280
256
  return n !== void 0 && (i.value = n), r !== void 0 && (i.parent = r), i;
281
257
  });
282
258
  }
283
- function ie(e) {
259
+ function v(e) {
284
260
  return e.edges().map((t) => {
285
261
  let n = e.edge(t), r = {
286
262
  v: t.v,
@@ -289,8 +265,8 @@ function ie(e) {
289
265
  return t.name !== void 0 && (r.name = t.name), n !== void 0 && (r.value = n), r;
290
266
  });
291
267
  }
292
- function ae(e) {
293
- let t = new h(e.options);
268
+ function y(e) {
269
+ let t = new c(e.options);
294
270
  return e.value !== void 0 && t.setGraph(e.value), e.nodes.forEach((e) => {
295
271
  t.setNode(e.v, e.value), e.parent && t.setParent(e.v, e.parent);
296
272
  }), e.edges.forEach((e) => {
@@ -301,30 +277,30 @@ function ae(e) {
301
277
  }, e.value);
302
278
  }), t;
303
279
  }
304
- var x = {};
305
- m(x, {
306
- CycleException: () => w,
307
- bellmanFord: () => se,
308
- components: () => le,
309
- dijkstra: () => C,
310
- dijkstraAll: () => fe,
311
- findCycles: () => me,
312
- floydWarshall: () => ge,
313
- isAcyclic: () => ve,
314
- postorder: () => be,
315
- preorder: () => xe,
316
- prim: () => Se,
317
- shortestPaths: () => Ce,
318
- tarjan: () => pe,
319
- topsort: () => T
280
+ var b = {};
281
+ s(b, {
282
+ CycleException: () => C,
283
+ bellmanFord: () => x,
284
+ components: () => ne,
285
+ dijkstra: () => S,
286
+ dijkstraAll: () => oe,
287
+ findCycles: () => ce,
288
+ floydWarshall: () => ue,
289
+ isAcyclic: () => fe,
290
+ postorder: () => ge,
291
+ preorder: () => _e,
292
+ prim: () => ve,
293
+ shortestPaths: () => ye,
294
+ tarjan: () => se,
295
+ topsort: () => w
320
296
  });
321
- var oe = () => 1;
322
- function se(e, t, n, r) {
323
- return ce(e, String(t), n || oe, r || function(t) {
297
+ var ee = () => 1;
298
+ function x(e, t, n, r) {
299
+ return te(e, String(t), n || ee, r || function(t) {
324
300
  return e.outEdges(t);
325
301
  });
326
302
  }
327
- function ce(e, t, n, r) {
303
+ function te(e, t, n, r) {
328
304
  let i = {}, a, o = 0, s = e.nodes(), c = function(e) {
329
305
  let t = n(e);
330
306
  i[e.v].distance + t < i[e.w].distance && (i[e.w] = {
@@ -353,7 +329,7 @@ function ce(e, t, n, r) {
353
329
  if (o === u - 1 && (a = !1, l(), a)) throw Error("The graph contains a negative weight cycle");
354
330
  return i;
355
331
  }
356
- function le(e) {
332
+ function ne(e) {
357
333
  let t = {}, n = [], r;
358
334
  function i(n) {
359
335
  n in t || (t[n] = !0, r.push(n), e.successors(n).forEach(i), e.predecessors(n).forEach(i));
@@ -362,7 +338,7 @@ function le(e) {
362
338
  r = [], i(e), r.length && n.push(r);
363
339
  }), n;
364
340
  }
365
- var S = class {
341
+ var re = class {
366
342
  constructor() {
367
343
  this._arr = [], this._keyIndices = {};
368
344
  }
@@ -418,14 +394,14 @@ var S = class {
418
394
  let n = this._arr, r = this._keyIndices, i = n[e], a = n[t];
419
395
  n[e] = a, n[t] = i, r[a.key] = e, r[i.key] = t;
420
396
  }
421
- }, ue = () => 1;
422
- function C(e, t, n, r) {
423
- return de(e, String(t), n || ue, r || function(t) {
397
+ }, ie = () => 1;
398
+ function S(e, t, n, r) {
399
+ return ae(e, String(t), n || ie, r || function(t) {
424
400
  return e.outEdges(t);
425
401
  });
426
402
  }
427
- function de(e, t, n, r) {
428
- let i = {}, a = new S(), o, s, c = function(e) {
403
+ function ae(e, t, n, r) {
404
+ let i = {}, a = new re(), o, s, c = function(e) {
429
405
  let t = e.v === o ? e.w : e.v, r = i[t], c = n(e), l = s.distance + c;
430
406
  if (c < 0) throw Error("dijkstra does not allow negative edge weights. Bad edge: " + e + " Weight: " + c);
431
407
  l < r.distance && (r.distance = l, r.predecessor = o, a.decrease(t, l));
@@ -439,12 +415,12 @@ function de(e, t, n, r) {
439
415
  }); a.size() > 0 && (o = a.removeMin(), s = i[o], s.distance !== Infinity);) r(o).forEach(c);
440
416
  return i;
441
417
  }
442
- function fe(e, t, n) {
418
+ function oe(e, t, n) {
443
419
  return e.nodes().reduce(function(r, i) {
444
- return r[i] = C(e, i, t, n), r;
420
+ return r[i] = S(e, i, t, n), r;
445
421
  }, {});
446
422
  }
447
- function pe(e) {
423
+ function se(e) {
448
424
  let t = 0, n = [], r = {}, i = [];
449
425
  function a(o) {
450
426
  let s = r[o] = {
@@ -466,18 +442,18 @@ function pe(e) {
466
442
  e in r || a(e);
467
443
  }), i;
468
444
  }
469
- function me(e) {
470
- return pe(e).filter(function(t) {
445
+ function ce(e) {
446
+ return se(e).filter(function(t) {
471
447
  return t.length > 1 || t.length === 1 && e.hasEdge(t[0], t[0]);
472
448
  });
473
449
  }
474
- var he = () => 1;
475
- function ge(e, t, n) {
476
- return _e(e, t || he, n || function(t) {
450
+ var le = () => 1;
451
+ function ue(e, t, n) {
452
+ return de(e, t || le, n || function(t) {
477
453
  return e.outEdges(t);
478
454
  });
479
455
  }
480
- function _e(e, t, n) {
456
+ function de(e, t, n) {
481
457
  let r = {}, i = e.nodes();
482
458
  return i.forEach(function(e) {
483
459
  r[e] = {}, r[e][e] = {
@@ -506,55 +482,55 @@ function _e(e, t, n) {
506
482
  });
507
483
  }), r;
508
484
  }
509
- var w = class extends Error {
485
+ var C = class extends Error {
510
486
  constructor(...e) {
511
487
  super(...e);
512
488
  }
513
489
  };
514
- function T(e) {
490
+ function w(e) {
515
491
  let t = {}, n = {}, r = [];
516
492
  function i(a) {
517
- if (a in n) throw new w();
493
+ if (a in n) throw new C();
518
494
  a in t || (n[a] = !0, t[a] = !0, e.predecessors(a).forEach(i), delete n[a], r.push(a));
519
495
  }
520
- if (e.sinks().forEach(i), Object.keys(t).length !== e.nodeCount()) throw new w();
496
+ if (e.sinks().forEach(i), Object.keys(t).length !== e.nodeCount()) throw new C();
521
497
  return r;
522
498
  }
523
- function ve(e) {
499
+ function fe(e) {
524
500
  try {
525
- T(e);
501
+ w(e);
526
502
  } catch (e) {
527
- if (e instanceof w) return !1;
503
+ if (e instanceof C) return !1;
528
504
  throw e;
529
505
  }
530
506
  return !0;
531
507
  }
532
- function ye(e, t, n, r, i) {
508
+ function pe(e, t, n, r, i) {
533
509
  Array.isArray(t) || (t = [t]);
534
510
  let a = ((t) => (e.isDirected() ? e.successors(t) : e.neighbors(t)) ?? []), o = {};
535
511
  return t.forEach(function(t) {
536
512
  if (!e.hasNode(t)) throw Error("Graph does not have node: " + t);
537
- i = E(e, t, n === "post", o, a, r, i);
513
+ i = me(e, t, n === "post", o, a, r, i);
538
514
  }), i;
539
515
  }
540
- function E(e, t, n, r, i, a, o) {
516
+ function me(e, t, n, r, i, a, o) {
541
517
  return t in r || (r[t] = !0, n || (o = a(o, t)), i(t).forEach(function(t) {
542
- o = E(e, t, n, r, i, a, o);
518
+ o = me(e, t, n, r, i, a, o);
543
519
  }), n && (o = a(o, t))), o;
544
520
  }
545
- function D(e, t, n) {
546
- return ye(e, t, n, function(e, t) {
521
+ function he(e, t, n) {
522
+ return pe(e, t, n, function(e, t) {
547
523
  return e.push(t), e;
548
524
  }, []);
549
525
  }
550
- function be(e, t) {
551
- return D(e, t, "post");
526
+ function ge(e, t) {
527
+ return he(e, t, "post");
552
528
  }
553
- function xe(e, t) {
554
- return D(e, t, "pre");
529
+ function _e(e, t) {
530
+ return he(e, t, "pre");
555
531
  }
556
- function Se(e, t) {
557
- let n = new h(), r = {}, i = new S(), a;
532
+ function ve(e, t) {
533
+ let n = new c(), r = {}, i = new re(), a;
558
534
  function o(e) {
559
535
  let n = e.v === a ? e.w : e.v, o = i.priority(n);
560
536
  if (o !== void 0) {
@@ -577,11 +553,11 @@ function Se(e, t) {
577
553
  }
578
554
  return n;
579
555
  }
580
- function Ce(e, t, n, r) {
581
- return we(e, t, n, r ?? ((t) => e.outEdges(t) ?? []));
556
+ function ye(e, t, n, r) {
557
+ return be(e, t, n, r ?? ((t) => e.outEdges(t) ?? []));
582
558
  }
583
- function we(e, t, n, r) {
584
- if (n === void 0) return C(e, t, n, r);
559
+ function be(e, t, n, r) {
560
+ if (n === void 0) return S(e, t, n, r);
585
561
  let i = !1, a = e.nodes();
586
562
  for (let o = 0; o < a.length; o++) {
587
563
  let s = r(a[o]);
@@ -592,17 +568,17 @@ function we(e, t, n, r) {
592
568
  w: r === t.v ? t.w : t.v
593
569
  }) < 0 && (i = !0);
594
570
  }
595
- if (i) return se(e, t, n, r);
571
+ if (i) return x(e, t, n, r);
596
572
  }
597
- return C(e, t, n, r);
573
+ return S(e, t, n, r);
598
574
  }
599
- function O(e, t, n, r) {
575
+ function T(e, t, n, r) {
600
576
  let i = r;
601
- for (; e.hasNode(i);) i = N(r);
577
+ for (; e.hasNode(i);) i = A(r);
602
578
  return n.dummy = t, e.setNode(i, n), i;
603
579
  }
604
- function Te(e) {
605
- let t = new h().setGraph(e.graph());
580
+ function xe(e) {
581
+ let t = new c().setGraph(e.graph());
606
582
  return e.nodes().forEach((n) => t.setNode(n, e.node(n))), e.edges().forEach((n) => {
607
583
  let r = t.edge(n.v, n.w) || {
608
584
  weight: 0,
@@ -614,15 +590,15 @@ function Te(e) {
614
590
  });
615
591
  }), t;
616
592
  }
617
- function Ee(e) {
618
- let t = new h({ multigraph: e.isMultigraph() }).setGraph(e.graph());
593
+ function E(e) {
594
+ let t = new c({ multigraph: e.isMultigraph() }).setGraph(e.graph());
619
595
  return e.nodes().forEach((n) => {
620
596
  e.children(n).length || t.setNode(n, e.node(n));
621
597
  }), e.edges().forEach((n) => {
622
598
  t.setEdge(n, e.edge(n));
623
599
  }), t;
624
600
  }
625
- function De(e, t) {
601
+ function Se(e, t) {
626
602
  let n = e.x, r = e.y, i = t.x - n, a = t.y - r, o = e.width / 2, s = e.height / 2;
627
603
  if (!i && !a) throw Error("Not possible to find intersection inside of the rectangle");
628
604
  let c, l;
@@ -631,25 +607,25 @@ function De(e, t) {
631
607
  y: r + l
632
608
  };
633
609
  }
634
- function k(e) {
635
- let t = P(M(e) + 1).map(() => []);
610
+ function D(e) {
611
+ let t = j(k(e) + 1).map(() => []);
636
612
  return e.nodes().forEach((n) => {
637
613
  let r = e.node(n), i = r.rank;
638
614
  i !== void 0 && (t[i] || (t[i] = []), t[i][r.order] = n);
639
615
  }), t;
640
616
  }
641
- function Oe(e) {
617
+ function Ce(e) {
642
618
  let t = e.nodes().map((t) => {
643
619
  let n = e.node(t).rank;
644
620
  return n === void 0 ? Number.MAX_VALUE : n;
645
- }), n = j(Math.min, t);
621
+ }), n = O(Math.min, t);
646
622
  e.nodes().forEach((t) => {
647
623
  let r = e.node(t);
648
624
  Object.hasOwn(r, "rank") && (r.rank -= n);
649
625
  });
650
626
  }
651
- function ke(e) {
652
- let t = e.nodes().map((t) => e.node(t).rank).filter((e) => e !== void 0), n = j(Math.min, t), r = [];
627
+ function we(e) {
628
+ let t = e.nodes().map((t) => e.node(t).rank).filter((e) => e !== void 0), n = O(Math.min, t), r = [];
653
629
  e.nodes().forEach((t) => {
654
630
  let i = e.node(t).rank - n;
655
631
  r[i] || (r[i] = []), r[i].push(t);
@@ -659,14 +635,14 @@ function ke(e) {
659
635
  t === void 0 && n % a !== 0 ? --i : t !== void 0 && i && t.forEach((t) => e.node(t).rank += i);
660
636
  });
661
637
  }
662
- function A(e, t, n, r) {
638
+ function Te(e, t, n, r) {
663
639
  let i = {
664
640
  width: 0,
665
641
  height: 0
666
642
  };
667
- return arguments.length >= 4 && (i.rank = n, i.order = r), O(e, "border", i, t);
643
+ return arguments.length >= 4 && (i.rank = n, i.order = r), T(e, "border", i, t);
668
644
  }
669
- function Ae(e, t = je) {
645
+ function Ee(e, t = De) {
670
646
  let n = [];
671
647
  for (let r = 0; r < e.length; r += t) {
672
648
  let i = e.slice(r, r + t);
@@ -674,18 +650,18 @@ function Ae(e, t = je) {
674
650
  }
675
651
  return n;
676
652
  }
677
- var je = 65535;
678
- function j(e, t) {
679
- return t.length > je ? e(...Ae(t).map((t) => e(...t))) : e(...t);
653
+ var De = 65535;
654
+ function O(e, t) {
655
+ return t.length > De ? e(...Ee(t).map((t) => e(...t))) : e(...t);
680
656
  }
681
- function M(e) {
657
+ function k(e) {
682
658
  let t = e.nodes().map((t) => {
683
659
  let n = e.node(t).rank;
684
660
  return n === void 0 ? Number.MIN_VALUE : n;
685
661
  });
686
- return j(Math.max, t);
662
+ return O(Math.max, t);
687
663
  }
688
- function Me(e, t) {
664
+ function Oe(e, t) {
689
665
  let n = {
690
666
  lhs: [],
691
667
  rhs: []
@@ -694,14 +670,14 @@ function Me(e, t) {
694
670
  t(e) ? n.lhs.push(e) : n.rhs.push(e);
695
671
  }), n;
696
672
  }
697
- function Ne(e, t) {
673
+ function ke(e, t) {
698
674
  return t();
699
675
  }
700
- var Pe = 0;
701
- function N(e) {
702
- return e + ("" + ++Pe);
676
+ var Ae = 0;
677
+ function A(e) {
678
+ return e + ("" + ++Ae);
703
679
  }
704
- function P(e, t, n = 1) {
680
+ function j(e, t, n = 1) {
705
681
  t ?? (t = e, e = 0);
706
682
  let r = (e) => e < t;
707
683
  n < 0 && (r = (e) => t < e);
@@ -709,20 +685,20 @@ function P(e, t, n = 1) {
709
685
  for (let t = e; r(t); t += n) i.push(t);
710
686
  return i;
711
687
  }
712
- function F(e, t) {
688
+ function M(e, t) {
713
689
  let n = {};
714
690
  for (let r of t) e[r] !== void 0 && (n[r] = e[r]);
715
691
  return n;
716
692
  }
717
- function I(e, t) {
693
+ function N(e, t) {
718
694
  let n;
719
695
  return n = typeof t == "string" ? (e) => e[t] : t, Object.entries(e).reduce((e, [t, r]) => (e[t] = n(r, t), e), {});
720
696
  }
721
- function Fe(e, t) {
697
+ function je(e, t) {
722
698
  return e.reduce((e, n, r) => (e[n] = t[r], e), {});
723
699
  }
724
- var L = "\0";
725
- function Ie(e, t, n) {
700
+ var P = "\0";
701
+ function Me(e, t, n) {
726
702
  if (!(e && t && n && t.dummy === "edge" && n.dummy === "edge" && t.edgeObj && n.edgeObj && e[t.edgeObj.v] && e[n.edgeObj.v] && e[t.edgeObj.w] && e[n.edgeObj.w])) return 0;
727
703
  let r = !0;
728
704
  t.edgeObj.w === n.edgeObj.w && (r = !1);
@@ -731,67 +707,67 @@ function Ie(e, t, n) {
731
707
  let s = a[1].order ?? NaN, c = o[1].order ?? NaN;
732
708
  return isNaN(s - c) ? 0 : s - c;
733
709
  }
734
- var Le = class {
710
+ var Ne = class {
735
711
  constructor() {
736
- d(this, "_sentinel");
712
+ i(this, "_sentinel");
737
713
  let e = {};
738
714
  e._next = e._prev = e, this._sentinel = e;
739
715
  }
740
716
  dequeue() {
741
717
  let e = this._sentinel, t = e._prev;
742
- if (t !== e) return Re(t), t;
718
+ if (t !== e) return Pe(t), t;
743
719
  }
744
720
  enqueue(e) {
745
721
  let t = this._sentinel;
746
- e._prev && e._next && Re(e), e._next = t._next, t._next._prev = e, t._next = e, e._prev = t;
722
+ e._prev && e._next && Pe(e), e._next = t._next, t._next._prev = e, t._next = e, e._prev = t;
747
723
  }
748
724
  toString() {
749
725
  let e = [], t = this._sentinel, n = t._prev;
750
- for (; n !== t;) e.push(JSON.stringify(n, ze)), n = n._prev;
726
+ for (; n !== t;) e.push(JSON.stringify(n, Fe)), n = n._prev;
751
727
  return "[" + e.join(", ") + "]";
752
728
  }
753
729
  };
754
- function Re(e) {
730
+ function Pe(e) {
755
731
  e._prev._next = e._next, e._next._prev = e._prev, delete e._next, delete e._prev;
756
732
  }
757
- function ze(e, t) {
733
+ function Fe(e, t) {
758
734
  if (e !== "_next" && e !== "_prev") return t;
759
735
  }
760
- var Be = Le, Ve = () => 1;
761
- function He(e, t) {
736
+ var Ie = Ne, Le = () => 1;
737
+ function Re(e, t) {
762
738
  if (e.nodeCount() <= 1) return [];
763
- let n = We(e, t || Ve);
764
- return Ue(n.graph, n.buckets, n.zeroIdx).flatMap((t) => e.outEdges(t.v, t.w) || []);
739
+ let n = Be(e, t || Le);
740
+ return ze(n.graph, n.buckets, n.zeroIdx).flatMap((t) => e.outEdges(t.v, t.w) || []);
765
741
  }
766
- function Ue(e, t, n) {
742
+ function ze(e, t, n) {
767
743
  let r = [], i = t[t.length - 1], a = t[0], o;
768
744
  for (; e.nodeCount();) {
769
- for (; o = a.dequeue();) R(e, t, n, o);
770
- for (; o = i.dequeue();) R(e, t, n, o);
745
+ for (; o = a.dequeue();) F(e, t, n, o);
746
+ for (; o = i.dequeue();) F(e, t, n, o);
771
747
  if (e.nodeCount()) {
772
748
  for (let i = t.length - 2; i > 0; --i) if (o = t[i]?.dequeue(), o) {
773
- r = r.concat(R(e, t, n, o, !0) || []);
749
+ r = r.concat(F(e, t, n, o, !0) || []);
774
750
  break;
775
751
  }
776
752
  }
777
753
  }
778
754
  return r;
779
755
  }
780
- function R(e, t, n, r, i) {
756
+ function F(e, t, n, r, i) {
781
757
  let a = [], o = i ? a : void 0;
782
758
  return (e.inEdges(r.v) || []).forEach((r) => {
783
759
  let o = e.edge(r), s = e.node(r.v);
784
760
  i && a.push({
785
761
  v: r.v,
786
762
  w: r.w
787
- }), s.out -= o, z(t, n, s);
763
+ }), s.out -= o, I(t, n, s);
788
764
  }), (e.outEdges(r.v) || []).forEach((r) => {
789
765
  let i = e.edge(r), a = r.w, o = e.node(a);
790
- o.in -= i, z(t, n, o);
766
+ o.in -= i, I(t, n, o);
791
767
  }), e.removeNode(r.v), o;
792
768
  }
793
- function We(e, t) {
794
- let n = new h(), r = 0, i = 0;
769
+ function Be(e, t) {
770
+ let n = new c(), r = 0, i = 0;
795
771
  e.nodes().forEach((e) => {
796
772
  n.setNode(e, {
797
773
  v: e,
@@ -804,34 +780,34 @@ function We(e, t) {
804
780
  let c = n.node(e.v), l = n.node(e.w);
805
781
  i = Math.max(i, c.out += o), r = Math.max(r, l.in += o);
806
782
  });
807
- let a = Ge(i + r + 3).map(() => new Be()), o = r + 1;
783
+ let a = Ve(i + r + 3).map(() => new Ie()), o = r + 1;
808
784
  return n.nodes().forEach((e) => {
809
- z(a, o, n.node(e));
785
+ I(a, o, n.node(e));
810
786
  }), {
811
787
  graph: n,
812
788
  buckets: a,
813
789
  zeroIdx: o
814
790
  };
815
791
  }
816
- function z(e, t, n) {
792
+ function I(e, t, n) {
817
793
  var r, i, a;
818
794
  n.out ? n.in ? (a = e[n.out - n.in + t]) == null || a.enqueue(n) : (i = e[e.length - 1]) == null || i.enqueue(n) : (r = e[0]) == null || r.enqueue(n);
819
795
  }
820
- function Ge(e) {
796
+ function Ve(e) {
821
797
  let t = [];
822
798
  for (let n = 0; n < e; n++) t.push(n);
823
799
  return t;
824
800
  }
825
- function Ke(e, t) {
826
- (e.graph().acyclicer === "greedy" ? He(e, n(e)) : qe(e, t ?? null)).forEach((t) => {
801
+ function He(e, t) {
802
+ (e.graph().acyclicer === "greedy" ? Re(e, n(e)) : Ue(e, t ?? null)).forEach((t) => {
827
803
  let n = e.edge(t);
828
- e.removeEdge(t), n.forwardName = t.name, n.reversed = !0, e.setEdge(t.w, t.v, n, N("rev"));
804
+ e.removeEdge(t), n.forwardName = t.name, n.reversed = !0, e.setEdge(t.w, t.v, n, A("rev"));
829
805
  });
830
806
  function n(e) {
831
807
  return (t) => e.edge(t).weight;
832
808
  }
833
809
  }
834
- function qe(e, t) {
810
+ function Ue(e, t) {
835
811
  let n = [], r = {}, i = {};
836
812
  function a(t) {
837
813
  Object.hasOwn(i, t) || (i[t] = !0, r[t] = !0, e.outEdges(t).forEach((e) => {
@@ -841,13 +817,13 @@ function qe(e, t) {
841
817
  function o(a) {
842
818
  var s;
843
819
  Object.hasOwn(i, a) || (i[a] = !0, r[a] = !0, (s = e.outEdges(a)) == null || s.forEach((i) => {
844
- Object.hasOwn(r, i.w) || t.node(a)?.rank > t.node(i.w)?.rank && Ye(e, i.w, i) ? n.push(i) : o(i.w);
820
+ Object.hasOwn(r, i.w) || t.node(a)?.rank > t.node(i.w)?.rank && Ge(e, i.w, i) ? n.push(i) : o(i.w);
845
821
  }), delete r[a]);
846
822
  }
847
823
  let s = a;
848
824
  return t && typeof t.node == "function" && (s = o), e.sources().forEach(s), e.nodes().forEach(s), n;
849
825
  }
850
- function Je(e) {
826
+ function We(e) {
851
827
  e.edges().forEach((t) => {
852
828
  let n = e.edge(t);
853
829
  if (n.reversed) {
@@ -857,7 +833,7 @@ function Je(e) {
857
833
  }
858
834
  });
859
835
  }
860
- function Ye(e, t, n) {
836
+ function Ge(e, t, n) {
861
837
  let r = /* @__PURE__ */ new Set();
862
838
  function i(t) {
863
839
  if (e.sources().includes(t)) return !0;
@@ -867,10 +843,10 @@ function Ye(e, t, n) {
867
843
  }
868
844
  return i(t);
869
845
  }
870
- function Xe(e) {
871
- e.graph().dummyChains = [], e.edges().forEach((t) => Ze(e, t));
846
+ function Ke(e) {
847
+ e.graph().dummyChains = [], e.edges().forEach((t) => qe(e, t));
872
848
  }
873
- function Ze(e, t) {
849
+ function qe(e, t) {
874
850
  let n = t.v, r = e.node(n).rank, i = t.w, a = e.node(i).rank, o = t.name, s = e.edge(t), c = s.labelRank;
875
851
  if (a === r + 1) return;
876
852
  e.removeEdge(t);
@@ -881,10 +857,10 @@ function Ze(e, t) {
881
857
  edgeLabel: s,
882
858
  edgeObj: t,
883
859
  rank: r
884
- }, l = O(e, "edge", u, "_d"), r === c && (u.width = s.width, u.height = s.height, u.dummy = "edge-label", u.labelpos = s.labelpos), e.setEdge(n, l, { weight: s.weight }, o), d === 0 && e.graph().dummyChains.push(l), n = l;
860
+ }, l = T(e, "edge", u, "_d"), r === c && (u.width = s.width, u.height = s.height, u.dummy = "edge-label", u.labelpos = s.labelpos), e.setEdge(n, l, { weight: s.weight }, o), d === 0 && e.graph().dummyChains.push(l), n = l;
885
861
  e.setEdge(n, i, { weight: s.weight }, o);
886
862
  }
887
- function Qe(e) {
863
+ function Je(e) {
888
864
  e.graph().dummyChains.forEach((t) => {
889
865
  let n = e.node(t), r = n.edgeLabel, i;
890
866
  for (e.setEdge(n.edgeObj, r); n.dummy;) i = e.successors(t)[0], e.removeNode(t), r.points.push({
@@ -893,67 +869,67 @@ function Qe(e) {
893
869
  }), n.dummy === "edge-label" && (r.x = n.x, r.y = n.y, r.width = n.width, r.height = n.height), t = i, n = e.node(t);
894
870
  });
895
871
  }
896
- function B(e) {
872
+ function L(e) {
897
873
  let t = {};
898
874
  function n(r) {
899
875
  let i = e.node(r);
900
876
  if (Object.hasOwn(t, r)) return i.rank;
901
877
  t[r] = !0;
902
- let a = e.outEdges(r), o = a ? a.map((t) => t == null ? Infinity : n(t.w) - e.edge(t).minlen) : [], s = j(Math.min, o);
878
+ let a = e.outEdges(r), o = a ? a.map((t) => t == null ? Infinity : n(t.w) - e.edge(t).minlen) : [], s = O(Math.min, o);
903
879
  return s === Infinity && (s = 0), i.rank = s;
904
880
  }
905
881
  e.sources().forEach(n);
906
882
  }
907
- function V(e, t) {
883
+ function R(e, t) {
908
884
  return e.node(t.w).rank - e.node(t.v).rank - e.edge(t).minlen;
909
885
  }
910
- var H = $e;
911
- function $e(e) {
912
- let t = new h({ directed: !1 }), n = e.nodes();
886
+ var z = Ye;
887
+ function Ye(e) {
888
+ let t = new c({ directed: !1 }), n = e.nodes();
913
889
  if (n.length === 0) throw Error("Graph must have at least one node");
914
890
  let r = n[0], i = e.nodeCount();
915
891
  t.setNode(r, {});
916
892
  let a, o;
917
- for (; et(t, e) < i && (a = tt(t, e), a);) o = t.hasNode(a.v) ? V(e, a) : -V(e, a), nt(t, e, o);
893
+ for (; Xe(t, e) < i && (a = Ze(t, e), a);) o = t.hasNode(a.v) ? R(e, a) : -R(e, a), Qe(t, e, o);
918
894
  return t;
919
895
  }
920
- function et(e, t) {
896
+ function Xe(e, t) {
921
897
  function n(r) {
922
898
  let i = t.nodeEdges(r);
923
899
  i && i.forEach((i) => {
924
900
  let a = i.v, o = r === a ? i.w : a;
925
- !e.hasNode(o) && !V(t, i) && (e.setNode(o, {}), e.setEdge(r, o, {}), n(o));
901
+ !e.hasNode(o) && !R(t, i) && (e.setNode(o, {}), e.setEdge(r, o, {}), n(o));
926
902
  });
927
903
  }
928
904
  return e.nodes().forEach(n), e.nodeCount();
929
905
  }
930
- function tt(e, t) {
906
+ function Ze(e, t) {
931
907
  return t.edges().reduce((n, r) => {
932
908
  let i = Infinity;
933
- return e.hasNode(r.v) !== e.hasNode(r.w) && (i = V(t, r)), i < n[0] ? [i, r] : n;
909
+ return e.hasNode(r.v) !== e.hasNode(r.w) && (i = R(t, r)), i < n[0] ? [i, r] : n;
934
910
  }, [Infinity, null])[1];
935
911
  }
936
- function nt(e, t, n) {
912
+ function Qe(e, t, n) {
937
913
  e.nodes().forEach((e) => t.node(e).rank += n);
938
914
  }
939
- var { preorder: rt, postorder: it } = x, at = U;
940
- U.initLowLimValues = K, U.initCutValues = W, U.calcCutValue = G, U.leaveEdge = q, U.enterEdge = ct, U.exchangeEdges = lt;
941
- function U(e) {
942
- e = Te(e), B(e);
943
- let t = H(e);
944
- K(t), W(t, e);
915
+ var { preorder: $e, postorder: et } = b, tt = B;
916
+ B.initLowLimValues = U, B.initCutValues = V, B.calcCutValue = H, B.leaveEdge = G, B.enterEdge = K, B.exchangeEdges = q;
917
+ function B(e) {
918
+ e = xe(e), L(e);
919
+ let t = z(e);
920
+ U(t), V(t, e);
945
921
  let n, r;
946
- for (; n = q(t);) r = ct(t, e, n), lt(t, e, n, r);
922
+ for (; n = G(t);) r = K(t, e, n), q(t, e, n, r);
947
923
  }
948
- function W(e, t) {
949
- let n = it(e, e.nodes());
950
- n = n.slice(0, n.length - 1), n.forEach((n) => ot(e, t, n));
924
+ function V(e, t) {
925
+ let n = et(e, e.nodes());
926
+ n = n.slice(0, n.length - 1), n.forEach((n) => nt(e, t, n));
951
927
  }
952
- function ot(e, t, n) {
928
+ function nt(e, t, n) {
953
929
  let r = e.node(n).parent, i = e.edge(n, r);
954
- i.cutvalue = G(e, t, n);
930
+ i.cutvalue = H(e, t, n);
955
931
  }
956
- function G(e, t, n) {
932
+ function H(e, t, n) {
957
933
  let r = e.node(n).parent, i = !0, a = t.edge(n, r), o = 0;
958
934
  a ||= (i = !1, t.edge(r, n)), o = a.weight;
959
935
  let s = t.nodeEdges(n);
@@ -961,82 +937,82 @@ function G(e, t, n) {
961
937
  let s = a.v === n, c = s ? a.w : a.v;
962
938
  if (c !== r) {
963
939
  let r = s === i, l = t.edge(a).weight;
964
- if (o += r ? l : -l, dt(e, n, c)) {
940
+ if (o += r ? l : -l, it(e, n, c)) {
965
941
  let t = e.edge(n, c).cutvalue;
966
942
  o += r ? -t : t;
967
943
  }
968
944
  }
969
945
  }), o;
970
946
  }
971
- function K(e, t) {
972
- arguments.length < 2 && (t = e.nodes()[0]), st(e, {}, 1, t);
947
+ function U(e, t) {
948
+ arguments.length < 2 && (t = e.nodes()[0]), W(e, {}, 1, t);
973
949
  }
974
- function st(e, t, n, r, i) {
950
+ function W(e, t, n, r, i) {
975
951
  let a = n, o = e.node(r);
976
952
  t[r] = !0;
977
953
  let s = e.neighbors(r);
978
954
  return s && s.forEach((i) => {
979
- Object.hasOwn(t, i) || (n = st(e, t, n, i, r));
955
+ Object.hasOwn(t, i) || (n = W(e, t, n, i, r));
980
956
  }), o.low = a, o.lim = n++, i ? o.parent = i : delete o.parent, n;
981
957
  }
982
- function q(e) {
958
+ function G(e) {
983
959
  return e.edges().find((t) => e.edge(t).cutvalue < 0);
984
960
  }
985
- function ct(e, t, n) {
961
+ function K(e, t, n) {
986
962
  let r = n.v, i = n.w;
987
963
  t.hasEdge(r, i) || (r = n.w, i = n.v);
988
964
  let a = e.node(r), o = e.node(i), s = a, c = !1;
989
- return a.lim > o.lim && (s = o, c = !0), t.edges().filter((t) => c === ft(e, e.node(t.v), s) && c !== ft(e, e.node(t.w), s)).reduce((e, n) => V(t, n) < V(t, e) ? n : e);
965
+ return a.lim > o.lim && (s = o, c = !0), t.edges().filter((t) => c === at(e, e.node(t.v), s) && c !== at(e, e.node(t.w), s)).reduce((e, n) => R(t, n) < R(t, e) ? n : e);
990
966
  }
991
- function lt(e, t, n, r) {
967
+ function q(e, t, n, r) {
992
968
  let i = n.v, a = n.w;
993
- e.removeEdge(i, a), e.setEdge(r.v, r.w, {}), K(e), W(e, t), ut(e, t);
969
+ e.removeEdge(i, a), e.setEdge(r.v, r.w, {}), U(e), V(e, t), rt(e, t);
994
970
  }
995
- function ut(e, t) {
971
+ function rt(e, t) {
996
972
  let n = e.nodes().find((t) => !e.node(t).parent);
997
973
  if (!n) return;
998
- let r = rt(e, [n]);
974
+ let r = $e(e, [n]);
999
975
  r = r.slice(1), r.forEach((n) => {
1000
976
  let r = e.node(n).parent, i = t.edge(n, r), a = !1;
1001
977
  i || (i = t.edge(r, n), a = !0), t.node(n).rank = t.node(r).rank + (a ? i.minlen : -i.minlen);
1002
978
  });
1003
979
  }
1004
- function dt(e, t, n) {
980
+ function it(e, t, n) {
1005
981
  return e.hasEdge(t, n);
1006
982
  }
1007
- function ft(e, t, n) {
983
+ function at(e, t, n) {
1008
984
  return n.low <= t.lim && t.lim <= n.lim;
1009
985
  }
1010
- var pt = mt;
1011
- function mt(e) {
986
+ var ot = st;
987
+ function st(e) {
1012
988
  let t = e.graph().ranker;
1013
989
  if (typeof t == "function") return t(e);
1014
990
  switch (t) {
1015
991
  case "network-simplex":
1016
- _t(e);
992
+ ut(e);
1017
993
  break;
1018
994
  case "tight-tree":
1019
- gt(e);
995
+ lt(e);
1020
996
  break;
1021
997
  case "longest-path":
1022
- ht(e);
998
+ ct(e);
1023
999
  break;
1024
1000
  case "none": break;
1025
- default: _t(e);
1001
+ default: ut(e);
1026
1002
  }
1027
1003
  }
1028
- var ht = B;
1029
- function gt(e) {
1030
- B(e), H(e);
1004
+ var ct = L;
1005
+ function lt(e) {
1006
+ L(e), z(e);
1031
1007
  }
1032
- function _t(e) {
1033
- at(e);
1008
+ function ut(e) {
1009
+ tt(e);
1034
1010
  }
1035
- var vt = yt;
1036
- function yt(e) {
1037
- let t = xt(e), n = e.graph();
1011
+ var dt = ft;
1012
+ function ft(e) {
1013
+ let t = mt(e), n = e.graph();
1038
1014
  Array.isArray(n.dummyChains) && n.dummyChains.forEach((n) => {
1039
- let r = e.node(n), i = r.edgeObj, a = bt(e, t, i.v, i.w), o = a.path, s = a.lca, c = 0, l = o[c], u = !0;
1015
+ let r = e.node(n), i = r.edgeObj, a = pt(e, t, i.v, i.w), o = a.path, s = a.lca, c = 0, l = o[c], u = !0;
1040
1016
  for (; n !== i.w;) {
1041
1017
  if (r = e.node(n), u) {
1042
1018
  for (; (l = o[c]) !== s && e.node(l).maxRank < r.rank;) c++;
@@ -1050,7 +1026,7 @@ function yt(e) {
1050
1026
  }
1051
1027
  });
1052
1028
  }
1053
- function bt(e, t, n, r) {
1029
+ function pt(e, t, n, r) {
1054
1030
  let i = [], a = [], o = Math.min(t[n].low, t[r].low), s = Math.max(t[n].lim, t[r].lim), c;
1055
1031
  c = n;
1056
1032
  do
@@ -1063,7 +1039,7 @@ function bt(e, t, n, r) {
1063
1039
  lca: l
1064
1040
  };
1065
1041
  }
1066
- function xt(e) {
1042
+ function mt(e) {
1067
1043
  let t = {}, n = 0;
1068
1044
  function r(i) {
1069
1045
  let a = n;
@@ -1072,17 +1048,17 @@ function xt(e) {
1072
1048
  lim: n++
1073
1049
  };
1074
1050
  }
1075
- return e.children(L).forEach(r), t;
1051
+ return e.children(P).forEach(r), t;
1076
1052
  }
1077
- function St(e) {
1078
- let t = O(e, "root", {}, "_root"), n = wt(e), r = Object.values(n), i = j(Math.max, r) - 1, a = 2 * i + 1;
1053
+ function ht(e) {
1054
+ let t = T(e, "root", {}, "_root"), n = _t(e), r = Object.values(n), i = O(Math.max, r) - 1, a = 2 * i + 1;
1079
1055
  e.graph().nestingRoot = t, e.edges().forEach((t) => e.edge(t).minlen *= a);
1080
- let o = Tt(e) + 1;
1081
- e.children(L).forEach((r) => {
1082
- Ct(e, t, a, o, i, n, r);
1056
+ let o = vt(e) + 1;
1057
+ e.children(P).forEach((r) => {
1058
+ gt(e, t, a, o, i, n, r);
1083
1059
  }), e.graph().nodeRankFactor = a;
1084
1060
  }
1085
- function Ct(e, t, n, r, i, a, o) {
1061
+ function gt(e, t, n, r, i, a, o) {
1086
1062
  let s = e.children(o);
1087
1063
  if (!s.length) {
1088
1064
  o !== t && e.setEdge(t, o, {
@@ -1091,9 +1067,9 @@ function Ct(e, t, n, r, i, a, o) {
1091
1067
  });
1092
1068
  return;
1093
1069
  }
1094
- let c = A(e, "_bt"), l = A(e, "_bb"), u = e.node(o);
1070
+ let c = Te(e, "_bt"), l = Te(e, "_bb"), u = e.node(o);
1095
1071
  e.setParent(c, o), u.borderTop = c, e.setParent(l, o), u.borderBottom = l, s.forEach((s) => {
1096
- Ct(e, t, n, r, i, a, s);
1072
+ gt(e, t, n, r, i, a, s);
1097
1073
  let u = e.node(s), d = u.borderTop ? u.borderTop : s, f = u.borderBottom ? u.borderBottom : s, p = u.borderTop ? r : 2 * r, m = d === f ? i - (a[o] ?? 0) + 1 : 1;
1098
1074
  e.setEdge(c, d, {
1099
1075
  weight: p,
@@ -1109,59 +1085,59 @@ function Ct(e, t, n, r, i, a, o) {
1109
1085
  minlen: i + (a[o] ?? 0)
1110
1086
  });
1111
1087
  }
1112
- function wt(e) {
1088
+ function _t(e) {
1113
1089
  let t = {};
1114
1090
  function n(r, i) {
1115
1091
  let a = e.children(r);
1116
1092
  a && a.length && a.forEach((e) => n(e, i + 1)), t[r] = i;
1117
1093
  }
1118
- return e.children(L).forEach((e) => n(e, 1)), t;
1094
+ return e.children(P).forEach((e) => n(e, 1)), t;
1119
1095
  }
1120
- function Tt(e) {
1096
+ function vt(e) {
1121
1097
  return e.edges().reduce((t, n) => t + e.edge(n).weight, 0);
1122
1098
  }
1123
- function Et(e) {
1099
+ function yt(e) {
1124
1100
  let t = e.graph();
1125
1101
  e.removeNode(t.nestingRoot), delete t.nestingRoot, e.edges().forEach((t) => {
1126
1102
  e.edge(t).nestingEdge && e.removeEdge(t);
1127
1103
  });
1128
1104
  }
1129
- var Dt = Ot;
1130
- function Ot(e) {
1105
+ var bt = xt;
1106
+ function xt(e) {
1131
1107
  function t(n) {
1132
1108
  let r = e.children(n), i = e.node(n);
1133
1109
  if (r.length && r.forEach(t), i && Object.hasOwn(i, "minRank")) {
1134
1110
  i.borderLeft = [], i.borderRight = [];
1135
- for (let t = i.minRank, r = i.maxRank + 1; t < r; ++t) kt(e, "borderLeft", "_bl", n, i, t), kt(e, "borderRight", "_br", n, i, t);
1111
+ for (let t = i.minRank, r = i.maxRank + 1; t < r; ++t) St(e, "borderLeft", "_bl", n, i, t), St(e, "borderRight", "_br", n, i, t);
1136
1112
  }
1137
1113
  }
1138
- e.children(L).forEach(t);
1114
+ e.children(P).forEach(t);
1139
1115
  }
1140
- function kt(e, t, n, r, i, a) {
1116
+ function St(e, t, n, r, i, a) {
1141
1117
  let o = {
1142
1118
  width: 0,
1143
1119
  height: 0,
1144
1120
  rank: a,
1145
1121
  borderType: t
1146
- }, s = i[t][a - 1], c = O(e, "border", o, n);
1122
+ }, s = i[t][a - 1], c = T(e, "border", o, n);
1147
1123
  i[t][a] = c, e.setParent(c, r), s && e.setEdge(s, c, { weight: 1 });
1148
1124
  }
1149
- function At(e) {
1125
+ function Ct(e) {
1150
1126
  let t = e.graph().rankdir?.toLowerCase();
1151
- (t === "lr" || t === "rl") && Mt(e);
1127
+ (t === "lr" || t === "rl") && Tt(e);
1152
1128
  }
1153
- function jt(e) {
1129
+ function wt(e) {
1154
1130
  let t = e.graph().rankdir?.toLowerCase();
1155
- (t === "bt" || t === "rl") && Pt(e), (t === "lr" || t === "rl") && (Ft(e), Mt(e));
1131
+ (t === "bt" || t === "rl") && Dt(e), (t === "lr" || t === "rl") && (Ot(e), Tt(e));
1156
1132
  }
1157
- function Mt(e) {
1158
- e.nodes().forEach((t) => Nt(e.node(t))), e.edges().forEach((t) => Nt(e.edge(t)));
1133
+ function Tt(e) {
1134
+ e.nodes().forEach((t) => Et(e.node(t))), e.edges().forEach((t) => Et(e.edge(t)));
1159
1135
  }
1160
- function Nt(e) {
1136
+ function Et(e) {
1161
1137
  let t = e.width;
1162
1138
  e.width = e.height, e.height = t;
1163
1139
  }
1164
- function Pt(e) {
1140
+ function Dt(e) {
1165
1141
  e.nodes().forEach((t) => J(e.node(t))), e.edges().forEach((t) => {
1166
1142
  var n;
1167
1143
  let r = e.edge(t);
@@ -1171,7 +1147,7 @@ function Pt(e) {
1171
1147
  function J(e) {
1172
1148
  e.y = -e.y;
1173
1149
  }
1174
- function Ft(e) {
1150
+ function Ot(e) {
1175
1151
  e.nodes().forEach((t) => Y(e.node(t))), e.edges().forEach((t) => {
1176
1152
  var n;
1177
1153
  let r = e.edge(t);
@@ -1182,8 +1158,8 @@ function Y(e) {
1182
1158
  let t = e.x;
1183
1159
  e.x = e.y, e.y = t;
1184
1160
  }
1185
- function It(e, t = null) {
1186
- let n = {}, r = e.nodes().filter((t) => !e.children(t).length), i = r.map((t) => e.node(t).rank), a = P(j(Math.max, i) + 1).map(() => []);
1161
+ function kt(e, t = null) {
1162
+ let n = {}, r = e.nodes().filter((t) => !e.children(t).length), i = r.map((t) => e.node(t).rank), a = j(O(Math.max, i) + 1).map(() => []);
1187
1163
  function o(t) {
1188
1164
  if (n[t]) return;
1189
1165
  n[t] = !0;
@@ -1194,17 +1170,17 @@ function It(e, t = null) {
1194
1170
  }
1195
1171
  r.sort((t, n) => e.node(t).rank - e.node(n).rank).forEach(o);
1196
1172
  function s(n, r) {
1197
- return Ie(t, e.node(n), e.node(r));
1173
+ return Me(t, e.node(n), e.node(r));
1198
1174
  }
1199
1175
  return a;
1200
1176
  }
1201
- function Lt(e, t) {
1177
+ function At(e, t) {
1202
1178
  let n = 0;
1203
- for (let r = 1; r < t.length; ++r) n += Rt(e, t[r - 1], t[r]);
1179
+ for (let r = 1; r < t.length; ++r) n += jt(e, t[r - 1], t[r]);
1204
1180
  return n;
1205
1181
  }
1206
- function Rt(e, t, n) {
1207
- let r = Fe(n, n.map((e, t) => t)), i = t.flatMap((t) => {
1182
+ function jt(e, t, n) {
1183
+ let r = je(n, n.map((e, t) => t)), i = t.flatMap((t) => {
1208
1184
  let n = e.outEdges(t);
1209
1185
  return n ? n.map((t) => ({
1210
1186
  pos: r[t.w],
@@ -1223,7 +1199,7 @@ function Rt(e, t, n) {
1223
1199
  c += e.weight * n;
1224
1200
  }), c;
1225
1201
  }
1226
- function zt(e, t = []) {
1202
+ function Mt(e, t = []) {
1227
1203
  return t.map((t) => {
1228
1204
  let n = e.inEdges(t);
1229
1205
  if (!n || !n.length) return { v: t };
@@ -1246,7 +1222,7 @@ function zt(e, t = []) {
1246
1222
  }
1247
1223
  });
1248
1224
  }
1249
- function Bt(e, t) {
1225
+ function Nt(e, t) {
1250
1226
  let n = {};
1251
1227
  return e.forEach((e, t) => {
1252
1228
  let r = {
@@ -1260,13 +1236,13 @@ function Bt(e, t) {
1260
1236
  }), t.edges().forEach((e) => {
1261
1237
  let t = n[e.v], r = n[e.w];
1262
1238
  t !== void 0 && r !== void 0 && (r.indegree++, t.out.push(r));
1263
- }), Vt(Object.values(n).filter((e) => !e.indegree));
1239
+ }), Pt(Object.values(n).filter((e) => !e.indegree));
1264
1240
  }
1265
- function Vt(e) {
1241
+ function Pt(e) {
1266
1242
  let t = [];
1267
1243
  function n(e) {
1268
1244
  return (t) => {
1269
- t.merged || (t.barycenter === void 0 || e.barycenter === void 0 || t.barycenter >= e.barycenter) && Ht(e, t);
1245
+ t.merged || (t.barycenter === void 0 || e.barycenter === void 0 || t.barycenter >= e.barycenter) && Ft(e, t);
1270
1246
  };
1271
1247
  }
1272
1248
  function r(t) {
@@ -1278,63 +1254,63 @@ function Vt(e) {
1278
1254
  let i = e.pop();
1279
1255
  t.push(i), i.in.reverse().forEach(n(i)), i.out.forEach(r(i));
1280
1256
  }
1281
- return t.filter((e) => !e.merged).map((e) => F(e, [
1257
+ return t.filter((e) => !e.merged).map((e) => M(e, [
1282
1258
  "vs",
1283
1259
  "i",
1284
1260
  "barycenter",
1285
1261
  "weight"
1286
1262
  ]));
1287
1263
  }
1288
- function Ht(e, t) {
1264
+ function Ft(e, t) {
1289
1265
  let n = 0, r = 0;
1290
1266
  e.weight && (n += e.barycenter * e.weight, r += e.weight), t.weight && (n += t.barycenter * t.weight, r += t.weight), e.vs = t.vs.concat(e.vs), e.barycenter = n / r, e.weight = r, e.i = Math.min(t.i, e.i), t.merged = !0;
1291
1267
  }
1292
- function Ut(e, t, n, r, i) {
1268
+ function It(e, t, n, r, i) {
1293
1269
  let a = {}, o = null, s = null, c = i;
1294
1270
  typeof t == "boolean" ? (c = t, a = {}) : t && (a = t, o = n ?? null, s = r ?? null);
1295
- let l = Me(e, (e) => Object.hasOwn(e, "barycenter")), u = l.lhs, d = l.rhs.sort((e, t) => t.i - e.i), f = [], p = 0, m = 0, h = 0;
1296
- u.sort(Gt(s, o, !!c));
1271
+ let l = Oe(e, (e) => Object.hasOwn(e, "barycenter")), u = l.lhs, d = l.rhs.sort((e, t) => t.i - e.i), f = [], p = 0, m = 0, h = 0;
1272
+ u.sort(Rt(s, o, !!c));
1297
1273
  for (let [e, t] of Object.entries(a)) {
1298
1274
  let n = u.findIndex((t) => t.vs[0] === e);
1299
1275
  u.splice(n + 1, 0, t);
1300
1276
  }
1301
- h = Wt(f, d, h), u.forEach((e) => {
1302
- h += e.vs.length, f.push(e.vs), p += e.barycenter * e.weight, m += e.weight, h = Wt(f, d, h);
1277
+ h = Lt(f, d, h), u.forEach((e) => {
1278
+ h += e.vs.length, f.push(e.vs), p += e.barycenter * e.weight, m += e.weight, h = Lt(f, d, h);
1303
1279
  });
1304
1280
  let g = { vs: f.flat(1) };
1305
1281
  return m && (g.barycenter = p / m, g.weight = m), g;
1306
1282
  }
1307
- function Wt(e, t, n) {
1283
+ function Lt(e, t, n) {
1308
1284
  let r;
1309
1285
  for (; t.length && (r = t[t.length - 1]).i <= n;) t.pop(), e.push(r.vs), n++;
1310
1286
  return n;
1311
1287
  }
1312
- function Gt(e, t, n) {
1288
+ function Rt(e, t, n) {
1313
1289
  return (r, i) => {
1314
1290
  if (r.barycenter < i.barycenter) return -1;
1315
1291
  if (r.barycenter > i.barycenter) return 1;
1316
1292
  if (e && (typeof r.vs[0] == "string" || typeof i.vs[0] == "string")) {
1317
- let n = Ie(t, e.node(r.vs[0]), e.node(i.vs[0]));
1293
+ let n = Me(t, e.node(r.vs[0]), e.node(i.vs[0]));
1318
1294
  if (n !== 0) return n;
1319
1295
  }
1320
1296
  return n ? i.i - r.i : r.i - i.i;
1321
1297
  };
1322
1298
  }
1323
- function Kt(e, t, n, r, i) {
1299
+ function zt(e, t, n, r, i) {
1324
1300
  var a, o;
1325
1301
  let s = null, c = i;
1326
1302
  typeof r == "boolean" ? (c = r, s = null) : r !== void 0 && (s = r);
1327
1303
  let l = e.children(t), u = e.node(t), d = u ? u.borderLeft : void 0, f = u ? u.borderRight : void 0, p = {};
1328
1304
  d && (l = l.filter((e) => e !== d && e !== f));
1329
- let m = zt(e, l);
1305
+ let m = Mt(e, l);
1330
1306
  m.forEach((t) => {
1331
1307
  if (e.children(t.v).length) {
1332
- let { result: r } = Kt(e, t.v, n, s, c);
1333
- p[t.v] = r, Object.hasOwn(r, "barycenter") && Jt(t, r);
1308
+ let { result: r } = zt(e, t.v, n, s, c);
1309
+ p[t.v] = r, Object.hasOwn(r, "barycenter") && Vt(t, r);
1334
1310
  }
1335
1311
  });
1336
- let h = Bt(m, n);
1337
- qt(h, p);
1312
+ let h = Nt(m, n);
1313
+ Bt(h, p);
1338
1314
  let g = {}, _ = !1;
1339
1315
  for (let t = 0; t < h.length; t++) for (let n = t + 1; n < h.length; n++) if (!(!h[t] || !h[n] || !((a = h[t]) != null && a.barycenter) || !((o = h[n]) != null && o.barycenter)) && h[t]?.barycenter === h[n].barycenter) {
1340
1316
  let r = h[t]?.vs[0] ?? "", i = h[n]?.vs[0] ?? "", a = e.node(r), o = e.node(i);
@@ -1344,7 +1320,7 @@ function Kt(e, t, n, r, i) {
1344
1320
  } else g[r] = h[n], h.splice(n, 1), n--;
1345
1321
  else _ = !0;
1346
1322
  }
1347
- let v = Ut(h, g, s, e, c);
1323
+ let v = It(h, g, s, e, c);
1348
1324
  if (d && f) {
1349
1325
  v.vs = [
1350
1326
  d,
@@ -1369,17 +1345,17 @@ function Kt(e, t, n, r, i) {
1369
1345
  writable: !0
1370
1346
  }), v;
1371
1347
  }
1372
- function qt(e, t) {
1348
+ function Bt(e, t) {
1373
1349
  e.forEach((e) => {
1374
1350
  e.vs = e.vs.flatMap((e) => t[e] ? t[e].vs : e);
1375
1351
  });
1376
1352
  }
1377
- function Jt(e, t) {
1353
+ function Vt(e, t) {
1378
1354
  e.barycenter === void 0 ? (e.barycenter = t.barycenter, e.weight = t.weight) : (e.barycenter = (e.barycenter * e.weight + t.barycenter * t.weight) / (e.weight + t.weight), e.weight += t.weight);
1379
1355
  }
1380
- function Yt(e, t, n, r) {
1356
+ function Ht(e, t, n, r) {
1381
1357
  r ||= e.nodes();
1382
- let i = Xt(e), a = new h({ compound: !0 }).setGraph({ root: i }).setDefaultNodeLabel((t) => e.node(t));
1358
+ let i = Ut(e), a = new c({ compound: !0 }).setGraph({ root: i }).setDefaultNodeLabel((t) => e.node(t));
1383
1359
  return r.forEach((r) => {
1384
1360
  let o = e.node(r), s = e.parent(r);
1385
1361
  if (o.rank === t || o.minRank <= t && t <= o.maxRank) {
@@ -1395,12 +1371,12 @@ function Yt(e, t, n, r) {
1395
1371
  }
1396
1372
  }), a;
1397
1373
  }
1398
- function Xt(e) {
1374
+ function Ut(e) {
1399
1375
  let t;
1400
- for (; e.hasNode(t = N("_root")););
1376
+ for (; e.hasNode(t = A("_root")););
1401
1377
  return t;
1402
1378
  }
1403
- function Zt(e, t, n) {
1379
+ function Wt(e, t, n) {
1404
1380
  let r = {}, i;
1405
1381
  n.forEach((n) => {
1406
1382
  let a = e.parent(n), o, s;
@@ -1413,22 +1389,22 @@ function Zt(e, t, n) {
1413
1389
  }
1414
1390
  });
1415
1391
  }
1416
- function Qt(e, t = {}, n = null) {
1392
+ function Gt(e, t = {}, n = null) {
1417
1393
  if (typeof t.customOrder == "function") {
1418
- t.customOrder(e, Qt);
1394
+ t.customOrder(e, Gt);
1419
1395
  return;
1420
1396
  }
1421
- let r = M(e), i = $t(e, P(1, r + 1), "inEdges"), a = $t(e, P(r - 1, -1, -1), "outEdges"), o = It(e, n);
1422
- if (tn(e, o), t.disableOptimalOrderHeuristic) return;
1397
+ let r = k(e), i = Kt(e, j(1, r + 1), "inEdges"), a = Kt(e, j(r - 1, -1, -1), "outEdges"), o = kt(e, n);
1398
+ if (Jt(e, o), t.disableOptimalOrderHeuristic) return;
1423
1399
  let s = Infinity, c, l = t.constraints || [];
1424
1400
  for (let t = 0, r = 0; r < 4; ++t, ++r) {
1425
- en(t % 2 ? i : a, t % 4 >= 2, l, n), o = k(e);
1426
- let u = Lt(e, o);
1401
+ qt(t % 2 ? i : a, t % 4 >= 2, l, n), o = D(e);
1402
+ let u = At(e, o);
1427
1403
  u < s ? (r = 0, c = Object.assign({}, o), s = u) : u === s && (c = structuredClone(o));
1428
1404
  }
1429
- tn(e, c);
1405
+ Jt(e, c);
1430
1406
  }
1431
- function $t(e, t, n) {
1407
+ function Kt(e, t, n) {
1432
1408
  let r = /* @__PURE__ */ new Map(), i = (e, t) => {
1433
1409
  r.has(e) || r.set(e, []), r.get(e).push(t);
1434
1410
  };
@@ -1437,48 +1413,48 @@ function $t(e, t, n) {
1437
1413
  if (typeof n.rank == "number" && i(n.rank, t), typeof n.minRank == "number" && typeof n.maxRank == "number") for (let e = n.minRank; e <= n.maxRank; e++) e !== n.rank && i(e, t);
1438
1414
  }
1439
1415
  return t.map(function(t) {
1440
- return Yt(e, t, n, r.get(t) || []);
1416
+ return Ht(e, t, n, r.get(t) || []);
1441
1417
  });
1442
1418
  }
1443
- function en(e, t, n, r) {
1444
- let i = !0, a = new h();
1419
+ function qt(e, t, n, r) {
1420
+ let i = !0, a = new c();
1445
1421
  e.forEach(function(e) {
1446
1422
  n.forEach((e) => a.setEdge(e.left, e.right));
1447
- let o = e.graph().root, { result: s, usedBias: c } = Kt(e, o, a, r, i);
1448
- t && c && (i = !i), s.vs.forEach((t, n) => e.node(t).order = n), Zt(e, a, s.vs);
1423
+ let o = e.graph().root, { result: s, usedBias: c } = zt(e, o, a, r, i);
1424
+ t && c && (i = !i), s.vs.forEach((t, n) => e.node(t).order = n), Wt(e, a, s.vs);
1449
1425
  });
1450
1426
  }
1451
- function tn(e, t) {
1427
+ function Jt(e, t) {
1452
1428
  Object.values(t).forEach((t) => t.forEach((t, n) => e.node(t).order = n));
1453
1429
  }
1454
- function nn(e, t) {
1430
+ function Yt(e, t) {
1455
1431
  let n = {};
1456
1432
  function r(t, r) {
1457
1433
  let i = 0, a = 0, o = t.length, s = r[r.length - 1];
1458
1434
  return r.forEach((t, c) => {
1459
- let l = an(e, t), u = l ? e.node(l).order : o;
1435
+ let l = Zt(e, t), u = l ? e.node(l).order : o;
1460
1436
  (l || t === s) && (r.slice(a, c + 1).forEach((t) => {
1461
1437
  let r = e.predecessors(t);
1462
1438
  r && r.forEach((r) => {
1463
1439
  let a = e.node(r), o = a.order;
1464
- (o < i || u < o) && !(a.dummy && e.node(t).dummy) && on(n, r, t);
1440
+ (o < i || u < o) && !(a.dummy && e.node(t).dummy) && Qt(n, r, t);
1465
1441
  });
1466
1442
  }), a = c + 1, i = u);
1467
1443
  }), r;
1468
1444
  }
1469
1445
  return t.length && t.reduce(r), n;
1470
1446
  }
1471
- function rn(e, t) {
1447
+ function Xt(e, t) {
1472
1448
  let n = {};
1473
1449
  function r(t, r, i, a, o) {
1474
- P(r, i).forEach((r) => {
1450
+ j(r, i).forEach((r) => {
1475
1451
  let i = t[r];
1476
1452
  if (i !== void 0 && e.node(i).dummy) {
1477
1453
  let t = e.predecessors(i);
1478
1454
  t && t.forEach((t) => {
1479
1455
  if (t === void 0) return;
1480
1456
  let r = e.node(t);
1481
- r.dummy && (r.order < a || r.order > o) && on(n, t, i);
1457
+ r.dummy && (r.order < a || r.order > o) && Qt(n, t, i);
1482
1458
  });
1483
1459
  }
1484
1460
  });
@@ -1499,13 +1475,13 @@ function rn(e, t) {
1499
1475
  }
1500
1476
  return t.length && t.reduce(i), n;
1501
1477
  }
1502
- function an(e, t) {
1478
+ function Zt(e, t) {
1503
1479
  if (e.node(t).dummy) {
1504
1480
  let n = e.predecessors(t);
1505
1481
  if (n) return n.find((t) => e.node(t).dummy);
1506
1482
  }
1507
1483
  }
1508
- function on(e, t, n) {
1484
+ function Qt(e, t, n) {
1509
1485
  if (t > n) {
1510
1486
  let e = t;
1511
1487
  t = n, n = e;
@@ -1513,7 +1489,7 @@ function on(e, t, n) {
1513
1489
  let r = e[t];
1514
1490
  r || (e[t] = r = {}), r[n] = !0;
1515
1491
  }
1516
- function sn(e, t, n) {
1492
+ function $t(e, t, n) {
1517
1493
  if (t > n) {
1518
1494
  let e = t;
1519
1495
  t = n, n = e;
@@ -1521,14 +1497,14 @@ function sn(e, t, n) {
1521
1497
  let r = e[t];
1522
1498
  return r !== void 0 && Object.hasOwn(r, n);
1523
1499
  }
1524
- function cn(e, t, n, r, i) {
1500
+ function en(e, t, n, r, i) {
1525
1501
  let a = {}, o = {}, s = {};
1526
1502
  return t.forEach((e) => {
1527
1503
  e.forEach((e, t) => {
1528
1504
  a[e] = e, o[e] = e, s[e] = t;
1529
1505
  });
1530
1506
  }), t.forEach((t) => {
1531
- let c = -1, l = -1, u = !1, d = t, f = t.findIndex((t) => i?.includes(t) || _n(t, e, i));
1507
+ let c = -1, l = -1, u = !1, d = t, f = t.findIndex((t) => i?.includes(t) || un(t, e, i));
1532
1508
  f > 0 && (d = [
1533
1509
  t[f],
1534
1510
  ...t.slice(0, f),
@@ -1536,7 +1512,7 @@ function cn(e, t, n, r, i) {
1536
1512
  ], u = !0), d.forEach((t) => {
1537
1513
  let d = r(t);
1538
1514
  if (d && d.length) {
1539
- i != null && i.includes(t) && (d = d.filter((t) => _n(t, e, i)));
1515
+ i != null && i.includes(t) && (d = d.filter((t) => un(t, e, i)));
1540
1516
  let r = d.sort((e, t) => {
1541
1517
  let n = s[e], r = s[t];
1542
1518
  return (n === void 0 ? 0 : n) - (r === void 0 ? 0 : r);
@@ -1545,7 +1521,7 @@ function cn(e, t, n, r, i) {
1545
1521
  let i = r[e];
1546
1522
  if (i === void 0) continue;
1547
1523
  let d = s[i];
1548
- if (d !== void 0 && o[t] === t && c < d && s[i] !== l && !sn(n, t, i)) {
1524
+ if (d !== void 0 && o[t] === t && c < d && s[i] !== l && !$t(n, t, i)) {
1549
1525
  let e = a[i];
1550
1526
  e !== void 0 && (o[i] = t, o[t] = a[t] = e, c = d, u &&= (c = -1, l = s[i] ?? -1, !1));
1551
1527
  }
@@ -1557,8 +1533,8 @@ function cn(e, t, n, r, i) {
1557
1533
  align: o
1558
1534
  };
1559
1535
  }
1560
- function ln(e, t, n, r, i = !1) {
1561
- let a = {}, o = un(e, t, n, i), s = i ? "borderLeft" : "borderRight";
1536
+ function tn(e, t, n, r, i = !1) {
1537
+ let a = {}, o = nn(e, t, n, i), s = i ? "borderLeft" : "borderRight";
1562
1538
  function c(e, t) {
1563
1539
  let n = o.nodes().slice(), r = {}, i = n.pop();
1564
1540
  for (; i;) {
@@ -1597,8 +1573,8 @@ function ln(e, t, n, r, i = !1) {
1597
1573
  t !== void 0 && (a[e] = a[t] ?? 0);
1598
1574
  }), a;
1599
1575
  }
1600
- function un(e, t, n, r) {
1601
- let i = new h(), a = e.graph(), o = hn(a.nodesep, a.edgesep, r);
1576
+ function nn(e, t, n, r) {
1577
+ let i = new c(), a = e.graph(), o = cn(a.nodesep, a.edgesep, r);
1602
1578
  return t.forEach((t) => {
1603
1579
  let r;
1604
1580
  t.forEach((t) => {
@@ -1616,31 +1592,31 @@ function un(e, t, n, r) {
1616
1592
  });
1617
1593
  }), i;
1618
1594
  }
1619
- function dn(e, t) {
1595
+ function rn(e, t) {
1620
1596
  return Object.values(t).reduce((t, n) => {
1621
1597
  let r = -Infinity, i = Infinity;
1622
1598
  Object.entries(n).forEach(([t, n]) => {
1623
- let a = gn(e, t) / 2;
1599
+ let a = ln(e, t) / 2;
1624
1600
  r = Math.max(n + a, r), i = Math.min(n - a, i);
1625
1601
  });
1626
1602
  let a = r - i;
1627
1603
  return a < t[0] && (t = [a, n]), t;
1628
1604
  }, [Infinity, null])[1];
1629
1605
  }
1630
- function fn(e, t) {
1631
- let n = Object.values(t), r = j(Math.min, n), i = j(Math.max, n);
1606
+ function an(e, t) {
1607
+ let n = Object.values(t), r = O(Math.min, n), i = O(Math.max, n);
1632
1608
  ["u", "d"].forEach((n) => {
1633
1609
  ["l", "r"].forEach((a) => {
1634
1610
  let o = n + a, s = e[o];
1635
1611
  if (!s || s === t) return;
1636
- let c = Object.values(s), l = r - j(Math.min, c);
1637
- a !== "l" && (l = i - j(Math.max, c)), l && (e[o] = I(s, (e) => e + l));
1612
+ let c = Object.values(s), l = r - O(Math.min, c);
1613
+ a !== "l" && (l = i - O(Math.max, c)), l && (e[o] = N(s, (e) => e + l));
1638
1614
  });
1639
1615
  });
1640
1616
  }
1641
- function pn(e, t = void 0) {
1617
+ function on(e, t = void 0) {
1642
1618
  let n = e.ul;
1643
- return n ? I(n, (n, r) => {
1619
+ return n ? N(n, (n, r) => {
1644
1620
  if (t) {
1645
1621
  let n = e[t.toLowerCase()];
1646
1622
  if (n && n[r] !== void 0) return n[r];
@@ -1652,17 +1628,17 @@ function pn(e, t = void 0) {
1652
1628
  return ((i[1] ?? 0) + (i[2] ?? 0)) / 2;
1653
1629
  }) : {};
1654
1630
  }
1655
- function mn(e, t) {
1656
- let n = k(e), r = Object.assign(nn(e, n), rn(e, n)), i = {}, a;
1631
+ function sn(e, t) {
1632
+ let n = D(e), r = Object.assign(Yt(e, n), Xt(e, n)), i = {}, a;
1657
1633
  return ["u", "d"].forEach((o) => {
1658
1634
  a = o === "u" ? n : Object.values(n).reverse(), ["l", "r"].forEach((n) => {
1659
1635
  n === "r" && (a = a.map((e) => Object.values(e).reverse()));
1660
- let s = cn(e, a, r, (t) => (o === "u" ? e.predecessors(t) : e.successors(t)) || [], t), c = ln(e, a, s.root, s.align, n === "r");
1661
- n === "r" && (c = I(c, (e) => -e)), i[o + n] = c;
1636
+ let s = en(e, a, r, (t) => (o === "u" ? e.predecessors(t) : e.successors(t)) || [], t), c = tn(e, a, s.root, s.align, n === "r");
1637
+ n === "r" && (c = N(c, (e) => -e)), i[o + n] = c;
1662
1638
  });
1663
- }), fn(i, dn(e, i)), pn(i, e.graph().align);
1639
+ }), an(i, rn(e, i)), on(i, e.graph().align);
1664
1640
  }
1665
- function hn(e, t, n) {
1641
+ function cn(e, t, n) {
1666
1642
  return (r, i, a) => {
1667
1643
  let o = r.node(i), s = r.node(a), c = 0, l;
1668
1644
  if (c += o.width / 2, Object.hasOwn(o, "labelpos")) switch (o.labelpos.toLowerCase()) {
@@ -1684,21 +1660,21 @@ function hn(e, t, n) {
1684
1660
  return l && (c += n ? l : -l), c;
1685
1661
  };
1686
1662
  }
1687
- function gn(e, t) {
1663
+ function ln(e, t) {
1688
1664
  return e.node(t).width;
1689
1665
  }
1690
- function _n(e, t, n) {
1666
+ function un(e, t, n) {
1691
1667
  if (!n) return !1;
1692
1668
  let r = t.node(e)?.edgeObj;
1693
1669
  if (!r || t.node(e).edgeLabel.reversed) return !1;
1694
1670
  let i = n.indexOf(r?.v), a = n.indexOf(r?.w);
1695
1671
  return i !== -1 && a !== -1 && i === (a + 1) % n.length || i === (a - 1) % n.length;
1696
1672
  }
1697
- function vn(e, t) {
1698
- e = Ee(e), yn(e), Object.entries(mn(e, t)).forEach(([t, n]) => e.node(t).x = n);
1673
+ function dn(e, t) {
1674
+ e = E(e), fn(e), Object.entries(sn(e, t)).forEach(([t, n]) => e.node(t).x = n);
1699
1675
  }
1700
- function yn(e) {
1701
- let t = k(e), n = e.graph(), r = n.ranksep, i = n.rankalign, a = 0;
1676
+ function fn(e) {
1677
+ let t = D(e), n = e.graph(), r = n.ranksep, i = n.rankalign, a = 0;
1702
1678
  t.forEach((t) => {
1703
1679
  let n = t.reduce((t, n) => {
1704
1680
  let r = e.node(n).height ?? 0;
@@ -1711,10 +1687,10 @@ function yn(e) {
1711
1687
  });
1712
1688
  }
1713
1689
  var X = null, Z = null;
1714
- function bn(e, t = {}) {
1715
- return Sn(e, Ne, t), e;
1690
+ function pn(e, t = {}) {
1691
+ return hn(e, ke, t), e;
1716
1692
  }
1717
- function xn(e, t, n) {
1693
+ function mn(e, t, n) {
1718
1694
  let r = t;
1719
1695
  for (; r !== void 0;) {
1720
1696
  let t = e.parent(r);
@@ -1722,12 +1698,12 @@ function xn(e, t, n) {
1722
1698
  r = t;
1723
1699
  }
1724
1700
  }
1725
- function Sn(e, t, n) {
1701
+ function hn(e, t, n) {
1726
1702
  let r = e.nodes().filter((t) => e.children(t).length), i = {};
1727
1703
  r.forEach((r) => {
1728
1704
  let a = e.node(r);
1729
1705
  if (a && a.rankdir) {
1730
- let o = new h({
1706
+ let o = new c({
1731
1707
  multigraph: !0,
1732
1708
  compound: !0
1733
1709
  });
@@ -1739,32 +1715,32 @@ function Sn(e, t, n) {
1739
1715
  let i = e.parent(t);
1740
1716
  i && i !== r && s.includes(i) && o.setParent(t, i);
1741
1717
  });
1742
- let c = /* @__PURE__ */ new Set();
1718
+ let l = /* @__PURE__ */ new Set();
1743
1719
  e.edges().forEach((t) => {
1744
- let n = xn(e, t.v, r), i = xn(e, t.w, r);
1720
+ let n = mn(e, t.v, r), i = mn(e, t.w, r);
1745
1721
  if (n && i && n !== i) {
1746
1722
  let r = `${n}\0${i}`;
1747
- c.has(r) || (c.add(r), o.setEdge(n, i, { ...e.edge(t) }));
1723
+ l.has(r) || (l.add(r), o.setEdge(n, i, { ...e.edge(t) }));
1748
1724
  }
1749
- }), Sn(o, t, n);
1750
- let l = Nn(o);
1751
- Cn(l, t, n), wn(o, l);
1752
- let u = Infinity, d = Infinity, f = -Infinity, p = -Infinity;
1725
+ }), hn(o, t, n);
1726
+ let u = En(o);
1727
+ gn(u, t, n), _n(o, u);
1728
+ let d = Infinity, f = Infinity, p = -Infinity, m = -Infinity;
1753
1729
  o.nodes().forEach((e) => {
1754
1730
  if (e === r) return;
1755
1731
  let t = o.node(e);
1756
- t && typeof t.x == "number" && typeof t.y == "number" && typeof t.width == "number" && typeof t.height == "number" && (u = Math.min(u, t.x - t.width / 2), f = Math.max(f, t.x + t.width / 2), d = Math.min(d, t.y - t.height / 2), p = Math.max(p, t.y + t.height / 2));
1757
- }), (!isFinite(u) || !isFinite(d) || !isFinite(f) || !isFinite(p)) && (u = d = 0, f = p = 0);
1758
- let m = f - u, g = p - d;
1732
+ t && typeof t.x == "number" && typeof t.y == "number" && typeof t.width == "number" && typeof t.height == "number" && (d = Math.min(d, t.x - t.width / 2), p = Math.max(p, t.x + t.width / 2), f = Math.min(f, t.y - t.height / 2), m = Math.max(m, t.y + t.height / 2));
1733
+ }), (!isFinite(d) || !isFinite(f) || !isFinite(p) || !isFinite(m)) && (d = f = 0, p = m = 0);
1734
+ let h = p - d, g = m - f;
1759
1735
  i[r] = {
1760
- minX: u,
1761
- minY: d,
1762
- maxX: f,
1763
- maxY: p,
1764
- width: m,
1736
+ minX: d,
1737
+ minY: f,
1738
+ maxX: p,
1739
+ maxY: m,
1740
+ width: h,
1765
1741
  height: g,
1766
- offsetX: u,
1767
- offsetY: d
1742
+ offsetX: d,
1743
+ offsetY: f
1768
1744
  }, a._dagreClusterSubgraph = o;
1769
1745
  }
1770
1746
  });
@@ -1780,35 +1756,35 @@ function Sn(e, t, n) {
1780
1756
  let n = e.node(t);
1781
1757
  n && n.rankdir && i[t] && s.set(t, (e.children(t) || []).filter((e) => e !== t));
1782
1758
  });
1783
- let c = new Set([...s.values()].flat()), l = /* @__PURE__ */ new Map();
1759
+ let l = new Set([...s.values()].flat()), u = /* @__PURE__ */ new Map();
1784
1760
  s.forEach((e, t) => {
1785
- c.has(t) || l.set(t, o(t));
1761
+ l.has(t) || u.set(t, o(t));
1786
1762
  });
1787
- let u = new Set([...l.values()].flat()), d = (e) => {
1788
- for (let [t, n] of l) if (n.includes(e)) return t;
1763
+ let d = new Set([...u.values()].flat()), f = (e) => {
1764
+ for (let [t, n] of u) if (n.includes(e)) return t;
1789
1765
  return e;
1790
- }, f = [];
1766
+ }, p = [];
1791
1767
  e.edges().forEach((t) => {
1792
- (u.has(t.v) || u.has(t.w)) && f.push({
1768
+ (d.has(t.v) || d.has(t.w)) && p.push({
1793
1769
  edge: t,
1794
1770
  label: e.edge(t)
1795
1771
  });
1796
1772
  });
1797
- let p = /* @__PURE__ */ new Map();
1798
- u.forEach((t) => {
1773
+ let m = /* @__PURE__ */ new Map();
1774
+ d.forEach((t) => {
1799
1775
  let n = e.parent(t);
1800
- p.set(t, typeof n == "string" ? n : void 0);
1801
- }), l.forEach((t, n) => {
1776
+ m.set(t, typeof n == "string" ? n : void 0);
1777
+ }), u.forEach((t, n) => {
1802
1778
  let r = e.node(n), o = [];
1803
1779
  t.forEach((t) => {
1804
1780
  let n = e.node(t);
1805
1781
  n && (o.push({
1806
1782
  id: t,
1807
1783
  node: n,
1808
- parent: p.get(t)
1784
+ parent: m.get(t)
1809
1785
  }), e.removeNode(t));
1810
1786
  });
1811
- let s = f.filter(({ edge: e }) => t.includes(e.v) || t.includes(e.w)), c = i[n];
1787
+ let s = p.filter(({ edge: e }) => t.includes(e.v) || t.includes(e.w)), c = i[n];
1812
1788
  r && (a.push({
1813
1789
  clusterId: n,
1814
1790
  subgraph: r._dagreClusterSubgraph,
@@ -1818,20 +1794,20 @@ function Sn(e, t, n) {
1818
1794
  removedEdges: s
1819
1795
  }), r.width = c.width, r.height = c.height);
1820
1796
  });
1821
- let m = /* @__PURE__ */ new Set();
1822
- f.forEach(({ edge: t, label: n }) => {
1823
- let r = d(t.v), i = d(t.w);
1797
+ let h = /* @__PURE__ */ new Set();
1798
+ p.forEach(({ edge: t, label: n }) => {
1799
+ let r = f(t.v), i = f(t.w);
1824
1800
  if (r !== i && e.hasNode(r) && e.hasNode(i)) {
1825
1801
  let t = `${r}\0${i}`;
1826
- m.has(t) || (m.add(t), e.setEdge(r, i, {
1802
+ h.has(t) || (h.add(t), e.setEdge(r, i, {
1827
1803
  ...n,
1828
1804
  width: 0,
1829
1805
  height: 0
1830
1806
  }));
1831
1807
  }
1832
1808
  });
1833
- let g = Nn(e);
1834
- Cn(g, t, n), wn(e, g), m.forEach((t) => {
1809
+ let g = En(e);
1810
+ gn(g, t, n), _n(e, g), h.forEach((t) => {
1835
1811
  let n = t.indexOf("\0"), r = t.slice(0, n), i = t.slice(n + 1);
1836
1812
  e.hasEdge(r, i) && e.removeEdge(r, i);
1837
1813
  }), a.forEach(({ clusterId: t, subgraph: n, bounds: r, removedNodes: i, removedEdges: a }) => {
@@ -1860,10 +1836,10 @@ function Sn(e, t, n) {
1860
1836
  }
1861
1837
  });
1862
1838
  }
1863
- function Cn(e, t, n) {
1864
- n?.useDynamic === !1 && (X = null, Z = null), t(" makeSpaceForEdgeLabels", () => Pn(e)), t(" removeSelfEdges", () => Un(e)), t(" acyclic", () => Ke(e, X)), t(" nestingGraph.run", () => St(e)), t(" rank", () => pt(Ee(e))), t(" injectEdgeLabelProxies", () => Fn(e)), t(" removeEmptyRanks", () => ke(e)), t(" nestingGraph.cleanup", () => Et(e)), t(" normalizeRanks", () => Oe(e)), t(" assignRankMinMax", () => In(e)), t(" removeEdgeLabelProxies", () => Ln(e)), t(" normalize.run", () => Xe(e)), t(" parentDummyChains", () => vt(e)), t(" addBorderSegments", () => Dt(e)), t(" order", () => Qt(e, n, Z)), t(" insertSelfEdges", () => Wn(e)), t(" adjustCoordinateSystem", () => At(e)), t(" position", () => vn(e, n.corePath)), t(" positionSelfEdges", () => Gn(e)), Z = JSON.parse(JSON.stringify(e._nodes)), t(" removeBorderNodes", () => Hn(e)), t(" normalize.undo", () => Qe(e)), t(" fixupEdgeLabelCoords", () => Bn(e)), t(" undoCoordinateSystem", () => jt(e)), t(" translateGraph", () => Rn(e)), t(" assignNodeIntersects", () => zn(e)), t(" reversePoints", () => Vn(e)), t(" acyclic.undo", () => Je(e)), X = e;
1839
+ function gn(e, t, n) {
1840
+ n?.useDynamic === !1 && (X = null, Z = null), t(" makeSpaceForEdgeLabels", () => Dn(e)), t(" removeSelfEdges", () => In(e)), t(" acyclic", () => He(e, X)), t(" nestingGraph.run", () => ht(e)), t(" rank", () => ot(E(e))), t(" injectEdgeLabelProxies", () => On(e)), t(" removeEmptyRanks", () => we(e)), t(" nestingGraph.cleanup", () => yt(e)), t(" normalizeRanks", () => Ce(e)), t(" assignRankMinMax", () => kn(e)), t(" removeEdgeLabelProxies", () => An(e)), t(" normalize.run", () => Ke(e)), t(" parentDummyChains", () => dt(e)), t(" addBorderSegments", () => bt(e)), t(" order", () => Gt(e, n, Z)), t(" insertSelfEdges", () => Ln(e)), t(" adjustCoordinateSystem", () => Ct(e)), t(" position", () => dn(e, n.corePath)), t(" positionSelfEdges", () => Rn(e)), Z = JSON.parse(JSON.stringify(e._nodes)), t(" removeBorderNodes", () => Fn(e)), t(" normalize.undo", () => Je(e)), t(" fixupEdgeLabelCoords", () => Nn(e)), t(" undoCoordinateSystem", () => wt(e)), t(" translateGraph", () => jn(e)), t(" assignNodeIntersects", () => Mn(e)), t(" reversePoints", () => Pn(e)), t(" acyclic.undo", () => We(e)), X = e;
1865
1841
  }
1866
- function wn(e, t) {
1842
+ function _n(e, t) {
1867
1843
  e.nodes().forEach((n) => {
1868
1844
  let r = e.node(n), i = t.node(n);
1869
1845
  r && (r.x = i.x, r.y = i.y, r.order = i.order, r.rank = i.rank, t.children(n).length && (r.width = i.width, r.height = i.height));
@@ -1872,89 +1848,89 @@ function wn(e, t) {
1872
1848
  r.points = i.points, Object.hasOwn(i, "x") && (r.x = i.x, r.y = i.y);
1873
1849
  }), e.graph().width = t.graph().width, e.graph().height = t.graph().height;
1874
1850
  }
1875
- var Tn = [
1851
+ var vn = [
1876
1852
  "nodesep",
1877
1853
  "edgesep",
1878
1854
  "ranksep",
1879
1855
  "marginx",
1880
1856
  "marginy"
1881
- ], En = {
1857
+ ], yn = {
1882
1858
  ranksep: 50,
1883
1859
  edgesep: 20,
1884
1860
  nodesep: 50,
1885
1861
  rankdir: "TB",
1886
1862
  rankalign: "center"
1887
- }, Dn = [
1863
+ }, bn = [
1888
1864
  "acyclicer",
1889
1865
  "ranker",
1890
1866
  "rankdir",
1891
1867
  "align",
1892
1868
  "rankalign"
1893
- ], On = [
1869
+ ], xn = [
1894
1870
  "width",
1895
1871
  "height",
1896
1872
  "rank"
1897
- ], kn = {
1873
+ ], Sn = {
1898
1874
  width: 0,
1899
1875
  height: 0
1900
- }, An = [
1876
+ }, Cn = [
1901
1877
  "minlen",
1902
1878
  "weight",
1903
1879
  "width",
1904
1880
  "height",
1905
1881
  "labeloffset"
1906
- ], jn = {
1882
+ ], wn = {
1907
1883
  minlen: 1,
1908
1884
  weight: 1,
1909
1885
  width: 0,
1910
1886
  height: 0,
1911
1887
  labeloffset: 10,
1912
1888
  labelpos: "r"
1913
- }, Mn = ["labelpos"];
1914
- function Nn(e) {
1915
- let t = new h({
1889
+ }, Tn = ["labelpos"];
1890
+ function En(e) {
1891
+ let t = new c({
1916
1892
  multigraph: !0,
1917
1893
  compound: !0
1918
1894
  }), n = $(e.graph());
1919
- return t.setGraph(Object.assign({}, En, Q(n, Tn), F(n, Dn))), e.nodes().forEach((n) => {
1920
- let r = Q($(e.node(n)), On);
1921
- Object.keys(kn).forEach((e) => {
1922
- r[e] === void 0 && (r[e] = kn[e]);
1895
+ return t.setGraph(Object.assign({}, yn, Q(n, vn), M(n, bn))), e.nodes().forEach((n) => {
1896
+ let r = Q($(e.node(n)), xn);
1897
+ Object.keys(Sn).forEach((e) => {
1898
+ r[e] === void 0 && (r[e] = Sn[e]);
1923
1899
  }), t.setNode(n, r);
1924
1900
  let i = e.parent(n);
1925
1901
  i !== void 0 && t.setParent(n, i);
1926
1902
  }), e.edges().forEach((n) => {
1927
1903
  let r = $(e.edge(n));
1928
- t.setEdge(n, Object.assign({}, jn, Q(r, An), F(r, Mn)));
1904
+ t.setEdge(n, Object.assign({}, wn, Q(r, Cn), M(r, Tn)));
1929
1905
  }), t;
1930
1906
  }
1931
- function Pn(e) {
1907
+ function Dn(e) {
1932
1908
  let t = e.graph();
1933
1909
  t.ranksep /= 2, e.edges().forEach((n) => {
1934
1910
  let r = e.edge(n);
1935
1911
  r.minlen *= 2, (r.labelpos ?? "r").toLowerCase() !== "c" && (t.rankdir === "TB" || t.rankdir === "BT" ? r.width += r.labeloffset : r.height += r.labeloffset);
1936
1912
  });
1937
1913
  }
1938
- function Fn(e) {
1914
+ function On(e) {
1939
1915
  e.edges().forEach((t) => {
1940
1916
  let n = e.edge(t);
1941
1917
  if (n.width && n.height) {
1942
1918
  let n = e.node(t.v);
1943
- O(e, "edge-proxy", {
1919
+ T(e, "edge-proxy", {
1944
1920
  rank: (e.node(t.w).rank - n.rank) / 2 + n.rank,
1945
1921
  e: t
1946
1922
  }, "_ep");
1947
1923
  }
1948
1924
  });
1949
1925
  }
1950
- function In(e) {
1926
+ function kn(e) {
1951
1927
  let t = 0;
1952
1928
  e.nodes().forEach((n) => {
1953
1929
  let r = e.node(n);
1954
1930
  r.borderTop && (r.minRank = e.node(r.borderTop).rank, r.maxRank = e.node(r.borderBottom).rank, t = Math.max(t, r.maxRank));
1955
1931
  }), e.graph().maxRank = t;
1956
1932
  }
1957
- function Ln(e) {
1933
+ function An(e) {
1958
1934
  e.nodes().forEach((t) => {
1959
1935
  let n = e.node(t);
1960
1936
  if (n.dummy === "edge-proxy") {
@@ -1963,7 +1939,7 @@ function Ln(e) {
1963
1939
  }
1964
1940
  });
1965
1941
  }
1966
- function Rn(e) {
1942
+ function jn(e) {
1967
1943
  let t = Infinity, n = 0, r = Infinity, i = 0, a = e.graph(), o = a.marginx || 0, s = a.marginy || 0;
1968
1944
  function c(e) {
1969
1945
  let a = e.x, o = e.y, s = e.width, c = e.height;
@@ -1982,14 +1958,14 @@ function Rn(e) {
1982
1958
  }), Object.hasOwn(i, "x") && (i.x -= t), Object.hasOwn(i, "y") && (i.y -= r);
1983
1959
  }), a.width = n - t + o, a.height = i - r + s;
1984
1960
  }
1985
- function zn(e) {
1961
+ function Mn(e) {
1986
1962
  e.edges().forEach((t) => {
1987
1963
  if (t.v === t.w) return;
1988
1964
  let n = e.edge(t), r = e.node(t.v), i = e.node(t.w), a, o;
1989
- n.points ? (a = n.points[0], o = n.points[n.points.length - 1]) : (n.points = [], a = i, o = r), n.points.unshift(De(r, a)), n.points.push(De(i, o));
1965
+ n.points ? (a = n.points[0], o = n.points[n.points.length - 1]) : (n.points = [], a = i, o = r), n.points.unshift(Se(r, a)), n.points.push(Se(i, o));
1990
1966
  });
1991
1967
  }
1992
- function Bn(e) {
1968
+ function Nn(e) {
1993
1969
  e.edges().forEach((t) => {
1994
1970
  let n = e.edge(t);
1995
1971
  if (Object.hasOwn(n, "x")) switch ((n.labelpos === "l" || n.labelpos === "r") && (n.width -= n.labeloffset), n.labelpos) {
@@ -2002,13 +1978,13 @@ function Bn(e) {
2002
1978
  }
2003
1979
  });
2004
1980
  }
2005
- function Vn(e) {
1981
+ function Pn(e) {
2006
1982
  e.edges().forEach((t) => {
2007
1983
  let n = e.edge(t);
2008
1984
  n.reversed && n.points.reverse();
2009
1985
  });
2010
1986
  }
2011
- function Hn(e) {
1987
+ function Fn(e) {
2012
1988
  e.nodes().forEach((t) => {
2013
1989
  if (e.children(t).length) {
2014
1990
  let n = e.node(t), r = e.node(n.borderTop), i = e.node(n.borderBottom), a = e.node(n.borderLeft[n.borderLeft.length - 1]), o = e.node(n.borderRight[n.borderRight.length - 1]);
@@ -2018,7 +1994,7 @@ function Hn(e) {
2018
1994
  e.node(t).dummy === "border" && e.removeNode(t);
2019
1995
  });
2020
1996
  }
2021
- function Un(e) {
1997
+ function In(e) {
2022
1998
  e.edges().forEach((t) => {
2023
1999
  if (t.v === t.w) {
2024
2000
  let n = e.node(t.v);
@@ -2029,13 +2005,13 @@ function Un(e) {
2029
2005
  }
2030
2006
  });
2031
2007
  }
2032
- function Wn(e) {
2033
- k(e).forEach((t) => {
2008
+ function Ln(e) {
2009
+ D(e).forEach((t) => {
2034
2010
  let n = 0;
2035
2011
  t.forEach((t, r) => {
2036
2012
  let i = e.node(t);
2037
2013
  typeof i.rank != "number" && (i.rank = 0), i.order = r + n, (i.selfEdges || []).forEach((t) => {
2038
- O(e, "selfedge", {
2014
+ T(e, "selfedge", {
2039
2015
  width: t.label.width,
2040
2016
  height: t.label.height,
2041
2017
  rank: i.rank,
@@ -2076,7 +2052,7 @@ function Wn(e) {
2076
2052
  });
2077
2053
  });
2078
2054
  }
2079
- function Gn(e) {
2055
+ function Rn(e) {
2080
2056
  e.nodes().forEach((t) => {
2081
2057
  let n = e.node(t), r = (e) => typeof e == "number" && isFinite(e);
2082
2058
  if (n.dummy === "selfedge") {
@@ -2149,7 +2125,7 @@ function Gn(e) {
2149
2125
  });
2150
2126
  }
2151
2127
  function Q(e, t) {
2152
- return I(F(e, t), Number);
2128
+ return N(M(e, t), Number);
2153
2129
  }
2154
2130
  function $(e) {
2155
2131
  let t = {};
@@ -2159,21 +2135,25 @@ function $(e) {
2159
2135
  }
2160
2136
  //#endregion
2161
2137
  //#region src/erdDiagram.ts
2162
- var Kn = 160, qn = 50, Jn = 8, Yn = 24, Xn = {
2138
+ var zn = 160, Bn = 50, Vn = 8, Hn = 24, Un = 6, Wn = {
2163
2139
  child: {
2164
2140
  fill: "#dae8fc",
2165
2141
  stroke: "#6c8ebf"
2166
2142
  },
2143
+ optional: {
2144
+ fill: "#f5f5f5",
2145
+ stroke: "#999999"
2146
+ },
2167
2147
  primary: {
2168
2148
  fill: "#d5e8d4",
2169
2149
  stroke: "#82b366"
2170
2150
  }
2171
- }, Zn = "dpuse-tool-d3-erd-arrow";
2172
- function Qn(t, n, r = {}) {
2173
- let i = r.nodeWidth ?? Kn, a = r.nodeHeight ?? qn, c = r.padding ?? Jn, l = r.selfEdgeSize ?? Yn, u = r.nodeColors ?? Xn, d = r.orderConstraints ?? [];
2174
- function p() {
2151
+ }, Gn = "dpuse-tool-d3-erd-arrow";
2152
+ function Kn(t, n, r = {}) {
2153
+ let i = r.nodeWidth ?? zn, o = r.nodeHeight ?? Bn, s = r.padding ?? Vn, c = r.selfEdgeSize ?? Hn, l = r.cornerRadius ?? Un, u = r.nodeColors ?? Wn, d = r.orderConstraints ?? [];
2154
+ function f() {
2175
2155
  e(n).selectAll("svg").remove();
2176
- let r = new f.Graph();
2156
+ let r = new a.Graph();
2177
2157
  r.setGraph({
2178
2158
  rankdir: "TB",
2179
2159
  nodesep: 40,
@@ -2181,52 +2161,51 @@ function Qn(t, n, r = {}) {
2181
2161
  }), r.setDefaultEdgeLabel(() => ({}));
2182
2162
  for (let e of t.nodes) r.setNode(e.id, {
2183
2163
  width: i,
2184
- height: a,
2164
+ height: o,
2185
2165
  label: e.label,
2186
2166
  typeId: e.typeId
2187
2167
  });
2188
- for (let e of t.edges) e.source === e.target ? r.setEdge(e.source, e.target, {
2189
- width: l,
2190
- height: l
2191
- }) : r.setEdge(e.source, e.target);
2192
- bn(r, { constraints: d });
2193
- let { width: p = 0, height: m = 0 } = r.graph(), h = p + c * 2, g = m + c * 2, _ = e(n).append("svg").attr("viewBox", `0 0 ${String(h)} ${String(g)}`).attr("width", h).attr("height", g), v = _.append("g").attr("transform", `translate(${String(c)}, ${String(c)})`);
2194
- _.append("defs").append("marker").attr("id", Zn).attr("viewBox", "0 0 10 10").attr("refX", 9).attr("refY", 5).attr("markerWidth", 6).attr("markerHeight", 6).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("fill", "#6c8ebf");
2195
- let ee = s().x((e) => e.x).y((e) => e.y).curve(o);
2196
- v.append("g").attr("fill", "none").attr("stroke", "#6c8ebf").attr("stroke-width", 1.5).selectAll("path").data(r.edges()).join("path").attr("marker-end", `url(#${Zn})`).attr("d", (e) => e.v === e.w ? er(r.node(e.v), l) : ee($n(r.node(e.v), r.node(e.w))) ?? "");
2197
- let y = v.append("g").selectAll("g").data(r.nodes()).join("g").attr("transform", (e) => {
2168
+ for (let e of t.edges) e.source !== e.target && r.setEdge(e.source, e.target);
2169
+ pn(r, { constraints: d });
2170
+ let { width: f = 0, height: p = 0 } = r.graph(), m = f + s * 2, h = p + s * 2, g = e(n).append("svg").attr("viewBox", `0 0 ${String(m)} ${String(h)}`).attr("width", m).attr("height", h), _ = g.append("g").attr("transform", `translate(${String(s)}, ${String(s)})`);
2171
+ g.append("defs").append("marker").attr("id", Gn).attr("viewBox", "0 0 10 10").attr("refX", 9).attr("refY", 5).attr("markerWidth", 6).attr("markerHeight", 6).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("fill", "#6c8ebf"), _.append("g").attr("fill", "none").attr("stroke", "#6c8ebf").attr("stroke-width", 1.5).selectAll("path").data(t.edges).join("path").attr("marker-end", `url(#${Gn})`).attr("d", (e) => e.source === e.target ? Jn(r.node(e.source), c) : qn(r.node(e.source), r.node(e.target), l));
2172
+ let v = _.append("g").selectAll("g").data(r.nodes()).join("g").attr("transform", (e) => {
2198
2173
  let t = r.node(e);
2199
2174
  return `translate(${String((t.x ?? 0) - t.width / 2)}, ${String((t.y ?? 0) - t.height / 2)})`;
2200
2175
  });
2201
- y.append("rect").attr("width", (e) => r.node(e).width).attr("height", (e) => r.node(e).height).attr("rx", 6).attr("fill", (e) => u[r.node(e).typeId].fill).attr("stroke", (e) => u[r.node(e).typeId].stroke), y.append("text").attr("x", (e) => r.node(e).width / 2).attr("y", (e) => r.node(e).height / 2).attr("text-anchor", "middle").attr("dominant-baseline", "middle").attr("font-family", "Helvetica, Arial, sans-serif").attr("font-size", 14).attr("fill", "#000000").text((e) => r.node(e).label ?? "");
2202
- let b = _.node();
2203
- if (b == null) throw Error("Failed to create ERD diagram SVG element.");
2204
- return b;
2176
+ v.append("rect").attr("width", (e) => r.node(e).width).attr("height", (e) => r.node(e).height).attr("rx", l).attr("fill", (e) => u[r.node(e).typeId].fill).attr("stroke", (e) => u[r.node(e).typeId].stroke), v.append("text").attr("x", (e) => r.node(e).width / 2).attr("y", (e) => r.node(e).height / 2).attr("text-anchor", "middle").attr("dominant-baseline", "middle").attr("font-family", "Helvetica, Arial, sans-serif").attr("font-size", 14).attr("fill", "#000000").text((e) => r.node(e).label ?? "");
2177
+ let y = g.node();
2178
+ if (y == null) throw Error("Failed to create ERD diagram SVG element.");
2179
+ return y;
2205
2180
  }
2206
- let m = p();
2181
+ let p = f();
2207
2182
  return {
2208
2183
  resize: () => {
2209
- m = p();
2184
+ p = f();
2210
2185
  },
2211
2186
  get svg() {
2212
- return m;
2187
+ return p;
2213
2188
  }
2214
2189
  };
2215
2190
  }
2216
- function $n(e, t) {
2217
- return [{
2218
- x: e.x ?? 0,
2219
- y: (e.y ?? 0) + e.height / 2
2220
- }, {
2221
- x: t.x ?? 0,
2222
- y: (t.y ?? 0) - t.height / 2
2223
- }];
2224
- }
2225
- function er(e, t) {
2191
+ function qn(e, t, n) {
2192
+ let r = e.x ?? 0, i = (e.y ?? 0) + e.height / 2, a = t.x ?? 0, o = (t.y ?? 0) - t.height / 2;
2193
+ if (r === a) return `M ${String(r)} ${String(i)} L ${String(a)} ${String(o)}`;
2194
+ let s = (i + o) / 2, c = Math.sign(a - r), l = Math.max(0, Math.min(n, s - i, o - s, Math.abs(a - r) / 2));
2195
+ return [
2196
+ `M ${String(r)} ${String(i)}`,
2197
+ `L ${String(r)} ${String(s - l)}`,
2198
+ `Q ${String(r)} ${String(s)} ${String(r + c * l)} ${String(s)}`,
2199
+ `L ${String(a - c * l)} ${String(s)}`,
2200
+ `Q ${String(a)} ${String(s)} ${String(a)} ${String(s + l)}`,
2201
+ `L ${String(a)} ${String(o)}`
2202
+ ].join(" ");
2203
+ }
2204
+ function Jn(e, t) {
2226
2205
  let n = (e.x ?? 0) + e.width / 2, r = n + t, i = (e.y ?? 0) - e.height / 4, a = (e.y ?? 0) + e.height / 4;
2227
2206
  return `M ${String(n)} ${String(i)} C ${String(r)} ${String(i)}, ${String(r)} ${String(a)}, ${String(n)} ${String(a)}`;
2228
2207
  }
2229
2208
  //#endregion
2230
- export { Qn as renderErdDiagram };
2209
+ export { Kn as renderErdDiagram };
2231
2210
 
2232
- //# sourceMappingURL=erdDiagram-BWtgbL8q.js.map
2211
+ //# sourceMappingURL=erdDiagram-BDV0xo6a.js.map