@notmrabhi/flowforge 0.1.13 → 0.1.14

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.
@@ -10,10 +10,10 @@ import { BiCollapse as tn, BiExpand as rn } from "react-icons/bi";
10
10
  import { b as nn } from "./index-CxVqPygT.js";
11
11
  import { m as on } from "./messages-CO299wPN.js";
12
12
  import { T as sn, E as J } from "./canvasTokens-CAD6G24b.js";
13
- var $t = Object.defineProperty, ln = (e, t, r) => t in e ? $t(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, dn = (e, t) => {
13
+ var $t = Object.defineProperty, ln = (e, t, r) => t in e ? $t(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, an = (e, t) => {
14
14
  for (var r in t) $t(e, r, { get: t[r], enumerable: !0 });
15
- }, an = (e, t, r) => ln(e, t + "", r), Yt = {};
16
- dn(Yt, { Graph: () => G, alg: () => Ve, json: () => Ut, version: () => fn });
15
+ }, dn = (e, t, r) => ln(e, t + "", r), Yt = {};
16
+ an(Yt, { Graph: () => G, alg: () => Ve, json: () => Ut, version: () => fn });
17
17
  var cn = Object.defineProperty, Kt = (e, t) => {
18
18
  for (var r in t) cn(e, r, { get: t[r], enumerable: !0 });
19
19
  }, G = class {
@@ -147,14 +147,14 @@ var cn = Object.defineProperty, Kt = (e, t) => {
147
147
  return e.reduce((r, n) => (t !== void 0 ? this.setEdge(r, n, t) : this.setEdge(r, n), n)), this;
148
148
  }
149
149
  setEdge(e, t, r, n) {
150
- let o, i, s, l, a = !1;
151
- typeof e == "object" && e !== null && "v" in e ? (o = e.v, i = e.w, s = e.name, arguments.length === 2 && (l = t, a = !0)) : (o = e, i = t, s = n, arguments.length > 2 && (l = r, a = !0)), o = "" + o, i = "" + i, s !== void 0 && (s = "" + s);
152
- let d = ge(this._isDirected, o, i, s);
153
- if (d in this._edgeLabels) return a && (this._edgeLabels[d] = l), this;
150
+ let o, i, s, l, d = !1;
151
+ typeof e == "object" && e !== null && "v" in e ? (o = e.v, i = e.w, s = e.name, arguments.length === 2 && (l = t, d = !0)) : (o = e, i = t, s = n, arguments.length > 2 && (l = r, d = !0)), o = "" + o, i = "" + i, s !== void 0 && (s = "" + s);
152
+ let a = ge(this._isDirected, o, i, s);
153
+ if (a in this._edgeLabels) return d && (this._edgeLabels[a] = l), this;
154
154
  if (s !== void 0 && !this._isMultigraph) throw new Error("Cannot set a named edge when isMultigraph = false");
155
- this.setNode(o), this.setNode(i), this._edgeLabels[d] = a ? l : this._defaultEdgeLabelFn(o, i, s);
155
+ this.setNode(o), this.setNode(i), this._edgeLabels[a] = d ? l : this._defaultEdgeLabelFn(o, i, s);
156
156
  let c = un(this._isDirected, o, i, s);
157
- return o = c.v, i = c.w, Object.freeze(c), this._edgeObjs[d] = c, wt(this._preds[i], o), wt(this._sucs[o], i), this._in[i][d] = c, this._out[o][d] = c, this._edgeCount++, this;
157
+ return o = c.v, i = c.w, Object.freeze(c), this._edgeObjs[a] = c, wt(this._preds[i], o), wt(this._sucs[o], i), this._in[i][a] = c, this._out[o][a] = c, this._edgeCount++, this;
158
158
  }
159
159
  edge(e, t, r) {
160
160
  let n = arguments.length === 1 ? Fe(this._isDirected, e) : ge(this._isDirected, e, t, r);
@@ -254,14 +254,14 @@ function Vt(e, t, r, n) {
254
254
  });
255
255
  }
256
256
  function mn(e, t, r, n) {
257
- let o = {}, i, s = 0, l = e.nodes(), a = function(u) {
257
+ let o = {}, i, s = 0, l = e.nodes(), d = function(u) {
258
258
  let h = r(u);
259
259
  o[u.v].distance + h < o[u.w].distance && (o[u.w] = { distance: o[u.v].distance + h, predecessor: u.v }, i = !0);
260
- }, d = function() {
260
+ }, a = function() {
261
261
  l.forEach(function(u) {
262
262
  n(u).forEach(function(h) {
263
263
  let g = h.v === u ? h.v : h.w, b = g === h.v ? h.w : h.v;
264
- a({ v: g, w: b });
264
+ d({ v: g, w: b });
265
265
  });
266
266
  });
267
267
  };
@@ -270,8 +270,8 @@ function mn(e, t, r, n) {
270
270
  o[u] = { distance: h, predecessor: "" };
271
271
  });
272
272
  let c = l.length;
273
- for (let u = 1; u < c && (i = !1, s++, d(), !!i); u++) ;
274
- if (s === c - 1 && (i = !1, d(), i)) throw new Error("The graph contains a negative weight cycle");
273
+ for (let u = 1; u < c && (i = !1, s++, a(), !!i); u++) ;
274
+ if (s === c - 1 && (i = !1, a(), i)) throw new Error("The graph contains a negative weight cycle");
275
275
  return o;
276
276
  }
277
277
  function wn(e) {
@@ -344,15 +344,15 @@ function xe(e, t, r, n) {
344
344
  return En(e, String(t), r || vn, n || o);
345
345
  }
346
346
  function En(e, t, r, n) {
347
- let o = {}, i = new Ht(), s, l, a = function(d) {
348
- let c = d.v !== s ? d.v : d.w, u = o[c], h = r(d), g = l.distance + h;
349
- if (h < 0) throw new Error("dijkstra does not allow negative edge weights. Bad edge: " + d + " Weight: " + h);
347
+ let o = {}, i = new Ht(), s, l, d = function(a) {
348
+ let c = a.v !== s ? a.v : a.w, u = o[c], h = r(a), g = l.distance + h;
349
+ if (h < 0) throw new Error("dijkstra does not allow negative edge weights. Bad edge: " + a + " Weight: " + h);
350
350
  g < u.distance && (u.distance = g, u.predecessor = s, i.decrease(c, g));
351
351
  };
352
- for (e.nodes().forEach(function(d) {
353
- let c = d === t ? 0 : Number.POSITIVE_INFINITY;
354
- o[d] = { distance: c, predecessor: "" }, i.add(d, c);
355
- }); i.size() > 0 && (s = i.removeMin(), l = o[s], l.distance !== Number.POSITIVE_INFINITY); ) n(s).forEach(a);
352
+ for (e.nodes().forEach(function(a) {
353
+ let c = a === t ? 0 : Number.POSITIVE_INFINITY;
354
+ o[a] = { distance: c, predecessor: "" }, i.add(a, c);
355
+ }); i.size() > 0 && (s = i.removeMin(), l = o[s], l.distance !== Number.POSITIVE_INFINITY); ) n(s).forEach(d);
356
356
  return o;
357
357
  }
358
358
  function kn(e, t, r) {
@@ -364,14 +364,14 @@ function qt(e) {
364
364
  let t = 0, r = [], n = {}, o = [];
365
365
  function i(s) {
366
366
  let l = n[s] = { onStack: !0, lowlink: t, index: t++ };
367
- if (r.push(s), e.successors(s).forEach(function(a) {
368
- a in n ? n[a].onStack && (l.lowlink = Math.min(l.lowlink, n[a].index)) : (i(a), l.lowlink = Math.min(l.lowlink, n[a].lowlink));
367
+ if (r.push(s), e.successors(s).forEach(function(d) {
368
+ d in n ? n[d].onStack && (l.lowlink = Math.min(l.lowlink, n[d].index)) : (i(d), l.lowlink = Math.min(l.lowlink, n[d].lowlink));
369
369
  }), l.lowlink === l.index) {
370
- let a = [], d;
370
+ let d = [], a;
371
371
  do
372
- d = r.pop(), n[d].onStack = !1, a.push(d);
373
- while (s !== d);
374
- o.push(a);
372
+ a = r.pop(), n[a].onStack = !1, d.push(a);
373
+ while (s !== a);
374
+ o.push(d);
375
375
  }
376
376
  }
377
377
  return e.nodes().forEach(function(s) {
@@ -395,15 +395,15 @@ function Nn(e, t, r) {
395
395
  n[i] = {}, n[i][i] = { distance: 0, predecessor: "" }, o.forEach(function(s) {
396
396
  i !== s && (n[i][s] = { distance: Number.POSITIVE_INFINITY, predecessor: "" });
397
397
  }), r(i).forEach(function(s) {
398
- let l = s.v === i ? s.w : s.v, a = t(s);
399
- n[i][l] = { distance: a, predecessor: i };
398
+ let l = s.v === i ? s.w : s.v, d = t(s);
399
+ n[i][l] = { distance: d, predecessor: i };
400
400
  });
401
401
  }), o.forEach(function(i) {
402
402
  let s = n[i];
403
403
  o.forEach(function(l) {
404
- let a = n[l];
405
- o.forEach(function(d) {
406
- let c = a[i], u = s[d], h = a[d], g = c.distance + u.distance;
404
+ let d = n[l];
405
+ o.forEach(function(a) {
406
+ let c = d[i], u = s[a], h = d[a], g = c.distance + u.distance;
407
407
  g < h.distance && (h.distance = g, h.predecessor = u.predecessor);
408
408
  });
409
409
  });
@@ -435,8 +435,8 @@ function Cn(e) {
435
435
  function Sn(e, t, r, n, o) {
436
436
  Array.isArray(t) || (t = [t]);
437
437
  let i = (l) => {
438
- var a;
439
- return (a = e.isDirected() ? e.successors(l) : e.neighbors(l)) != null ? a : [];
438
+ var d;
439
+ return (d = e.isDirected() ? e.successors(l) : e.neighbors(l)) != null ? d : [];
440
440
  }, s = {};
441
441
  return t.forEach(function(l) {
442
442
  if (!e.hasNode(l)) throw new Error("Graph does not have node: " + l);
@@ -461,16 +461,16 @@ function On(e, t) {
461
461
  }
462
462
  function Mn(e, t) {
463
463
  let r = new G(), n = {}, o = new Ht(), i;
464
- function s(a) {
465
- let d = a.v === i ? a.w : a.v, c = o.priority(d);
464
+ function s(d) {
465
+ let a = d.v === i ? d.w : d.v, c = o.priority(a);
466
466
  if (c !== void 0) {
467
- let u = t(a);
468
- u < c && (n[d] = i, o.decrease(d, u));
467
+ let u = t(d);
468
+ u < c && (n[a] = i, o.decrease(a, u));
469
469
  }
470
470
  }
471
471
  if (e.nodeCount() === 0) return r;
472
- e.nodes().forEach(function(a) {
473
- o.add(a, Number.POSITIVE_INFINITY), r.setNode(a);
472
+ e.nodes().forEach(function(d) {
473
+ o.add(d, Number.POSITIVE_INFINITY), r.setNode(d);
474
474
  }), o.decrease(e.nodes()[0], 0);
475
475
  let l = !1;
476
476
  for (; o.size() > 0; ) {
@@ -494,8 +494,8 @@ function Fn(e, t, r, n) {
494
494
  let o = !1, i = e.nodes();
495
495
  for (let s = 0; s < i.length; s++) {
496
496
  let l = n(i[s]);
497
- for (let a = 0; a < l.length; a++) {
498
- let d = l[a], c = d.v === i[s] ? d.v : d.w, u = c === d.v ? d.w : d.v;
497
+ for (let d = 0; d < l.length; d++) {
498
+ let a = l[d], c = a.v === i[s] ? a.v : a.w, u = c === a.v ? a.w : a.v;
499
499
  r({ v: c, w: u }) < 0 && (o = !0);
500
500
  }
501
501
  if (o) return Vt(e, t, r, n);
@@ -525,8 +525,8 @@ function Qt(e) {
525
525
  function Et(e, t) {
526
526
  let r = e.x, n = e.y, o = t.x - r, i = t.y - n, s = e.width / 2, l = e.height / 2;
527
527
  if (!o && !i) throw new Error("Not possible to find intersection inside of the rectangle");
528
- let a, d;
529
- return Math.abs(i) * s > Math.abs(o) * l ? (i < 0 && (l = -l), a = l * o / i, d = l) : (o < 0 && (s = -s), a = s, d = s * i / o), { x: r + a, y: n + d };
528
+ let d, a;
529
+ return Math.abs(i) * s > Math.abs(o) * l ? (i < 0 && (l = -l), d = l * o / i, a = l) : (o < 0 && (s = -s), d = s, a = s * i / o), { x: r + d, y: n + a };
530
530
  }
531
531
  function ye(e) {
532
532
  let t = pe(tr(e) + 1).map(() => []);
@@ -553,7 +553,7 @@ function Dn(e) {
553
553
  });
554
554
  let o = 0, i = e.graph().nodeRankFactor;
555
555
  Array.from(n).forEach((s, l) => {
556
- s === void 0 && l % i !== 0 ? --o : s !== void 0 && o && s.forEach((a) => e.node(a).rank += o);
556
+ s === void 0 && l % i !== 0 ? --o : s !== void 0 && o && s.forEach((d) => e.node(d).rank += o);
557
557
  });
558
558
  }
559
559
  function kt(e, t, r, n) {
@@ -626,7 +626,7 @@ function Bn(e, t) {
626
626
  }
627
627
  var Ce = "\0", Wn = "3.0.0", Gn = class {
628
628
  constructor() {
629
- an(this, "_sentinel");
629
+ dn(this, "_sentinel");
630
630
  let e = {};
631
631
  e._next = e._prev = e, this._sentinel = e;
632
632
  }
@@ -663,7 +663,7 @@ function Vn(e, t, r) {
663
663
  for (; l = s.dequeue(); ) ze(e, t, r, l);
664
664
  for (; l = i.dequeue(); ) ze(e, t, r, l);
665
665
  if (e.nodeCount()) {
666
- for (let a = t.length - 2; a > 0; --a) if (l = (n = t[a]) == null ? void 0 : n.dequeue(), l) {
666
+ for (let d = t.length - 2; d > 0; --d) if (l = (n = t[d]) == null ? void 0 : n.dequeue(), l) {
667
667
  o = o.concat(ze(e, t, r, l, !0) || []);
668
668
  break;
669
669
  }
@@ -674,11 +674,11 @@ function Vn(e, t, r) {
674
674
  function ze(e, t, r, n, o) {
675
675
  let i = [], s = o ? i : void 0;
676
676
  return (e.inEdges(n.v) || []).forEach((l) => {
677
- let a = e.edge(l), d = e.node(l.v);
678
- o && i.push({ v: l.v, w: l.w }), d.out -= a, Ge(t, r, d);
677
+ let d = e.edge(l), a = e.node(l.v);
678
+ o && i.push({ v: l.v, w: l.w }), a.out -= d, Ge(t, r, a);
679
679
  }), (e.outEdges(n.v) || []).forEach((l) => {
680
- let a = e.edge(l), d = l.w, c = e.node(d);
681
- c.in -= a, Ge(t, r, c);
680
+ let d = e.edge(l), a = l.w, c = e.node(a);
681
+ c.in -= d, Ge(t, r, c);
682
682
  }), e.removeNode(n.v), s;
683
683
  }
684
684
  function Hn(e, t) {
@@ -686,10 +686,10 @@ function Hn(e, t) {
686
686
  e.nodes().forEach((l) => {
687
687
  r.setNode(l, { v: l, in: 0, out: 0 });
688
688
  }), e.edges().forEach((l) => {
689
- let a = r.edge(l.v, l.w) || 0, d = t(l), c = a + d;
689
+ let d = r.edge(l.v, l.w) || 0, a = t(l), c = d + a;
690
690
  r.setEdge(l.v, l.w, c);
691
691
  let u = r.node(l.v), h = r.node(l.w);
692
- o = Math.max(o, u.out += d), n = Math.max(n, h.in += d);
692
+ o = Math.max(o, u.out += a), n = Math.max(n, h.in += a);
693
693
  });
694
694
  let i = qn(o + n + 3).map(() => new Yn()), s = n + 1;
695
695
  return r.nodes().forEach((l) => {
@@ -737,11 +737,11 @@ function Qn(e) {
737
737
  e.graph().dummyChains = [], e.edges().forEach((t) => eo(e, t));
738
738
  }
739
739
  function eo(e, t) {
740
- let r = t.v, n = e.node(r).rank, o = t.w, i = e.node(o).rank, s = t.name, l = e.edge(t), a = l.labelRank;
740
+ let r = t.v, n = e.node(r).rank, o = t.w, i = e.node(o).rank, s = t.name, l = e.edge(t), d = l.labelRank;
741
741
  if (i === n + 1) return;
742
742
  e.removeEdge(t);
743
- let d, c, u;
744
- for (u = 0, ++n; n < i; ++u, ++n) l.points = [], c = { width: 0, height: 0, edgeLabel: l, edgeObj: t, rank: n }, d = fe(e, "edge", c, "_d"), n === a && (c.width = l.width, c.height = l.height, c.dummy = "edge-label", c.labelpos = l.labelpos), e.setEdge(r, d, { weight: l.weight }, s), u === 0 && e.graph().dummyChains.push(d), r = d;
743
+ let a, c, u;
744
+ for (u = 0, ++n; n < i; ++u, ++n) l.points = [], c = { width: 0, height: 0, edgeLabel: l, edgeObj: t, rank: n }, a = fe(e, "edge", c, "_d"), n === d && (c.width = l.width, c.height = l.height, c.dummy = "edge-label", c.labelpos = l.labelpos), e.setEdge(r, a, { weight: l.weight }, s), u === 0 && e.graph().dummyChains.push(a), r = a;
745
745
  e.setEdge(r, o, { weight: l.weight }, s);
746
746
  }
747
747
  function to(e) {
@@ -756,7 +756,7 @@ function qe(e) {
756
756
  let o = e.node(n);
757
757
  if (Object.hasOwn(t, n)) return o.rank;
758
758
  t[n] = !0;
759
- let i = e.outEdges(n), s = i ? i.map((a) => a == null ? Number.POSITIVE_INFINITY : r(a.w) - e.edge(a).minlen) : [], l = K(Math.min, s);
759
+ let i = e.outEdges(n), s = i ? i.map((d) => d == null ? Number.POSITIVE_INFINITY : r(d.w) - e.edge(d).minlen) : [], l = K(Math.min, s);
760
760
  return l === Number.POSITIVE_INFINITY && (l = 0), o.rank = l;
761
761
  }
762
762
  e.sources().forEach(r);
@@ -798,14 +798,14 @@ se.initLowLimValues = Je;
798
798
  se.initCutValues = Xe;
799
799
  se.calcCutValue = ir;
800
800
  se.leaveEdge = lr;
801
- se.enterEdge = dr;
802
- se.exchangeEdges = ar;
801
+ se.enterEdge = ar;
802
+ se.exchangeEdges = dr;
803
803
  function se(e) {
804
804
  e = zn(e), qe(e);
805
805
  let t = or(e);
806
806
  Je(t), Xe(t, e);
807
807
  let r, n;
808
- for (; r = lr(t); ) n = dr(t, e, r), ar(t, e, r, n);
808
+ for (; r = lr(t); ) n = ar(t, e, r), dr(t, e, r, n);
809
809
  }
810
810
  function Xe(e, t) {
811
811
  let r = lo(e, e.nodes());
@@ -819,10 +819,10 @@ function ir(e, t, r) {
819
819
  let n = e.node(r).parent, o = !0, i = t.edge(r, n), s = 0;
820
820
  i || (o = !1, i = t.edge(n, r)), s = i.weight;
821
821
  let l = t.nodeEdges(r);
822
- return l && l.forEach((a) => {
823
- let d = a.v === r, c = d ? a.w : a.v;
822
+ return l && l.forEach((d) => {
823
+ let a = d.v === r, c = a ? d.w : d.v;
824
824
  if (c !== n) {
825
- let u = d === o, h = t.edge(a).weight;
825
+ let u = a === o, h = t.edge(d).weight;
826
826
  if (s += u ? h : -h, fo(e, r, c)) {
827
827
  let g = e.edge(r, c).cutvalue;
828
828
  s += u ? -g : g;
@@ -837,20 +837,20 @@ function sr(e, t, r, n, o) {
837
837
  let i = r, s = e.node(n);
838
838
  t[n] = !0;
839
839
  let l = e.neighbors(n);
840
- return l && l.forEach((a) => {
841
- Object.hasOwn(t, a) || (r = sr(e, t, r, a, n));
840
+ return l && l.forEach((d) => {
841
+ Object.hasOwn(t, d) || (r = sr(e, t, r, d, n));
842
842
  }), s.low = i, s.lim = r++, o ? s.parent = o : delete s.parent, r;
843
843
  }
844
844
  function lr(e) {
845
845
  return e.edges().find((t) => e.edge(t).cutvalue < 0);
846
846
  }
847
- function dr(e, t, r) {
847
+ function ar(e, t, r) {
848
848
  let n = r.v, o = r.w;
849
849
  t.hasEdge(n, o) || (n = r.w, o = r.v);
850
- let i = e.node(n), s = e.node(o), l = i, a = !1;
851
- return i.lim > s.lim && (l = s, a = !0), t.edges().filter((d) => a === _t(e, e.node(d.v), l) && a !== _t(e, e.node(d.w), l)).reduce((d, c) => ue(t, c) < ue(t, d) ? c : d);
850
+ let i = e.node(n), s = e.node(o), l = i, d = !1;
851
+ return i.lim > s.lim && (l = s, d = !0), t.edges().filter((a) => d === _t(e, e.node(a.v), l) && d !== _t(e, e.node(a.w), l)).reduce((a, c) => ue(t, c) < ue(t, a) ? c : a);
852
852
  }
853
- function ar(e, t, r, n) {
853
+ function dr(e, t, r, n) {
854
854
  let o = r.v, i = r.w;
855
855
  e.removeEdge(o, i), e.setEdge(n.v, n.w, {}), Je(e), Xe(e, t), uo(e, t);
856
856
  }
@@ -900,29 +900,29 @@ var yo = mo;
900
900
  function mo(e) {
901
901
  let t = vo(e);
902
902
  e.graph().dummyChains.forEach((r) => {
903
- let n = e.node(r), o = n.edgeObj, i = wo(e, t, o.v, o.w), s = i.path, l = i.lca, a = 0, d = s[a], c = !0;
903
+ let n = e.node(r), o = n.edgeObj, i = wo(e, t, o.v, o.w), s = i.path, l = i.lca, d = 0, a = s[d], c = !0;
904
904
  for (; r !== o.w; ) {
905
905
  if (n = e.node(r), c) {
906
- for (; (d = s[a]) !== l && e.node(d).maxRank < n.rank; ) a++;
907
- d === l && (c = !1);
906
+ for (; (a = s[d]) !== l && e.node(a).maxRank < n.rank; ) d++;
907
+ a === l && (c = !1);
908
908
  }
909
909
  if (!c) {
910
- for (; a < s.length - 1 && e.node(s[a + 1]).minRank <= n.rank; ) a++;
911
- d = s[a];
910
+ for (; d < s.length - 1 && e.node(s[d + 1]).minRank <= n.rank; ) d++;
911
+ a = s[d];
912
912
  }
913
- d !== void 0 && e.setParent(r, d), r = e.successors(r)[0];
913
+ a !== void 0 && e.setParent(r, a), r = e.successors(r)[0];
914
914
  }
915
915
  });
916
916
  }
917
917
  function wo(e, t, r, n) {
918
- let o = [], i = [], s = Math.min(t[r].low, t[n].low), l = Math.max(t[r].lim, t[n].lim), a;
919
- a = r;
918
+ let o = [], i = [], s = Math.min(t[r].low, t[n].low), l = Math.max(t[r].lim, t[n].lim), d;
919
+ d = r;
920
920
  do
921
- a = e.parent(a), o.push(a);
922
- while (a && (t[a].low > s || l > t[a].lim));
923
- let d = a, c = n;
924
- for (; (c = e.parent(c)) !== d; ) i.push(c);
925
- return { path: o.concat(i.reverse()), lca: d };
921
+ d = e.parent(d), o.push(d);
922
+ while (d && (t[d].low > s || l > t[d].lim));
923
+ let a = d, c = n;
924
+ for (; (c = e.parent(c)) !== a; ) i.push(c);
925
+ return { path: o.concat(i.reverse()), lca: a };
926
926
  }
927
927
  function vo(e) {
928
928
  let t = {}, r = 0;
@@ -940,18 +940,18 @@ function Eo(e) {
940
940
  }
941
941
  function cr(e, t, r, n, o, i, s) {
942
942
  var l;
943
- let a = e.children(s);
944
- if (!a.length) {
943
+ let d = e.children(s);
944
+ if (!d.length) {
945
945
  s !== t && e.setEdge(t, s, { weight: 0, minlen: r });
946
946
  return;
947
947
  }
948
- let d = kt(e, "_bt"), c = kt(e, "_bb"), u = e.node(s);
949
- e.setParent(d, s), u.borderTop = d, e.setParent(c, s), u.borderBottom = c, a.forEach((h) => {
948
+ let a = kt(e, "_bt"), c = kt(e, "_bb"), u = e.node(s);
949
+ e.setParent(a, s), u.borderTop = a, e.setParent(c, s), u.borderBottom = c, d.forEach((h) => {
950
950
  var g;
951
951
  cr(e, t, r, n, o, i, h);
952
952
  let b = e.node(h), y = b.borderTop ? b.borderTop : h, p = b.borderBottom ? b.borderBottom : h, v = b.borderTop ? n : 2 * n, N = y !== p ? 1 : o - ((g = i[s]) != null ? g : 0) + 1;
953
- e.setEdge(d, y, { weight: v, minlen: N, nestingEdge: !0 }), e.setEdge(p, c, { weight: v, minlen: N, nestingEdge: !0 });
954
- }), e.parent(s) || e.setEdge(t, d, { weight: 0, minlen: o + ((l = i[s]) != null ? l : 0) });
953
+ e.setEdge(a, y, { weight: v, minlen: N, nestingEdge: !0 }), e.setEdge(p, c, { weight: v, minlen: N, nestingEdge: !0 });
954
+ }), e.parent(s) || e.setEdge(t, a, { weight: 0, minlen: o + ((l = i[s]) != null ? l : 0) });
955
955
  }
956
956
  function ko(e) {
957
957
  let t = {};
@@ -982,8 +982,8 @@ function No(e) {
982
982
  e.children(Ce).forEach(t);
983
983
  }
984
984
  function Nt(e, t, r, n, o, i) {
985
- let s = { width: 0, height: 0, rank: i, borderType: t }, l = o[t][i - 1], a = fe(e, "border", s, r);
986
- o[t][i] = a, e.setParent(a, n), l && e.setEdge(l, a, { weight: 1 });
985
+ let s = { width: 0, height: 0, rank: i, borderType: t }, l = o[t][i - 1], d = fe(e, "border", s, r);
986
+ o[t][i] = d, e.setParent(d, n), l && e.setEdge(l, d, { weight: 1 });
987
987
  }
988
988
  function Co(e) {
989
989
  var t;
@@ -1028,12 +1028,12 @@ function Mo(e) {
1028
1028
  function s(l) {
1029
1029
  if (t[l]) return;
1030
1030
  t[l] = !0;
1031
- let a = e.node(l);
1032
- i[a.rank].push(l);
1033
- let d = e.successors(l);
1034
- d && d.forEach(s);
1031
+ let d = e.node(l);
1032
+ i[d.rank].push(l);
1033
+ let a = e.successors(l);
1034
+ a && a.forEach(s);
1035
1035
  }
1036
- return r.sort((l, a) => e.node(l).rank - e.node(a).rank).forEach(s), i;
1036
+ return r.sort((l, d) => e.node(l).rank - e.node(d).rank).forEach(s), i;
1037
1037
  }
1038
1038
  function jo(e, t) {
1039
1039
  let r = 0;
@@ -1041,21 +1041,21 @@ function jo(e, t) {
1041
1041
  return r;
1042
1042
  }
1043
1043
  function Fo(e, t, r) {
1044
- let n = Bn(r, r.map((d, c) => c)), o = t.flatMap((d) => {
1045
- let c = e.outEdges(d);
1044
+ let n = Bn(r, r.map((a, c) => c)), o = t.flatMap((a) => {
1045
+ let c = e.outEdges(a);
1046
1046
  return c ? c.map((u) => ({ pos: n[u.w], weight: e.edge(u).weight })).sort((u, h) => u.pos - h.pos) : [];
1047
1047
  }), i = 1;
1048
1048
  for (; i < r.length; ) i <<= 1;
1049
1049
  let s = 2 * i - 1;
1050
1050
  i -= 1;
1051
- let l = new Array(s).fill(0), a = 0;
1052
- return o.forEach((d) => {
1053
- let c = d.pos + i;
1054
- l[c] += d.weight;
1051
+ let l = new Array(s).fill(0), d = 0;
1052
+ return o.forEach((a) => {
1053
+ let c = a.pos + i;
1054
+ l[c] += a.weight;
1055
1055
  let u = 0;
1056
- for (; c > 0; ) c % 2 && (u += l[c + 1]), c = c - 1 >> 1, l[c] += d.weight;
1057
- a += d.weight * u;
1058
- }), a;
1056
+ for (; c > 0; ) c % 2 && (u += l[c + 1]), c = c - 1 >> 1, l[c] += a.weight;
1057
+ d += a.weight * u;
1058
+ }), d;
1059
1059
  }
1060
1060
  function zo(e, t = []) {
1061
1061
  return t.map((r) => {
@@ -1063,8 +1063,8 @@ function zo(e, t = []) {
1063
1063
  if (!n || !n.length) return { v: r };
1064
1064
  {
1065
1065
  let o = n.reduce((i, s) => {
1066
- let l = e.edge(s), a = e.node(s.v);
1067
- return { sum: i.sum + l.weight * a.order, weight: i.weight + l.weight };
1066
+ let l = e.edge(s), d = e.node(s.v);
1067
+ return { sum: i.sum + l.weight * d.order, weight: i.weight + l.weight };
1068
1068
  }, { sum: 0, weight: 0 });
1069
1069
  return { v: r, barycenter: o.sum / o.weight, weight: o.weight };
1070
1070
  }
@@ -1105,12 +1105,12 @@ function Lo(e, t) {
1105
1105
  e.weight && (r += e.barycenter * e.weight, n += e.weight), t.weight && (r += t.barycenter * t.weight, n += t.weight), e.vs = t.vs.concat(e.vs), e.barycenter = r / n, e.weight = n, e.i = Math.min(t.i, e.i), t.merged = !0;
1106
1106
  }
1107
1107
  function Ao(e, t) {
1108
- let r = An(e, (c) => Object.hasOwn(c, "barycenter")), n = r.lhs, o = r.rhs.sort((c, u) => u.i - c.i), i = [], s = 0, l = 0, a = 0;
1109
- n.sort(Po(!!t)), a = St(i, o, a), n.forEach((c) => {
1110
- a += c.vs.length, i.push(c.vs), s += c.barycenter * c.weight, l += c.weight, a = St(i, o, a);
1108
+ let r = An(e, (c) => Object.hasOwn(c, "barycenter")), n = r.lhs, o = r.rhs.sort((c, u) => u.i - c.i), i = [], s = 0, l = 0, d = 0;
1109
+ n.sort(Po(!!t)), d = St(i, o, d), n.forEach((c) => {
1110
+ d += c.vs.length, i.push(c.vs), s += c.barycenter * c.weight, l += c.weight, d = St(i, o, d);
1111
1111
  });
1112
- let d = { vs: i.flat(1) };
1113
- return l && (d.barycenter = s / l, d.weight = l), d;
1112
+ let a = { vs: i.flat(1) };
1113
+ return l && (a.barycenter = s / l, a.weight = l), a;
1114
1114
  }
1115
1115
  function St(e, t, r) {
1116
1116
  let n;
@@ -1121,17 +1121,17 @@ function Po(e) {
1121
1121
  return (t, r) => t.barycenter < r.barycenter ? -1 : t.barycenter > r.barycenter ? 1 : e ? r.i - t.i : t.i - r.i;
1122
1122
  }
1123
1123
  function fr(e, t, r, n) {
1124
- let o = e.children(t), i = e.node(t), s = i ? i.borderLeft : void 0, l = i ? i.borderRight : void 0, a = {};
1124
+ let o = e.children(t), i = e.node(t), s = i ? i.borderLeft : void 0, l = i ? i.borderRight : void 0, d = {};
1125
1125
  s && (o = o.filter((h) => h !== s && h !== l));
1126
- let d = zo(e, o);
1127
- d.forEach((h) => {
1126
+ let a = zo(e, o);
1127
+ a.forEach((h) => {
1128
1128
  if (e.children(h.v).length) {
1129
1129
  let g = fr(e, h.v, r, n);
1130
- a[h.v] = g, Object.hasOwn(g, "barycenter") && Wo(h, g);
1130
+ d[h.v] = g, Object.hasOwn(g, "barycenter") && Wo(h, g);
1131
1131
  }
1132
1132
  });
1133
- let c = Ro(d, r);
1134
- Bo(c, a);
1133
+ let c = Ro(a, r);
1134
+ Bo(c, d);
1135
1135
  let u = Ao(c, n);
1136
1136
  if (s && l) {
1137
1137
  u.vs = [s, u.vs, l].flat(1);
@@ -1155,11 +1155,11 @@ function Go(e, t, r, n) {
1155
1155
  n || (n = e.nodes());
1156
1156
  let o = $o(e), i = new G({ compound: !0 }).setGraph({ root: o }).setDefaultNodeLabel((s) => e.node(s));
1157
1157
  return n.forEach((s) => {
1158
- let l = e.node(s), a = e.parent(s);
1158
+ let l = e.node(s), d = e.parent(s);
1159
1159
  if (l.rank === t || l.minRank <= t && t <= l.maxRank) {
1160
- i.setNode(s), i.setParent(s, a || o);
1161
- let d = e[r](s);
1162
- d && d.forEach((c) => {
1160
+ i.setNode(s), i.setParent(s, d || o);
1161
+ let a = e[r](s);
1162
+ a && a.forEach((c) => {
1163
1163
  let u = c.v === s ? c.w : c.v, h = i.edge(u, s), g = h !== void 0 ? h.weight : 0;
1164
1164
  i.setEdge(u, s, { weight: e.edge(c).weight + g });
1165
1165
  }), Object.hasOwn(l, "minRank") && i.setNode(s, { borderLeft: l.borderLeft[t], borderRight: l.borderRight[t] });
@@ -1174,10 +1174,10 @@ function $o(e) {
1174
1174
  function Yo(e, t, r) {
1175
1175
  let n = {}, o;
1176
1176
  r.forEach((i) => {
1177
- let s = e.parent(i), l, a;
1177
+ let s = e.parent(i), l, d;
1178
1178
  for (; s; ) {
1179
- if (l = e.parent(s), l ? (a = n[l], n[l] = s) : (a = o, o = s), a && a !== s) {
1180
- t.setEdge(a, s);
1179
+ if (l = e.parent(s), l ? (d = n[l], n[l] = s) : (d = o, o = s), d && d !== s) {
1180
+ t.setEdge(d, s);
1181
1181
  return;
1182
1182
  }
1183
1183
  s = l;
@@ -1191,9 +1191,9 @@ function hr(e, t = {}) {
1191
1191
  }
1192
1192
  let r = tr(e), n = It(e, pe(1, r + 1), "inEdges"), o = It(e, pe(r - 1, -1, -1), "outEdges"), i = Mo(e);
1193
1193
  if (Ot(e, i), t.disableOptimalOrderHeuristic) return;
1194
- let s = Number.POSITIVE_INFINITY, l, a = t.constraints || [];
1195
- for (let d = 0, c = 0; c < 4; ++d, ++c) {
1196
- Ko(d % 2 ? n : o, d % 4 >= 2, a), i = ye(e);
1194
+ let s = Number.POSITIVE_INFINITY, l, d = t.constraints || [];
1195
+ for (let a = 0, c = 0; c < 4; ++a, ++c) {
1196
+ Ko(a % 2 ? n : o, a % 4 >= 2, d), i = ye(e);
1197
1197
  let u = jo(e, i);
1198
1198
  u < s ? (c = 0, l = Object.assign({}, i), s = u) : u === s && (l = structuredClone(i));
1199
1199
  }
@@ -1216,7 +1216,7 @@ function Ko(e, t, r) {
1216
1216
  e.forEach(function(o) {
1217
1217
  r.forEach((l) => n.setEdge(l.left, l.right));
1218
1218
  let i = o.graph().root, s = fr(o, i, n, t);
1219
- s.vs.forEach((l, a) => o.node(l).order = a), Yo(o, n, s.vs);
1219
+ s.vs.forEach((l, d) => o.node(l).order = d), Yo(o, n, s.vs);
1220
1220
  });
1221
1221
  }
1222
1222
  function Ot(e, t) {
@@ -1225,10 +1225,10 @@ function Ot(e, t) {
1225
1225
  function Uo(e, t) {
1226
1226
  let r = {};
1227
1227
  function n(o, i) {
1228
- let s = 0, l = 0, a = o.length, d = i[i.length - 1];
1228
+ let s = 0, l = 0, d = o.length, a = i[i.length - 1];
1229
1229
  return i.forEach((c, u) => {
1230
- let h = Ho(e, c), g = h ? e.node(h).order : a;
1231
- (h || c === d) && (i.slice(l, u + 1).forEach((b) => {
1230
+ let h = Ho(e, c), g = h ? e.node(h).order : d;
1231
+ (h || c === a) && (i.slice(l, u + 1).forEach((b) => {
1232
1232
  let y = e.predecessors(b);
1233
1233
  y && y.forEach((p) => {
1234
1234
  let v = e.node(p), N = v.order;
@@ -1241,7 +1241,7 @@ function Uo(e, t) {
1241
1241
  }
1242
1242
  function Vo(e, t) {
1243
1243
  let r = {};
1244
- function n(i, s, l, a, d) {
1244
+ function n(i, s, l, d, a) {
1245
1245
  pe(s, l).forEach((c) => {
1246
1246
  let u = i[c];
1247
1247
  if (u !== void 0 && e.node(u).dummy) {
@@ -1249,23 +1249,23 @@ function Vo(e, t) {
1249
1249
  h && h.forEach((g) => {
1250
1250
  if (g === void 0) return;
1251
1251
  let b = e.node(g);
1252
- b.dummy && (b.order < a || b.order > d) && gr(r, g, u);
1252
+ b.dummy && (b.order < d || b.order > a) && gr(r, g, u);
1253
1253
  });
1254
1254
  }
1255
1255
  });
1256
1256
  }
1257
1257
  function o(i, s) {
1258
- let l = -1, a = -1, d = 0;
1258
+ let l = -1, d = -1, a = 0;
1259
1259
  return s.forEach((c, u) => {
1260
1260
  if (e.node(c).dummy === "border") {
1261
1261
  let h = e.predecessors(c);
1262
1262
  if (h && h.length) {
1263
1263
  let g = h[0];
1264
1264
  if (g === void 0) return;
1265
- a = e.node(g).order, n(s, d, u, l, a), d = u, l = a;
1265
+ d = e.node(g).order, n(s, a, u, l, d), a = u, l = d;
1266
1266
  }
1267
1267
  }
1268
- n(s, d, s.length, a, i.length);
1268
+ n(s, a, s.length, d, i.length);
1269
1269
  }), s;
1270
1270
  }
1271
1271
  return t.length && t.reduce(o), r;
@@ -1295,13 +1295,13 @@ function qo(e, t, r) {
1295
1295
  function Xo(e, t, r, n) {
1296
1296
  let o = {}, i = {}, s = {};
1297
1297
  return t.forEach((l) => {
1298
- l.forEach((a, d) => {
1299
- o[a] = a, i[a] = a, s[a] = d;
1298
+ l.forEach((d, a) => {
1299
+ o[d] = d, i[d] = d, s[d] = a;
1300
1300
  });
1301
1301
  }), t.forEach((l) => {
1302
- let a = -1;
1303
- l.forEach((d) => {
1304
- let c = n(d);
1302
+ let d = -1;
1303
+ l.forEach((a) => {
1304
+ let c = n(a);
1305
1305
  if (c && c.length) {
1306
1306
  let u = c.sort((g, b) => {
1307
1307
  let y = s[g], p = s[b];
@@ -1311,9 +1311,9 @@ function Xo(e, t, r, n) {
1311
1311
  let y = u[g];
1312
1312
  if (y === void 0) continue;
1313
1313
  let p = s[y];
1314
- if (p !== void 0 && i[d] === d && a < p && !qo(r, d, y)) {
1314
+ if (p !== void 0 && i[a] === a && d < p && !qo(r, a, y)) {
1315
1315
  let v = o[y];
1316
- v !== void 0 && (i[y] = d, i[d] = o[d] = v, a = p);
1316
+ v !== void 0 && (i[y] = a, i[a] = o[a] = v, d = p);
1317
1317
  }
1318
1318
  }
1319
1319
  }
@@ -1322,7 +1322,7 @@ function Xo(e, t, r, n) {
1322
1322
  }
1323
1323
  function Jo(e, t, r, n, o = !1) {
1324
1324
  let i = {}, s = Zo(e, t, r, o), l = o ? "borderLeft" : "borderRight";
1325
- function a(g, b) {
1325
+ function d(g, b) {
1326
1326
  let y = s.nodes().slice(), p = {}, v = y.pop();
1327
1327
  for (; v; ) {
1328
1328
  if (p[v]) g(v);
@@ -1333,7 +1333,7 @@ function Jo(e, t, r, n, o = !1) {
1333
1333
  v = y.pop();
1334
1334
  }
1335
1335
  }
1336
- function d(g) {
1336
+ function a(g) {
1337
1337
  let b = s.inEdges(g);
1338
1338
  b ? i[g] = b.reduce((y, p) => {
1339
1339
  var v;
@@ -1356,7 +1356,7 @@ function Jo(e, t, r, n, o = !1) {
1356
1356
  function h(g) {
1357
1357
  return s.successors(g) || [];
1358
1358
  }
1359
- return a(d, u), a(c, h), Object.keys(n).forEach((g) => {
1359
+ return d(a, u), d(c, h), Object.keys(n).forEach((g) => {
1360
1360
  var b;
1361
1361
  let y = r[g];
1362
1362
  y !== void 0 && (i[g] = (b = i[y]) != null ? b : 0);
@@ -1365,18 +1365,18 @@ function Jo(e, t, r, n, o = !1) {
1365
1365
  function Zo(e, t, r, n) {
1366
1366
  let o = new G(), i = e.graph(), s = ni(i.nodesep, i.edgesep, n);
1367
1367
  return t.forEach((l) => {
1368
- let a;
1369
- l.forEach((d) => {
1370
- let c = r[d];
1368
+ let d;
1369
+ l.forEach((a) => {
1370
+ let c = r[a];
1371
1371
  if (c !== void 0) {
1372
- if (o.setNode(c), a !== void 0) {
1373
- let u = r[a];
1372
+ if (o.setNode(c), d !== void 0) {
1373
+ let u = r[d];
1374
1374
  if (u !== void 0) {
1375
1375
  let h = o.edge(u, c);
1376
- o.setEdge(u, c, Math.max(s(e, d, a), h || 0));
1376
+ o.setEdge(u, c, Math.max(s(e, a, d), h || 0));
1377
1377
  }
1378
1378
  }
1379
- a = d;
1379
+ d = a;
1380
1380
  }
1381
1381
  });
1382
1382
  }), o;
@@ -1384,9 +1384,9 @@ function Zo(e, t, r, n) {
1384
1384
  function Qo(e, t) {
1385
1385
  return Object.values(t).reduce((r, n) => {
1386
1386
  let o = Number.NEGATIVE_INFINITY, i = Number.POSITIVE_INFINITY;
1387
- Object.entries(n).forEach(([l, a]) => {
1388
- let d = oi(e, l) / 2;
1389
- o = Math.max(a + d, o), i = Math.min(a - d, i);
1387
+ Object.entries(n).forEach(([l, d]) => {
1388
+ let a = oi(e, l) / 2;
1389
+ o = Math.max(d + a, o), i = Math.min(d - a, i);
1390
1390
  });
1391
1391
  let s = o - i;
1392
1392
  return s < r[0] && (r = [s, n]), r;
@@ -1396,10 +1396,10 @@ function ei(e, t) {
1396
1396
  let r = Object.values(t), n = K(Math.min, r), o = K(Math.max, r);
1397
1397
  ["u", "d"].forEach((i) => {
1398
1398
  ["l", "r"].forEach((s) => {
1399
- let l = i + s, a = e[l];
1400
- if (!a || a === t) return;
1401
- let d = Object.values(a), c = n - K(Math.min, d);
1402
- s !== "l" && (c = o - K(Math.max, d)), c && (e[l] = Ne(a, (u) => u + c));
1399
+ let l = i + s, d = e[l];
1400
+ if (!d || d === t) return;
1401
+ let a = Object.values(d), c = n - K(Math.min, a);
1402
+ s !== "l" && (c = o - K(Math.max, a)), c && (e[l] = Ne(d, (u) => u + c));
1403
1403
  });
1404
1404
  });
1405
1405
  }
@@ -1408,13 +1408,13 @@ function ti(e, t = void 0) {
1408
1408
  return r ? Ne(r, (n, o) => {
1409
1409
  var i, s;
1410
1410
  if (t) {
1411
- let a = t.toLowerCase(), d = e[a];
1412
- if (d && d[o] !== void 0) return d[o];
1411
+ let d = t.toLowerCase(), a = e[d];
1412
+ if (a && a[o] !== void 0) return a[o];
1413
1413
  }
1414
- let l = Object.values(e).map((a) => {
1415
- let d = a[o];
1416
- return d !== void 0 ? d : 0;
1417
- }).sort((a, d) => a - d);
1414
+ let l = Object.values(e).map((d) => {
1415
+ let a = d[o];
1416
+ return a !== void 0 ? a : 0;
1417
+ }).sort((d, a) => d - a);
1418
1418
  return (((i = l[1]) != null ? i : 0) + ((s = l[2]) != null ? s : 0)) / 2;
1419
1419
  }) : {};
1420
1420
  }
@@ -1423,8 +1423,8 @@ function ri(e) {
1423
1423
  ["u", "d"].forEach((s) => {
1424
1424
  o = s === "u" ? t : Object.values(t).reverse(), ["l", "r"].forEach((l) => {
1425
1425
  l === "r" && (o = o.map((c) => Object.values(c).reverse()));
1426
- let a = Xo(e, o, r, (c) => (s === "u" ? e.predecessors(c) : e.successors(c)) || []), d = Jo(e, o, a.root, a.align, l === "r");
1427
- l === "r" && (d = Ne(d, (c) => -c)), n[s + l] = d;
1426
+ let d = Xo(e, o, r, (c) => (s === "u" ? e.predecessors(c) : e.successors(c)) || []), a = Jo(e, o, d.root, d.align, l === "r");
1427
+ l === "r" && (a = Ne(a, (c) => -c)), n[s + l] = a;
1428
1428
  });
1429
1429
  });
1430
1430
  let i = Qo(e, n);
@@ -1432,24 +1432,24 @@ function ri(e) {
1432
1432
  }
1433
1433
  function ni(e, t, r) {
1434
1434
  return (n, o, i) => {
1435
- let s = n.node(o), l = n.node(i), a = 0, d;
1436
- if (a += s.width / 2, Object.hasOwn(s, "labelpos")) switch (s.labelpos.toLowerCase()) {
1435
+ let s = n.node(o), l = n.node(i), d = 0, a;
1436
+ if (d += s.width / 2, Object.hasOwn(s, "labelpos")) switch (s.labelpos.toLowerCase()) {
1437
1437
  case "l":
1438
- d = -s.width / 2;
1438
+ a = -s.width / 2;
1439
1439
  break;
1440
1440
  case "r":
1441
- d = s.width / 2;
1441
+ a = s.width / 2;
1442
1442
  break;
1443
1443
  }
1444
- if (d && (a += r ? d : -d), d = void 0, a += (s.dummy ? t : e) / 2, a += (l.dummy ? t : e) / 2, a += l.width / 2, Object.hasOwn(l, "labelpos")) switch (l.labelpos.toLowerCase()) {
1444
+ if (a && (d += r ? a : -a), a = void 0, d += (s.dummy ? t : e) / 2, d += (l.dummy ? t : e) / 2, d += l.width / 2, Object.hasOwn(l, "labelpos")) switch (l.labelpos.toLowerCase()) {
1445
1445
  case "l":
1446
- d = l.width / 2;
1446
+ a = l.width / 2;
1447
1447
  break;
1448
1448
  case "r":
1449
- d = -l.width / 2;
1449
+ a = -l.width / 2;
1450
1450
  break;
1451
1451
  }
1452
- return d && (a += r ? d : -d), a;
1452
+ return a && (d += r ? a : -a), d;
1453
1453
  };
1454
1454
  }
1455
1455
  function oi(e, t) {
@@ -1461,14 +1461,14 @@ function ii(e) {
1461
1461
  function si(e) {
1462
1462
  let t = ye(e), r = e.graph(), n = r.ranksep, o = r.rankalign, i = 0;
1463
1463
  t.forEach((s) => {
1464
- let l = s.reduce((a, d) => {
1464
+ let l = s.reduce((d, a) => {
1465
1465
  var c;
1466
- let u = (c = e.node(d).height) != null ? c : 0;
1467
- return a > u ? a : u;
1466
+ let u = (c = e.node(a).height) != null ? c : 0;
1467
+ return d > u ? d : u;
1468
1468
  }, 0);
1469
- s.forEach((a) => {
1470
- let d = e.node(a);
1471
- o === "top" ? d.y = i + d.height / 2 : o === "bottom" ? d.y = i + l - d.height / 2 : d.y = i + l / 2;
1469
+ s.forEach((d) => {
1470
+ let a = e.node(d);
1471
+ o === "top" ? a.y = i + a.height / 2 : o === "bottom" ? a.y = i + l - a.height / 2 : a.y = i + l / 2;
1472
1472
  }), i += l + n;
1473
1473
  });
1474
1474
  }
@@ -1476,13 +1476,13 @@ function li(e, t = {}) {
1476
1476
  let r = t.debugTiming ? rr : nr;
1477
1477
  return r("layout", () => {
1478
1478
  let n = r(" buildLayoutGraph", () => yi(e));
1479
- return r(" runLayout", () => di(n, r, t)), r(" updateInputGraph", () => ai(e, n)), n;
1479
+ return r(" runLayout", () => ai(n, r, t)), r(" updateInputGraph", () => di(e, n)), n;
1480
1480
  });
1481
1481
  }
1482
- function di(e, t, r) {
1482
+ function ai(e, t, r) {
1483
1483
  t(" makeSpaceForEdgeLabels", () => mi(e)), t(" removeSelfEdges", () => Ci(e)), t(" acyclic", () => Xn(e)), t(" nestingGraph.run", () => Eo(e)), t(" rank", () => ho(Qt(e))), t(" injectEdgeLabelProxies", () => wi(e)), t(" removeEmptyRanks", () => Dn(e)), t(" nestingGraph.cleanup", () => _o(e)), t(" normalizeRanks", () => Rn(e)), t(" assignRankMinMax", () => vi(e)), t(" removeEdgeLabelProxies", () => Ei(e)), t(" normalize.run", () => Qn(e)), t(" parentDummyChains", () => yo(e)), t(" addBorderSegments", () => To(e)), t(" order", () => hr(e, r)), t(" insertSelfEdges", () => Si(e)), t(" adjustCoordinateSystem", () => Co(e)), t(" position", () => ii(e)), t(" positionSelfEdges", () => Ii(e)), t(" removeBorderNodes", () => Ni(e)), t(" normalize.undo", () => to(e)), t(" fixupEdgeLabelCoords", () => _i(e)), t(" undoCoordinateSystem", () => So(e)), t(" translateGraph", () => ki(e)), t(" assignNodeIntersects", () => xi(e)), t(" reversePoints", () => Ti(e)), t(" acyclic.undo", () => Zn(e));
1484
1484
  }
1485
- function ai(e, t) {
1485
+ function di(e, t) {
1486
1486
  e.nodes().forEach((r) => {
1487
1487
  let n = e.node(r), o = t.node(r);
1488
1488
  n && (n.x = o.x, n.y = o.y, n.order = o.order, n.rank = o.rank, t.children(r).length && (n.width = o.width, n.height = o.height));
@@ -1540,18 +1540,18 @@ function Ei(e) {
1540
1540
  }
1541
1541
  function ki(e) {
1542
1542
  let t = Number.POSITIVE_INFINITY, r = 0, n = Number.POSITIVE_INFINITY, o = 0, i = e.graph(), s = i.marginx || 0, l = i.marginy || 0;
1543
- function a(d) {
1544
- let c = d.x, u = d.y, h = d.width, g = d.height;
1543
+ function d(a) {
1544
+ let c = a.x, u = a.y, h = a.width, g = a.height;
1545
1545
  t = Math.min(t, c - h / 2), r = Math.max(r, c + h / 2), n = Math.min(n, u - g / 2), o = Math.max(o, u + g / 2);
1546
1546
  }
1547
- e.nodes().forEach((d) => a(e.node(d))), e.edges().forEach((d) => {
1548
- let c = e.edge(d);
1549
- Object.hasOwn(c, "x") && a(c);
1550
- }), t -= s, n -= l, e.nodes().forEach((d) => {
1551
- let c = e.node(d);
1547
+ e.nodes().forEach((a) => d(e.node(a))), e.edges().forEach((a) => {
1548
+ let c = e.edge(a);
1549
+ Object.hasOwn(c, "x") && d(c);
1550
+ }), t -= s, n -= l, e.nodes().forEach((a) => {
1551
+ let c = e.node(a);
1552
1552
  c.x -= t, c.y -= n;
1553
- }), e.edges().forEach((d) => {
1554
- let c = e.edge(d);
1553
+ }), e.edges().forEach((a) => {
1554
+ let c = e.edge(a);
1555
1555
  c.points.forEach((u) => {
1556
1556
  u.x -= t, u.y -= n;
1557
1557
  }), Object.hasOwn(c, "x") && (c.x -= t), Object.hasOwn(c, "y") && (c.y -= n);
@@ -1615,8 +1615,8 @@ function Ii(e) {
1615
1615
  e.nodes().forEach((t) => {
1616
1616
  let r = e.node(t);
1617
1617
  if (r.dummy === "selfedge") {
1618
- let n = r, o = e.node(n.e.v), i = o.x + o.width / 2, s = o.y, l = r.x - i, a = o.height / 2;
1619
- e.setEdge(n.e, n.label), e.removeNode(t), n.label.points = [{ x: i + 2 * l / 3, y: s - a }, { x: i + 5 * l / 6, y: s - a }, { x: i + l, y: s }, { x: i + 5 * l / 6, y: s + a }, { x: i + 2 * l / 3, y: s + a }], n.label.x = r.x, n.label.y = r.y;
1618
+ let n = r, o = e.node(n.e.v), i = o.x + o.width / 2, s = o.y, l = r.x - i, d = o.height / 2;
1619
+ e.setEdge(n.e, n.label), e.removeNode(t), n.label.points = [{ x: i + 2 * l / 3, y: s - d }, { x: i + 5 * l / 6, y: s - d }, { x: i + l, y: s }, { x: i + 5 * l / 6, y: s + d }, { x: i + 2 * l / 3, y: s + d }], n.label.x = r.x, n.label.y = r.y;
1620
1620
  }
1621
1621
  });
1622
1622
  }
@@ -1651,16 +1651,16 @@ const ji = (e) => {
1651
1651
  if (!r || r === n.current) return;
1652
1652
  const i = {};
1653
1653
  for (const s of r.split(",")) {
1654
- const [l, a] = s.split(":"), d = Number(a);
1655
- l && d > 0 && (i[l] = d);
1654
+ const [l, d] = s.split(":"), a = Number(d);
1655
+ l && a > 0 && (i[l] = a);
1656
1656
  }
1657
1657
  Object.keys(i).length !== 0 && (n.current = r, e(i));
1658
1658
  }, [r]), null;
1659
1659
  }, Se = ({ isOpen: e, onClose: t, title: r, icon: n, children: o, footer: i, width: s = 600 }) => {
1660
- const [l, a] = j(!1), d = () => a((h) => !h), c = () => /* @__PURE__ */ w(te, { sx: { display: "flex", alignItems: "center", p: 2, pt: 3, borderBottom: "1px solid #e0e0e0", mb: 0, flexShrink: 0 }, children: [
1660
+ const [l, d] = j(!1), a = () => d((h) => !h), c = () => /* @__PURE__ */ w(te, { sx: { display: "flex", alignItems: "center", p: 2, pt: 3, borderBottom: "1px solid #e0e0e0", mb: 0, flexShrink: 0 }, children: [
1661
1661
  n && /* @__PURE__ */ f(te, { sx: { mr: 1.5, display: "flex", alignItems: "center", fontSize: "1.25rem", color: "#1DBF60" }, children: n }),
1662
1662
  /* @__PURE__ */ f("span", { style: { flexGrow: 1, fontSize: 14, fontWeight: 500, color: "#212121" }, children: r }),
1663
- /* @__PURE__ */ f(bt, { onClick: d, size: "small", sx: { mr: 1 }, title: l ? "Collapse" : "Expand", "data-testid": "expand-collapse-base-drawer-btn", children: l ? /* @__PURE__ */ f(tn, {}) : /* @__PURE__ */ f(rn, {}) }),
1663
+ /* @__PURE__ */ f(bt, { onClick: a, size: "small", sx: { mr: 1 }, title: l ? "Collapse" : "Expand", "data-testid": "expand-collapse-base-drawer-btn", children: l ? /* @__PURE__ */ f(tn, {}) : /* @__PURE__ */ f(rn, {}) }),
1664
1664
  /* @__PURE__ */ f(bt, { onClick: t, size: "small", "data-testid": "close-drawer-button", children: /* @__PURE__ */ f(Pr, {}) })
1665
1665
  ] }), u = () => i ? /* @__PURE__ */ f(te, { sx: { flexShrink: 0, p: 2, borderTop: "1px solid #e0e0e0", display: "flex", justifyContent: "flex-end", gap: 2 }, children: i }) : null;
1666
1666
  return l ? /* @__PURE__ */ w(Lr, { open: e, onClose: t, maxWidth: !1, fullWidth: !0, PaperProps: { sx: { display: "flex", flexDirection: "column", height: "80vh", boxShadow: 24, width: "750px", maxWidth: "100%" } }, children: [
@@ -1749,20 +1749,20 @@ const ji = (e) => {
1749
1749
  } else
1750
1750
  h.push(g);
1751
1751
  return { apps: [...u.values()], ungrouped: h };
1752
- }, [t]), [l, a] = j(null), d = l ? i.find((u) => u.key === l) ?? null : null;
1752
+ }, [t]), [l, d] = j(null), a = l ? i.find((u) => u.key === l) ?? null : null;
1753
1753
  ie(() => {
1754
- e || a(null);
1754
+ e || d(null);
1755
1755
  }, [e]), ie(() => {
1756
- a(null);
1756
+ d(null);
1757
1757
  }, [t]);
1758
- const c = !d;
1758
+ const c = !a;
1759
1759
  return /* @__PURE__ */ f(
1760
1760
  Se,
1761
1761
  {
1762
1762
  isOpen: e,
1763
1763
  onClose: o,
1764
- title: c ? r.addStepTitle : d.label,
1765
- icon: c ? /* @__PURE__ */ f($r, {}) : d.icon ?? /* @__PURE__ */ f(Yr, {}),
1764
+ title: c ? r.addStepTitle : a.label,
1765
+ icon: c ? /* @__PURE__ */ f($r, {}) : a.icon ?? /* @__PURE__ */ f(Yr, {}),
1766
1766
  width: 500,
1767
1767
  children: /* @__PURE__ */ w(te, { sx: { p: 2 }, children: [
1768
1768
  !c && /* @__PURE__ */ w(
@@ -1770,9 +1770,9 @@ const ji = (e) => {
1770
1770
  {
1771
1771
  role: "button",
1772
1772
  tabIndex: 0,
1773
- onClick: () => a(null),
1773
+ onClick: () => d(null),
1774
1774
  onKeyDown: (u) => {
1775
- u.key === "Enter" && a(null);
1775
+ u.key === "Enter" && d(null);
1776
1776
  },
1777
1777
  className: "ff-d-flex ff-align-items-center ff-gap-1 ff-mb-3",
1778
1778
  style: { cursor: "pointer", color: "#0066cc", fontSize: 13, fontWeight: 500, width: "fit-content" },
@@ -1782,18 +1782,18 @@ const ji = (e) => {
1782
1782
  ]
1783
1783
  }
1784
1784
  ),
1785
- /* @__PURE__ */ f("p", { className: "ff-text-muted ff-mb-3", style: { fontSize: 13 }, children: c ? r.chooseAction : `Pick an action from ${d.label}` }),
1785
+ /* @__PURE__ */ f("p", { className: "ff-text-muted ff-mb-3", style: { fontSize: 13 }, children: c ? r.chooseAction : `Pick an action from ${a.label}` }),
1786
1786
  /* @__PURE__ */ f("div", { className: "ff-d-flex ff-flex-column ff-gap-2", children: c ? /* @__PURE__ */ w(Lt, { children: [
1787
1787
  i.map((u) => /* @__PURE__ */ w(
1788
1788
  "div",
1789
1789
  {
1790
1790
  className: Be,
1791
1791
  style: Pe,
1792
- onClick: () => a(u.key),
1792
+ onClick: () => d(u.key),
1793
1793
  role: "button",
1794
1794
  tabIndex: 0,
1795
1795
  onKeyDown: (h) => {
1796
- h.key === "Enter" && a(u.key);
1796
+ h.key === "Enter" && d(u.key);
1797
1797
  },
1798
1798
  onMouseEnter: (h) => {
1799
1799
  h.currentTarget.style.background = "#f5f5f5";
@@ -1839,7 +1839,7 @@ const ji = (e) => {
1839
1839
  i.length === 0 && s.length === 0 && /* @__PURE__ */ f("p", { className: "ff-text-muted ff-text-center", style: { fontSize: 13 }, children: r.noActions })
1840
1840
  ] }) : (
1841
1841
  /* Stage 2 — actions for the selected app */
1842
- d.descriptors.map((u) => /* @__PURE__ */ w(
1842
+ a.descriptors.map((u) => /* @__PURE__ */ w(
1843
1843
  "div",
1844
1844
  {
1845
1845
  className: Be,
@@ -1868,25 +1868,25 @@ const ji = (e) => {
1868
1868
  }
1869
1869
  );
1870
1870
  }, Ft = "_conditionConfig", Di = ({ open: e, nodeId: t, descriptor: r, initialValues: n, messages: o, onSave: i, onClose: s }) => {
1871
- const [l, a] = j([]), [d, c] = j(!1), [u, h] = j(null), [g, b] = j({});
1871
+ const [l, d] = j([]), [a, c] = j(!1), [u, h] = j(null), [g, b] = j({});
1872
1872
  ie(() => {
1873
1873
  b((n == null ? void 0 : n[Ft]) ?? {});
1874
1874
  }, [n, t]), ie(() => {
1875
1875
  let N = !1;
1876
1876
  if (h(null), !r || !t) {
1877
- a([]), c(!1);
1877
+ d([]), c(!1);
1878
1878
  return;
1879
1879
  }
1880
1880
  const O = r.formSchema;
1881
1881
  return typeof O == "function" ? (c(!0), O(t).then((M) => {
1882
- N || (a(M), c(!1));
1882
+ N || (d(M), c(!1));
1883
1883
  }).catch((M) => {
1884
- N || (a([]), h(M instanceof Error ? M.message : "Unable to load configuration."), c(!1));
1885
- })) : (a(O), c(!1)), () => {
1884
+ N || (d([]), h(M instanceof Error ? M.message : "Unable to load configuration."), c(!1));
1885
+ })) : (d(O), c(!1)), () => {
1886
1886
  N = !0;
1887
1887
  };
1888
1888
  }, [r, t]);
1889
- const y = t ? `node-config-form-${t}` : "node-config-form", p = !d && !u && l.length > 0, v = p ? /* @__PURE__ */ w(Lt, { children: [
1889
+ const y = t ? `node-config-form-${t}` : "node-config-form", p = !a && !u && l.length > 0, v = p ? /* @__PURE__ */ w(Lt, { children: [
1890
1890
  /* @__PURE__ */ f(yt, { type: "button", variant: "outlined", size: "small", onClick: s, children: o.cancel }),
1891
1891
  /* @__PURE__ */ f(yt, { type: "submit", form: y, variant: "contained", size: "small", children: o.save })
1892
1892
  ] }) : null;
@@ -1900,9 +1900,9 @@ const ji = (e) => {
1900
1900
  width: 500,
1901
1901
  footer: v,
1902
1902
  children: /* @__PURE__ */ w(te, { sx: { p: 2 }, children: [
1903
- d && /* @__PURE__ */ f("p", { className: "ff-text-muted", style: { fontSize: 13 }, children: o.loadingConfiguration }),
1904
- !d && u && /* @__PURE__ */ f("p", { style: { fontSize: 13, color: "#d32f2f" }, children: u }),
1905
- !d && !u && l.length === 0 && /* @__PURE__ */ f("p", { className: "ff-text-muted", style: { fontSize: 13 }, children: o.noConfigurationNeeded }),
1903
+ a && /* @__PURE__ */ f("p", { className: "ff-text-muted", style: { fontSize: 13 }, children: o.loadingConfiguration }),
1904
+ !a && u && /* @__PURE__ */ f("p", { style: { fontSize: 13, color: "#d32f2f" }, children: u }),
1905
+ !a && !u && l.length === 0 && /* @__PURE__ */ f("p", { className: "ff-text-muted", style: { fontSize: 13 }, children: o.noConfigurationNeeded }),
1906
1906
  p && /* @__PURE__ */ f(
1907
1907
  nn,
1908
1908
  {
@@ -2007,28 +2007,28 @@ function Bi(e, t, r, n = "TB") {
2007
2007
  const s = r[i.id] ?? { width: be, height: Ke[i.type ?? ""] ?? 80 };
2008
2008
  o.setNode(i.id, { width: s.width, height: s.height });
2009
2009
  }), t.forEach((i) => o.setEdge(i.source, i.target)), jt.layout(o), e.map((i) => {
2010
- var d, c;
2011
- const s = o.node(i.id), l = ((d = r[i.id]) == null ? void 0 : d.width) ?? be, a = ((c = r[i.id]) == null ? void 0 : c.height) ?? Ke[i.type ?? ""] ?? 80;
2012
- return { ...i, position: { x: s.x - l / 2, y: s.y - a / 2 } };
2010
+ var a, c;
2011
+ const s = o.node(i.id), l = ((a = r[i.id]) == null ? void 0 : a.width) ?? be, d = ((c = r[i.id]) == null ? void 0 : c.height) ?? Ke[i.type ?? ""] ?? 80;
2012
+ return { ...i, position: { x: s.x - l / 2, y: s.y - d / 2 } };
2013
2013
  });
2014
2014
  }
2015
2015
  const oe = (e) => e === "filter" || e === "approval";
2016
2016
  function Wi(e, t, r, n) {
2017
- const s = $e, l = 30, a = 30, d = {}, c = {}, u = /* @__PURE__ */ new Map();
2017
+ const s = $e, l = 30, d = 30, a = {}, c = {}, u = /* @__PURE__ */ new Map();
2018
2018
  for (const p of e) u.set(p.id, p);
2019
2019
  for (const p of Object.values(t))
2020
2020
  for (const v of Object.values(p))
2021
2021
  for (const N of v) u.set(N.id, N);
2022
2022
  const h = (p, v, N) => {
2023
2023
  const O = n[p] ?? { width: be, height: 80 };
2024
- return d[p] = { x: v - O.width / 2, y: N }, N + O.height;
2024
+ return a[p] = { x: v - O.width / 2, y: N }, N + O.height;
2025
2025
  }, g = (p, v, N) => {
2026
2026
  let O = N;
2027
2027
  for (const M of p)
2028
2028
  O = h(M.id, v, O) + s, oe(M.kind) && t[M.id] && (O = b(M.id, v, O));
2029
2029
  return O;
2030
2030
  }, b = (p, v, N) => {
2031
- const O = v + 180, M = t[p], F = Object.keys(M), B = u.get(p), re = (B == null ? void 0 : B.branchLabels) ?? { pass: "Pass", fail: "Fail" }, he = d[p], z = n[p] ?? { height: 80 }, me = he.y + z.height, we = [];
2031
+ const O = v + 180, M = t[p], F = Object.keys(M), B = u.get(p), re = (B == null ? void 0 : B.branchLabels) ?? { pass: "Pass", fail: "Fail" }, he = a[p], z = n[p] ?? { height: 80 }, me = he.y + z.height, we = [];
2032
2032
  let U = N;
2033
2033
  return F.forEach((le, Z) => {
2034
2034
  const R = M[le], V = U;
@@ -2036,7 +2036,7 @@ function Wi(e, t, r, n) {
2036
2036
  y: V - me,
2037
2037
  label: re[le] ?? le,
2038
2038
  isPass: Z === 0
2039
- }), U = g(R, O, U + a), Z < F.length - 1 && (U += l);
2039
+ }), U = g(R, O, U + d), Z < F.length - 1 && (U += l);
2040
2040
  }), c[p] = {
2041
2041
  branches: we,
2042
2042
  height: U - me,
@@ -2047,7 +2047,7 @@ function Wi(e, t, r, n) {
2047
2047
  for (const p of e)
2048
2048
  y = h(p.id, 400, y) + s, oe(p.kind) && t[p.id] && (y = b(p.id, 400, y));
2049
2049
  return {
2050
- nodes: r.map((p) => d[p.id] ? { ...p, position: d[p.id] } : p),
2050
+ nodes: r.map((p) => a[p.id] ? { ...p, position: a[p.id] } : p),
2051
2051
  railSpecs: c
2052
2052
  };
2053
2053
  }
@@ -2076,12 +2076,12 @@ function Gi(e, t, r, n, o) {
2076
2076
  };
2077
2077
  }
2078
2078
  function $i(e, t, r, n, o = {}, i = "TB", s = "horizontal") {
2079
- const l = o.edgeColor ?? "#b0bec5", a = [], d = [], c = (b, y) => {
2079
+ const l = o.edgeColor ?? "#b0bec5", d = [], a = [], c = (b, y) => {
2080
2080
  const p = t[b];
2081
2081
  if (!p) return;
2082
2082
  const N = y ?? { pass: "Pass", fail: "Fail" }, O = Object.keys(p), M = (F, B, re, he) => {
2083
2083
  if (F.length !== 0) {
2084
- F.forEach((z) => a.push(Rt(z))), d.push({
2084
+ F.forEach((z) => d.push(Rt(z))), a.push({
2085
2085
  id: `e-${b}-${B}-start`,
2086
2086
  source: b,
2087
2087
  target: F[0].id,
@@ -2090,7 +2090,7 @@ function $i(e, t, r, n, o = {}, i = "TB", s = "horizontal") {
2090
2090
  data: { branch: B, filterId: b, label: re, isFirst: he === 0, onAddStepClick: r, verticalRouting: s === "vertical" }
2091
2091
  });
2092
2092
  for (let z = 1; z < F.length; z++)
2093
- oe(F[z - 1].kind) || d.push(Gi(F[z - 1], F[z], l, r, { filterId: b, branch: B }));
2093
+ oe(F[z - 1].kind) || a.push(Gi(F[z - 1], F[z], l, r, { filterId: b, branch: B }));
2094
2094
  for (const z of F)
2095
2095
  oe(z.kind) && t[z.id] && c(z.id, z.branchLabels);
2096
2096
  }
@@ -2101,10 +2101,10 @@ function $i(e, t, r, n, o = {}, i = "TB", s = "horizontal") {
2101
2101
  };
2102
2102
  for (let b = 0; b < e.length; b++) {
2103
2103
  const y = e[b];
2104
- if (a.push(Rt(y)), b > 0) {
2104
+ if (d.push(Rt(y)), b > 0) {
2105
2105
  const p = e[b - 1], v = p.kind === "start" || p.kind === "addTrigger";
2106
2106
  if (p.kind === "filter" || p.kind === "approval") continue;
2107
- d.push({
2107
+ a.push({
2108
2108
  id: `e-${p.id}-${y.id}`,
2109
2109
  source: p.id,
2110
2110
  target: y.id,
@@ -2119,7 +2119,7 @@ function $i(e, t, r, n, o = {}, i = "TB", s = "horizontal") {
2119
2119
  (y.kind === "filter" || y.kind === "approval") && t[y.id] && c(y.id, y.branchLabels);
2120
2120
  }
2121
2121
  const u = {};
2122
- if (a.forEach((b) => {
2122
+ if (d.forEach((b) => {
2123
2123
  u[b.id] = {
2124
2124
  width: be,
2125
2125
  height: n[b.id] ?? Ke[b.type ?? ""] ?? 80
@@ -2127,25 +2127,25 @@ function $i(e, t, r, n, o = {}, i = "TB", s = "horizontal") {
2127
2127
  }), !(Object.keys(t).length > 0)) {
2128
2128
  if (i === "LR") {
2129
2129
  let N = Ye;
2130
- return { nodes: a.map((M) => {
2130
+ return { nodes: d.map((M) => {
2131
2131
  const F = u[M.id].width, B = u[M.id].height, re = { ...M, position: { x: N, y: 300 - B / 2 } };
2132
2132
  return N += F + $e, re;
2133
- }), edges: d };
2133
+ }), edges: a };
2134
2134
  }
2135
2135
  const b = 400;
2136
2136
  let y = Ye;
2137
- return { nodes: a.map((v) => {
2137
+ return { nodes: d.map((v) => {
2138
2138
  const N = u[v.id].height, O = { ...v, position: { x: b - be / 2, y } };
2139
2139
  return y += N + $e, O;
2140
- }), edges: d };
2140
+ }), edges: a };
2141
2141
  }
2142
2142
  if (s === "vertical") {
2143
- const { nodes: b, railSpecs: y } = Wi(e, t, a, u);
2143
+ const { nodes: b, railSpecs: y } = Wi(e, t, d, u);
2144
2144
  return { nodes: b.map(
2145
2145
  (v) => y[v.id] ? { ...v, data: { ...v.data, _branchRail: y[v.id] } } : v
2146
- ), edges: d };
2146
+ ), edges: a };
2147
2147
  }
2148
- return { nodes: Bi(a, d, u, i), edges: d };
2148
+ return { nodes: Bi(d, a, u, i), edges: a };
2149
2149
  }
2150
2150
  const Dt = ({
2151
2151
  nodeRegistry: e,
@@ -2156,8 +2156,8 @@ const Dt = ({
2156
2156
  onSave: i,
2157
2157
  readOnly: s = !1,
2158
2158
  theme: l = {},
2159
- messages: a,
2160
- canvasOptions: d = {},
2159
+ messages: d,
2160
+ canvasOptions: a = {},
2161
2161
  renderTriggerSelector: c,
2162
2162
  renderNodePicker: u,
2163
2163
  renderNodeConfig: h,
@@ -2180,7 +2180,7 @@ const Dt = ({
2180
2180
  snapGrid: we = [15, 15],
2181
2181
  branchLayout: U = "horizontal",
2182
2182
  nodeBody: le = "full"
2183
- } = d, Z = W(() => on(a), [a]), [R, V] = j(() => (r == null ? void 0 : r.slots) ?? zt()), [H, q] = j(() => (r == null ? void 0 : r.branches) ?? {}), [de, $] = j(null), [Ie, Ze] = j(null), [ae, ve] = j(null), [Oe, Qe] = j(null), [Ee, et] = j(null), [Q, tt] = j(() => {
2183
+ } = a, Z = W(() => on(d), [d]), [R, V] = j(() => (r == null ? void 0 : r.slots) ?? zt()), [H, q] = j(() => (r == null ? void 0 : r.branches) ?? {}), [ae, $] = j(null), [Ie, Ze] = j(null), [de, ve] = j(null), [Oe, Qe] = j(null), [Ee, et] = j(null), [Q, tt] = j(() => {
2184
2184
  const m = r == null ? void 0 : r.slots.find((k) => k.kind === "triggerFixed"), E = m != null && m.id.startsWith("trigger-") ? m.id.slice(8) : void 0;
2185
2185
  return E ? t.lookup(E) ?? null : null;
2186
2186
  }), [rt, br] = j({}), yr = Y((m) => {
@@ -2255,11 +2255,11 @@ const Dt = ({
2255
2255
  },
2256
2256
  { id: "end", kind: "end", reactFlowType: "endNode" }
2257
2257
  ]);
2258
- }, []), dt = Y(() => {
2258
+ }, []), at = Y(() => {
2259
2259
  const m = e.list();
2260
2260
  return (Q != null && Q.availableTasks ? m.filter((k) => Q.availableTasks.includes(k.type)) : m).filter((k) => k.maxPerWorkflow === void 0 ? !0 : R.filter((x) => x.descriptorType === k.type).length + Object.values(H).flatMap((x) => Object.values(x).flat()).filter((x) => x.descriptorType === k.type).length < k.maxPerWorkflow);
2261
- }, [e, Q, R, H]), at = Y((m) => {
2262
- if (!ae) return;
2261
+ }, [e, Q, R, H]), dt = Y((m) => {
2262
+ if (!de) return;
2263
2263
  const E = `${m.type}-${Date.now()}`, k = m.reactFlowType === "filterNode" || m.reactFlowType === "approvalNode" || m.reactFlowType === "conditionBranchNode", C = m.branchLabels ?? { pass: "Pass", fail: "Fail" }, x = {
2264
2264
  id: E,
2265
2265
  kind: k ? m.reactFlowType === "approvalNode" ? "approval" : "filter" : "userTask",
@@ -2275,7 +2275,7 @@ const Dt = ({
2275
2275
  q((S) => {
2276
2276
  const I = [...S[_][T]];
2277
2277
  if (k) {
2278
- const ee = I.filter((ce) => ce.kind !== "end"), gt = ee.findIndex((ce) => ce.id === ae), xr = gt === -1 ? ee.length : gt + 1;
2278
+ const ee = I.filter((ce) => ce.kind !== "end"), gt = ee.findIndex((ce) => ce.id === de), xr = gt === -1 ? ee.length : gt + 1;
2279
2279
  return ee.splice(xr, 0, x), {
2280
2280
  ...S,
2281
2281
  [_]: { ...S[_], [T]: ee },
@@ -2284,12 +2284,12 @@ const Dt = ({
2284
2284
  )
2285
2285
  };
2286
2286
  }
2287
- const D = I.findIndex((ee) => ee.id === ae), A = I.findIndex((ee) => ee.kind === "end"), L = D === -1 ? A === -1 ? I.length : A : D + 1;
2287
+ const D = I.findIndex((ee) => ee.id === de), A = I.findIndex((ee) => ee.kind === "end"), L = D === -1 ? A === -1 ? I.length : A : D + 1;
2288
2288
  return I.splice(L, 0, x), { ...S, [_]: { ...S[_], [T]: I } };
2289
2289
  });
2290
2290
  } else
2291
2291
  k ? (V((_) => {
2292
- const T = _.findIndex((I) => I.id === ae);
2292
+ const T = _.findIndex((I) => I.id === de);
2293
2293
  return [..._.filter((I) => I.kind !== "end").slice(0, T + 1), x];
2294
2294
  }), q((_) => ({
2295
2295
  ..._,
@@ -2297,11 +2297,11 @@ const Dt = ({
2297
2297
  Object.keys(C).map((T) => [T, [{ id: `end-${E}-${T}`, kind: "end", reactFlowType: "endNode" }]])
2298
2298
  )
2299
2299
  }))) : V((_) => {
2300
- const T = _.findIndex((S) => S.id === ae);
2300
+ const T = _.findIndex((S) => S.id === de);
2301
2301
  return T === -1 ? _ : [..._.slice(0, T + 1), x, ..._.slice(T + 1)];
2302
2302
  });
2303
2303
  ve(null), Qe(null), Ze(E), $("nodeConfig");
2304
- }, [ae, Oe]), ct = Y((m, E) => {
2304
+ }, [de, Oe]), ct = Y((m, E) => {
2305
2305
  const k = (x) => {
2306
2306
  const _ = ne(m);
2307
2307
  if ((_ == null ? void 0 : _.descriptorType) !== "conditionBranch") return x;
@@ -2364,6 +2364,7 @@ const Dt = ({
2364
2364
  return /* @__PURE__ */ f(Dr.Provider, { value: kr, children: /* @__PURE__ */ w(
2365
2365
  "div",
2366
2366
  {
2367
+ className: "flowforge-canvas",
2367
2368
  style: {
2368
2369
  width: "100%",
2369
2370
  height: "100%",
@@ -2417,13 +2418,13 @@ const Dt = ({
2417
2418
  ]
2418
2419
  }
2419
2420
  ),
2420
- c ? de === "triggerSelect" && c(t.list(), lt, () => $(null)) : /* @__PURE__ */ f(zi, { open: de === "triggerSelect", templates: t.list(), messages: Z, onSelect: lt, onClose: () => $(null) }),
2421
- u ? de === "nodePicker" && u(dt(), at, () => {
2421
+ c ? ae === "triggerSelect" && c(t.list(), lt, () => $(null)) : /* @__PURE__ */ f(zi, { open: ae === "triggerSelect", templates: t.list(), messages: Z, onSelect: lt, onClose: () => $(null) }),
2422
+ u ? ae === "nodePicker" && u(at(), dt, () => {
2422
2423
  $(null), ve(null);
2423
- }) : /* @__PURE__ */ f(Ri, { open: de === "nodePicker", availableDescriptors: dt(), messages: Z, onSelect: at, onClose: () => {
2424
+ }) : /* @__PURE__ */ f(Ri, { open: ae === "nodePicker", availableDescriptors: at(), messages: Z, onSelect: dt, onClose: () => {
2424
2425
  $(null), ve(null);
2425
2426
  } }),
2426
- h ? de === "nodeConfig" && h(ut ?? void 0, X, ct, () => $(null)) : /* @__PURE__ */ f(Di, { open: de === "nodeConfig", nodeId: Ie, descriptor: ut, initialValues: X == null ? void 0 : X.formData, messages: Z, onSave: ct, onClose: () => $(null) }),
2427
+ h ? ae === "nodeConfig" && h(ut ?? void 0, X, ct, () => $(null)) : /* @__PURE__ */ f(Di, { open: ae === "nodeConfig", nodeId: Ie, descriptor: ut, initialValues: X == null ? void 0 : X.formData, messages: Z, onSave: ct, onClose: () => $(null) }),
2427
2428
  v && Ee && /* @__PURE__ */ f(
2428
2429
  Li,
2429
2430
  {
@@ -2503,22 +2504,22 @@ const ls = ({
2503
2504
  onStartFromScratch: r
2504
2505
  }) => {
2505
2506
  const [n, o] = j(""), [i, s] = j(We), l = W(() => {
2506
- const d = /* @__PURE__ */ new Set();
2507
+ const a = /* @__PURE__ */ new Set();
2507
2508
  return e.forEach((c) => {
2508
- c.category && d.add(c.category);
2509
- }), [We, ...Array.from(d)];
2510
- }, [e]), a = W(() => {
2511
- let d = e;
2512
- if (i !== We && (d = d.filter((c) => c.category === i)), n.trim()) {
2509
+ c.category && a.add(c.category);
2510
+ }), [We, ...Array.from(a)];
2511
+ }, [e]), d = W(() => {
2512
+ let a = e;
2513
+ if (i !== We && (a = a.filter((c) => c.category === i)), n.trim()) {
2513
2514
  const c = n.toLowerCase();
2514
- d = d.filter(
2515
+ a = a.filter(
2515
2516
  (u) => {
2516
2517
  var h, g;
2517
2518
  return u.label.toLowerCase().includes(c) || ((h = u.description) == null ? void 0 : h.toLowerCase().includes(c)) || ((g = u.tags) == null ? void 0 : g.some((b) => b.toLowerCase().includes(c)));
2518
2519
  }
2519
2520
  );
2520
2521
  }
2521
- return [...d].sort((c, u) => (u.popularity ?? 0) - (c.popularity ?? 0));
2522
+ return [...a].sort((c, u) => (u.popularity ?? 0) - (c.popularity ?? 0));
2522
2523
  }, [e, i, n]);
2523
2524
  return /* @__PURE__ */ w("div", { style: { display: "flex", flexDirection: "column", height: "100%", fontFamily: "inherit" }, children: [
2524
2525
  /* @__PURE__ */ w("div", { style: { padding: "24px 24px 0", borderBottom: "1px solid #f0f0f0", paddingBottom: 16 }, children: [
@@ -2545,36 +2546,36 @@ const ls = ({
2545
2546
  "input",
2546
2547
  {
2547
2548
  value: n,
2548
- onChange: (d) => o(d.target.value),
2549
+ onChange: (a) => o(a.target.value),
2549
2550
  placeholder: "Search templates...",
2550
2551
  style: { border: "none", background: "transparent", outline: "none", fontSize: 14, color: "#212121", flex: 1 }
2551
2552
  }
2552
2553
  )
2553
2554
  ] }),
2554
- l.length > 1 && /* @__PURE__ */ f("div", { style: { display: "flex", gap: 4, flexWrap: "wrap" }, children: l.map((d) => /* @__PURE__ */ f(
2555
+ l.length > 1 && /* @__PURE__ */ f("div", { style: { display: "flex", gap: 4, flexWrap: "wrap" }, children: l.map((a) => /* @__PURE__ */ f(
2555
2556
  "button",
2556
2557
  {
2557
- onClick: () => s(d),
2558
+ onClick: () => s(a),
2558
2559
  style: {
2559
2560
  padding: "4px 12px",
2560
2561
  borderRadius: 20,
2561
2562
  border: "1.5px solid",
2562
- borderColor: i === d ? "#1976d2" : "#e0e0e0",
2563
- background: i === d ? "#e3f2fd" : "#fff",
2564
- color: i === d ? "#1565c0" : "#616161",
2563
+ borderColor: i === a ? "#1976d2" : "#e0e0e0",
2564
+ background: i === a ? "#e3f2fd" : "#fff",
2565
+ color: i === a ? "#1565c0" : "#616161",
2565
2566
  fontSize: 12,
2566
- fontWeight: i === d ? 600 : 400,
2567
+ fontWeight: i === a ? 600 : 400,
2567
2568
  cursor: "pointer"
2568
2569
  },
2569
- children: d
2570
+ children: a
2570
2571
  },
2571
- d
2572
+ a
2572
2573
  )) })
2573
2574
  ] }),
2574
- /* @__PURE__ */ f("div", { style: { flex: 1, overflowY: "auto", padding: 24 }, children: a.length === 0 ? /* @__PURE__ */ w("div", { style: { textAlign: "center", padding: "40px 0", color: "#9e9e9e" }, children: [
2575
+ /* @__PURE__ */ f("div", { style: { flex: 1, overflowY: "auto", padding: 24 }, children: d.length === 0 ? /* @__PURE__ */ w("div", { style: { textAlign: "center", padding: "40px 0", color: "#9e9e9e" }, children: [
2575
2576
  /* @__PURE__ */ f(qr, { size: 36, style: { marginBottom: 8 } }),
2576
2577
  /* @__PURE__ */ f("p", { style: { margin: 0, fontSize: 14 }, children: "No templates found" })
2577
- ] }) : /* @__PURE__ */ f("div", { style: { display: "grid", gridTemplateColumns: "repeat(auto-fill, minmax(280px, 1fr))", gap: 16 }, children: a.map((d) => /* @__PURE__ */ f(Ki, { template: d, onSelect: () => t(d) }, d.triggerKey)) }) })
2578
+ ] }) : /* @__PURE__ */ f("div", { style: { display: "grid", gridTemplateColumns: "repeat(auto-fill, minmax(280px, 1fr))", gap: 16 }, children: d.map((a) => /* @__PURE__ */ f(Ki, { template: a, onSelect: () => t(a) }, a.triggerKey)) }) })
2578
2579
  ] });
2579
2580
  }, ke = {
2580
2581
  running: { label: "Running", color: J.running, icon: P.createElement(Gt, { size: 14 }) },
@@ -2679,9 +2680,9 @@ function Hi({ record: e, selected: t, onSelect: r }) {
2679
2680
  }
2680
2681
  );
2681
2682
  }
2682
- const ds = ({ records: e, onViewOnCanvas: t }) => {
2683
+ const as = ({ records: e, onViewOnCanvas: t }) => {
2683
2684
  var s;
2684
- const [r, n] = j(((s = e[0]) == null ? void 0 : s.id) ?? null), o = e.find((l) => l.id === r) ?? null, i = [...e].sort((l, a) => new Date(a.triggeredAt).getTime() - new Date(l.triggeredAt).getTime());
2685
+ const [r, n] = j(((s = e[0]) == null ? void 0 : s.id) ?? null), o = e.find((l) => l.id === r) ?? null, i = [...e].sort((l, d) => new Date(d.triggeredAt).getTime() - new Date(l.triggeredAt).getTime());
2685
2686
  return e.length === 0 ? /* @__PURE__ */ w("div", { style: { display: "flex", flexDirection: "column", alignItems: "center", justifyContent: "center", height: 300, color: "#9e9e9e", gap: 8 }, children: [
2686
2687
  /* @__PURE__ */ f(mt, { size: 36 }),
2687
2688
  /* @__PURE__ */ f("p", { style: { margin: 0, fontSize: 14 }, children: "No executions yet" }),
@@ -2732,7 +2733,7 @@ const ds = ({ records: e, onViewOnCanvas: t }) => {
2732
2733
  o.steps.length,
2733
2734
  ")"
2734
2735
  ] }),
2735
- o.steps.map((l, a) => /* @__PURE__ */ f(Vi, { step: l }, `${l.nodeId}-${a}`))
2736
+ o.steps.map((l, d) => /* @__PURE__ */ f(Vi, { step: l }, `${l.nodeId}-${d}`))
2736
2737
  ] }),
2737
2738
  o.inputs && Object.keys(o.inputs).length > 0 && /* @__PURE__ */ f("div", { style: { padding: "10px 16px" }, children: /* @__PURE__ */ w("details", { children: [
2738
2739
  /* @__PURE__ */ f("summary", { style: { cursor: "pointer", fontSize: 12, fontWeight: 600, color: "#757575", marginBottom: 6 }, children: "TRIGGER INPUTS" }),
@@ -2740,7 +2741,7 @@ const ds = ({ records: e, onViewOnCanvas: t }) => {
2740
2741
  ] }) })
2741
2742
  ] }) : /* @__PURE__ */ f("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", height: "100%", color: "#9e9e9e", fontSize: 14 }, children: "Select a run to see details" }) })
2742
2743
  ] });
2743
- }, as = {
2744
+ }, ds = {
2744
2745
  slots: [
2745
2746
  { id: "start", kind: "start", reactFlowType: "startNode", deletable: !1 },
2746
2747
  { id: "trigger-END_USER_CREATION", kind: "triggerFixed", reactFlowType: "triggerNode", deletable: !0, label: "New User Registration", nodeData: { label: "New User Registration" } },
@@ -2794,10 +2795,10 @@ const ds = ({ records: e, onViewOnCanvas: t }) => {
2794
2795
  export {
2795
2796
  Dt as F,
2796
2797
  Li as S,
2797
- ds as W,
2798
+ as as W,
2798
2799
  ls as a,
2799
2800
  cs as b,
2800
2801
  us as o,
2801
- as as u,
2802
+ ds as u,
2802
2803
  fs as w
2803
2804
  };