minerva-design 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/charts/engine/data.cjs +1 -1
  3. package/dist/charts/engine/data.cjs.map +1 -1
  4. package/dist/charts/engine/data.d.cts +2 -0
  5. package/dist/charts/engine/data.d.ts +2 -0
  6. package/dist/charts/engine/data.js +6 -4
  7. package/dist/charts/engine/data.js.map +1 -1
  8. package/dist/charts/engine/defaults.cjs +1 -1
  9. package/dist/charts/engine/defaults.cjs.map +1 -1
  10. package/dist/charts/engine/defaults.js +22 -18
  11. package/dist/charts/engine/defaults.js.map +1 -1
  12. package/dist/charts/engine/graph/chart.cjs +1 -1
  13. package/dist/charts/engine/graph/chart.cjs.map +1 -1
  14. package/dist/charts/engine/graph/chart.js +532 -493
  15. package/dist/charts/engine/graph/chart.js.map +1 -1
  16. package/dist/charts/engine/graph/geometry.cjs +1 -1
  17. package/dist/charts/engine/graph/geometry.cjs.map +1 -1
  18. package/dist/charts/engine/graph/geometry.d.cts +12 -2
  19. package/dist/charts/engine/graph/geometry.d.ts +12 -2
  20. package/dist/charts/engine/graph/geometry.js +35 -31
  21. package/dist/charts/engine/graph/geometry.js.map +1 -1
  22. package/dist/charts/engine/model.cjs +1 -1
  23. package/dist/charts/engine/model.cjs.map +1 -1
  24. package/dist/charts/engine/model.js +95 -74
  25. package/dist/charts/engine/model.js.map +1 -1
  26. package/dist/charts/engine/orderbook/field.cjs +1 -1
  27. package/dist/charts/engine/orderbook/field.cjs.map +1 -1
  28. package/dist/charts/engine/orderbook/field.d.cts +15 -2
  29. package/dist/charts/engine/orderbook/field.d.ts +15 -2
  30. package/dist/charts/engine/orderbook/field.js +21 -9
  31. package/dist/charts/engine/orderbook/field.js.map +1 -1
  32. package/dist/charts/engine/orderbook/heatmap.cjs +1 -1
  33. package/dist/charts/engine/orderbook/heatmap.cjs.map +1 -1
  34. package/dist/charts/engine/orderbook/heatmap.d.cts +29 -0
  35. package/dist/charts/engine/orderbook/heatmap.d.ts +29 -0
  36. package/dist/charts/engine/orderbook/heatmap.js +576 -453
  37. package/dist/charts/engine/orderbook/heatmap.js.map +1 -1
  38. package/dist/charts/engine/orderbook/types.d.cts +36 -11
  39. package/dist/charts/engine/orderbook/types.d.ts +36 -11
  40. package/dist/charts/engine/presets.cjs +1 -1
  41. package/dist/charts/engine/presets.cjs.map +1 -1
  42. package/dist/charts/engine/presets.d.cts +16 -3
  43. package/dist/charts/engine/presets.d.ts +16 -3
  44. package/dist/charts/engine/presets.js +42 -32
  45. package/dist/charts/engine/presets.js.map +1 -1
  46. package/dist/charts/engine/scene.cjs +1 -1
  47. package/dist/charts/engine/scene.cjs.map +1 -1
  48. package/dist/charts/engine/scene.d.cts +4 -2
  49. package/dist/charts/engine/scene.d.ts +4 -2
  50. package/dist/charts/engine/scene.js +185 -107
  51. package/dist/charts/engine/scene.js.map +1 -1
  52. package/dist/charts/engine/three-d/oit.cjs +119 -34
  53. package/dist/charts/engine/three-d/oit.cjs.map +1 -1
  54. package/dist/charts/engine/three-d/oit.d.cts +65 -10
  55. package/dist/charts/engine/three-d/oit.d.ts +65 -10
  56. package/dist/charts/engine/three-d/oit.js +119 -34
  57. package/dist/charts/engine/three-d/oit.js.map +1 -1
  58. package/dist/charts/engine/three-d/render-types.cjs.map +1 -1
  59. package/dist/charts/engine/three-d/render-types.d.cts +19 -0
  60. package/dist/charts/engine/three-d/render-types.d.ts +19 -0
  61. package/dist/charts/engine/three-d/render-types.js.map +1 -1
  62. package/dist/charts/engine/three-d/shaders.cjs +14 -6
  63. package/dist/charts/engine/three-d/shaders.cjs.map +1 -1
  64. package/dist/charts/engine/three-d/shaders.d.cts +6 -1
  65. package/dist/charts/engine/three-d/shaders.d.ts +6 -1
  66. package/dist/charts/engine/three-d/shaders.js +40 -26
  67. package/dist/charts/engine/three-d/shaders.js.map +1 -1
  68. package/dist/charts/engine/three-d/webgl.cjs +1 -1
  69. package/dist/charts/engine/three-d/webgl.cjs.map +1 -1
  70. package/dist/charts/engine/three-d/webgl.js +167 -125
  71. package/dist/charts/engine/three-d/webgl.js.map +1 -1
  72. package/dist/charts/engine/three-d/webgpu.cjs +1 -1
  73. package/dist/charts/engine/three-d/webgpu.cjs.map +1 -1
  74. package/dist/charts/engine/three-d/webgpu.js +169 -140
  75. package/dist/charts/engine/three-d/webgpu.js.map +1 -1
  76. package/dist/charts/engine/trading/chart.cjs +1 -1
  77. package/dist/charts/engine/trading/chart.cjs.map +1 -1
  78. package/dist/charts/engine/trading/chart.js +1149 -1023
  79. package/dist/charts/engine/trading/chart.js.map +1 -1
  80. package/dist/charts/engine/trading/labels.cjs +1 -1
  81. package/dist/charts/engine/trading/labels.cjs.map +1 -1
  82. package/dist/charts/engine/trading/labels.js +12 -0
  83. package/dist/charts/engine/trading/labels.js.map +1 -1
  84. package/dist/charts/engine/trading/layout.cjs +2 -0
  85. package/dist/charts/engine/trading/layout.cjs.map +1 -0
  86. package/dist/charts/engine/trading/layout.d.cts +37 -0
  87. package/dist/charts/engine/trading/layout.d.ts +37 -0
  88. package/dist/charts/engine/trading/layout.js +63 -0
  89. package/dist/charts/engine/trading/layout.js.map +1 -0
  90. package/dist/charts/engine/trading/types.d.cts +24 -7
  91. package/dist/charts/engine/trading/types.d.ts +24 -7
  92. package/dist/charts/engine/types.d.cts +21 -8
  93. package/dist/charts/engine/types.d.ts +21 -8
  94. package/dist/core/contracts.cjs +1 -1
  95. package/dist/core/contracts.cjs.map +1 -1
  96. package/dist/core/contracts.js +1 -1
  97. package/dist/core/contracts.js.map +1 -1
  98. package/dist/native/charts/src/engine/data.cjs +1 -1
  99. package/dist/native/charts/src/engine/data.cjs.map +1 -1
  100. package/dist/native/charts/src/engine/data.js +6 -4
  101. package/dist/native/charts/src/engine/data.js.map +1 -1
  102. package/dist/native/charts/src/engine/model.cjs +1 -1
  103. package/dist/native/charts/src/engine/model.cjs.map +1 -1
  104. package/dist/native/charts/src/engine/model.js +104 -83
  105. package/dist/native/charts/src/engine/model.js.map +1 -1
  106. package/dist/native/charts/src/engine/presets.cjs +1 -1
  107. package/dist/native/charts/src/engine/presets.cjs.map +1 -1
  108. package/dist/native/charts/src/engine/presets.js +42 -32
  109. package/dist/native/charts/src/engine/presets.js.map +1 -1
  110. package/dist/native/charts/src/engine/scene.cjs +1 -1
  111. package/dist/native/charts/src/engine/scene.cjs.map +1 -1
  112. package/dist/native/charts/src/engine/scene.js +185 -107
  113. package/dist/native/charts/src/engine/scene.js.map +1 -1
  114. package/dist/taro/index.js +1263 -1152
  115. package/dist/vue/components/Chart/OrderBookHeatmap.vue.d.ts +11 -0
  116. package/dist/vue/components/Chart/orderbook.d.ts +7 -0
  117. package/dist/vue/components/Chart/orderbook.js +2 -0
  118. package/dist/vue/components/Chart/orderbook.js.map +1 -1
  119. package/dist/weapp/charts/canvas.js +234 -58
  120. package/package.json +1 -1
@@ -8,14 +8,14 @@ import { forceInit as p, forceKernel as m } from "./force.js";
8
8
  import { arcPositions as h, circularPositions as g } from "./circular.js";
9
9
  import { layeredLayout as _, longestPath as v } from "./dag.js";
10
10
  import { createGraphDom as y, sizeCanvas as ee, style as b, swatch as x } from "./dom.js";
11
- import { arcPath as te, arrowHead as ne, boundaryDistance as re, cubicPoints as S, dashPath as ie, distanceToPath as ae, endDirection as oe, filledArrow as se, loopPath as ce, orthogonalPath as le, pathLength as ue, pointAt as de, quadraticPath as fe, roundCorners as pe, splinePath as me, trimPath as he } from "./geometry.js";
12
- import { fill as ge, graphLocale as _e } from "./labels.js";
13
- import { buildModel as ve, lineage as ye, neighborhood as be } from "./model.js";
14
- import { NodeKind as C, computeSizing as xe, labelOf as Se } from "./sizing.js";
15
- import { TREE_LEVEL_GAP as Ce, tidyTreeLayout as we } from "./tree.js";
16
- import { createForceRunner as Te } from "./worker.js";
11
+ import { arcPath as te, arrowHead as ne, boundaryDistance as re, boxLoopPath as S, cubicPoints as ie, dashPath as ae, distanceToPath as oe, endDirection as se, filledArrow as ce, loopPath as le, orthogonalPath as ue, pathLength as de, pointAt as fe, quadraticPath as pe, roundCorners as me, splinePath as he, trimPath as ge } from "./geometry.js";
12
+ import { fill as _e, graphLocale as ve } from "./labels.js";
13
+ import { buildModel as ye, lineage as be, neighborhood as xe } from "./model.js";
14
+ import { NodeKind as C, computeSizing as Se, labelOf as Ce } from "./sizing.js";
15
+ import { TREE_LEVEL_GAP as we, tidyTreeLayout as Te } from "./tree.js";
16
+ import { createForceRunner as Ee } from "./worker.js";
17
17
  //#region src/engine/graph/chart.ts
18
- var Ee = [
18
+ var De = [
19
19
  "force",
20
20
  "dag",
21
21
  "tree",
@@ -25,15 +25,15 @@ var Ee = [
25
25
  "circular",
26
26
  "arc",
27
27
  "none"
28
- ], De = /* @__PURE__ */ new Set([
28
+ ], Oe = /* @__PURE__ */ new Set([
29
29
  "tree",
30
30
  "radial",
31
31
  "mindmap",
32
32
  "org"
33
- ]), Oe = 5e3, ke = .4, Ae = 2e3, je = 450, Me = 320, Ne = 9, Pe = 1.25, Fe = 1.4, Ie = (e, t, n) => {
33
+ ]), ke = 5e3, Ae = .4, je = 8, Me = 10, Ne = 14, Pe = 24, Fe = 4e3, Ie = 2e3, Le = 450, Re = 320, ze = 9, Be = 1.25, Ve = 1.4, He = (e, t, n) => {
34
34
  let r = t === 1 ? e * 16 : t === 2 ? e * 400 : e;
35
35
  return Math.exp(Math.max(-1, Math.min(1, r * (n ? .01 : .0025))));
36
- }, Le = (e) => e < .5 ? 4 * e * e * e : 1 - (-2 * e + 2) ** 3 / 2, Re = () => {
36
+ }, Ue = (e) => e < .5 ? 4 * e * e * e : 1 - (-2 * e + 2) ** 3 / 2, We = () => {
37
37
  let e = /* @__PURE__ */ new Float32Array(1024), t = 0, n = (n) => {
38
38
  if (t + n <= e.length) return;
39
39
  let r = new Float32Array(Math.max(e.length * 2, t + n));
@@ -50,8 +50,8 @@ var Ee = [
50
50
  count: () => t / 2,
51
51
  points: () => e.subarray(0, t)
52
52
  };
53
- }, ze = (e) => e && Ee.includes(e) ? e : "force", Be = (e) => JSON.stringify([
54
- ze(e.layout),
53
+ }, Ge = (e) => e && De.includes(e) ? e : "force", Ke = (e) => JSON.stringify([
54
+ Ge(e.layout),
55
55
  e.direction ?? "",
56
56
  e.force ?? null,
57
57
  e.dag ? {
@@ -64,17 +64,17 @@ var Ee = [
64
64
  e.nodeSize ?? null,
65
65
  e.nodeShape ?? null,
66
66
  e.nodeLabels === !1
67
- ]), Ve = (Ee, Ve) => {
68
- let w = Ee.ownerDocument, Ue = w.defaultView, T = y(Ee), E = T.stage, D = Ve, O = u(T.root, D.palette), We = He(O), k = _e(D.locale, D.labels), A = !1, Ge = /* @__PURE__ */ new Map(), Ke = (e, t) => {
69
- Ge.get(e)?.forEach((e) => e(t));
70
- }, qe = (e) => !!Ge.get(e)?.size, Je = typeof Ue?.matchMedia == "function" ? Ue.matchMedia("(prefers-reduced-motion: reduce)") : null, Ye = () => Ue?.performance?.now() ?? Date.now(), j = ve(D.nodes ?? [], D.edges ?? [], D.groups), M = ze(D.layout), Xe = "TB", Ze = Be(D), N, P = /* @__PURE__ */ new Float64Array(), F = /* @__PURE__ */ new Float64Array(), I = /* @__PURE__ */ new Float64Array(), Qe = /* @__PURE__ */ new Float64Array(), $e = /* @__PURE__ */ new Float64Array(), et = /* @__PURE__ */ new Float64Array(), tt = /* @__PURE__ */ new Uint8Array(), nt = null, rt = null, it = 1, L = null, at = null, ot = null, R = null, st = !1, z = /* @__PURE__ */ new Set(), ct = /* @__PURE__ */ new Set(), lt = null, ut = /* @__PURE__ */ new Int32Array(), dt = [], ft = !0, pt = 0, B = !0, mt = [], ht = 0, V = [], gt = [], _t = /* @__PURE__ */ new Float64Array(), vt = /* @__PURE__ */ new Uint8Array(), yt = /* @__PURE__ */ new Uint8Array(), bt = [], xt = [
67
+ ]), qe = (De, qe) => {
68
+ let w = De.ownerDocument, Ye = w.defaultView, T = y(De), E = T.stage, D = qe, O = u(T.root, D.palette), Xe = Je(O), k = ve(D.locale, D.labels), A = !1, Ze = /* @__PURE__ */ new Map(), Qe = (e, t) => {
69
+ Ze.get(e)?.forEach((e) => e(t));
70
+ }, $e = (e) => !!Ze.get(e)?.size, et = typeof Ye?.matchMedia == "function" ? Ye.matchMedia("(prefers-reduced-motion: reduce)") : null, tt = () => Ye?.performance?.now() ?? Date.now(), j = ye(D.nodes ?? [], D.edges ?? [], D.groups), M = Ge(D.layout), nt = "TB", rt = Ke(D), N, P = /* @__PURE__ */ new Float64Array(), F = /* @__PURE__ */ new Float64Array(), I = /* @__PURE__ */ new Float64Array(), it = /* @__PURE__ */ new Float64Array(), at = /* @__PURE__ */ new Float64Array(), ot = /* @__PURE__ */ new Float64Array(), st = /* @__PURE__ */ new Uint8Array(), ct = null, lt = null, ut = 1, L = null, dt = null, ft = null, R = null, pt = !1, z = /* @__PURE__ */ new Set(), mt = /* @__PURE__ */ new Set(), ht = null, gt = /* @__PURE__ */ new Int32Array(), _t = [], vt = !0, yt = 0, B = !0, bt = [], xt = 0, V = [], St = [], Ct = /* @__PURE__ */ new Float64Array(), wt = /* @__PURE__ */ new Uint8Array(), Tt = /* @__PURE__ */ new Uint8Array(), Et = [], Dt = [
71
71
  .94,
72
72
  .27,
73
73
  .27,
74
74
  1
75
- ], St = /* @__PURE__ */ new Float64Array(), H = 1, U = 0, W = 0, Ct = null, wt = !1, Tt = !0, Et = !1, Dt = !1, Ot = !1, G = 0, K = 0, q = null, J = -1, kt = !1, Y = /* @__PURE__ */ new Set(), At = null, jt = "", X = null, Mt = 0, Nt = () => {}, Pt = new Promise((e) => {
76
- Nt = e;
77
- }), Ft = 0, It = () => {
75
+ ], Ot = /* @__PURE__ */ new Float64Array(), H = 1, U = 0, W = 0, kt = null, At = !1, jt = !0, Mt = !1, Nt = !1, Pt = !1, G = 0, K = 0, q = null, J = -1, Ft = !1, Y = /* @__PURE__ */ new Set(), It = null, Lt = "", X = null, Rt = 0, zt = () => {}, Bt = new Promise((e) => {
76
+ zt = e;
77
+ }), Vt = 0, Ht = () => {
78
78
  let e = D.interaction;
79
79
  if (e === !1) return null;
80
80
  let t = typeof e == "object" ? e : {};
@@ -87,11 +87,11 @@ var Ee = [
87
87
  keyboard: t.keyboard ?? !0,
88
88
  zoomRange: t.zoomRange ?? [.02, 8]
89
89
  };
90
- }, Lt = () => De.has(M), Rt = () => Lt() && D.tree?.collapsible !== !1, zt = () => {
90
+ }, Ut = () => Oe.has(M), Wt = () => Ut() && D.tree?.collapsible !== !1, Gt = () => {
91
91
  let e = D.animation;
92
- return e === !1 || Je?.matches ? 0 : typeof e == "number" && e >= 0 ? e : je;
93
- }, Bt = () => D.highlight ?? (M === "dag" ? "lineage" : "neighbors"), Vt = () => {
94
- let e = D.edgeStyle, t = M === "dag" || Lt();
92
+ return e === !1 || et?.matches ? 0 : typeof e == "number" && e >= 0 ? e : Le;
93
+ }, Kt = () => D.highlight ?? (M === "dag" ? "lineage" : "neighbors"), qt = () => {
94
+ let e = D.edgeStyle, t = M === "dag" || Ut();
95
95
  if (e === "straight" || e === "curve" || (e === "spline" || e === "orthogonal") && t) return e;
96
96
  if (e) return "curve";
97
97
  switch (M) {
@@ -104,7 +104,7 @@ var Ee = [
104
104
  case "arc": return "curve";
105
105
  default: return "straight";
106
106
  }
107
- }, Ht = (e, n) => {
107
+ }, Jt = (e, n) => {
108
108
  let i = O.resolve ? O.resolve(e, n) : r(e) ?? n;
109
109
  return i[3] < 1 ? t(O.background, [
110
110
  i[0],
@@ -112,25 +112,25 @@ var Ee = [
112
112
  i[2],
113
113
  1
114
114
  ], i[3]) : i;
115
- }, Ut = T.foreground.getContext("2d"), Wt = (e, t) => Ut ? (Ut.font = t, Ut.measureText(e).width) : e.length * 7, Gt = () => {
115
+ }, Yt = T.foreground.getContext("2d"), Xt = (e, t) => Yt ? (Yt.font = t, Yt.measureText(e).width) : e.length * 7, Zt = () => {
116
116
  let e = /* @__PURE__ */ new Map();
117
117
  if (P.length !== j.n) return e;
118
118
  for (let t = 0; t < j.n; t++) Number.isFinite(P[t]) && e.set(j.nodes[t].id, {
119
119
  x: P[t],
120
120
  y: F[t],
121
- visible: !!tt[t] && !st
121
+ visible: !!st[t] && !pt
122
122
  });
123
123
  return e;
124
- }, Kt = () => {
125
- R?.destroy(), R = null, st = !1;
126
- }, qt = () => {
124
+ }, Qt = () => {
125
+ R?.destroy(), R = null, pt = !1;
126
+ }, $t = () => {
127
127
  let e = /* @__PURE__ */ new Set();
128
128
  for (let t of z) {
129
129
  let n = j.index.get(t);
130
130
  n !== void 0 && e.add(n);
131
131
  }
132
132
  return e;
133
- }, Jt = (e, t, n, r) => {
133
+ }, en = (e, t, n, r) => {
134
134
  let i = D.tree ?? {};
135
135
  return {
136
136
  n: j.n,
@@ -139,15 +139,15 @@ var Ee = [
139
139
  width: t,
140
140
  height: n,
141
141
  type: e,
142
- direction: Xe,
142
+ direction: nt,
143
143
  root: i.root === void 0 ? -1 : j.index.get(i.root) ?? -1,
144
144
  levelGap: r,
145
145
  siblingGap: i.siblingGap ?? (e === "org" ? 20 : e === "mindmap" ? 10 : 12),
146
- collapsed: qt(),
146
+ collapsed: $t(),
147
147
  compact: i.compact
148
148
  };
149
- }, Yt = (e, t = !0) => {
150
- Ot = t;
149
+ }, tn = (e, t = !0) => {
150
+ Pt = t;
151
151
  let n = j.n, r = new Float64Array(n).fill(NaN), i = new Float64Array(n).fill(NaN), a = new Uint8Array(n), o = 0;
152
152
  for (let t = 0; t < n; t++) {
153
153
  let n = j.nodes[t], s = e.get(n.id);
@@ -181,63 +181,63 @@ var Ee = [
181
181
  alpha: u,
182
182
  aspect: d > 0 && f > 0 ? d / f : 1
183
183
  }), g = D.force ?? {}, _ = g.animate !== !1, v = g.worker ?? "auto", y = v === !0 || v === "auto" && n >= 2e3;
184
- if (P = r, F = i, I = r, Qe = i, !_ && !y) {
184
+ if (P = r, F = i, I = r, it = i, !_ && !y) {
185
185
  let e = m()(h);
186
186
  for (; e.tick(50););
187
- e.settle(), Xt();
187
+ e.settle(), nn();
188
188
  return;
189
189
  }
190
- st = !_, R = Te(h, {
190
+ pt = !_, R = Ee(h, {
191
191
  worker: y,
192
192
  stream: _,
193
- now: Ye,
193
+ now: tt,
194
194
  onTick: () => {
195
- ft = !0, Q();
195
+ vt = !0, Q();
196
196
  },
197
197
  onEnd: () => {
198
- let e = st;
199
- st = !1, ft = !0, !wt && Ot && (Tt = !0, Et = !e), Ot = !1, Xt(), Q();
198
+ let e = pt;
199
+ pt = !1, vt = !0, !At && Pt && (jt = !0, Mt = !e), Pt = !1, nn(), Q();
200
200
  }
201
201
  });
202
- }, Xt = () => {
202
+ }, nn = () => {
203
203
  Promise.resolve().then(() => {
204
- A || Ke("layoutEnd", { layout: M });
204
+ A || Qe("layoutEnd", { layout: M });
205
205
  });
206
- }, Zt = (e, t) => {
207
- Kt();
206
+ }, rn = (e, t) => {
207
+ Qt();
208
208
  let n = M;
209
- M = ze(D.layout), Xe = D.direction ?? (M === "tree" ? "LR" : "TB"), n !== M && (Tt = !0);
209
+ M = Ge(D.layout), nt = D.direction ?? (M === "tree" ? "LR" : "TB"), n !== M && (jt = !0);
210
210
  let r = j.n;
211
- L = null, at = null, ot = null;
211
+ L = null, dt = null, ft = null;
212
212
  let i = null;
213
213
  if (M === "mindmap") {
214
214
  let e = new Float64Array(r).fill(1);
215
- i = we(Jt("mindmap", e, e, 1)).depth;
215
+ i = Te(en("mindmap", e, e, 1)).depth;
216
216
  }
217
- N = xe(j, M, D, i, Wt, O.fontFamily);
217
+ N = Se(j, M, D, i, Xt, O.fontFamily);
218
218
  let a = new Uint8Array(r).fill(1), o = new Float64Array(r), s = new Float64Array(r);
219
219
  switch (M) {
220
220
  case "dag": {
221
221
  let e = D.dag ?? {};
222
- at = _({
222
+ dt = _({
223
223
  n: r,
224
224
  source: j.source,
225
225
  target: j.target,
226
226
  width: N.width,
227
227
  height: N.height,
228
- direction: Xe,
228
+ direction: nt,
229
229
  layerGap: e.layerGap ?? 56,
230
230
  nodeGap: e.nodeGap ?? 24,
231
231
  sweeps: e.sweeps ?? 8
232
- }), o = at.x, s = at.y;
232
+ }), o = dt.x, s = dt.y;
233
233
  break;
234
234
  }
235
235
  case "tree":
236
236
  case "radial":
237
237
  case "mindmap":
238
238
  case "org": {
239
- let e = M, t = D.tree?.levelGap ?? Math.max(Ce[e], N.levelGap);
240
- L = we(Jt(e, N.layoutWidth, N.layoutHeight, t)), o = L.x, s = L.y, a.set(L.visible);
239
+ let e = M, t = D.tree?.levelGap ?? Math.max(we[e], N.levelGap);
240
+ L = Te(en(e, N.layoutWidth, N.layoutHeight, t)), o = L.x, s = L.y, a.set(L.visible);
241
241
  break;
242
242
  }
243
243
  case "circular":
@@ -252,7 +252,7 @@ var Ee = [
252
252
  order: D.circular?.order ?? "group",
253
253
  spacing: Math.max(M === "arc" ? 16 : 18, e)
254
254
  };
255
- ot = M === "arc" ? h(t) : g(t), o = ot.x, s = ot.y;
255
+ ft = M === "arc" ? h(t) : g(t), o = ft.x, s = ft.y;
256
256
  break;
257
257
  }
258
258
  case "none": j.nodes.forEach((t, n) => {
@@ -262,30 +262,30 @@ var Ee = [
262
262
  }
263
263
  let c = new Uint8Array(r);
264
264
  for (let t = 0; t < r; t++) c[t] = +!!e.get(j.nodes[t].id)?.visible;
265
- if (tt = a, ut = Qt(), M === "force") Yt(e), rt = null, nt = null;
265
+ if (st = a, gt = an(), M === "force") tn(e), lt = null, ct = null;
266
266
  else {
267
- I = o, Qe = s, P = new Float64Array(r), F = new Float64Array(r);
268
- let n = t && e.size ? zt() : 0;
267
+ I = o, it = s, P = new Float64Array(r), F = new Float64Array(r);
268
+ let n = t && e.size ? Gt() : 0;
269
269
  if (n > 0) {
270
- $e = new Float64Array(r), et = new Float64Array(r);
270
+ at = new Float64Array(r), ot = new Float64Array(r);
271
271
  for (let t = 0; t < r; t++) {
272
272
  let n = e.get(j.nodes[t].id);
273
273
  if (n && n.visible) {
274
- $e[t] = n.x, et[t] = n.y;
274
+ at[t] = n.x, ot[t] = n.y;
275
275
  continue;
276
276
  }
277
277
  let r = L ? L.parent[t] : -1, i;
278
278
  for (; r >= 0 && !(i = e.get(j.nodes[r].id))?.visible;) r = L.parent[r];
279
- $e[t] = i?.visible ? i.x : I[t], et[t] = i?.visible ? i.y : Qe[t];
279
+ at[t] = i?.visible ? i.x : I[t], ot[t] = i?.visible ? i.y : it[t];
280
280
  }
281
- P.set($e), F.set(et), nt = c, rt = {
282
- start: Ye(),
281
+ P.set(at), F.set(ot), ct = c, lt = {
282
+ start: tt(),
283
283
  duration: n
284
- }, it = 0;
285
- } else P.set(I), F.set(Qe), rt = null, nt = null;
284
+ }, ut = 0;
285
+ } else P.set(I), F.set(it), lt = null, ct = null;
286
286
  }
287
- wt || (Tt = !0, Et = e.size > 0 && t && M !== "force"), $t(), en(), St = new Float64Array(j.m).fill(NaN), Bn = null, ft = !0, B = !0, jt = "", Mn(), An(), Q(), M !== "force" && Xt();
288
- }, Qt = () => {
287
+ At || (jt = !0, Mt = e.size > 0 && t && M !== "force"), on(), sn(), Ot = new Float64Array(j.m).fill(NaN), Xn = null, vt = !0, B = !0, Lt = "", Hn(), Bn(), Q(), M !== "force" && nn();
288
+ }, an = () => {
289
289
  let e = new Int32Array(j.n);
290
290
  if (!L) return e;
291
291
  let t = [];
@@ -298,8 +298,8 @@ var Ee = [
298
298
  i >= 0 && (e[i] += e[r] + 1);
299
299
  }
300
300
  return e;
301
- }, $t = () => {
302
- lt = null;
301
+ }, on = () => {
302
+ ht = null;
303
303
  let e = D.dag?.criticalPath;
304
304
  if (!e || M !== "dag") return;
305
305
  let t = new Uint8Array(j.n), n = new Uint8Array(j.m);
@@ -319,15 +319,15 @@ var Ee = [
319
319
  t >= 0 && r[t + 1] === j.target[e] && (n[e] = 1);
320
320
  }
321
321
  }
322
- lt = {
322
+ ht = {
323
323
  nodes: t,
324
324
  edges: n
325
325
  };
326
- }, en = () => {
326
+ }, sn = () => {
327
327
  let e = O.background;
328
- We = He(O);
328
+ Xe = Je(O);
329
329
  let n = O.palette.length ? O.palette : [O.primary];
330
- bt = j.groups.map((e, t) => e.color ? Ht(e.color, n[t % n.length]) : n[t % n.length]), xt = Ht(D.dag?.criticalColor ?? "var(--danger-color, #ef4444)", [
330
+ Et = j.groups.map((e, t) => e.color ? Jt(e.color, n[t % n.length]) : n[t % n.length]), Dt = Jt(D.dag?.criticalColor ?? "var(--danger-color, #ef4444)", [
331
331
  .94,
332
332
  .27,
333
333
  .27,
@@ -345,36 +345,36 @@ var Ee = [
345
345
  });
346
346
  }
347
347
  V = j.nodes.map((e, t) => {
348
- if (e.color) return Ht(e.color, O.primary);
348
+ if (e.color) return Jt(e.color, O.primary);
349
349
  let i = j.groupOf[t];
350
- return i >= 0 ? bt[i] : r[t] >= 0 ? n[(r[t] + 1) % n.length] : O.primary;
350
+ return i >= 0 ? Et[i] : r[t] >= 0 ? n[(r[t] + 1) % n.length] : O.primary;
351
351
  });
352
- let i = t(e, O.textMuted, We ? .42 : .36), a = D.edgeColor ?? "neutral", o = D.edgeWidth, s = j.edgeValueRange, [c, l] = Array.isArray(o) ? o : typeof o == "number" ? [o, o] : s && s[1] > s[0] ? [1, 5] : [1.25, 1.25];
353
- gt = [], _t = new Float64Array(j.m), vt = new Uint8Array(j.m), yt = new Uint8Array(j.m);
352
+ let i = t(e, O.textMuted, Xe ? .42 : .36), a = D.edgeColor ?? "neutral", o = D.edgeWidth, s = j.edgeValueRange, [c, l] = Array.isArray(o) ? o : typeof o == "number" ? [o, o] : s && s[1] > s[0] ? [1, 5] : [1.25, 1.25];
353
+ St = [], Ct = new Float64Array(j.m), wt = new Uint8Array(j.m), Tt = new Uint8Array(j.m);
354
354
  let u = D.arrows ?? M === "dag";
355
355
  j.edges.forEach((n, r) => {
356
356
  let d = j.source[r], f = j.target[r], p = i;
357
- n.color ? p = Ht(n.color, i) : a === "source" ? p = t(e, V[d], .55) : a === "target" ? p = t(e, V[f], .55) : M === "mindmap" && (p = t(e, V[f], .7)), gt.push(p);
357
+ n.color ? p = Jt(n.color, i) : a === "source" ? p = t(e, V[d], .55) : a === "target" ? p = t(e, V[f], .55) : M === "mindmap" && (p = t(e, V[f], .7)), St.push(p);
358
358
  let m = c;
359
- Number.isFinite(n.width) && n.width > 0 ? m = n.width : s && s[1] > s[0] && Number.isFinite(n.value) ? m = c + (l - c) * Math.sqrt((n.value - s[0]) / (s[1] - s[0])) : M === "mindmap" && L && o === void 0 && (m = Math.max(1.25, 3.4 - L.depth[f] * .75)), _t[r] = m, vt[r] = n.directed ?? u ? 1 : 0, yt[r] = +!!n.dashed;
359
+ Number.isFinite(n.width) && n.width > 0 ? m = n.width : s && s[1] > s[0] && Number.isFinite(n.value) ? m = c + (l - c) * Math.sqrt((n.value - s[0]) / (s[1] - s[0])) : M === "mindmap" && L && o === void 0 && (m = Math.max(1.25, 3.4 - L.depth[f] * .75)), Ct[r] = m, wt[r] = n.directed ?? u ? 1 : 0, Tt[r] = +!!n.dashed;
360
360
  }), B = !0;
361
361
  }, Z = (e) => {
362
- if (st) return 0;
362
+ if (pt) return 0;
363
363
  let t = j.groupOf[e];
364
- if (t >= 0 && ct.has(j.groups[t].id)) return 0;
365
- let n = tt[e], r = nt ? nt[e] : n;
366
- return rt ? n && r ? 1 : n ? it : r ? 1 - it : 0 : n;
367
- }, tn = (e) => N.kind[e] !== C.Circle, nn = (e, t, n) => t ? [P[e], F[e] + n * N.height[e] / 2] : [P[e] + n * N.width[e] / 2, F[e]], rn = () => {
368
- let e = M === "org" ? "TB" : Xe;
364
+ if (t >= 0 && mt.has(j.groups[t].id)) return 0;
365
+ let n = st[e], r = ct ? ct[e] : n;
366
+ return lt ? n && r ? 1 : n ? ut : r ? 1 - ut : 0 : n;
367
+ }, cn = (e) => N.kind[e] !== C.Circle, ln = (e, t, n) => t ? [P[e], F[e] + n * N.height[e] / 2] : [P[e] + n * N.width[e] / 2, F[e]], un = () => {
368
+ let e = M === "org" ? "TB" : nt;
369
369
  return {
370
370
  vertical: M !== "mindmap" && (e === "TB" || e === "BT"),
371
371
  sign: e === "BT" || e === "RL" ? -1 : 1
372
372
  };
373
- }, an = (e, t, n, r) => {
373
+ }, dn = (e, t, n, r) => {
374
374
  if (e.length < 4) return e;
375
- let [i, a] = [e[2] - e[0], e[3] - e[1]], o = Math.hypot(i, a) || 1, [s, c] = oe(e), l = re(tn(t), N.width[t], N.height[t], i / o, a / o), u = re(tn(n), N.width[n], N.height[n], s, c) + +!!r;
376
- return he(e, l, u);
377
- }, on = (e) => {
375
+ let [i, a] = [e[2] - e[0], e[3] - e[1]], o = Math.hypot(i, a) || 1, [s, c] = se(e), l = re(cn(t), N.width[t], N.height[t], i / o, a / o), u = re(cn(n), N.width[n], N.height[n], s, c) + +!!r;
376
+ return ge(e, l, u);
377
+ }, fn = (e) => {
378
378
  let t = [];
379
379
  N.kind[e] === C.Circle && D.nodeLabels !== !1 && t.push(Math.PI / 2);
380
380
  for (let n = j.adjStart[e]; n < j.adjStart[e + 1]; n++) {
@@ -391,107 +391,146 @@ var Ee = [
391
391
  n > r + 1e-9 && (r = n, i = t[e - 1] + n / 2);
392
392
  }
393
393
  return i;
394
- }, sn = (e) => Math.max(12, Math.min(40, Math.min(N.width[e], N.height[e]) * .9)), cn = (e) => {
395
- let t = j.source[e], n = on(t), r = N.width[t], i = N.height[t], a = tn(t), o = (e) => re(a, r, i, Math.cos(e), Math.sin(e));
396
- return ce(P[t], F[t], n, o(n - .42), o(n + .42) + +!!vt[e], sn(t) * (1 + .6 * j.bend[e]));
397
- }, ln = (e, t) => {
398
- let n = j.source[e], r = j.target[e], i = !!vt[e];
399
- if (n === r) return cn(e);
394
+ }, pn = (e) => Math.max(12, Math.min(40, Math.min(N.width[e], N.height[e]) * .9)), mn = (e, t, n) => {
395
+ let r = Math.abs(t) > .5, i = (e) => r ? N.width[e] / 2 : N.height[e] / 2, a = (e) => r ? N.height[e] / 2 : N.width[e] / 2, o = Infinity, s = (r, s, c, l) => {
396
+ let u = r - P[e], d = s - F[e], f = u * t + d * n;
397
+ f <= 0 || Math.abs(u * n - d * t) >= a(e) + l + 4 || (o = Math.min(o, f - i(e) - c));
398
+ };
399
+ for (let t = 0; t < j.n; t++) t !== e && Z(t) > 0 && s(P[t], F[t], i(t), a(t));
400
+ if (dt && !lt) for (let e of dt.routes) for (let t = 2; t < e.length - 2; t += 2) s(e[t], e[t + 1], 0, 0);
401
+ return o;
402
+ }, hn = (e) => {
403
+ let t = pn(e);
404
+ if (M !== "dag" && (!Ut() || M === "radial")) return [fn(e), t];
405
+ let { vertical: n } = un(), r = M === "org" && L?.stacked[e] ? [0] : n ? [0, Math.PI] : [-Math.PI / 2, Math.PI / 2], i = N.kind[e] === C.Circle && D.nodeLabels !== !1, a = r[0], o = -Infinity;
406
+ for (let t of r) {
407
+ let r = j.n > Fe ? Infinity : mn(e, Math.round(Math.cos(t)), Math.round(Math.sin(t)));
408
+ t > 0 && !n && i && (r -= 18), r > o && (o = r, a = t);
409
+ }
410
+ let s = 0;
411
+ for (let t = j.adjStart[e]; t < j.adjStart[e + 1]; t++) {
412
+ let e = j.adjEdge[t];
413
+ j.source[e] === j.target[e] && (s = Math.max(s, j.bend[e]));
414
+ }
415
+ return [a, Math.min(t, Math.max(8, (o - 6) / (1 + .6 * s)))];
416
+ }, gn = (e) => {
417
+ let t = j.source[e], [n, r] = hn(t), i = N.width[t], a = N.height[t], o = r * (1 + .6 * j.bend[e]), s = +!!wt[e];
418
+ if (cn(t)) return S(P[t], F[t], i, a, n, o, Math.max(10, r * .8) * (1 + .35 * j.bend[e]), s);
419
+ let c = (e) => re(!1, i, a, Math.cos(e), Math.sin(e));
420
+ return le(P[t], F[t], n, c(n - .42), c(n + .42) + s, o);
421
+ }, _n = (e, t) => t * Math.min(je, e / (2 * Math.abs(t) + 2)), vn = (e, t, n, r, i, a) => {
422
+ let o = e.slice(), s = o.length - 2, c = +!r, l = (e, t) => {
423
+ let n = r ? N.width[t] : N.height[t], a = _n(n, i);
424
+ if (o[e + c] += a, !cn(t)) {
425
+ let i = r ? F[t] : P[t], s = 1 - c, l = n / 2;
426
+ o[e + s] = i + (o[e + s] >= i ? 1 : -1) * Math.sqrt(Math.max(0, l * l - a * a));
427
+ }
428
+ };
429
+ for (let e = 2; e < s; e += 2) o[e + c] += i * Ne;
430
+ if (l(0, t), l(s, n), a && o.length === 4) {
431
+ let t = [(o[0] + o[2]) / 2, (o[1] + o[3]) / 2];
432
+ t[c] = (e[c] + e[2 + c]) / 2 + i * Pe, o.splice(2, 0, t[0], t[1]);
433
+ }
434
+ return o;
435
+ }, yn = (e, t) => {
436
+ let n = j.source[e], r = j.target[e], i = !!wt[e];
437
+ if (n === r) return gn(e);
400
438
  let a = j.bend[e], o = Number.isFinite(a);
401
439
  if (M === "arc") {
402
440
  let e = o ? 1 + .25 * (n < r ? a : -a) : 1;
403
- return an(te(P[n], P[r], F[n], e), n, r, i);
441
+ return dn(te(P[n], P[r], F[n], e), n, r, i);
404
442
  }
405
- let s = P[r] - P[n], c = F[r] - F[n], l = o ? a * ke : 0;
443
+ let s = P[r] - P[n], c = F[r] - F[n], l = o ? a * Ae : 0;
406
444
  if (t === "straight") {
407
445
  if (!l) return null;
408
446
  let e = (P[n] + P[r]) / 2, t = (F[n] + F[r]) / 2;
409
- return an(fe(P[n], F[n], e - c * l, t + s * l, P[r], F[r]), n, r, i);
447
+ return dn(pe(P[n], F[n], e - c * l, t + s * l, P[r], F[r]), n, r, i);
410
448
  }
411
449
  if (M === "circular" && t === "curve") {
412
450
  let e = Math.max(0, Math.min(1, D.circular?.tension ?? .8)), t = (P[n] + P[r]) / 2 * (1 - e) - c * l, a = (F[n] + F[r]) / 2 * (1 - e) + s * l;
413
- return an(fe(P[n], F[n], t, a, P[r], F[r]), n, r, i);
451
+ return dn(pe(P[n], F[n], t, a, P[r], F[r]), n, r, i);
414
452
  }
415
453
  if (M === "radial" && t === "spline") {
416
454
  let e = Math.hypot(P[n], F[n]), t = Math.hypot(P[r], F[r]), a = Math.atan2(F[n], P[n]), o = Math.atan2(F[r], P[r]), s = (e + t) / 2, c = [P[n], F[n]];
417
- return S(c, P[n], F[n], e < 1e-6 ? P[n] : s * Math.cos(a), e < 1e-6 ? F[n] : s * Math.sin(a), s * Math.cos(o), s * Math.sin(o), P[r], F[r]), an(c, n, r, i);
455
+ return ie(c, P[n], F[n], e < 1e-6 ? P[n] : s * Math.cos(a), e < 1e-6 ? F[n] : s * Math.sin(a), s * Math.cos(o), s * Math.sin(o), P[r], F[r]), dn(c, n, r, i);
418
456
  }
419
457
  if (t === "spline" || t === "orthogonal") {
420
- let i = rn(), a = i.sign;
421
- M === "mindmap" && (a = P[r] >= P[n] ? 1 : -1);
422
- let o = at && !rt ? at.routes[e] : null, s;
423
- if (o && o.length >= 4) s = o;
458
+ let i = un(), s = i.sign;
459
+ M === "mindmap" && (s = P[r] >= P[n] ? 1 : -1);
460
+ let c = dt && !lt ? dt.routes[e] : null, l;
461
+ if (c && c.length >= 4) l = c;
424
462
  else {
425
- let e = i.vertical ? F[r] - F[n] : P[r] - P[n], t = M === "mindmap" || e * a >= 0 ? a : -a;
426
- s = [...nn(n, i.vertical, t), ...nn(r, i.vertical, -t)];
463
+ let e = i.vertical ? F[r] - F[n] : P[r] - P[n], t = M === "mindmap" || e * s >= 0 ? s : -s;
464
+ l = [...ln(n, i.vertical, t), ...ln(r, i.vertical, -t)];
427
465
  }
428
- if (t === "orthogonal") {
466
+ let u = o ? n < r ? a : -a : 0;
467
+ if (u && (l = vn(l, n, r, i.vertical, u, t === "spline")), t === "orthogonal") {
429
468
  if (M === "org" && L?.stacked[r] && L.parent[r] === n) {
430
- let e = F[n] + N.height[n] / 2, t = P[r] - N.width[r] / 2, i = t - 10, a = e + 14;
431
- return pe([
432
- P[n],
469
+ let e = F[n] + N.height[n] / 2, t = P[r] - N.width[r] / 2, i = P[n] + _n(N.width[n], u), a = F[r] - _n(N.height[r], u), o = t - 10 + u * 3, s = e + 14 + u * 4;
470
+ return me([
471
+ i,
433
472
  e,
434
- P[n],
435
- a,
436
473
  i,
474
+ s,
475
+ o,
476
+ s,
477
+ o,
437
478
  a,
438
- i,
439
- F[r],
440
479
  t,
441
- F[r]
480
+ a
442
481
  ], 6);
443
482
  }
444
- if (M === "org" && s.length === 4) {
445
- let e = (s[1] + s[3]) / 2;
446
- return pe([
447
- s[0],
448
- s[1],
449
- s[0],
483
+ if (M === "org" && l.length === 4 && !u) {
484
+ let e = (l[1] + l[3]) / 2;
485
+ return me([
486
+ l[0],
487
+ l[1],
488
+ l[0],
450
489
  e,
451
- s[2],
490
+ l[2],
452
491
  e,
453
- s[2],
454
- s[3]
492
+ l[2],
493
+ l[3]
455
494
  ], 6);
456
495
  }
457
- return le(s, i.vertical, 8);
496
+ return ue(l, i.vertical, M === "org" ? 6 : 8, u * Me);
458
497
  }
459
- return me(s, i.vertical);
498
+ return he(l, i.vertical);
460
499
  }
461
500
  let u = (P[n] + P[r]) / 2, d = (F[n] + F[r]) / 2, f = o ? l : .18;
462
- return an(fe(P[n], F[n], u - c * f, d + s * f, P[r], F[r]), n, r, i);
463
- }, un = () => {
464
- let e = Vt();
465
- dt = Array(j.m);
466
- for (let t = 0; t < j.m; t++) dt[t] = Z(j.source[t]) > 0 && Z(j.target[t]) > 0 ? ln(t, e) : null;
467
- ft = !1, pt++;
468
- }, dn = (e) => {
501
+ return dn(pe(P[n], F[n], u - c * f, d + s * f, P[r], F[r]), n, r, i);
502
+ }, bn = () => {
503
+ let e = qt();
504
+ _t = Array(j.m);
505
+ for (let t = 0; t < j.m; t++) _t[t] = Z(j.source[t]) > 0 && Z(j.target[t]) > 0 ? yn(t, e) : null;
506
+ vt = !1, yt++;
507
+ }, xn = (e) => {
469
508
  let t = j.source[e], n = j.target[e], r = P[n] - P[t], i = F[n] - F[t], a = Math.hypot(r, i);
470
509
  if (a < 1e-9) return null;
471
- let o = r / a, s = i / a, c = re(tn(t), N.width[t], N.height[t], o, s), l = re(tn(n), N.width[n], N.height[n], o, s) + +!!vt[e];
510
+ let o = r / a, s = i / a, c = re(cn(t), N.width[t], N.height[t], o, s), l = re(cn(n), N.width[n], N.height[n], o, s) + +!!wt[e];
472
511
  return c + l >= a ? null : [
473
512
  P[t] + o * c,
474
513
  F[t] + s * c,
475
514
  P[n] - o * l,
476
515
  F[n] - s * l
477
516
  ];
478
- }, fn = () => {
479
- let e = q?.type === "node" ? [q.index] : J >= 0 ? [J] : [...Y], t = Bt(), n = q?.type === "edge" ? q.index : -1, r = `${t}|${e.join(",")}|${n}`;
480
- if (r === jt) return;
481
- if (jt = r, B = !0, (t === "none" || !e.length) && n < 0) {
482
- At = null;
517
+ }, Sn = () => {
518
+ let e = q?.type === "node" ? [q.index] : J >= 0 ? [J] : [...Y], t = Kt(), n = q?.type === "edge" ? q.index : -1, r = `${t}|${e.join(",")}|${n}`;
519
+ if (r === Lt) return;
520
+ if (Lt = r, B = !0, (t === "none" || !e.length) && n < 0) {
521
+ It = null;
483
522
  return;
484
523
  }
485
524
  let i = new Uint8Array(j.n), a = new Uint8Array(j.m);
486
- if (t !== "none") for (let n of e) t === "lineage" ? ye(j, n, i, a) : be(j, n, i, a);
487
- n >= 0 && (a[n] = 1, i[j.source[n]] = 1, i[j.target[n]] = 1), At = {
525
+ if (t !== "none") for (let n of e) t === "lineage" ? be(j, n, i, a) : xe(j, n, i, a);
526
+ n >= 0 && (a[n] = 1, i[j.source[n]] = 1, i[j.target[n]] = 1), It = {
488
527
  nodes: i,
489
528
  edges: a,
490
529
  accent: (t === "lineage" || e.length !== 1 ? O.primary : V[e[0]]) ?? O.primary
491
530
  };
492
- }, pn = () => {
493
- ht++;
494
- let e = O.background, r = [], i = Vt(), o = j.n > 2e3 ? 2 : 3, s = At, c = [
531
+ }, Cn = () => {
532
+ xt++;
533
+ let e = O.background, r = [], i = qt(), o = j.n > 2e3 ? 2 : 3, s = It, c = [
495
534
  /* @__PURE__ */ new Map(),
496
535
  /* @__PURE__ */ new Map(),
497
536
  /* @__PURE__ */ new Map()
@@ -500,7 +539,7 @@ var Ee = [
500
539
  return a || (a = {
501
540
  color: t,
502
541
  width: r,
503
- buf: Re()
542
+ buf: We()
504
543
  }, c[e].set(i, a)), a.buf;
505
544
  }, u = (e) => (6 + e * 1.6) / H, d = (e) => (8 + e * 2.2) / H, f = D.arrowStyle === "filled", p = [
506
545
  /* @__PURE__ */ new Map(),
@@ -515,20 +554,20 @@ var Ee = [
515
554
  _ || (_ = {
516
555
  color: r,
517
556
  points: []
518
- }, p[t].set(g, _)), se(_.points, m, o, s, c, h, d(i), a), l(t, r, Math.min(i, 1)).pushAll(m);
557
+ }, p[t].set(g, _)), ce(_.points, m, o, s, c, h, d(i), a), l(t, r, Math.min(i, 1)).pushAll(m);
519
558
  };
520
559
  for (let n = 0; n < j.m; n++) {
521
560
  let r = j.source[n], o = j.target[n], c = Math.min(Z(r), Z(o));
522
561
  if (c <= 0) continue;
523
- let u = gt[n], p = _t[n], m = 1;
524
- lt?.edges[n] && (u = xt, p += 1), s && (s.edges[n] ? (m = 2, lt?.edges[n] || (u = t(e, s.accent, .9)), p += .75) : (m = 0, u = t(e, u, .22))), c < 1 && (u = t(e, u, c));
525
- let g = l(m, u, p), _ = dt[n] ?? null;
562
+ let u = St[n], p = Ct[n], m = 1;
563
+ ht?.edges[n] && (u = Dt, p += 1), s && (s.edges[n] ? (m = 2, ht?.edges[n] || (u = t(e, s.accent, .9)), p += .75) : (m = 0, u = t(e, u, .22))), c < 1 && (u = t(e, u, c));
564
+ let g = l(m, u, p), _ = _t[n] ?? null;
526
565
  if (!_) {
527
566
  if (i !== "straight" || M === "arc") continue;
528
- let e = dn(n);
567
+ let e = xn(n);
529
568
  if (!e) continue;
530
- if (!yt[n] && !(f && vt[n])) {
531
- if (g.push(e[0], e[1]), g.push(e[2], e[3]), g.push(a, a), vt[n]) {
569
+ if (!Tt[n] && !(f && wt[n])) {
570
+ if (g.push(e[0], e[1]), g.push(e[2], e[3]), g.push(a, a), wt[n]) {
532
571
  let t = Math.hypot(e[2] - e[0], e[3] - e[1]) || 1;
533
572
  h(g, m, u, p, e[2], e[3], (e[2] - e[0]) / t, (e[3] - e[1]) / t);
534
573
  }
@@ -543,8 +582,8 @@ var Ee = [
543
582
  }
544
583
  if (_.length < 4) continue;
545
584
  let v = _;
546
- if (f && vt[n] && (v = he(_.slice(), 0, d(p) * .72)), yt[n] ? g.pushAll(ie(v, 5 / H, 4 / H, a)) : (g.pushAll(v), g.push(a, a)), vt[n]) {
547
- let [e, t] = oe(_);
585
+ if (f && wt[n] && (v = ge(_.slice(), 0, d(p) * .72)), Tt[n] ? g.pushAll(ae(v, 5 / H, 4 / H, a)) : (g.pushAll(v), g.push(a, a)), wt[n]) {
586
+ let [e, t] = se(_);
548
587
  h(g, m, u, p, _[_.length - 2], _[_.length - 1], e, t);
549
588
  }
550
589
  }
@@ -554,7 +593,7 @@ var Ee = [
554
593
  let e = {
555
594
  kind: "line",
556
595
  key: `edges:${t}:${n}`,
557
- version: ht,
596
+ version: xt,
558
597
  color: i.color,
559
598
  points: i.buf.points(),
560
599
  count: i.buf.count(),
@@ -567,7 +606,7 @@ var Ee = [
567
606
  let i = {
568
607
  kind: "area",
569
608
  key: `heads:${t}:${e}`,
570
- version: ht,
609
+ version: xt,
571
610
  color: n.color,
572
611
  points: Float32Array.from(n.points),
573
612
  count: n.points.length / 3,
@@ -581,38 +620,38 @@ var Ee = [
581
620
  let g = (n, r) => {
582
621
  let i = V[n];
583
622
  return s && !s.nodes[n] && (i = t(e, i, .2)), r < 1 ? t(e, i, r) : i;
584
- }, _ = [], v = [], y = [], ee = [], b = [], x = [], te = /* @__PURE__ */ new Map(), re = /* @__PURE__ */ new Map(), S = M === "mindmap" ? 999 : Math.max(1, Math.min(M === "org" ? 10 : 8, (M === "org" ? 10 : 7) * H)), ae = j.n <= Oe;
585
- for (let r of mn()) {
623
+ }, _ = [], v = [], y = [], ee = [], b = [], x = [], te = /* @__PURE__ */ new Map(), re = /* @__PURE__ */ new Map(), S = M === "mindmap" ? 999 : Math.max(1, Math.min(M === "org" ? 10 : 8, (M === "org" ? 10 : 7) * H)), ie = j.n <= ke;
624
+ for (let r of wn()) {
586
625
  let i = Z(r);
587
626
  if (i <= 0) continue;
588
627
  let a = P[r], c = F[r], l = g(r, i), u = Y.has(r), d = q?.type === "node" && q.index === r;
589
628
  if (N.kind[r] === C.Circle) {
590
629
  let i = Math.max(o, N.width[r] * H);
591
- ae && _.push(a, c, i + 3, n(e)), Rt() && L && ut[r] > 0 && !hn(r) ? ee.push(a, c, i, n(l)) : v.push(a, c, i, n(l)), u ? b.push(a, c, i + 7, n(O.primary)) : d && y.push(a, c, i + 6, n(t(e, V[r], .7)));
630
+ ie && _.push(a, c, i + 3, n(e)), Wt() && L && gt[r] > 0 && !Tn(r) ? ee.push(a, c, i, n(l)) : v.push(a, c, i, n(l)), u ? b.push(a, c, i + 7, n(O.primary)) : d && y.push(a, c, i + 6, n(t(e, V[r], .7)));
592
631
  continue;
593
632
  }
594
- let f = N.width[r], p = N.height[r], m = N.kind[r] === C.Solid, h = !!lt?.nodes[r], ne = m ? l : t(e, l, h ? 1 : We ? .62 : .5), S = m ? l : t(e, l, We ? .2 : .09);
595
- h && (ne = t(e, xt, i)), s && !s.nodes[r] && (S = t(e, S, .5), m || (ne = t(e, ne, .4)));
596
- let ie = `${Math.round(f * 2) / 2}|${h ? 2 : 1.25}`, oe = te.get(ie);
633
+ let f = N.width[r], p = N.height[r], m = N.kind[r] === C.Solid, h = !!ht?.nodes[r], ne = m ? l : t(e, l, h ? 1 : Xe ? .62 : .5), S = m ? l : t(e, l, Xe ? .2 : .09);
634
+ h && (ne = t(e, Dt, i)), s && !s.nodes[r] && (S = t(e, S, .5), m || (ne = t(e, ne, .4)));
635
+ let ae = `${Math.round(f * 2) / 2}|${h ? 2 : 1.25}`, oe = te.get(ae);
597
636
  if (oe || (oe = {
598
637
  half: f / 2,
599
638
  inset: h ? 2 : 1.25,
600
639
  border: [],
601
640
  fill: []
602
- }, te.set(ie, oe)), oe.border.push(a, c - p / 2, c + p / 2, n(ne)), oe.fill.push(a, c - p / 2, c + p / 2, n(S)), u || d) {
641
+ }, te.set(ae, oe)), oe.border.push(a, c - p / 2, c + p / 2, n(ne)), oe.fill.push(a, c - p / 2, c + p / 2, n(S)), u || d) {
603
642
  let i = (u ? 3 : 2.5) / H, o = `${Math.round((f / 2 + i) * 64)}`, s = re.get(o);
604
643
  s || re.set(o, s = []), s.push(f / 2 + i, a, c - p / 2 - i, c + p / 2 + i, n(u ? O.primary : t(e, V[r], .55)));
605
644
  }
606
645
  N.kind[r] === C.Card && f * H >= 96 && x.push(a - f / 2 + 26, c, Math.min(32, p - 16) * H, n(l));
607
646
  }
608
- let ce = (e, t, n, i) => {
647
+ let oe = (e, t, n, i) => {
609
648
  if (!t.length) return;
610
649
  let a = t.length / 4, o = /* @__PURE__ */ new ArrayBuffer(a * 16), s = new Float32Array(o), c = new Uint32Array(o);
611
650
  for (let e = 0; e < a; e++) s[e * 4] = t[e * 4], s[e * 4 + 1] = t[e * 4 + 1], s[e * 4 + 2] = t[e * 4 + 2], c[e * 4 + 3] = t[e * 4 + 3];
612
651
  let l = {
613
652
  kind: "scatter",
614
653
  key: e,
615
- version: ht,
654
+ version: xt,
616
655
  color: O.primary,
617
656
  instances: o,
618
657
  count: a,
@@ -627,7 +666,7 @@ var Ee = [
627
666
  let u = {
628
667
  kind: "bar",
629
668
  key: e,
630
- version: ht,
669
+ version: xt,
631
670
  color: O.primary,
632
671
  instances: s,
633
672
  count: o,
@@ -639,73 +678,73 @@ var Ee = [
639
678
  };
640
679
  r.push(u);
641
680
  };
642
- ce("halo", _, 1, 0), ce("nodes", v, 1, 0), ce("collapsed", ee, .28, 2), ce("hover-rings", y, 0, 2), ce("selection", b, 0, 2.25);
681
+ oe("halo", _, 1, 0), oe("nodes", v, 1, 0), oe("collapsed", ee, .28, 2), oe("hover-rings", y, 0, 2), oe("selection", b, 0, 2.25);
643
682
  for (let [e, t] of re) {
644
683
  let n = [];
645
684
  for (let e = 0; e < t.length; e += 5) n.push(t[e + 1], t[e + 2], t[e + 3], t[e + 4]);
646
685
  le(`outline:${e}`, n, t[0], 0, S === 999 ? 999 : S + 3);
647
686
  }
648
687
  for (let [e, t] of te) le(`border:${e}`, t.border, t.half, 0, S), le(`fill:${e}`, t.fill, t.half, t.inset, S === 999 ? 999 : Math.max(0, S - 1));
649
- return ce("avatars", x, 1, 0), r;
650
- }, mn = () => {
688
+ return oe("avatars", x, 1, 0), r;
689
+ }, wn = () => {
651
690
  let e = [], t = [];
652
691
  for (let n = 0; n < j.n; n++) Y.has(n) || q?.type === "node" && q.index === n || n === J ? t.push(n) : e.push(n);
653
692
  return e.concat(t);
654
- }, hn = (e) => !!L && L.children[e].some((e) => tt[e]);
693
+ }, Tn = (e) => !!L && L.children[e].some((e) => st[e]);
655
694
  function Q() {
656
- A || Ft || !Ue || (Ft = Ue.requestAnimationFrame(_n));
695
+ A || Vt || !Ye || (Vt = Ye.requestAnimationFrame(Dn));
657
696
  }
658
- let gn = () => ({
697
+ let En = () => ({
659
698
  xScale: 2 * H / G,
660
699
  xOffset: 2 * U / G - 1,
661
700
  yScale: -2 * H / K,
662
701
  yOffset: 1 - 2 * W / K
663
702
  });
664
- function _n() {
665
- if (Ft = 0, A) return;
703
+ function Dn() {
704
+ if (Vt = 0, A) return;
666
705
  let e = E.clientWidth, t = E.clientHeight;
667
706
  if (e <= 0 || t <= 0) return;
668
- (e !== G || t !== K) && (G = e, K = t, wt || (Tt = !0), B = !0);
669
- let n = Ue?.devicePixelRatio || 1, r = !1, i = !1;
670
- if (R?.running() && (R.step(8), ft = !0, r = R.running() && !R.threaded(), i = R.running() && Ot && !wt && !st), rt) {
671
- let e = Math.min(1, (Ye() - rt.start) / Math.max(1, rt.duration));
672
- it = Le(e);
673
- for (let e = 0; e < j.n; e++) P[e] = $e[e] + (I[e] - $e[e]) * it, F[e] = et[e] + (Qe[e] - et[e]) * it;
674
- e >= 1 && (rt = null, nt = null, it = 1), ft = !0, r = !0;
675
- }
676
- if (Tt) {
677
- Tt = !1;
678
- let e = wn();
679
- e && Et && Dt && !Je?.matches ? Ct = {
707
+ (e !== G || t !== K) && (G = e, K = t, At || (jt = !0), B = !0);
708
+ let n = Ye?.devicePixelRatio || 1, r = !1, i = !1;
709
+ if (R?.running() && (R.step(8), vt = !0, r = R.running() && !R.threaded(), i = R.running() && Pt && !At && !pt), lt) {
710
+ let e = Math.min(1, (tt() - lt.start) / Math.max(1, lt.duration));
711
+ ut = Ue(e);
712
+ for (let e = 0; e < j.n; e++) P[e] = at[e] + (I[e] - at[e]) * ut, F[e] = ot[e] + (it[e] - ot[e]) * ut;
713
+ e >= 1 && (lt = null, ct = null, ut = 1), vt = !0, r = !0;
714
+ }
715
+ if (jt) {
716
+ jt = !1;
717
+ let e = Pn();
718
+ e && Mt && Nt && !et?.matches ? kt = {
680
719
  from: [
681
720
  H,
682
721
  U,
683
722
  W
684
723
  ],
685
724
  to: e,
686
- start: Ye()
687
- } : e && ([H, U, W] = e), Et = !1, B = !0;
725
+ start: tt()
726
+ } : e && ([H, U, W] = e), Mt = !1, B = !0;
688
727
  } else if (i) {
689
- let e = wn();
690
- e && (Ct = null, !Dt || Je?.matches ? [H, U, W] = e : En(e, .25) && (r = !0), B = !0);
728
+ let e = Pn();
729
+ e && (kt = null, !Nt || et?.matches ? [H, U, W] = e : In(e, .25) && (r = !0), B = !0);
691
730
  }
692
- if (Ct) {
693
- let e = Math.min(1, (Ye() - Ct.start) / Me), t = Le(e), [n, i, a] = Ct.from, [o, s, c] = Ct.to, l = n * (o / n) ** +t, u = (G / 2 - i) / n, d = (K / 2 - a) / n, f = (G / 2 - s) / o, p = (K / 2 - c) / o, m = u + (f - u) * t, h = d + (p - d) * t;
694
- H = l, U = G / 2 - m * l, W = K / 2 - h * l, e >= 1 && ([H, U, W] = Ct.to, Ct = null), B = !0, r = !0;
731
+ if (kt) {
732
+ let e = Math.min(1, (tt() - kt.start) / Re), t = Ue(e), [n, i, a] = kt.from, [o, s, c] = kt.to, l = n * (o / n) ** +t, u = (G / 2 - i) / n, d = (K / 2 - a) / n, f = (G / 2 - s) / o, p = (K / 2 - c) / o, m = u + (f - u) * t, h = d + (p - d) * t;
733
+ H = l, U = G / 2 - m * l, W = K / 2 - h * l, e >= 1 && ([H, U, W] = kt.to, kt = null), B = !0, r = !0;
695
734
  }
696
- if (ft && (un(), B = !0), fn(), X) {
697
- B && (mt = st ? [] : pn(), B = !1);
735
+ if (vt && (bn(), B = !0), Sn(), X) {
736
+ B && (bt = pt ? [] : Cn(), B = !1);
698
737
  let r = Math.max(1, Math.round(e * n)), i = Math.max(1, Math.round(t * n));
699
- (X.canvas.width !== r || X.canvas.height !== i) && X.resize(r, i), X.canvas.style.width = `${e}px`, X.canvas.style.height = `${t}px`, X.render(mt, {
700
- transform: gn(),
738
+ (X.canvas.width !== r || X.canvas.height !== i) && X.resize(r, i), X.canvas.style.width = `${e}px`, X.canvas.style.height = `${t}px`, X.render(bt, {
739
+ transform: En(),
701
740
  width: r,
702
741
  height: i,
703
742
  dpr: n
704
- }), Dt = !0;
743
+ }), Nt = !0;
705
744
  }
706
- ee(T.foreground, e, t, n), Sn(n), q && Yn(), r && Q();
745
+ ee(T.foreground, e, t, n), Mn(n), q && ar(), r && Q();
707
746
  }
708
- let vn = (e) => P[e] * H + U, yn = (e) => F[e] * H + W, bn = (e, t, n) => {
747
+ let On = (e) => P[e] * H + U, kn = (e) => F[e] * H + W, An = (e, t, n) => {
709
748
  if (n <= 8) return "";
710
749
  if (e.measureText(t).width <= n) return t;
711
750
  let r = 0, i = t.length;
@@ -714,10 +753,10 @@ var Ee = [
714
753
  e.measureText(`${t.slice(0, a)}…`).width <= n ? r = a : i = a - 1;
715
754
  }
716
755
  return r ? `${t.slice(0, r)}…` : "";
717
- }, xn = (t) => e(t) > .6 ? "#111827" : "#ffffff", Sn = (e) => {
756
+ }, jn = (t) => e(t) > .6 ? "#111827" : "#ffffff", Mn = (e) => {
718
757
  let n = T.foreground.getContext("2d");
719
- if (!n || (n.setTransform(e, 0, 0, e, 0, 0), n.clearRect(0, 0, G, K), st || !j.n)) return;
720
- let r = O.fontFamily, a = i(O.text), o = i(O.textMuted), s = i(O.background), c = At, l = Math.ceil(G / 8) + 1, u = Math.ceil(K / 8) + 1, d = new Uint8Array(l * u), f = (e, t, n, r, i) => {
758
+ if (!n || (n.setTransform(e, 0, 0, e, 0, 0), n.clearRect(0, 0, G, K), pt || !j.n)) return;
759
+ let r = O.fontFamily, a = i(O.text), o = i(O.textMuted), s = i(O.background), c = It, l = Math.ceil(G / 8) + 1, u = Math.ceil(K / 8) + 1, d = new Uint8Array(l * u), f = (e, t, n, r, i) => {
721
760
  let a = Math.max(0, Math.floor(e / 8)), o = Math.min(l - 1, Math.floor(n / 8)), s = Math.max(0, Math.floor(t / 8)), c = Math.min(u - 1, Math.floor(r / 8));
722
761
  if (a > o || s > c) return !1;
723
762
  if (!i) {
@@ -731,32 +770,32 @@ var Ee = [
731
770
  if (N.kind[e] === C.Circle) continue;
732
771
  let l = Z(e);
733
772
  if (l <= 0) continue;
734
- let u = vn(e), d = yn(e), h = N.width[e] * H, g = N.height[e] * H;
773
+ let u = On(e), d = kn(e), h = N.width[e] * H, g = N.height[e] * H;
735
774
  if (!p(u, d, Math.max(h, g))) continue;
736
775
  f(u - h / 2, d - g / 2, u + h / 2, d + g / 2, !0);
737
- let _ = N.font[e] * H, v = Math.max(Ne, _), y = j.nodes[e];
776
+ let _ = N.font[e] * H, v = Math.max(ze, _), y = j.nodes[e];
738
777
  n.globalAlpha = l * (c && !c.nodes[e] ? .45 : 1);
739
778
  let ee = N.kind[e] === C.Solid, b = N.kind[e] === C.Card && h >= 96;
740
779
  if (m && g >= v + 1) {
741
780
  let t = b ? u - h / 2 + 48 * H : u, i = b ? h - 56 * H : h - Math.max(4, 12 * H);
742
781
  n.textAlign = b ? "left" : "center", n.textBaseline = "middle";
743
782
  let s = Math.max(8.5, _ * .88), c = v + Math.max(2, _ * .6) + s, l = y.subtitle && c <= g - 4 ? y.subtitle : "", f = l ? d - c / 2 + v / 2 : d;
744
- n.font = `${N.weight[e]} ${v}px ${r}`, n.fillStyle = ee ? xn(V[e]) : a;
745
- let p = bn(n, Se(j, e), i);
783
+ n.font = `${N.weight[e]} ${v}px ${r}`, n.fillStyle = ee ? jn(V[e]) : a;
784
+ let p = An(n, Ce(j, e), i);
746
785
  if (p && n.fillText(p, t, f), l && p) {
747
- n.font = `${s}px ${r}`, n.fillStyle = ee ? xn(V[e]) : o;
748
- let a = bn(n, l, i);
786
+ n.font = `${s}px ${r}`, n.fillStyle = ee ? jn(V[e]) : o;
787
+ let a = An(n, l, i);
749
788
  a && n.fillText(a, t, d + c / 2 - s / 2);
750
789
  }
751
790
  }
752
791
  if (b) {
753
- let t = Array.from(Se(j, e).trim())[0] ?? "";
754
- n.textAlign = "center", n.font = `600 ${Math.max(8, 13 * H)}px ${r}`, n.fillStyle = xn(V[e]), n.fillText(t.toUpperCase(), u - h / 2 + 26 * H, d);
792
+ let t = Array.from(Ce(j, e).trim())[0] ?? "";
793
+ n.textAlign = "center", n.font = `600 ${Math.max(8, 13 * H)}px ${r}`, n.fillStyle = jn(V[e]), n.fillText(t.toUpperCase(), u - h / 2 + 26 * H, d);
755
794
  }
756
- if (Rt() && L && L.children[e].length) {
757
- let o = !hn(e), c = q?.type === "node" && q.index === e || J === e;
795
+ if (Wt() && L && L.children[e].length) {
796
+ let o = !Tn(e), c = q?.type === "node" && q.index === e || J === e;
758
797
  if (o || c) {
759
- let c = M === "org", f = M === "mindmap" && L.side[e] < 0 ? -1 : 1, p = c ? u : u + f * (h / 2 + 9), m = c ? d + g / 2 + 9 : d, _ = o ? String(ut[e]) : "−";
798
+ let c = M === "org", f = M === "mindmap" && L.side[e] < 0 ? -1 : 1, p = c ? u : u + f * (h / 2 + 9), m = c ? d + g / 2 + 9 : d, _ = o ? String(gt[e]) : "−";
760
799
  n.font = `600 10px ${r}`;
761
800
  let v = Math.max(8, n.measureText(_).width / 2 + 5);
762
801
  n.globalAlpha = l, n.beginPath(), n.fillStyle = s, n.strokeStyle = i(t(O.background, V[e], .75)), n.lineWidth = 1.25, typeof n.roundRect == "function" ? n.roundRect(p - v, m - 8, v * 2, 16, 8) : n.rect(p - v, m - 8, v * 2, 16), n.fill(), n.stroke(), n.fillStyle = a, n.textAlign = "center", n.fillText(_, p, m + .5);
@@ -768,18 +807,18 @@ var Ee = [
768
807
  if (_[e] || N.kind[e] !== C.Circle || h === !1) return;
769
808
  let i = Z(e);
770
809
  if (i <= 0) return;
771
- let l = vn(e), u = yn(e);
810
+ let l = On(e), u = kn(e);
772
811
  if (!p(l, u, 160)) return;
773
812
  let d = Math.max(j.n > 2e3 ? 1 : 1.5, N.width[e] * H / 2);
774
813
  if (!t && h === "auto" && (M === "force" || M === "none") && d * 2 < 5) return;
775
- let m = g(e), y = c && !c.nodes[e], ee = Se(j, e), b = Math.min(180, N.labelWidth[e] * (m ? 1.06 : 1)), x = Cn(e, l, u, d), te, ne, re, S;
814
+ let m = g(e), y = c && !c.nodes[e], ee = Ce(j, e), b = Math.min(180, N.labelWidth[e] * (m ? 1.06 : 1)), x = Nn(e, l, u, d), te, ne, re, S;
776
815
  if (x.angle !== 0) {
777
816
  let e = x.x + Math.cos(x.angle) * (x.align === "left" ? 7 : -7), t = x.y + Math.sin(x.angle) * (x.align === "left" ? 7 : -7);
778
817
  te = e - 6, re = e + 6, ne = t - 6, S = t + 6;
779
818
  } else te = x.align === "left" ? x.x : x.align === "right" ? x.x - b : x.x - b / 2, re = te + b, ne = x.baseline === "top" ? x.y : x.baseline === "bottom" ? x.y - 14 : x.y - 7, S = ne + 14;
780
819
  if (!t && !f(te - 2, ne, re + 2, S, !1)) return;
781
820
  f(te - 2, ne, re + 2, S, !0), _[e] = 1, v--, n.save(), n.globalAlpha = i * (y ? .35 : 1), n.font = `${m ? 600 : 400} 12px ${r}`, n.textAlign = x.align, n.textBaseline = x.baseline, n.translate(x.x, x.y), x.angle && n.rotate(x.angle);
782
- let ie = N.labelWidth[e] > 180 ? bn(n, ee, 180) : ee;
821
+ let ie = N.labelWidth[e] > 180 ? An(n, ee, 180) : ee;
783
822
  n.lineJoin = "round", n.lineWidth = 3, n.strokeStyle = s, n.strokeText(ie, 0, 0), n.fillStyle = m ? a : y ? o : a, n.fillText(ie, 0, 0), n.restore();
784
823
  };
785
824
  for (let e = 0; e < j.n; e++) g(e) && y(e, !0);
@@ -794,18 +833,18 @@ var Ee = [
794
833
  if (m <= 0) continue;
795
834
  let h = !!c?.edges[r];
796
835
  if (ee === "hover" && !h || ee === "auto" && !h && (H < .75 || c && !h)) continue;
797
- let g, _, v = dt[r];
836
+ let g, _, v = _t[r];
798
837
  if (v) {
799
- let e = de(v, ue(v) / 2);
838
+ let e = fe(v, de(v) / 2);
800
839
  if (g = e[0] * H + U, _ = e[1] * H + W, u === d) {
801
840
  let e = g - (P[u] * H + U), t = _ - (F[u] * H + W), n = Math.hypot(e, t) || 1;
802
841
  g += e / n * 10, _ += t / n * 10;
803
842
  }
804
843
  } else g = (P[u] + P[d]) / 2 * H + U, _ = (F[u] + F[d]) / 2 * H + W;
805
844
  if (!p(g, _, 40)) continue;
806
- Number.isNaN(St[r]) && (St[r] = n.measureText(l).width);
807
- let y = St[r] + 10;
808
- (h || f(g - y / 2, _ - 8, g + y / 2, _ + 8, !1)) && (f(g - y / 2, _ - 8, g + y / 2, _ + 8, !0), e++, n.globalAlpha = m, n.fillStyle = s, n.beginPath(), typeof n.roundRect == "function" ? n.roundRect(g - y / 2, _ - 8, y, 16, 8) : n.rect(g - y / 2, _ - 8, y, 16), n.fill(), h && (n.strokeStyle = i(t(O.background, At?.accent ?? O.primary, .6)), n.lineWidth = 1, n.stroke()), n.fillStyle = h ? a : o, n.fillText(l, g, _ + .5));
845
+ Number.isNaN(Ot[r]) && (Ot[r] = n.measureText(l).width);
846
+ let y = Ot[r] + 10;
847
+ (h || f(g - y / 2, _ - 8, g + y / 2, _ + 8, !1)) && (f(g - y / 2, _ - 8, g + y / 2, _ + 8, !0), e++, n.globalAlpha = m, n.fillStyle = s, n.beginPath(), typeof n.roundRect == "function" ? n.roundRect(g - y / 2, _ - 8, y, 16, 8) : n.rect(g - y / 2, _ - 8, y, 16), n.fill(), h && (n.strokeStyle = i(t(O.background, It?.accent ?? O.primary, .6)), n.lineWidth = 1, n.stroke()), n.fillStyle = h ? a : o, n.fillText(l, g, _ + .5));
809
848
  }
810
849
  n.globalAlpha = 1;
811
850
  }
@@ -816,8 +855,8 @@ var Ee = [
816
855
  if (y(n, !1), !e && t > 4e3) break;
817
856
  }
818
857
  }
819
- if (kt && J >= 0 && Z(J) > 0) {
820
- let e = vn(J), t = yn(J);
858
+ if (Ft && J >= 0 && Z(J) > 0) {
859
+ let e = On(J), t = kn(J);
821
860
  if (n.save(), n.strokeStyle = i(O.primary), n.lineWidth = 2, n.setLineDash([4, 3]), n.beginPath(), N.kind[J] === C.Circle) {
822
861
  let r = Math.max(3, N.width[J] * H / 2) + 6;
823
862
  n.arc(e, t, r, 0, Math.PI * 2);
@@ -827,7 +866,7 @@ var Ee = [
827
866
  }
828
867
  n.stroke(), n.restore();
829
868
  }
830
- }, Cn = (e, t, n, r) => {
869
+ }, Nn = (e, t, n, r) => {
831
870
  let i = {
832
871
  x: t,
833
872
  y: n + r + 3,
@@ -846,9 +885,9 @@ var Ee = [
846
885
  };
847
886
  switch (M) {
848
887
  case "tree": {
849
- let a = hn(e);
850
- if (Xe === "LR" || Xe === "RL") {
851
- let e = Xe === "LR" !== a;
888
+ let a = Tn(e);
889
+ if (nt === "LR" || nt === "RL") {
890
+ let e = nt === "LR" !== a;
852
891
  return {
853
892
  x: t + (e ? r + 5 : -r - 5),
854
893
  y: n,
@@ -857,7 +896,7 @@ var Ee = [
857
896
  angle: 0
858
897
  };
859
898
  }
860
- return Xe === "BT" ? {
899
+ return nt === "BT" ? {
861
900
  x: t,
862
901
  y: n - r - 3,
863
902
  align: "center",
@@ -865,8 +904,8 @@ var Ee = [
865
904
  angle: 0
866
905
  } : i;
867
906
  }
868
- case "radial": return L && (hn(e) || L.depth[e] === 0 && Math.hypot(P[e], F[e]) < 1e-6) ? i : a(L ? L.side[e] : 0);
869
- case "circular": return a(ot ? ot.angle[e] : 0);
907
+ case "radial": return L && (Tn(e) || L.depth[e] === 0 && Math.hypot(P[e], F[e]) < 1e-6) ? i : a(L ? L.side[e] : 0);
908
+ case "circular": return a(ft ? ft.angle[e] : 0);
870
909
  case "arc": return {
871
910
  x: t,
872
911
  y: n + r + 4,
@@ -876,27 +915,27 @@ var Ee = [
876
915
  };
877
916
  default: return i;
878
917
  }
879
- }, wn = () => {
918
+ }, Pn = () => {
880
919
  if (G <= 0 || K <= 0) return null;
881
920
  let e = Infinity, t = Infinity, n = -Infinity, r = -Infinity, i = 0;
882
921
  for (let a = 0; a < j.n; a++) {
883
- if (!tt[a] || !Number.isFinite(I[a])) continue;
922
+ if (!st[a] || !Number.isFinite(I[a])) continue;
884
923
  let o = j.groupOf[a];
885
- if (o >= 0 && ct.has(j.groups[o].id)) continue;
924
+ if (o >= 0 && mt.has(j.groups[o].id)) continue;
886
925
  let s = N.width[a] / 2, c = N.height[a] / 2;
887
- e = Math.min(e, I[a] - s), n = Math.max(n, I[a] + s), t = Math.min(t, Qe[a] - c), r = Math.max(r, Qe[a] + c), N.kind[a] === C.Circle && (i = Math.max(i, N.labelWidth[a]));
926
+ e = Math.min(e, I[a] - s), n = Math.max(n, I[a] + s), t = Math.min(t, it[a] - c), r = Math.max(r, it[a] + c), N.kind[a] === C.Circle && (i = Math.max(i, N.labelWidth[a]));
888
927
  }
889
928
  if (!(e <= n)) return null;
890
929
  if (M === "arc") for (let e = 0; e < j.m; e++) {
891
930
  let n = j.source[e], r = j.target[e];
892
- if (!tt[n] || !tt[r]) continue;
931
+ if (!st[n] || !st[r]) continue;
893
932
  let i = j.bend[e], a = n !== r && Number.isFinite(i) ? 1 + .25 * Math.abs(i) : 1;
894
- t = Math.min(t, Qe[n] - Math.abs(I[r] - I[n]) / 2 * a);
933
+ t = Math.min(t, it[n] - Math.abs(I[r] - I[n]) / 2 * a);
895
934
  }
896
935
  if (j.hasLoops) for (let i = 0; i < j.m; i++) {
897
936
  let a = j.source[i];
898
- if (a !== j.target[i] || !tt[a]) continue;
899
- let o = on(a), s = sn(a), c = Math.max(N.width[a], N.height[a]) / 2 + s * (1 + .6 * j.bend[i]), l = I[a] + Math.cos(o) * c, u = Qe[a] + Math.sin(o) * c;
937
+ if (a !== j.target[i] || !st[a]) continue;
938
+ let [o, s] = hn(a), c = Math.max(N.width[a], N.height[a]) / 2 + s * (1 + .6 * j.bend[i]), l = I[a] + Math.cos(o) * c, u = it[a] + Math.sin(o) * c;
900
939
  e = Math.min(e, l - s / 2), n = Math.max(n, l + s / 2), t = Math.min(t, u - s / 2), r = Math.max(r, u + s / 2);
901
940
  }
902
941
  let a = D.fitPadding ?? 24, [o, s, c, l] = [
@@ -906,14 +945,14 @@ var Ee = [
906
945
  a
907
946
  ], u = D.nodeLabels === !1 ? 0 : Math.min(140, i) + 8;
908
947
  if (N.kind.some((e) => e === C.Circle) && u > 8) {
909
- if (M === "tree" && (Xe === "LR" || Xe === "RL")) {
948
+ if (M === "tree" && (nt === "LR" || nt === "RL")) {
910
949
  let e = 0;
911
- for (let t = 0; t < j.n; t++) L && L.parent[t] < 0 && tt[t] && hn(t) && (e = Math.max(e, Math.min(140, N.labelWidth[t]) + 8));
912
- Xe === "LR" ? (s += u, o += e) : (o += u, s += e);
950
+ for (let t = 0; t < j.n; t++) L && L.parent[t] < 0 && st[t] && Tn(t) && (e = Math.max(e, Math.min(140, N.labelWidth[t]) + 8));
951
+ nt === "LR" ? (s += u, o += e) : (o += u, s += e);
913
952
  } else M === "radial" || M === "circular" ? (o += u, s += u, c += u * .6, l += u * .6) : l += M === "arc" ? u : 16;
914
953
  }
915
954
  (M === "org" || M === "mindmap") && (l += 10);
916
- let d = Math.max(10, G - o - s), f = Math.max(10, K - c - l), p = Math.max(1e-6, n - e), m = Math.max(1e-6, r - t), h = It()?.zoomRange ?? [.02, 8], g = Math.min(d / p, f / m, 1.6, h[1]);
955
+ let d = Math.max(10, G - o - s), f = Math.max(10, K - c - l), p = Math.max(1e-6, n - e), m = Math.max(1e-6, r - t), h = Ht()?.zoomRange ?? [.02, 8], g = Math.min(d / p, f / m, 1.6, h[1]);
917
956
  g = Math.max(g, 1e-4);
918
957
  let _ = o + (d - p * g) / 2 - e * g, v = c + (f - m * g) / 2 - t * g;
919
958
  return [
@@ -921,45 +960,45 @@ var Ee = [
921
960
  _,
922
961
  v
923
962
  ];
924
- }, Tn = () => {
925
- let e = It()?.zoomRange ?? [.02, 8], t = wn();
963
+ }, Fn = () => {
964
+ let e = Ht()?.zoomRange ?? [.02, 8], t = Pn();
926
965
  return [Math.min(e[0], t ? t[0] * .5 : e[0]), e[1]];
927
- }, En = (e, t) => {
966
+ }, In = (e, t) => {
928
967
  let [n, r, i] = e, a = (G / 2 - U) / H, o = (K / 2 - W) / H, s = (G / 2 - r) / n, c = (K / 2 - i) / n;
929
968
  if (!(Math.abs(Math.log(n / H)) > .002 || Math.hypot(s - a, c - o) * n > .5)) return [H, U, W] = e, !1;
930
969
  let l = H * (n / H) ** +t, u = a + (s - a) * t, d = o + (c - o) * t;
931
970
  return H = l, U = G / 2 - u * l, W = K / 2 - d * l, !0;
932
- }, Dn = (e, t) => {
933
- Ct = null, t && !Je?.matches && G > 0 ? Ct = {
971
+ }, Ln = (e, t) => {
972
+ kt = null, t && !et?.matches && G > 0 ? kt = {
934
973
  from: [
935
974
  H,
936
975
  U,
937
976
  W
938
977
  ],
939
978
  to: e,
940
- start: Ye()
979
+ start: tt()
941
980
  } : [H, U, W] = e, B = !0, Q();
942
- }, On = (e, t, n, r = !1) => {
943
- let [i, a] = Tn(), o = Math.max(i, Math.min(a, H * e)), s = o / H;
944
- Dn([
981
+ }, Rn = (e, t, n, r = !1) => {
982
+ let [i, a] = Fn(), o = Math.max(i, Math.min(a, H * e)), s = o / H;
983
+ Ln([
945
984
  o,
946
985
  t - (t - U) * s,
947
986
  n - (n - W) * s
948
- ], r), wt = !0;
949
- }, kn = "", An = () => {
987
+ ], r), At = !0;
988
+ }, zn = "", Bn = () => {
950
989
  let e = D.legend, t = j.groups.filter((e) => e.count > 0), n = e === void 0 ? t.length > 1 : !!e && t.length > 0, r = typeof e == "object" ? e : {}, a = r.toggle ?? !0, o = r.position === "bottom", s = `${n}|${o}|${a}`;
951
990
  if (n) for (let e of t) {
952
991
  let t = j.groups.indexOf(e);
953
- s += `\n${e.id}\u0001${e.name}\u0001${i(bt[t] ?? O.primary)}\u0001${ct.has(e.id)}`;
992
+ s += `\n${e.id}\u0001${e.name}\u0001${i(Et[t] ?? O.primary)}\u0001${mt.has(e.id)}`;
954
993
  }
955
- if (s === kn) return;
956
- kn = s;
994
+ if (s === zn) return;
995
+ zn = s;
957
996
  let c = [...T.legend.children].indexOf(w.activeElement);
958
997
  if (T.legend.replaceChildren(), T.legend.style.display = n ? "flex" : "none", n) {
959
998
  T.legend.style.order = o ? "1" : "0", T.legend.style.padding = o ? "8px 4px 0" : "0 4px 8px";
960
999
  for (let e of t) {
961
- let t = j.groups.indexOf(e), n = ct.has(e.id), r = w.createElement(a ? "button" : "span");
962
- r instanceof HTMLButtonElement && (r.type = "button", r.setAttribute("aria-pressed", String(!n)), r.addEventListener("click", () => jn(e.id))), b(r, {
1000
+ let t = j.groups.indexOf(e), n = mt.has(e.id), r = w.createElement(a ? "button" : "span");
1001
+ r instanceof HTMLButtonElement && (r.type = "button", r.setAttribute("aria-pressed", String(!n)), r.addEventListener("click", () => Vn(e.id))), b(r, {
963
1002
  display: "inline-flex",
964
1003
  alignItems: "center",
965
1004
  gap: "6px",
@@ -973,51 +1012,51 @@ var Ee = [
973
1012
  cursor: a ? "pointer" : "default",
974
1013
  opacity: n ? "0.45" : "1",
975
1014
  textDecoration: n ? "line-through" : "none"
976
- }), r.append(x(w, i(bt[t] ?? O.primary)), w.createTextNode(e.name)), T.legend.appendChild(r);
1015
+ }), r.append(x(w, i(Et[t] ?? O.primary)), w.createTextNode(e.name)), T.legend.appendChild(r);
977
1016
  }
978
1017
  c >= 0 && T.legend.children[c]?.focus();
979
1018
  }
980
- }, jn = (e) => {
1019
+ }, Vn = (e) => {
981
1020
  let t = j.groups.find((t) => t.id === e);
982
1021
  if (!t) return;
983
- let n = !ct.has(e);
984
- n ? ct.add(e) : ct.delete(e), T.live.textContent = ge(n ? k.labels.hidden : k.labels.shown, { name: t.name });
985
- for (let e of [...Y]) Z(e) <= 0 && j.groupOf[e] >= 0 && ct.has(j.groups[j.groupOf[e]].id) && Y.delete(e);
986
- J >= 0 && j.groupOf[J] >= 0 && ct.has(j.groups[j.groupOf[J]].id) && (J = -1), q && Kn(null), ft = !0, B = !0, jt = "", An(), Q(), Ke("groupToggle", {
1022
+ let n = !mt.has(e);
1023
+ n ? mt.add(e) : mt.delete(e), T.live.textContent = _e(n ? k.labels.hidden : k.labels.shown, { name: t.name });
1024
+ for (let e of [...Y]) Z(e) <= 0 && j.groupOf[e] >= 0 && mt.has(j.groups[j.groupOf[e]].id) && Y.delete(e);
1025
+ J >= 0 && j.groupOf[J] >= 0 && mt.has(j.groups[j.groupOf[J]].id) && (J = -1), q && nr(null), vt = !0, B = !0, Lt = "", Bn(), Q(), Qe("groupToggle", {
987
1026
  group: e,
988
1027
  hidden: n
989
1028
  });
990
- }, Mn = () => {
991
- let { labels: e, count: t } = k, n = M === "dag" ? e.dag : Lt() ? e.tree : e.chart;
1029
+ }, Hn = () => {
1030
+ let { labels: e, count: t } = k, n = M === "dag" ? e.dag : Ut() ? e.tree : e.chart;
992
1031
  E.setAttribute("aria-roledescription", n), E.setAttribute("aria-label", D.ariaLabel ?? n);
993
- let r = It()?.keyboard;
1032
+ let r = Ht()?.keyboard;
994
1033
  r ? E.tabIndex = 0 : E.removeAttribute("tabindex");
995
- let i = It();
1034
+ let i = Ht();
996
1035
  E.style.cursor = i?.pan ? "grab" : "default";
997
- let a = [ge(e.summary, {
1036
+ let a = [_e(e.summary, {
998
1037
  nodes: t(j.n),
999
1038
  edges: t(j.m)
1000
1039
  })], o = j.groups.filter((e) => e.count > 0).map((e) => e.name);
1001
- o.length && a.push(ge(e.groupsSummary, { groups: o.join(e.listSeparator) })), r && a.push(e.keyboardHelp), T.summary.textContent = a.join(" ");
1040
+ o.length && a.push(_e(e.groupsSummary, { groups: o.join(e.listSeparator) })), r && a.push(e.keyboardHelp), T.summary.textContent = a.join(" ");
1002
1041
  let s = D.controls !== !1 && !!i?.zoom;
1003
1042
  T.controls.style.display = s ? "flex" : "none", T.zoomIn.setAttribute("aria-label", e.zoomIn), T.zoomIn.title = e.zoomIn, T.zoomOut.setAttribute("aria-label", e.zoomOut), T.zoomOut.title = e.zoomOut, T.fit.setAttribute("aria-label", e.fit), T.fit.title = e.fit;
1004
- }, Nn = null, Pn = 32, Fn = 0, In = (e, t) => (e + 2097152) * 4194304 + (t + 2097152), Ln = () => {
1005
- Fn = 0;
1006
- for (let e = 0; e < j.n; e++) Fn = Math.max(Fn, N.width[e], N.height[e]);
1007
- Pn = Math.max(16, Fn);
1043
+ }, Un = null, Wn = 32, Gn = 0, Kn = (e, t) => (e + 2097152) * 4194304 + (t + 2097152), qn = () => {
1044
+ Gn = 0;
1045
+ for (let e = 0; e < j.n; e++) Gn = Math.max(Gn, N.width[e], N.height[e]);
1046
+ Wn = Math.max(16, Gn);
1008
1047
  let e = /* @__PURE__ */ new Map();
1009
1048
  for (let t = 0; t < j.n; t++) {
1010
1049
  if (Z(t) <= 0) continue;
1011
- let n = In(Math.floor(P[t] / Pn), Math.floor(F[t] / Pn)), r = e.get(n);
1050
+ let n = Kn(Math.floor(P[t] / Wn), Math.floor(F[t] / Wn)), r = e.get(n);
1012
1051
  r || e.set(n, r = []), r.push(t);
1013
1052
  }
1014
- Nn = e;
1015
- }, Rn = (e, t) => {
1016
- if (st || !j.n) return -1;
1017
- Ln();
1018
- let n = (e - U) / H, r = (t - W) / H, i = 3 / H, a = (j.n > 2e3 ? 1 : 1.5) / H, o = Math.ceil((Fn / 2 + i + a) / Pn), s = Math.floor(n / Pn), c = Math.floor(r / Pn), l = -1, u = Infinity;
1053
+ Un = e;
1054
+ }, Jn = (e, t) => {
1055
+ if (pt || !j.n) return -1;
1056
+ qn();
1057
+ let n = (e - U) / H, r = (t - W) / H, i = 3 / H, a = (j.n > 2e3 ? 1 : 1.5) / H, o = Math.ceil((Gn / 2 + i + a) / Wn), s = Math.floor(n / Wn), c = Math.floor(r / Wn), l = -1, u = Infinity;
1019
1058
  for (let e = -o; e <= o; e++) for (let t = -o; t <= o; t++) {
1020
- let o = Nn.get(In(s + t, c + e));
1059
+ let o = Un.get(Kn(s + t, c + e));
1021
1060
  if (o) for (let e of o) {
1022
1061
  let t = n - P[e], o = r - F[e];
1023
1062
  if (N.kind[e] === C.Circle) {
@@ -1030,24 +1069,24 @@ var Ee = [
1030
1069
  }
1031
1070
  }
1032
1071
  return l;
1033
- }, zn = (e, t) => {
1034
- if (st) return -1;
1072
+ }, Yn = (e, t) => {
1073
+ if (pt) return -1;
1035
1074
  let n = (e - U) / H, r = (t - W) / H, i = 4 / H, a = -1, o = i * i, s = (e) => {
1036
1075
  if (Math.min(Z(j.source[e]), Z(j.target[e])) <= 0) return;
1037
- let t = dt[e] ?? null;
1076
+ let t = _t[e] ?? null;
1038
1077
  if (!t) {
1039
- let n = dn(e);
1078
+ let n = xn(e);
1040
1079
  if (!n) return;
1041
1080
  t = n;
1042
1081
  }
1043
- let i = ae(t, n, r);
1082
+ let i = oe(t, n, r);
1044
1083
  i <= o && (a = e, o = i);
1045
1084
  };
1046
- if (j.m < Ae) {
1085
+ if (j.m < Ie) {
1047
1086
  for (let e = 0; e < j.m; e++) s(e);
1048
1087
  return a;
1049
1088
  }
1050
- let c = Vn();
1089
+ let c = Zn();
1051
1090
  if (!c) return -1;
1052
1091
  let { cell: l, x0: u, y0: d, cols: f, rows: p, start: m, items: h, stamp: g } = c, _ = Math.max(0, Math.floor((n - i - u) / l)), v = Math.min(f - 1, Math.floor((n + i - u) / l)), y = Math.max(0, Math.floor((r - i - d) / l)), ee = Math.min(p - 1, Math.floor((r + i - d) / l)), b = ++c.visit;
1053
1092
  for (let e = y; e <= ee; e++) for (let t = _; t <= v; t++) {
@@ -1058,10 +1097,10 @@ var Ee = [
1058
1097
  }
1059
1098
  }
1060
1099
  return a;
1061
- }, Bn = null, Vn = () => {
1062
- let e = Bn;
1063
- if (e && e.geometry === pt || e && R?.running() && Ye() - e.built < 250) return e;
1064
- let t = j.m, n = (e) => Math.min(Z(j.source[e]), Z(j.target[e])) <= 0 ? null : dt[e] ?? dn(e), r = Infinity, i = Infinity, a = -Infinity, o = -Infinity, s = 0, c = 0;
1100
+ }, Xn = null, Zn = () => {
1101
+ let e = Xn;
1102
+ if (e && e.geometry === yt || e && R?.running() && tt() - e.built < 250) return e;
1103
+ let t = j.m, n = (e) => Math.min(Z(j.source[e]), Z(j.target[e])) <= 0 ? null : _t[e] ?? xn(e), r = Infinity, i = Infinity, a = -Infinity, o = -Infinity, s = 0, c = 0;
1065
1104
  for (let e = 0; e < t; e++) {
1066
1105
  let t = n(e);
1067
1106
  if (t) {
@@ -1090,7 +1129,7 @@ var Ee = [
1090
1129
  let h = new Int32Array(p[d * f]), g = p.slice(0, d * f);
1091
1130
  return m((e, t) => {
1092
1131
  h[g[e]++] = t;
1093
- }), Bn = {
1132
+ }), Xn = {
1094
1133
  cell: u,
1095
1134
  x0: r,
1096
1135
  y0: i,
@@ -1100,21 +1139,21 @@ var Ee = [
1100
1139
  items: h,
1101
1140
  stamp: new Int32Array(t),
1102
1141
  visit: 0,
1103
- geometry: pt,
1104
- built: Ye()
1105
- }, Bn;
1106
- }, Hn = (e, t) => {
1107
- let n = Rn(e, t);
1142
+ geometry: yt,
1143
+ built: tt()
1144
+ }, Xn;
1145
+ }, Qn = (e, t) => {
1146
+ let n = Jn(e, t);
1108
1147
  if (n >= 0) return {
1109
1148
  type: "node",
1110
1149
  index: n
1111
1150
  };
1112
- let r = Un() || qe("hover") || qe("click") ? zn(e, t) : -1;
1151
+ let r = $n() || $e("hover") || $e("click") ? Yn(e, t) : -1;
1113
1152
  return r >= 0 ? {
1114
1153
  type: "edge",
1115
1154
  index: r
1116
1155
  } : null;
1117
- }, Un = () => D.tooltip !== !1, Wn = (e) => {
1156
+ }, $n = () => D.tooltip !== !1, er = (e) => {
1118
1157
  let t = E.offsetLeft, n = E.offsetTop;
1119
1158
  if (e.type === "node") {
1120
1159
  let r = e.index, a = j.nodes[r], o = j.groupOf[r];
@@ -1126,13 +1165,13 @@ var Ee = [
1126
1165
  group: o >= 0 ? j.groups[o].id : void 0,
1127
1166
  color: i(V[r]),
1128
1167
  degree: j.inDegree[r] + j.outDegree[r],
1129
- clientX: vn(r) + t,
1130
- clientY: yn(r) + n
1168
+ clientX: On(r) + t,
1169
+ clientY: kn(r) + n
1131
1170
  };
1132
1171
  }
1133
- let r = e.index, a = j.edges[r], o = j.source[r], s = j.target[r], c = dt[r], l = (P[o] + P[s]) / 2, u = (F[o] + F[s]) / 2;
1172
+ let r = e.index, a = j.edges[r], o = j.source[r], s = j.target[r], c = _t[r], l = (P[o] + P[s]) / 2, u = (F[o] + F[s]) / 2;
1134
1173
  if (c) {
1135
- let e = de(c, ue(c) / 2);
1174
+ let e = fe(c, de(c) / 2);
1136
1175
  l = e[0], u = e[1];
1137
1176
  }
1138
1177
  return {
@@ -1140,45 +1179,45 @@ var Ee = [
1140
1179
  id: `${a.source}→${a.target}`,
1141
1180
  edge: a,
1142
1181
  index: j.edgeInput[r],
1143
- color: i(gt[r]),
1182
+ color: i(St[r]),
1144
1183
  clientX: l * H + U + t,
1145
1184
  clientY: u * H + W + n
1146
1185
  };
1147
- }, Gn = (e, t) => e === t || !!e && !!t && e.type === t.type && e.index === t.index, Kn = (e) => {
1148
- if (Gn(e, q)) {
1149
- e && Yn();
1186
+ }, tr = (e, t) => e === t || !!e && !!t && e.type === t.type && e.index === t.index, nr = (e) => {
1187
+ if (tr(e, q)) {
1188
+ e && ar();
1150
1189
  return;
1151
1190
  }
1152
- q = e, Jn(), B = !0, Q(), Ke("hover", e ? Wn(e) : null);
1153
- }, qn = () => q ?? (kt && J >= 0 ? {
1191
+ q = e, ir(), B = !0, Q(), Qe("hover", e ? er(e) : null);
1192
+ }, rr = () => q ?? (Ft && J >= 0 ? {
1154
1193
  type: "node",
1155
1194
  index: J
1156
- } : null), Jn = () => {
1157
- let e = T.tooltip, t = qn();
1158
- if (!t || !Un()) {
1195
+ } : null), ir = () => {
1196
+ let e = T.tooltip, t = rr();
1197
+ if (!t || !$n()) {
1159
1198
  e.style.display = "none";
1160
1199
  return;
1161
1200
  }
1162
- let n = Wn(t), r = typeof D.tooltip == "object" ? D.tooltip.render : void 0, i = r ? r(n) : Qn(t);
1201
+ let n = er(t), r = typeof D.tooltip == "object" ? D.tooltip.render : void 0, i = r ? r(n) : cr(t);
1163
1202
  if (i === null) {
1164
1203
  e.style.display = "none";
1165
1204
  return;
1166
1205
  }
1167
- typeof i == "string" ? e.textContent = i : e.replaceChildren(i), e.style.display = "block", Yn();
1168
- }, Yn = () => {
1169
- let e = T.tooltip, t = qn();
1206
+ typeof i == "string" ? e.textContent = i : e.replaceChildren(i), e.style.display = "block", ar();
1207
+ }, ar = () => {
1208
+ let e = T.tooltip, t = rr();
1170
1209
  if (!t || e.style.display === "none") return;
1171
1210
  let n, r, i = 14;
1172
- if (t.type === "node") n = vn(t.index), r = yn(t.index), i += Math.max(N.width[t.index], 0) * H / 2;
1211
+ if (t.type === "node") n = On(t.index), r = kn(t.index), i += Math.max(N.width[t.index], 0) * H / 2;
1173
1212
  else {
1174
- let e = Wn(t);
1213
+ let e = er(t);
1175
1214
  n = e.clientX - E.offsetLeft, r = e.clientY - E.offsetTop;
1176
1215
  }
1177
1216
  let a = e.offsetWidth, o = e.offsetHeight, s = n + i;
1178
1217
  s + a > G - 4 && (s = n - i - a), s = Math.max(4, Math.min(G - a - 4, s));
1179
1218
  let c = Math.max(4, Math.min(K - o - 4, r - o / 2));
1180
1219
  e.style.transform = `translate(${Math.round(s)}px, ${Math.round(c)}px)`;
1181
- }, Xn = (e, t) => {
1220
+ }, or = (e, t) => {
1182
1221
  let n = b(w.createElement("div"), {
1183
1222
  display: "flex",
1184
1223
  alignItems: "center",
@@ -1194,7 +1233,7 @@ var Ee = [
1194
1233
  marginLeft: "12px"
1195
1234
  });
1196
1235
  return i.textContent = t, n.append(r, i), n;
1197
- }, Zn = (e, t) => {
1236
+ }, sr = (e, t) => {
1198
1237
  let n = b(w.createElement("div"), {
1199
1238
  display: "flex",
1200
1239
  alignItems: "center",
@@ -1204,11 +1243,11 @@ var Ee = [
1204
1243
  color: "var(--text-color, #1f2937)"
1205
1244
  });
1206
1245
  return n.append(x(w, e), w.createTextNode(t)), n;
1207
- }, Qn = (e) => {
1246
+ }, cr = (e) => {
1208
1247
  let { labels: t } = k, n = w.createDocumentFragment();
1209
1248
  if (e.type === "node") {
1210
1249
  let r = e.index, a = j.nodes[r];
1211
- if (n.append(Zn(i(V[r]), Se(j, r))), a.subtitle) {
1250
+ if (n.append(sr(i(V[r]), Ce(j, r))), a.subtitle) {
1212
1251
  let e = b(w.createElement("div"), {
1213
1252
  color: "var(--text-secondary-color, #6b7280)",
1214
1253
  marginBottom: "2px"
@@ -1216,8 +1255,8 @@ var Ee = [
1216
1255
  e.textContent = a.subtitle, n.append(e);
1217
1256
  }
1218
1257
  let o = j.groupOf[r];
1219
- if (o >= 0 && n.append(Xn(t.group, j.groups[o].name)), Number.isFinite(a.value) && n.append(Xn(t.value, k.value(a.value))), (M === "dag" || D.arrows || j.edges.some((e) => e.directed)) && !Lt() ? (n.append(Xn(t.incoming, k.count(j.inDegree[r]))), n.append(Xn(t.outgoing, k.count(j.outDegree[r])))) : Lt() || n.append(Xn(t.degree, k.count(j.inDegree[r] + j.outDegree[r]))), Lt() && ut[r] > 0 && !hn(r) && n.append(Xn(t.hiddenChildren, k.count(ut[r]))), lt?.nodes[r]) {
1220
- let e = i(xt), r = b(w.createElement("div"), {
1258
+ if (o >= 0 && n.append(or(t.group, j.groups[o].name)), Number.isFinite(a.value) && n.append(or(t.value, k.value(a.value))), (M === "dag" || D.arrows || j.edges.some((e) => e.directed)) && !Ut() ? (n.append(or(t.incoming, k.count(j.inDegree[r]))), n.append(or(t.outgoing, k.count(j.outDegree[r])))) : Ut() || n.append(or(t.degree, k.count(j.inDegree[r] + j.outDegree[r]))), Ut() && gt[r] > 0 && !Tn(r) && n.append(or(t.hiddenChildren, k.count(gt[r]))), ht?.nodes[r]) {
1259
+ let e = i(Dt), r = b(w.createElement("div"), {
1221
1260
  display: "inline-flex",
1222
1261
  alignItems: "center",
1223
1262
  gap: "5px",
@@ -1239,53 +1278,53 @@ var Ee = [
1239
1278
  }
1240
1279
  return n;
1241
1280
  }
1242
- let r = e.index, a = j.edges[r], o = j.source[r], s = j.target[r], c = vt[r] ? " → " : " — ";
1243
- if (n.append(Zn(i(gt[r]), `${Se(j, o)}${c}${Se(j, s)}`)), a.label) {
1281
+ let r = e.index, a = j.edges[r], o = j.source[r], s = j.target[r], c = wt[r] ? " → " : " — ";
1282
+ if (n.append(sr(i(St[r]), `${Ce(j, o)}${c}${Ce(j, s)}`)), a.label) {
1244
1283
  let e = w.createElement("div");
1245
1284
  e.textContent = a.label, n.append(e);
1246
1285
  }
1247
- return Number.isFinite(a.value) && n.append(Xn(t.value, k.value(a.value))), n;
1248
- }, $n = 0, er = null, tr = (e, t) => {
1249
- er = {
1286
+ return Number.isFinite(a.value) && n.append(or(t.value, k.value(a.value))), n;
1287
+ }, lr = 0, ur = null, dr = (e, t) => {
1288
+ ur = {
1250
1289
  x: e,
1251
1290
  y: t
1252
- }, !$n && Ue && ($n = Ue.requestAnimationFrame(() => {
1253
- $n = 0;
1254
- let e = er;
1255
- if (er = null, !e || A || $) return;
1256
- let t = Hn(e.x, e.y);
1257
- Kn(t), E.style.cursor = t?.type === "node" ? "pointer" : It()?.pan ? "grab" : "default";
1291
+ }, !lr && Ye && (lr = Ye.requestAnimationFrame(() => {
1292
+ lr = 0;
1293
+ let e = ur;
1294
+ if (ur = null, !e || A || $) return;
1295
+ let t = Qn(e.x, e.y);
1296
+ nr(t), E.style.cursor = t?.type === "node" ? "pointer" : Ht()?.pan ? "grab" : "default";
1258
1297
  }));
1259
- }, nr = (e, t) => {
1260
- e.size === Y.size && [...e].every((e) => Y.has(e)) || (Y.clear(), e.forEach((e) => Y.add(e)), B = !0, Q(), T.live.textContent = Y.size ? ge(k.labels.selected, { count: k.count(Y.size) }) : k.labels.selectionCleared, t && Ke("select", { ids: [...Y].map((e) => j.nodes[e].id) }));
1261
- }, rr = (e, t) => {
1262
- let n = It();
1298
+ }, fr = (e, t) => {
1299
+ e.size === Y.size && [...e].every((e) => Y.has(e)) || (Y.clear(), e.forEach((e) => Y.add(e)), B = !0, Q(), T.live.textContent = Y.size ? _e(k.labels.selected, { count: k.count(Y.size) }) : k.labels.selectionCleared, t && Qe("select", { ids: [...Y].map((e) => j.nodes[e].id) }));
1300
+ }, pr = (e, t) => {
1301
+ let n = Ht();
1263
1302
  if (!n?.select) return;
1264
1303
  let r = n.select === "multiple" || t, i = new Set(r ? Y : []);
1265
- r && i.has(e) ? i.delete(e) : i.add(e), nr(i, !0);
1266
- }, ir = (e, t, n) => {
1304
+ r && i.has(e) ? i.delete(e) : i.add(e), fr(i, !0);
1305
+ }, mr = (e, t, n) => {
1267
1306
  if (!L || !L.children[e]?.length) return !1;
1268
1307
  let r = j.nodes[e].id;
1269
1308
  if (t === z.has(r)) return !1;
1270
1309
  t ? z.add(r) : z.delete(r);
1271
- let i = Gt();
1272
- Zt(i, !0);
1273
- let a = new Set([...Y].filter((e) => tt[e]));
1274
- return a.size !== Y.size && nr(a, !0), J >= 0 && !tt[J] && (J = e), T.live.textContent = t ? ge(k.labels.collapsed, {
1275
- name: Se(j, e),
1276
- count: k.count(ut[e])
1277
- }) : ge(k.labels.expanded, { name: Se(j, e) }), n && Ke("toggle", {
1310
+ let i = Zt();
1311
+ rn(i, !0);
1312
+ let a = new Set([...Y].filter((e) => st[e]));
1313
+ return a.size !== Y.size && fr(a, !0), J >= 0 && !st[J] && (J = e), T.live.textContent = t ? _e(k.labels.collapsed, {
1314
+ name: Ce(j, e),
1315
+ count: k.count(gt[e])
1316
+ }) : _e(k.labels.expanded, { name: Ce(j, e) }), n && Qe("toggle", {
1278
1317
  id: r,
1279
1318
  collapsed: t
1280
1319
  }), !0;
1281
- }, $ = null, ar = /* @__PURE__ */ new Map(), or = (e) => {
1320
+ }, $ = null, hr = /* @__PURE__ */ new Map(), gr = (e) => {
1282
1321
  let t = E.getBoundingClientRect();
1283
1322
  return {
1284
1323
  x: e.clientX - t.left,
1285
1324
  y: e.clientY - t.top
1286
1325
  };
1287
- }, sr = () => {
1288
- let e = [...ar.values()], t = e[0] ?? {
1326
+ }, _r = () => {
1327
+ let e = [...hr.values()], t = e[0] ?? {
1289
1328
  x: 0,
1290
1329
  y: 0
1291
1330
  }, n = e[1] ?? t;
@@ -1296,12 +1335,12 @@ var Ee = [
1296
1335
  y: (t.y + n.y) / 2
1297
1336
  }
1298
1337
  };
1299
- }, cr = (e) => {
1300
- let t = It();
1338
+ }, vr = (e) => {
1339
+ let t = Ht();
1301
1340
  if (!t || e.target?.closest?.("button")) return;
1302
- let n = or(e);
1303
- if (ar.set(e.pointerId, n), E.setPointerCapture?.(e.pointerId), Ct = null, ar.size === 2 && (t.zoom || t.pan)) {
1304
- let { distance: e, center: t } = sr();
1341
+ let n = gr(e);
1342
+ if (hr.set(e.pointerId, n), E.setPointerCapture?.(e.pointerId), kt = null, hr.size === 2 && (t.zoom || t.pan)) {
1343
+ let { distance: e, center: t } = _r();
1305
1344
  $ = {
1306
1345
  mode: "pinch",
1307
1346
  index: -1,
@@ -1318,8 +1357,8 @@ var Ee = [
1318
1357
  };
1319
1358
  return;
1320
1359
  }
1321
- if (ar.size > 1) return;
1322
- let r = e.button === 0 ? Rn(n.x, n.y) : -1, i = {
1360
+ if (hr.size > 1) return;
1361
+ let r = e.button === 0 ? Jn(n.x, n.y) : -1, i = {
1323
1362
  origin: n,
1324
1363
  view: [
1325
1364
  H,
@@ -1341,126 +1380,126 @@ var Ee = [
1341
1380
  index: r,
1342
1381
  offset: [0, 0]
1343
1382
  }, e.button === 1 && e.preventDefault();
1344
- }, lr = (e) => {
1345
- let t = or(e);
1346
- if (ar.has(e.pointerId) && ar.set(e.pointerId, t), !$) {
1347
- if (e.pointerType === "touch" && ar.size) return;
1348
- tr(t.x, t.y);
1383
+ }, yr = (e) => {
1384
+ let t = gr(e);
1385
+ if (hr.has(e.pointerId) && hr.set(e.pointerId, t), !$) {
1386
+ if (e.pointerType === "touch" && hr.size) return;
1387
+ dr(t.x, t.y);
1349
1388
  return;
1350
1389
  }
1351
- let n = It();
1390
+ let n = Ht();
1352
1391
  if (!n) return;
1353
1392
  if ($.mode === "pinch") {
1354
- let { distance: e, center: t } = sr(), [r, i, a] = $.view, [o, s] = Tn(), c = n.zoom && $.distance > 0 ? e / $.distance : 1, l = Math.max(o, Math.min(s, r * c)), u = l / r, d = $.origin.x, f = $.origin.y, p = n.pan ? t.x : d, m = n.pan ? t.y : f;
1355
- H = l, U = p - (d - i) * u, W = m - (f - a) * u, wt = !0, B = !0, Q();
1393
+ let { distance: e, center: t } = _r(), [r, i, a] = $.view, [o, s] = Fn(), c = n.zoom && $.distance > 0 ? e / $.distance : 1, l = Math.max(o, Math.min(s, r * c)), u = l / r, d = $.origin.x, f = $.origin.y, p = n.pan ? t.x : d, m = n.pan ? t.y : f;
1394
+ H = l, U = p - (d - i) * u, W = m - (f - a) * u, At = !0, B = !0, Q();
1356
1395
  return;
1357
1396
  }
1358
1397
  let r = t.x - $.origin.x, i = t.y - $.origin.y;
1359
1398
  if (!$.moved && Math.hypot(r, i) < 3) return;
1360
- if ($.moved || ($.moved = !0, q && Kn(null), E.style.cursor = ($.mode, "grabbing")), $.mode === "node") {
1399
+ if ($.moved || ($.moved = !0, q && nr(null), E.style.cursor = ($.mode, "grabbing")), $.mode === "node") {
1361
1400
  let e = $.index;
1362
- Ot = !1;
1401
+ Pt = !1;
1363
1402
  let n = (t.x - U) / H - $.offset[0], r = (t.y - W) / H - $.offset[1];
1364
1403
  if (R) R.drag(e, n, r);
1365
1404
  else if (M === "force") {
1366
- let t = Gt();
1367
- ur(t), R?.drag(e, n, r);
1405
+ let t = Zt();
1406
+ br(t), R?.drag(e, n, r);
1368
1407
  }
1369
- P[e] = I[e] = n, F[e] = Qe[e] = r, ft = !0, Q();
1408
+ P[e] = I[e] = n, F[e] = it[e] = r, vt = !0, Q();
1370
1409
  return;
1371
1410
  }
1372
1411
  if (!n.pan) return;
1373
1412
  let [a, o, s] = $.view;
1374
- H = a, U = o + r, W = s + i, wt = !0, B = !0, Q();
1375
- }, ur = (e) => {
1376
- Kt(), Yt(e, !1);
1377
- }, dr = (e) => {
1413
+ H = a, U = o + r, W = s + i, At = !0, B = !0, Q();
1414
+ }, br = (e) => {
1415
+ Qt(), tn(e, !1);
1416
+ }, xr = (e) => {
1378
1417
  let t = $;
1379
- if (ar.delete(e.pointerId), E.hasPointerCapture?.(e.pointerId) && E.releasePointerCapture(e.pointerId), ar.size) {
1418
+ if (hr.delete(e.pointerId), E.hasPointerCapture?.(e.pointerId) && E.releasePointerCapture(e.pointerId), hr.size) {
1380
1419
  t?.mode === "pinch" && ($ = null);
1381
1420
  return;
1382
1421
  }
1383
- if ($ = null, E.style.cursor = It()?.pan ? "grab" : "default", !t) return;
1422
+ if ($ = null, E.style.cursor = Ht()?.pan ? "grab" : "default", !t) return;
1384
1423
  if (t.mode === "node" && t.moved) {
1385
1424
  R?.release(t.index, !!j.nodes[t.index].fixed);
1386
1425
  return;
1387
1426
  }
1388
1427
  if (t.moved || t.button !== 0) return;
1389
- let n = or(e), r = Hn(n.x, n.y);
1390
- fr(r, e.ctrlKey || e.metaKey || e.shiftKey);
1391
- }, fr = (e, t) => {
1428
+ let n = gr(e), r = Qn(n.x, n.y);
1429
+ Sr(r, e.ctrlKey || e.metaKey || e.shiftKey);
1430
+ }, Sr = (e, t) => {
1392
1431
  if (!e) {
1393
- Y.size && It()?.select && nr(/* @__PURE__ */ new Set(), !0);
1432
+ Y.size && Ht()?.select && fr(/* @__PURE__ */ new Set(), !0);
1394
1433
  return;
1395
1434
  }
1396
- let n = Wn(e);
1397
- if (Ke("click", n), e.type !== "node") return;
1435
+ let n = er(e);
1436
+ if (Qe("click", n), e.type !== "node") return;
1398
1437
  let r = e.index;
1399
- Rt() && L?.children[r]?.length && ir(r, hn(r), !0), rr(r, t);
1400
- }, pr = (e) => {
1401
- ar.delete(e.pointerId), ar.size || ($?.mode === "node" && R?.release($.index, !!j.nodes[$.index].fixed), $ = null);
1402
- }, mr = () => {
1403
- er = null, !$ && q && Kn(null);
1404
- }, hr = 0, gr = () => {
1405
- let e = /Mac|iPhone|iPad/.test(Ue?.navigator?.platform ?? "");
1406
- T.hint.textContent = ge(k.labels.zoomHint, { key: e ? "⌘" : "Ctrl" }), T.hint.style.opacity = "1", hr && clearTimeout(hr), hr = setTimeout(() => {
1407
- hr = 0, T.hint.style.opacity = "0";
1438
+ Wt() && L?.children[r]?.length && mr(r, Tn(r), !0), pr(r, t);
1439
+ }, Cr = (e) => {
1440
+ hr.delete(e.pointerId), hr.size || ($?.mode === "node" && R?.release($.index, !!j.nodes[$.index].fixed), $ = null);
1441
+ }, wr = () => {
1442
+ ur = null, !$ && q && nr(null);
1443
+ }, Tr = 0, Er = () => {
1444
+ let e = /Mac|iPhone|iPad/.test(Ye?.navigator?.platform ?? "");
1445
+ T.hint.textContent = _e(k.labels.zoomHint, { key: e ? "⌘" : "Ctrl" }), T.hint.style.opacity = "1", Tr && clearTimeout(Tr), Tr = setTimeout(() => {
1446
+ Tr = 0, T.hint.style.opacity = "0";
1408
1447
  }, 1200);
1409
- }, _r = (e) => {
1410
- let t = It();
1448
+ }, Dr = (e) => {
1449
+ let t = Ht();
1411
1450
  if (!t?.zoom) return;
1412
1451
  let n = e.ctrlKey && !e.metaKey;
1413
1452
  if (t.wheel === "modifier" && !e.ctrlKey && !e.metaKey) {
1414
- Math.abs(e.deltaY) > Math.abs(e.deltaX) && gr();
1453
+ Math.abs(e.deltaY) > Math.abs(e.deltaX) && Er();
1415
1454
  return;
1416
1455
  }
1417
1456
  e.preventDefault();
1418
- let r = or(e);
1419
- Ct = null, On(1 / Ie(e.deltaY, e.deltaMode, n), r.x, r.y), q && Kn(null);
1420
- }, vr = (e) => {
1421
- if (!It()) return;
1422
- let t = or(e);
1423
- Rn(t.x, t.y) >= 0 || (e.preventDefault(), Rr.fit(!0));
1424
- }, yr = () => {
1457
+ let r = gr(e);
1458
+ kt = null, Rn(1 / He(e.deltaY, e.deltaMode, n), r.x, r.y), q && nr(null);
1459
+ }, Or = (e) => {
1460
+ if (!Ht()) return;
1461
+ let t = gr(e);
1462
+ Jn(t.x, t.y) >= 0 || (e.preventDefault(), Jr.fit(!0));
1463
+ }, kr = () => {
1425
1464
  let e;
1426
1465
  try {
1427
1466
  e = E.matches(":focus-visible");
1428
1467
  } catch {
1429
1468
  e = !0;
1430
1469
  }
1431
- kt = e, e && (E.style.boxShadow = "0 0 0 2px var(--primary-color, #4f46e5)");
1432
- }, br = () => {
1433
- E.style.boxShadow = "", kt = !1, J >= 0 && (J = -1, Jn(), B = !0, Q());
1434
- }, xr = () => {
1470
+ Ft = e, e && (E.style.boxShadow = "0 0 0 2px var(--primary-color, #4f46e5)");
1471
+ }, Ar = () => {
1472
+ E.style.boxShadow = "", Ft = !1, J >= 0 && (J = -1, ir(), B = !0, Q());
1473
+ }, jr = () => {
1435
1474
  let e = [];
1436
- for (let t = 0; t < j.n; t++) Z(t) > 0 && (!rt || tt[t]) && e.push(t);
1475
+ for (let t = 0; t < j.n; t++) Z(t) > 0 && (!lt || st[t]) && e.push(t);
1437
1476
  return e;
1438
- }, Sr = (e) => {
1477
+ }, Mr = (e) => {
1439
1478
  if (e === J) return;
1440
- J = e, kt = !0, B = !0;
1441
- let t = vn(e), n = yn(e);
1442
- (t < 40 || n < 40 || t > G - 40 || n > K - 40) && Dn([
1479
+ J = e, Ft = !0, B = !0;
1480
+ let t = On(e), n = kn(e);
1481
+ (t < 40 || n < 40 || t > G - 40 || n > K - 40) && Ln([
1443
1482
  H,
1444
1483
  U + G / 2 - t,
1445
1484
  W + K / 2 - n
1446
1485
  ], !0);
1447
1486
  let r = j.groupOf[e], i = j.inDegree[e] + j.outDegree[e];
1448
- T.live.textContent = r >= 0 ? ge(k.labels.nodeFocusGroup, {
1449
- name: Se(j, e),
1487
+ T.live.textContent = r >= 0 ? _e(k.labels.nodeFocusGroup, {
1488
+ name: Ce(j, e),
1450
1489
  group: j.groups[r].name,
1451
1490
  degree: k.count(i)
1452
- }) : ge(k.labels.nodeFocus, {
1453
- name: Se(j, e),
1491
+ }) : _e(k.labels.nodeFocus, {
1492
+ name: Ce(j, e),
1454
1493
  degree: k.count(i)
1455
- }), Jn(), Q(), Ke("hover", Wn({
1494
+ }), ir(), Q(), Qe("hover", er({
1456
1495
  type: "node",
1457
1496
  index: e
1458
1497
  }));
1459
- }, Cr = (e, t, n) => {
1460
- let r = vn(e), i = yn(e), a = -1, o = Infinity;
1461
- for (let s of xr()) {
1498
+ }, Nr = (e, t, n) => {
1499
+ let r = On(e), i = kn(e), a = -1, o = Infinity;
1500
+ for (let s of jr()) {
1462
1501
  if (s === e) continue;
1463
- let c = vn(s) - r, l = yn(s) - i, u = c * t + l * n;
1502
+ let c = On(s) - r, l = kn(s) - i, u = c * t + l * n;
1464
1503
  if (u <= .5) continue;
1465
1504
  let d = Math.abs(c * n - l * t);
1466
1505
  if (d > u * 2.5) continue;
@@ -1468,13 +1507,13 @@ var Ee = [
1468
1507
  f < o && (o = f, a = s);
1469
1508
  }
1470
1509
  return a;
1471
- }, wr = () => {
1510
+ }, Pr = () => {
1472
1511
  let e = [...Y].find((e) => Z(e) > 0);
1473
1512
  if (e !== void 0) return e;
1474
1513
  for (let e of j.rank) if (Z(e) > 0) return e;
1475
1514
  return -1;
1476
- }, Tr = (e) => {
1477
- let t = It();
1515
+ }, Fr = (e) => {
1516
+ let t = Ht();
1478
1517
  if (!t?.keyboard) return;
1479
1518
  let n = {
1480
1519
  ArrowLeft: [-1, 0],
@@ -1484,60 +1523,60 @@ var Ee = [
1484
1523
  }[e.key];
1485
1524
  if (n) {
1486
1525
  if (e.preventDefault(), J < 0 || Z(J) <= 0) {
1487
- let e = wr();
1488
- e >= 0 && Sr(e);
1526
+ let e = Pr();
1527
+ e >= 0 && Mr(e);
1489
1528
  return;
1490
1529
  }
1491
- let t = Cr(J, n[0], n[1]);
1492
- t >= 0 && Sr(t);
1530
+ let t = Nr(J, n[0], n[1]);
1531
+ t >= 0 && Mr(t);
1493
1532
  return;
1494
1533
  }
1495
1534
  switch (e.key) {
1496
1535
  case "Enter":
1497
1536
  case " ":
1498
1537
  if (J < 0) return;
1499
- e.preventDefault(), e.key === "Enter" && Rt() && L?.children[J]?.length && ir(J, hn(J), !0), Ke("click", Wn({
1538
+ e.preventDefault(), e.key === "Enter" && Wt() && L?.children[J]?.length && mr(J, Tn(J), !0), Qe("click", er({
1500
1539
  type: "node",
1501
1540
  index: J
1502
- })), rr(J, e.ctrlKey || e.metaKey || e.key === " ");
1541
+ })), pr(J, e.ctrlKey || e.metaKey || e.key === " ");
1503
1542
  return;
1504
1543
  case "+":
1505
1544
  case "=":
1506
1545
  if (!t.zoom) return;
1507
- e.preventDefault(), On(Pe, G / 2, K / 2, !0);
1546
+ e.preventDefault(), Rn(Be, G / 2, K / 2, !0);
1508
1547
  return;
1509
1548
  case "-":
1510
1549
  case "_":
1511
1550
  if (!t.zoom) return;
1512
- e.preventDefault(), On(1 / Pe, G / 2, K / 2, !0);
1551
+ e.preventDefault(), Rn(1 / Be, G / 2, K / 2, !0);
1513
1552
  return;
1514
1553
  case "0":
1515
1554
  case "Home":
1516
- e.preventDefault(), Rr.fit(!0);
1555
+ e.preventDefault(), Jr.fit(!0);
1517
1556
  return;
1518
1557
  case "Escape":
1519
1558
  if (!(J >= 0 || Y.size > 0 || q)) return;
1520
- e.preventDefault(), J = -1, q && Kn(null), nr(/* @__PURE__ */ new Set(), !0), Jn(), B = !0, Q();
1559
+ e.preventDefault(), J = -1, q && nr(null), fr(/* @__PURE__ */ new Set(), !0), ir(), B = !0, Q();
1521
1560
  return;
1522
1561
  }
1523
- }, Er = () => On(Fe, G / 2, K / 2, !0), Dr = () => On(1 / Fe, G / 2, K / 2, !0), Or = () => Rr.fit(!0);
1524
- E.addEventListener("pointerdown", cr), E.addEventListener("pointermove", lr), E.addEventListener("pointerup", dr), E.addEventListener("pointercancel", pr), E.addEventListener("pointerleave", mr), E.addEventListener("wheel", _r, { passive: !1 }), E.addEventListener("dblclick", vr), E.addEventListener("keydown", Tr), E.addEventListener("focus", yr), E.addEventListener("blur", br), T.zoomIn.addEventListener("click", Er), T.zoomOut.addEventListener("click", Dr), T.fit.addEventListener("click", Or);
1525
- let kr = typeof ResizeObserver == "function" ? new ResizeObserver(() => Q()) : null;
1526
- kr?.observe(E);
1527
- let Ar = () => {
1562
+ }, Ir = () => Rn(Ve, G / 2, K / 2, !0), Lr = () => Rn(1 / Ve, G / 2, K / 2, !0), Rr = () => Jr.fit(!0);
1563
+ E.addEventListener("pointerdown", vr), E.addEventListener("pointermove", yr), E.addEventListener("pointerup", xr), E.addEventListener("pointercancel", Cr), E.addEventListener("pointerleave", wr), E.addEventListener("wheel", Dr, { passive: !1 }), E.addEventListener("dblclick", Or), E.addEventListener("keydown", Fr), E.addEventListener("focus", kr), E.addEventListener("blur", Ar), T.zoomIn.addEventListener("click", Ir), T.zoomOut.addEventListener("click", Lr), T.fit.addEventListener("click", Rr);
1564
+ let zr = typeof ResizeObserver == "function" ? new ResizeObserver(() => Q()) : null;
1565
+ zr?.observe(E);
1566
+ let Br = () => {
1528
1567
  if (A) return;
1529
1568
  let e = u(T.root, D.palette), t = e.fontFamily !== O.fontFamily;
1530
1569
  if (d(O, e) || t) {
1531
1570
  if (O = e, t) {
1532
- Zt(Gt(), !1);
1571
+ rn(Zt(), !1);
1533
1572
  return;
1534
1573
  }
1535
- en(), kn = "", An(), jt = "", Q();
1574
+ sn(), zn = "", Bn(), Lt = "", Q();
1536
1575
  }
1537
- }, jr = f(Ar), Mr = s(() => {
1538
- A || o(D.locale) === k.locale || (k = _e(D.locale, D.labels), Mn(), (q || J >= 0) && Jn());
1539
- }), Nr = async (e = /* @__PURE__ */ new Set()) => {
1540
- let t = ++Mt, n = await c(D.renderer ?? "auto", () => {
1576
+ }, Vr = f(Br), Hr = s(() => {
1577
+ A || o(D.locale) === k.locale || (k = ve(D.locale, D.labels), Hn(), (q || J >= 0) && ir());
1578
+ }), Ur = async (e = /* @__PURE__ */ new Set()) => {
1579
+ let t = ++Rt, n = await c(D.renderer ?? "auto", () => {
1541
1580
  let e = b(w.createElement("canvas"), {
1542
1581
  position: "absolute",
1543
1582
  left: "0",
@@ -1546,34 +1585,34 @@ var Ee = [
1546
1585
  });
1547
1586
  return e.setAttribute("aria-hidden", "true"), e.className = "minerva-chart-data", e;
1548
1587
  }, (t) => {
1549
- A || X?.kind !== t || (X.destroy(), X.canvas.remove(), X = null, Nr(/* @__PURE__ */ new Set([...e, t])));
1588
+ A || X?.kind !== t || (X.destroy(), X.canvas.remove(), X = null, Ur(/* @__PURE__ */ new Set([...e, t])));
1550
1589
  }, e);
1551
- if (A || t !== Mt) {
1590
+ if (A || t !== Rt) {
1552
1591
  n?.destroy();
1553
1592
  return;
1554
1593
  }
1555
- X && (X.destroy(), X.canvas.remove()), X = n, B = !0, n ? (T.root.dataset.renderer = n.kind, E.insertBefore(n.canvas, T.foreground), Ke("renderer", n.kind)) : delete T.root.dataset.renderer, Nt(n?.kind ?? null), Q();
1556
- }, Pr = (e) => {
1594
+ X && (X.destroy(), X.canvas.remove()), X = n, B = !0, n ? (T.root.dataset.renderer = n.kind, E.insertBefore(n.canvas, T.foreground), Qe("renderer", n.kind)) : delete T.root.dataset.renderer, zt(n?.kind ?? null), Q();
1595
+ }, Wr = (e) => {
1557
1596
  z.clear();
1558
1597
  for (let t of e.nodes ?? []) t?.collapsed && z.add(t.id);
1559
- ct.clear();
1560
- for (let t of e.groups ?? []) t?.hidden && ct.add(t.id);
1561
- }, Fr = () => {
1598
+ mt.clear();
1599
+ for (let t of e.groups ?? []) t?.hidden && mt.add(t.id);
1600
+ }, Gr = () => {
1562
1601
  if (!D.selected) return;
1563
1602
  let e = /* @__PURE__ */ new Set();
1564
1603
  for (let t of D.selected) {
1565
1604
  let n = j.index.get(t);
1566
1605
  n !== void 0 && e.add(n);
1567
1606
  }
1568
- Y.clear(), e.forEach((e) => Y.add(e)), jt = "", B = !0;
1607
+ Y.clear(), e.forEach((e) => Y.add(e)), Lt = "", B = !0;
1569
1608
  };
1570
- Pr(D), Zt(/* @__PURE__ */ new Map(), !1), Fr(), Nr();
1571
- let Ir = l(() => D.renderer, () => void Nr()), Lr = (e, t) => {
1572
- let n = Gt(), r = [...Y].map((e) => j.nodes[e].id), i = J >= 0 ? j.nodes[J].id : null;
1609
+ Wr(D), rn(/* @__PURE__ */ new Map(), !1), Gr(), Ur();
1610
+ let Kr = l(() => D.renderer, () => void Ur()), qr = (e, t) => {
1611
+ let n = Zt(), r = [...Y].map((e) => j.nodes[e].id), i = J >= 0 ? j.nodes[J].id : null;
1573
1612
  if (t) {
1574
1613
  for (let t of e.nodes ?? []) t?.collapsed && z.add(t.id);
1575
- j = ve(e.nodes ?? [], e.edges ?? [], e.groups);
1576
- for (let t of e.groups ?? []) t?.hidden && ct.add(t.id);
1614
+ j = ye(e.nodes ?? [], e.edges ?? [], e.groups);
1615
+ for (let t of e.groups ?? []) t?.hidden && mt.add(t.id);
1577
1616
  Y.clear();
1578
1617
  for (let e of r) {
1579
1618
  let t = j.index.get(e);
@@ -1581,17 +1620,17 @@ var Ee = [
1581
1620
  }
1582
1621
  J = i === null ? -1 : j.index.get(i) ?? -1, q = null, T.tooltip.style.display = "none";
1583
1622
  }
1584
- Zt(n, !0);
1585
- }, Rr = {
1623
+ rn(n, !0);
1624
+ }, Jr = {
1586
1625
  setOptions(e) {
1587
1626
  if (A) return;
1588
1627
  let t = D;
1589
- D = e, (e.palette ?? []).join() !== (t.palette ?? []).join() && (O = u(T.root, e.palette)), (e.locale !== t.locale || e.labels !== t.labels) && (k = _e(e.locale, e.labels));
1590
- let n = e.nodes !== t.nodes || e.edges !== t.edges || e.groups !== t.groups, r = Be(e);
1591
- n || r !== Ze ? (Ze = r, Lr(e, n)) : ($t(), en(), ft = !0, jt = "", kn = "", An(), Mn(), Q()), (e.selected ?? []).join("") !== (t.selected ?? []).join("") && Fr(), (e.renderer ?? "auto") !== (t.renderer ?? "auto") && Nr();
1628
+ D = e, (e.palette ?? []).join() !== (t.palette ?? []).join() && (O = u(T.root, e.palette)), (e.locale !== t.locale || e.labels !== t.labels) && (k = ve(e.locale, e.labels));
1629
+ let n = e.nodes !== t.nodes || e.edges !== t.edges || e.groups !== t.groups, r = Ke(e);
1630
+ n || r !== rt ? (rt = r, qr(e, n)) : (on(), sn(), vt = !0, Lt = "", zn = "", Bn(), Hn(), Q()), (e.selected ?? []).join("") !== (t.selected ?? []).join("") && Gr(), (e.renderer ?? "auto") !== (t.renderer ?? "auto") && Ur();
1592
1631
  },
1593
1632
  setData(e) {
1594
- A || Rr.setOptions({
1633
+ A || Jr.setOptions({
1595
1634
  ...D,
1596
1635
  nodes: e.nodes,
1597
1636
  edges: e.edges,
@@ -1600,27 +1639,27 @@ var Ee = [
1600
1639
  },
1601
1640
  fit(e = !0) {
1602
1641
  if (A) return;
1603
- wt = !1, R?.running() && (Ot = !0);
1604
- let t = wn();
1605
- t ? Dn(t, e) : Tt = !0, Q();
1642
+ At = !1, R?.running() && (Pt = !0);
1643
+ let t = Pn();
1644
+ t ? Ln(t, e) : jt = !0, Q();
1606
1645
  },
1607
1646
  focusNode(e, t = {}) {
1608
1647
  if (A) return;
1609
1648
  let n = j.index.get(e);
1610
1649
  if (n === void 0) return;
1611
- if (L && !tt[n]) {
1650
+ if (L && !st[n]) {
1612
1651
  let r = !1;
1613
1652
  for (let e = L.parent[n]; e >= 0; e = L.parent[e]) z.delete(j.nodes[e].id) && (r = !0);
1614
- r && Zt(Gt(), t.animate !== !1), n = j.index.get(e);
1653
+ r && rn(Zt(), t.animate !== !1), n = j.index.get(e);
1615
1654
  }
1616
- let r = t.zoom ?? Math.max(H, 1), [i, a] = Tn(), o = Math.max(i, Math.min(a, r));
1617
- wt = !0;
1655
+ let r = t.zoom ?? Math.max(H, 1), [i, a] = Fn(), o = Math.max(i, Math.min(a, r));
1656
+ At = !0;
1618
1657
  let s = G || E.clientWidth, c = K || E.clientHeight;
1619
- Dn([
1658
+ Ln([
1620
1659
  o,
1621
1660
  s / 2 - I[n] * o,
1622
- c / 2 - Qe[n] * o
1623
- ], t.animate !== !1), J = n, jt = "", B = !0, Q();
1661
+ c / 2 - it[n] * o
1662
+ ], t.animate !== !1), J = n, Lt = "", B = !0, Q();
1624
1663
  },
1625
1664
  select(e) {
1626
1665
  if (A) return;
@@ -1629,7 +1668,7 @@ var Ee = [
1629
1668
  let t = j.index.get(e);
1630
1669
  t !== void 0 && n.add(t);
1631
1670
  }
1632
- nr(n, !0);
1671
+ fr(n, !0);
1633
1672
  },
1634
1673
  getSelection: () => [...Y].map((e) => j.nodes[e].id),
1635
1674
  expand(e) {
@@ -1637,15 +1676,15 @@ var Ee = [
1637
1676
  if (e === void 0) {
1638
1677
  if (!z.size) return;
1639
1678
  let e = [...z];
1640
- z.clear(), Zt(Gt(), !0);
1641
- for (let t of e) j.index.has(t) && Ke("toggle", {
1679
+ z.clear(), rn(Zt(), !0);
1680
+ for (let t of e) j.index.has(t) && Qe("toggle", {
1642
1681
  id: t,
1643
1682
  collapsed: !1
1644
1683
  });
1645
1684
  return;
1646
1685
  }
1647
1686
  let t = j.index.get(e);
1648
- t === void 0 ? z.delete(e) : ir(t, !1, !0);
1687
+ t === void 0 ? z.delete(e) : mr(t, !1, !0);
1649
1688
  },
1650
1689
  collapse(e) {
1651
1690
  if (A) return;
@@ -1656,53 +1695,53 @@ var Ee = [
1656
1695
  let r = j.nodes[n].id;
1657
1696
  t.length && L.parent[n] >= 0 && !z.has(r) && (z.add(r), e.push(r));
1658
1697
  }), !e.length) return;
1659
- Zt(Gt(), !0);
1660
- for (let t of e) Ke("toggle", {
1698
+ rn(Zt(), !0);
1699
+ for (let t of e) Qe("toggle", {
1661
1700
  id: t,
1662
1701
  collapsed: !0
1663
1702
  });
1664
1703
  return;
1665
1704
  }
1666
1705
  let t = j.index.get(e);
1667
- t !== void 0 && ir(t, !0, !0);
1706
+ t !== void 0 && mr(t, !0, !0);
1668
1707
  },
1669
1708
  toggle(e) {
1670
1709
  let t = j.index.get(e);
1671
- t === void 0 || A || ir(t, hn(t), !0);
1710
+ t === void 0 || A || mr(t, Tn(t), !0);
1672
1711
  },
1673
1712
  getPositions() {
1674
1713
  let e = {};
1675
1714
  for (let t = 0; t < j.n; t++) e[j.nodes[t].id] = {
1676
1715
  x: I[t],
1677
- y: Qe[t]
1716
+ y: it[t]
1678
1717
  };
1679
1718
  return e;
1680
1719
  },
1681
1720
  relayout() {
1682
- A || Zt(M === "force" ? /* @__PURE__ */ new Map() : Gt(), !0);
1721
+ A || rn(M === "force" ? /* @__PURE__ */ new Map() : Zt(), !0);
1683
1722
  },
1684
1723
  resize() {
1685
1724
  Q();
1686
1725
  },
1687
1726
  getRenderer: () => X?.kind ?? null,
1688
- ready: Pt,
1689
- refreshTheme: Ar,
1727
+ ready: Bt,
1728
+ refreshTheme: Br,
1690
1729
  on(e, t) {
1691
- let n = Ge.get(e);
1692
- return n || (n = /* @__PURE__ */ new Set(), Ge.set(e, n)), n.add(t), () => {
1730
+ let n = Ze.get(e);
1731
+ return n || (n = /* @__PURE__ */ new Set(), Ze.set(e, n)), n.add(t), () => {
1693
1732
  n.delete(t);
1694
1733
  };
1695
1734
  },
1696
1735
  destroy() {
1697
- A || (A = !0, Mt++, Ft && Ue?.cancelAnimationFrame(Ft), $n && Ue?.cancelAnimationFrame($n), hr && clearTimeout(hr), Ft = 0, $n = 0, Kt(), kr?.disconnect(), Ir(), jr(), Mr(), E.removeEventListener("pointerdown", cr), E.removeEventListener("pointermove", lr), E.removeEventListener("pointerup", dr), E.removeEventListener("pointercancel", pr), E.removeEventListener("pointerleave", mr), E.removeEventListener("wheel", _r), E.removeEventListener("dblclick", vr), E.removeEventListener("keydown", Tr), E.removeEventListener("focus", yr), E.removeEventListener("blur", br), T.zoomIn.removeEventListener("click", Er), T.zoomOut.removeEventListener("click", Dr), T.fit.removeEventListener("click", Or), X?.destroy(), X = null, Ge.clear(), Nt(null), T.root.remove());
1736
+ A || (A = !0, Rt++, Vt && Ye?.cancelAnimationFrame(Vt), lr && Ye?.cancelAnimationFrame(lr), Tr && clearTimeout(Tr), Vt = 0, lr = 0, Qt(), zr?.disconnect(), Kr(), Vr(), Hr(), E.removeEventListener("pointerdown", vr), E.removeEventListener("pointermove", yr), E.removeEventListener("pointerup", xr), E.removeEventListener("pointercancel", Cr), E.removeEventListener("pointerleave", wr), E.removeEventListener("wheel", Dr), E.removeEventListener("dblclick", Or), E.removeEventListener("keydown", Fr), E.removeEventListener("focus", kr), E.removeEventListener("blur", Ar), T.zoomIn.removeEventListener("click", Ir), T.zoomOut.removeEventListener("click", Lr), T.fit.removeEventListener("click", Rr), X?.destroy(), X = null, Ze.clear(), zt(null), T.root.remove());
1698
1737
  }
1699
1738
  };
1700
- return Rr;
1739
+ return Jr;
1701
1740
  };
1702
- function He(t) {
1741
+ function Je(t) {
1703
1742
  return e(t.background) < .4 || e(t.text) > .6;
1704
1743
  }
1705
1744
  //#endregion
1706
- export { Ve as createGraphChart, ze as resolveLayout };
1745
+ export { qe as createGraphChart, Ge as resolveLayout };
1707
1746
 
1708
1747
  //# sourceMappingURL=chart.js.map