@fibery/custom-app-text-editor 1.2.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 (105) hide show
  1. package/LICENSE +214 -0
  2. package/README.md +33 -0
  3. package/lib/abnfDiagram-VRR7QNED-BgjOQqEh.js +89 -0
  4. package/lib/arc-Dp0rqagO.js +82 -0
  5. package/lib/architecture-TIHT7OUA-DDwCCw0y.js +3 -0
  6. package/lib/architectureDiagram-ZJ3FMSHR-BucIluTN.js +4129 -0
  7. package/lib/array-CApNbSU9.js +6 -0
  8. package/lib/blockDiagram-677ZJIJ3-CWYuHThP.js +3157 -0
  9. package/lib/c4Diagram-LMCZKHZV-Cr3_W-xe.js +2982 -0
  10. package/lib/channel-Bb7a6w5c.js +5 -0
  11. package/lib/chunk-2Q5K7J3B-CINvUK-A.js +15 -0
  12. package/lib/chunk-32BRIVSS-b-BvyGz0.js +61 -0
  13. package/lib/chunk-52WLFC77-Cf8zEoqs.js +593 -0
  14. package/lib/chunk-5VM5RSS4-Dnx15xMv.js +5 -0
  15. package/lib/chunk-7BUUIJ7U-B018BbRy.js +82 -0
  16. package/lib/chunk-C7G6YPKG-CmOuVFlJ.js +67 -0
  17. package/lib/chunk-EX3LRPZG-LynZw14I.js +2042 -0
  18. package/lib/chunk-HOUHSVGY-Br7ZSMKe.js +275 -0
  19. package/lib/chunk-ICXQ74PX-VqT5WUTt.js +1330 -0
  20. package/lib/chunk-JWPE2WC7-Ch0jmUXM.js +8 -0
  21. package/lib/chunk-KEIR6QF5-RwFi50en.js +21456 -0
  22. package/lib/chunk-MOJQB5TN-rQ4AfTd9.js +490 -0
  23. package/lib/chunk-OGEWGWER-BvF6eV9Q.js +32 -0
  24. package/lib/chunk-PUDLZKDR-BW7SZvCB.js +4135 -0
  25. package/lib/chunk-Q4XR5HBZ-CRgGP3ez.js +1635 -0
  26. package/lib/chunk-RYQCIY6F-CHlASUpG.js +241 -0
  27. package/lib/chunk-V7JOEXUC-OY39ml6X.js +3357 -0
  28. package/lib/chunk-VR4S4FIN-Bk7IFdYB.js +26 -0
  29. package/lib/chunk-WYO6CB5R-MV-yOaop.js +3769 -0
  30. package/lib/chunk-XXDRQBXY-Djd1ChwJ.js +9 -0
  31. package/lib/chunk-Y2CYZVJY-QdJ4V9rh.js +12 -0
  32. package/lib/chunk-ZGVPDNZ5-l81xl1BI.js +3738 -0
  33. package/lib/classDiagram-OUVF2IWQ--wRzSvLt.js +30 -0
  34. package/lib/classDiagram-v2-EOCWNBFH-ChMCdPO-.js +30 -0
  35. package/lib/cose-bilkent-JH36ORCC-CyVZn5M3.js +2254 -0
  36. package/lib/custom-app-text-editor.css +2 -0
  37. package/lib/custom-app-text-editor.js +81102 -0
  38. package/lib/cynefin-VYW2F7L2-CMgnLl46.js +3 -0
  39. package/lib/cynefinDiagram-TSTJHNR4-988Y73wV.js +355 -0
  40. package/lib/cytoscape.esm-DMXbtFI-.js +18145 -0
  41. package/lib/dagre-Dmarb1s8.js +1699 -0
  42. package/lib/dagre-VKFMJZFB-Bf-pz2Lx.js +328 -0
  43. package/lib/defaultLocale-A87O3snN.js +198 -0
  44. package/lib/diagram-FQU43EPY-BT8WeVzc.js +432 -0
  45. package/lib/diagram-G47NLZAW-vZ2XG37l.js +527 -0
  46. package/lib/diagram-NH7WQ7WH-CH0IfHB0.js +134 -0
  47. package/lib/diagram-OA4YK3LP-BgwQcJfp.js +300 -0
  48. package/lib/diagram-WEI45ONY-Cd3sVPil.js +214 -0
  49. package/lib/dist-PGS6ynRO.js +59 -0
  50. package/lib/ebnfDiagram-CCIWWBDH-CwBFb2Fm.js +100 -0
  51. package/lib/erDiagram-Q63AITRT-BshRACvj.js +1727 -0
  52. package/lib/eventmodeling-45OFAUF4-BDhzj03B.js +3 -0
  53. package/lib/flowDiagram-23GEKE2U-C3zDgFvZ.js +16 -0
  54. package/lib/ganttDiagram-NO4QXBWP-BD5PiE8x.js +3073 -0
  55. package/lib/gitGraph-TEB2WS4Q-DJA_hE4G.js +3 -0
  56. package/lib/gitGraphDiagram-IHSO6WYX-BAhccBh3.js +733 -0
  57. package/lib/graphlib-DglfpsVp.js +1267 -0
  58. package/lib/index.browser-Dv9K8IAp.js +26 -0
  59. package/lib/info-DKCQHKI2-BD_vOCz6.js +3 -0
  60. package/lib/infoDiagram-FWYZ7A6U-CGZnf03G.js +20 -0
  61. package/lib/init-sjaVZO3f.js +13 -0
  62. package/lib/ishikawaDiagram-FXEZZL3T-PFfVM0NO.js +719 -0
  63. package/lib/journeyDiagram-5HDEW3XC-CRGz7dcx.js +884 -0
  64. package/lib/kanban-definition-HUTT4EX6-BBH4Yn5e.js +974 -0
  65. package/lib/line-CJQicKfr.js +34 -0
  66. package/lib/linear-B9Cv96-J.js +288 -0
  67. package/lib/map-C7KALUOH.js +241 -0
  68. package/lib/mermaid-parser.core-BupC9XGF.js +638 -0
  69. package/lib/mermaid-renderer-Cp0xusfR.js +2425 -0
  70. package/lib/mindmap-definition-LN4V7U3C-CWL1sg0K.js +978 -0
  71. package/lib/ordinal-CNQzPcrr.js +65 -0
  72. package/lib/packet-7NZHBO7P-CgBlALV1.js +3 -0
  73. package/lib/path-DVvH25eQ.js +84 -0
  74. package/lib/pegDiagram-2B236MQR-BKv8dTtv.js +94 -0
  75. package/lib/pie-RZYD4A2V-CryPC-P_.js +3 -0
  76. package/lib/pieDiagram-ENE6RG2P-CXeFg_cL.js +203 -0
  77. package/lib/quadrantDiagram-ABIIQ3AL-v_u3aC8Y.js +2001 -0
  78. package/lib/radar-I7S5WNFK-DgzJDRy3.js +3 -0
  79. package/lib/railroad-3IZDKUUU-DFp3mbpB.js +3 -0
  80. package/lib/railroad-abnf-AHOZXSZD-BRjidKH0.js +3 -0
  81. package/lib/railroad-ebnf-EBAXGLYW-PgrDWact.js +3 -0
  82. package/lib/railroad-peg-LSFZ7HO6-CMKir81Y.js +3 -0
  83. package/lib/railroadDiagram-RFXS5EU6-mEC9tVS-.js +76 -0
  84. package/lib/requirementDiagram-TGXJPOKE-BAEzI7V4.js +2223 -0
  85. package/lib/rolldown-runtime-DArdT4gl.js +23 -0
  86. package/lib/rough.esm-B2w_aYoc.js +1361 -0
  87. package/lib/sankeyDiagram-HTMAVEWB-Dbu-sl2E.js +972 -0
  88. package/lib/sequenceDiagram-DBY2YBRQ-DCuWmWHX.js +4156 -0
  89. package/lib/sizeCapture-X5ZJPWSS-BEIM84He.js +46 -0
  90. package/lib/src-DQbL46sB.js +2139 -0
  91. package/lib/src-DuuHKEe6.js +704 -0
  92. package/lib/stateDiagram-2N3HPSRC-fs9QmDMR.js +220 -0
  93. package/lib/stateDiagram-v2-6OUMAXLB-wWxYbttN.js +30 -0
  94. package/lib/swimlanes-5IMT3BWC-QaXUd9db.js +5069 -0
  95. package/lib/swimlanesDiagram-G3AALYLV-BtGToCzH.js +30 -0
  96. package/lib/timeline-definition-FHXFAJF6-CAsyJrsw.js +1069 -0
  97. package/lib/treeView-QDETBFTQ-DVp4aTZQ.js +3 -0
  98. package/lib/treemap-6X3UGDF4-BbBnHMHJ.js +3 -0
  99. package/lib/types.d.ts +44 -0
  100. package/lib/v4-CZv9Hsqq.js +33 -0
  101. package/lib/vennDiagram-L72KCM5P-C87u0gjr.js +1880 -0
  102. package/lib/wardley-OPB4EBWU-B-RXhnoN.js +3 -0
  103. package/lib/wardleyDiagram-EHGQE667-BxviBDl_.js +645 -0
  104. package/lib/xychartDiagram-FW5EYKEG-BQQhanuH.js +2098 -0
  105. package/package.json +29 -0
@@ -0,0 +1,733 @@
1
+ import { n as e } from "./mermaid-parser.core-BupC9XGF.js";
2
+ import { n as t } from "./chunk-Y2CYZVJY-QdJ4V9rh.js";
3
+ import { m as n, p as r } from "./src-DQbL46sB.js";
4
+ import { H as i, K as a, U as o, Y as s, a as c, b as l, f as u, s as d, v as f, w as p, x as m, y as h } from "./chunk-WYO6CB5R-MV-yOaop.js";
5
+ import { g, i as _, m as v } from "./chunk-ICXQ74PX-VqT5WUTt.js";
6
+ import { t as y } from "./chunk-JWPE2WC7-Ch0jmUXM.js";
7
+ import { t as b } from "./chunk-2Q5K7J3B-CINvUK-A.js";
8
+ //#region ../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-IHSO6WYX.mjs
9
+ var x = {
10
+ NORMAL: 0,
11
+ REVERSE: 1,
12
+ HIGHLIGHT: 2,
13
+ MERGE: 3,
14
+ CHERRY_PICK: 4
15
+ }, ee = u.gitGraph, S = /* @__PURE__ */ t(() => _({
16
+ ...ee,
17
+ ...l().gitGraph
18
+ }), "getConfig"), C = new b(() => {
19
+ let e = S(), t = e.mainBranchName, n = e.mainBranchOrder;
20
+ return {
21
+ mainBranchName: t,
22
+ commits: /* @__PURE__ */ new Map(),
23
+ head: null,
24
+ branchConfig: /* @__PURE__ */ new Map([[t, {
25
+ name: t,
26
+ order: n
27
+ }]]),
28
+ branches: /* @__PURE__ */ new Map([[t, null]]),
29
+ currBranch: t,
30
+ direction: "LR",
31
+ seq: 0,
32
+ options: {}
33
+ };
34
+ });
35
+ function w() {
36
+ return v({ length: 7 });
37
+ }
38
+ t(w, "getID");
39
+ function T(e, t) {
40
+ let n = /* @__PURE__ */ Object.create(null);
41
+ return e.reduce((e, r) => {
42
+ let i = t(r);
43
+ return n[i] || (n[i] = !0, e.push(r)), e;
44
+ }, []);
45
+ }
46
+ t(T, "uniqBy");
47
+ var te = /* @__PURE__ */ t(function(e) {
48
+ C.records.direction = e;
49
+ }, "setDirection"), ne = /* @__PURE__ */ t(function(e) {
50
+ n.debug("options str", e), e = e?.trim(), e ||= "{}";
51
+ try {
52
+ C.records.options = JSON.parse(e);
53
+ } catch (e) {
54
+ n.error("error while parsing gitGraph options", e.message);
55
+ }
56
+ }, "setOptions"), re = /* @__PURE__ */ t(function() {
57
+ return C.records.options;
58
+ }, "getOptions"), ie = /* @__PURE__ */ t(function(e) {
59
+ let t = e.msg, r = e.id, i = e.type, a = e.tags;
60
+ n.info("commit", t, r, i, a), n.debug("Entering commit:", t, r, i, a);
61
+ let o = S();
62
+ r = d.sanitizeText(r, o), t = d.sanitizeText(t, o), a = a?.map((e) => d.sanitizeText(e, o));
63
+ let s = {
64
+ id: r || C.records.seq + "-" + w(),
65
+ message: t,
66
+ seq: C.records.seq++,
67
+ type: i ?? x.NORMAL,
68
+ tags: a ?? [],
69
+ parents: C.records.head == null ? [] : [C.records.head.id],
70
+ branch: C.records.currBranch
71
+ };
72
+ C.records.head = s, n.info("main branch", o.mainBranchName), C.records.commits.has(s.id) && n.warn(`Commit ID ${s.id} already exists`), C.records.commits.set(s.id, s), C.records.branches.set(C.records.currBranch, s.id), n.debug("in pushCommit " + s.id);
73
+ }, "commit"), ae = /* @__PURE__ */ t(function(e) {
74
+ let t = e.name, r = e.order;
75
+ if (t = d.sanitizeText(t, S()), C.records.branches.has(t)) throw Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${t}")`);
76
+ C.records.branches.set(t, C.records.head == null ? null : C.records.head.id), C.records.branchConfig.set(t, {
77
+ name: t,
78
+ order: r
79
+ }), E(t), n.debug("in createBranch");
80
+ }, "branch"), oe = /* @__PURE__ */ t((e) => {
81
+ let t = e.branch, r = e.id, i = e.type, a = e.tags, o = S();
82
+ t = d.sanitizeText(t, o), r &&= d.sanitizeText(r, o);
83
+ let s = C.records.branches.get(C.records.currBranch), c = C.records.branches.get(t), l = s ? C.records.commits.get(s) : void 0, u = c ? C.records.commits.get(c) : void 0;
84
+ if (l && u && l.branch === t) throw Error(`Cannot merge branch '${t}' into itself.`);
85
+ if (C.records.currBranch === t) {
86
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"merge\". Cannot merge a branch to itself");
87
+ throw e.hash = {
88
+ text: `merge ${t}`,
89
+ token: `merge ${t}`,
90
+ expected: ["branch abc"]
91
+ }, e;
92
+ }
93
+ if (l === void 0 || !l) {
94
+ let e = /* @__PURE__ */ Error(`Incorrect usage of "merge". Current branch (${C.records.currBranch})has no commits`);
95
+ throw e.hash = {
96
+ text: `merge ${t}`,
97
+ token: `merge ${t}`,
98
+ expected: ["commit"]
99
+ }, e;
100
+ }
101
+ if (!C.records.branches.has(t)) {
102
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"merge\". Branch to be merged (" + t + ") does not exist");
103
+ throw e.hash = {
104
+ text: `merge ${t}`,
105
+ token: `merge ${t}`,
106
+ expected: [`branch ${t}`]
107
+ }, e;
108
+ }
109
+ if (u === void 0 || !u) {
110
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"merge\". Branch to be merged (" + t + ") has no commits");
111
+ throw e.hash = {
112
+ text: `merge ${t}`,
113
+ token: `merge ${t}`,
114
+ expected: ["\"commit\""]
115
+ }, e;
116
+ }
117
+ if (l === u) {
118
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"merge\". Both branches have same head");
119
+ throw e.hash = {
120
+ text: `merge ${t}`,
121
+ token: `merge ${t}`,
122
+ expected: ["branch abc"]
123
+ }, e;
124
+ }
125
+ if (r && C.records.commits.has(r)) {
126
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"merge\". Commit with id:" + r + " already exists, use different custom id");
127
+ throw e.hash = {
128
+ text: `merge ${t} ${r} ${i} ${a?.join(" ")}`,
129
+ token: `merge ${t} ${r} ${i} ${a?.join(" ")}`,
130
+ expected: [`merge ${t} ${r}_UNIQUE ${i} ${a?.join(" ")}`]
131
+ }, e;
132
+ }
133
+ let f = c || "", p = {
134
+ id: r || `${C.records.seq}-${w()}`,
135
+ message: `merged branch ${t} into ${C.records.currBranch}`,
136
+ seq: C.records.seq++,
137
+ parents: C.records.head == null ? [] : [C.records.head.id, f],
138
+ branch: C.records.currBranch,
139
+ type: x.MERGE,
140
+ customType: i,
141
+ customId: !!r,
142
+ tags: a ?? []
143
+ };
144
+ C.records.head = p, C.records.commits.set(p.id, p), C.records.branches.set(C.records.currBranch, p.id), n.debug(C.records.branches), n.debug("in mergeBranch");
145
+ }, "merge"), se = /* @__PURE__ */ t(function(e) {
146
+ let t = e.id, r = e.targetId, i = e.tags, a = e.parent;
147
+ n.debug("Entering cherryPick:", t, r, i);
148
+ let o = S();
149
+ if (t = d.sanitizeText(t, o), r = d.sanitizeText(r, o), i = i?.map((e) => d.sanitizeText(e, o)), a = d.sanitizeText(a, o), !t || !C.records.commits.has(t)) {
150
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"cherryPick\". Source commit id should exist and provided");
151
+ throw e.hash = {
152
+ text: `cherryPick ${t} ${r}`,
153
+ token: `cherryPick ${t} ${r}`,
154
+ expected: ["cherry-pick abc"]
155
+ }, e;
156
+ }
157
+ let s = C.records.commits.get(t);
158
+ if (s === void 0 || !s) throw Error("Incorrect usage of \"cherryPick\". Source commit id should exist and provided");
159
+ if (a && !(Array.isArray(s.parents) && s.parents.includes(a))) throw /* @__PURE__ */ Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");
160
+ let c = s.branch;
161
+ if (s.type === x.MERGE && !a) throw /* @__PURE__ */ Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");
162
+ if (!r || !C.records.commits.has(r)) {
163
+ if (c === C.records.currBranch) {
164
+ let e = /* @__PURE__ */ Error("Incorrect usage of \"cherryPick\". Source commit is already on current branch");
165
+ throw e.hash = {
166
+ text: `cherryPick ${t} ${r}`,
167
+ token: `cherryPick ${t} ${r}`,
168
+ expected: ["cherry-pick abc"]
169
+ }, e;
170
+ }
171
+ let e = C.records.branches.get(C.records.currBranch);
172
+ if (e === void 0 || !e) {
173
+ let e = /* @__PURE__ */ Error(`Incorrect usage of "cherry-pick". Current branch (${C.records.currBranch})has no commits`);
174
+ throw e.hash = {
175
+ text: `cherryPick ${t} ${r}`,
176
+ token: `cherryPick ${t} ${r}`,
177
+ expected: ["cherry-pick abc"]
178
+ }, e;
179
+ }
180
+ let o = C.records.commits.get(e);
181
+ if (o === void 0 || !o) {
182
+ let e = /* @__PURE__ */ Error(`Incorrect usage of "cherry-pick". Current branch (${C.records.currBranch})has no commits`);
183
+ throw e.hash = {
184
+ text: `cherryPick ${t} ${r}`,
185
+ token: `cherryPick ${t} ${r}`,
186
+ expected: ["cherry-pick abc"]
187
+ }, e;
188
+ }
189
+ let l = {
190
+ id: C.records.seq + "-" + w(),
191
+ message: `cherry-picked ${s?.message} into ${C.records.currBranch}`,
192
+ seq: C.records.seq++,
193
+ parents: C.records.head == null ? [] : [C.records.head.id, s.id],
194
+ branch: C.records.currBranch,
195
+ type: x.CHERRY_PICK,
196
+ tags: i ? i.filter(Boolean) : [`cherry-pick:${s.id}${s.type === x.MERGE ? `|parent:${a}` : ""}`]
197
+ };
198
+ C.records.head = l, C.records.commits.set(l.id, l), C.records.branches.set(C.records.currBranch, l.id), n.debug(C.records.branches), n.debug("in cherryPick");
199
+ }
200
+ }, "cherryPick"), E = /* @__PURE__ */ t(function(e) {
201
+ if (e = d.sanitizeText(e, S()), C.records.branches.has(e)) {
202
+ C.records.currBranch = e;
203
+ let t = C.records.branches.get(C.records.currBranch);
204
+ t === void 0 || !t ? C.records.head = null : C.records.head = C.records.commits.get(t) ?? null;
205
+ } else {
206
+ let t = /* @__PURE__ */ Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);
207
+ throw t.hash = {
208
+ text: `checkout ${e}`,
209
+ token: `checkout ${e}`,
210
+ expected: [`branch ${e}`]
211
+ }, t;
212
+ }
213
+ }, "checkout");
214
+ function D(e, t, n) {
215
+ let r = e.indexOf(t);
216
+ r === -1 ? e.push(n) : e.splice(r, 1, n);
217
+ }
218
+ t(D, "upsert");
219
+ function O(e) {
220
+ let t = e.reduce((e, t) => e.seq > t.seq ? e : t, e[0]), r = "";
221
+ e.forEach(function(e) {
222
+ r += e === t ? " *" : " |";
223
+ });
224
+ let i = [
225
+ r,
226
+ t.id,
227
+ t.seq
228
+ ];
229
+ for (let e in C.records.branches) C.records.branches.get(e) === t.id && i.push(e);
230
+ if (n.debug(i.join(" ")), t.parents && t.parents.length == 2 && t.parents[0] && t.parents[1]) {
231
+ let n = C.records.commits.get(t.parents[0]);
232
+ D(e, t, n), t.parents[1] && e.push(C.records.commits.get(t.parents[1]));
233
+ } else if (t.parents.length == 0) return;
234
+ else if (t.parents[0]) {
235
+ let n = C.records.commits.get(t.parents[0]);
236
+ D(e, t, n);
237
+ }
238
+ e = T(e, (e) => e.id), O(e);
239
+ }
240
+ t(O, "prettyPrintCommitHistory");
241
+ var ce = /* @__PURE__ */ t(function() {
242
+ n.debug(C.records.commits);
243
+ let e = k()[0];
244
+ O([e]);
245
+ }, "prettyPrint"), le = /* @__PURE__ */ t(function() {
246
+ C.reset(), c();
247
+ }, "clear"), ue = /* @__PURE__ */ t(function() {
248
+ return [...C.records.branchConfig.values()].map((e, t) => e.order !== null && e.order !== void 0 ? e : {
249
+ ...e,
250
+ order: parseFloat(`0.${t}`)
251
+ }).sort((e, t) => (e.order ?? 0) - (t.order ?? 0)).map(({ name: e }) => ({ name: e }));
252
+ }, "getBranchesAsObjArray"), de = /* @__PURE__ */ t(function() {
253
+ return C.records.branches;
254
+ }, "getBranches"), fe = /* @__PURE__ */ t(function() {
255
+ return C.records.commits;
256
+ }, "getCommits"), k = /* @__PURE__ */ t(function() {
257
+ let e = [...C.records.commits.values()];
258
+ return e.forEach(function(e) {
259
+ n.debug(e.id);
260
+ }), e.sort((e, t) => e.seq - t.seq), e;
261
+ }, "getCommitsArray"), A = {
262
+ commitType: x,
263
+ getConfig: S,
264
+ setDirection: te,
265
+ setOptions: ne,
266
+ getOptions: re,
267
+ commit: ie,
268
+ branch: ae,
269
+ merge: oe,
270
+ cherryPick: se,
271
+ checkout: E,
272
+ prettyPrint: ce,
273
+ clear: le,
274
+ getBranchesAsObjArray: ue,
275
+ getBranches: de,
276
+ getCommits: fe,
277
+ getCommitsArray: k,
278
+ getCurrentBranch: /* @__PURE__ */ t(function() {
279
+ return C.records.currBranch;
280
+ }, "getCurrentBranch"),
281
+ getDirection: /* @__PURE__ */ t(function() {
282
+ return C.records.direction;
283
+ }, "getDirection"),
284
+ getHead: /* @__PURE__ */ t(function() {
285
+ return C.records.head;
286
+ }, "getHead"),
287
+ setAccTitle: o,
288
+ getAccTitle: h,
289
+ getAccDescription: f,
290
+ setAccDescription: i,
291
+ setDiagramTitle: a,
292
+ getDiagramTitle: p
293
+ }, pe = /* @__PURE__ */ t((e, t) => {
294
+ y(e, t), e.dir && t.setDirection(e.dir);
295
+ for (let n of e.statements) me(n, t);
296
+ }, "populate"), me = /* @__PURE__ */ t((e, r) => {
297
+ let i = {
298
+ Commit: /* @__PURE__ */ t((e) => r.commit(he(e)), "Commit"),
299
+ Branch: /* @__PURE__ */ t((e) => r.branch(ge(e)), "Branch"),
300
+ Merge: /* @__PURE__ */ t((e) => r.merge(_e(e)), "Merge"),
301
+ Checkout: /* @__PURE__ */ t((e) => r.checkout(ve(e)), "Checkout"),
302
+ CherryPicking: /* @__PURE__ */ t((e) => r.cherryPick(ye(e)), "CherryPicking")
303
+ }[e.$type];
304
+ i ? i(e) : n.error(`Unknown statement type: ${e.$type}`);
305
+ }, "parseStatement"), he = /* @__PURE__ */ t((e) => ({
306
+ id: e.id,
307
+ msg: e.message ?? "",
308
+ type: e.type === void 0 ? x.NORMAL : x[e.type],
309
+ tags: e.tags ?? void 0
310
+ }), "parseCommit"), ge = /* @__PURE__ */ t((e) => ({
311
+ name: e.name,
312
+ order: e.order ?? 0
313
+ }), "parseBranch"), _e = /* @__PURE__ */ t((e) => ({
314
+ branch: e.branch,
315
+ id: e.id ?? "",
316
+ type: e.type === void 0 ? void 0 : x[e.type],
317
+ tags: e.tags ?? void 0
318
+ }), "parseMerge"), ve = /* @__PURE__ */ t((e) => e.branch, "parseCheckout"), ye = /* @__PURE__ */ t((e) => ({
319
+ id: e.id,
320
+ targetId: "",
321
+ tags: e.tags?.length === 0 ? void 0 : e.tags,
322
+ parent: e.parent
323
+ }), "parseCherryPicking"), be = { parse: /* @__PURE__ */ t(async (t) => {
324
+ let r = await e("gitGraph", t);
325
+ n.debug(r), pe(r, A);
326
+ }, "parse") }, j = 10, M = 40, N = 4, P = 2, F = 8, I = /* @__PURE__ */ new Set([
327
+ "redux",
328
+ "redux-dark",
329
+ "redux-color",
330
+ "redux-dark-color"
331
+ ]), L = 12, R = /* @__PURE__ */ new Set(["redux-color", "redux-dark-color"]), xe = /* @__PURE__ */ new Set([
332
+ "dark",
333
+ "redux-dark",
334
+ "redux-dark-color",
335
+ "neo-dark"
336
+ ]), z = /* @__PURE__ */ t((e, t, n = !1) => n && e > 0 ? (e - 1) % (t - 1) + 1 : e % t, "calcColorIndex"), B = /* @__PURE__ */ new Map(), V = /* @__PURE__ */ new Map(), H = 30, U = /* @__PURE__ */ new Map(), W = [], G = 0, K = "LR", Se = /* @__PURE__ */ t(() => {
337
+ B.clear(), V.clear(), U.clear(), G = 0, W = [], K = "LR";
338
+ }, "clear"), q = /* @__PURE__ */ t((e) => {
339
+ let t = document.createElementNS("http://www.w3.org/2000/svg", "text");
340
+ return (typeof e == "string" ? e.split(/\\n|\n|<br\s*\/?>/gi) : e).forEach((e) => {
341
+ let n = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
342
+ n.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"), n.setAttribute("dy", "1em"), n.setAttribute("x", "0"), n.setAttribute("class", "row"), n.textContent = e.trim(), t.appendChild(n);
343
+ }), t;
344
+ }, "drawText"), J = /* @__PURE__ */ t((e) => {
345
+ let n, r, i;
346
+ return K === "BT" ? (r = /* @__PURE__ */ t((e, t) => e <= t, "comparisonFunc"), i = Infinity) : (r = /* @__PURE__ */ t((e, t) => e >= t, "comparisonFunc"), i = 0), e.forEach((e) => {
347
+ let t = K === "TB" || K == "BT" ? V.get(e)?.y : V.get(e)?.x;
348
+ t !== void 0 && r(t, i) && (n = e, i = t);
349
+ }), n;
350
+ }, "findClosestParent"), Ce = /* @__PURE__ */ t((e) => {
351
+ let t = "", n = Infinity;
352
+ return e.forEach((e) => {
353
+ let r = V.get(e).y;
354
+ r <= n && (t = e, n = r);
355
+ }), t || void 0;
356
+ }, "findClosestParentBT"), we = /* @__PURE__ */ t((e, t, n) => {
357
+ let r = n, i = n, a = [];
358
+ e.forEach((e) => {
359
+ let n = t.get(e);
360
+ if (!n) throw Error(`Commit not found for key ${e}`);
361
+ n.parents.length ? (r = Ee(n), i = Math.max(r, i)) : a.push(n), De(n, r);
362
+ }), r = i, a.forEach((e) => {
363
+ Oe(e, r, n);
364
+ }), e.forEach((e) => {
365
+ let n = t.get(e);
366
+ if (n?.parents.length) {
367
+ let e = Ce(n.parents);
368
+ r = V.get(e).y - M, r <= i && (i = r);
369
+ let t = B.get(n.branch).pos, a = r - j;
370
+ V.set(n.id, {
371
+ x: t,
372
+ y: a
373
+ });
374
+ }
375
+ });
376
+ }, "setParallelBTPos"), Te = /* @__PURE__ */ t((e) => {
377
+ let t = J(e.parents.filter((e) => e !== null));
378
+ if (!t) throw Error(`Closest parent not found for commit ${e.id}`);
379
+ let n = V.get(t)?.y;
380
+ if (n === void 0) throw Error(`Closest parent position not found for commit ${e.id}`);
381
+ return n;
382
+ }, "findClosestParentPos"), Ee = /* @__PURE__ */ t((e) => Te(e) + M, "calculateCommitPosition"), De = /* @__PURE__ */ t((e, t) => {
383
+ let n = B.get(e.branch);
384
+ if (!n) throw Error(`Branch not found for commit ${e.id}`);
385
+ let r = n.pos, i = t + j;
386
+ return V.set(e.id, {
387
+ x: r,
388
+ y: i
389
+ }), {
390
+ x: r,
391
+ y: i
392
+ };
393
+ }, "setCommitPosition"), Oe = /* @__PURE__ */ t((e, t, n) => {
394
+ let r = B.get(e.branch);
395
+ if (!r) throw Error(`Branch not found for commit ${e.id}`);
396
+ let i = t + n, a = r.pos;
397
+ V.set(e.id, {
398
+ x: a,
399
+ y: i
400
+ });
401
+ }, "setRootPosition"), ke = /* @__PURE__ */ t((e, t, n, r, i, a) => {
402
+ let { theme: o } = m(), s = I.has(o ?? ""), c = R.has(o ?? ""), l = xe.has(o ?? "");
403
+ if (a === x.HIGHLIGHT) e.append("rect").attr("x", n.x - 10 + (s ? 3 : 0)).attr("y", n.y - 10 + (s ? 3 : 0)).attr("width", s ? 14 : 20).attr("height", s ? 14 : 20).attr("class", `commit ${t.id} commit-highlight${z(i, F, c)} ${r}-outer`), e.append("rect").attr("x", n.x - 6 + (s ? 2 : 0)).attr("y", n.y - 6 + (s ? 2 : 0)).attr("width", s ? 8 : 12).attr("height", s ? 8 : 12).attr("class", `commit ${t.id} commit${z(i, F, c)} ${r}-inner`);
404
+ else if (a === x.CHERRY_PICK) e.append("circle").attr("cx", n.x).attr("cy", n.y).attr("r", s ? 7 : 10).attr("class", `commit ${t.id} ${r}`), e.append("circle").attr("cx", n.x - 3).attr("cy", n.y + 2).attr("r", s ? 2.5 : 2.75).attr("fill", l ? "#000000" : "#fff").attr("class", `commit ${t.id} ${r}`), e.append("circle").attr("cx", n.x + 3).attr("cy", n.y + 2).attr("r", s ? 2.5 : 2.75).attr("fill", l ? "#000000" : "#fff").attr("class", `commit ${t.id} ${r}`), e.append("line").attr("x1", n.x + 3).attr("y1", n.y + 1).attr("x2", n.x).attr("y2", n.y - 5).attr("stroke", l ? "#000000" : "#fff").attr("class", `commit ${t.id} ${r}`), e.append("line").attr("x1", n.x - 3).attr("y1", n.y + 1).attr("x2", n.x).attr("y2", n.y - 5).attr("stroke", l ? "#000000" : "#fff").attr("class", `commit ${t.id} ${r}`);
405
+ else {
406
+ let o = e.append("circle");
407
+ if (o.attr("cx", n.x), o.attr("cy", n.y), o.attr("r", s ? 7 : 10), o.attr("class", `commit ${t.id} commit${z(i, F, c)}`), a === x.MERGE) {
408
+ let a = e.append("circle");
409
+ a.attr("cx", n.x), a.attr("cy", n.y), a.attr("r", s ? 5 : 6), a.attr("class", `commit ${r} ${t.id} commit${z(i, F, c)}`);
410
+ }
411
+ if (a === x.REVERSE) {
412
+ let a = e.append("path"), o = s ? 4 : 5;
413
+ a.attr("d", `M ${n.x - o},${n.y - o}L${n.x + o},${n.y + o}M${n.x - o},${n.y + o}L${n.x + o},${n.y - o}`).attr("class", `commit ${r} ${t.id} commit${z(i, F, c)}`);
414
+ }
415
+ }
416
+ }, "drawCommitBullet"), Ae = /* @__PURE__ */ t((e, t, n, r, i) => {
417
+ if (t.type !== x.CHERRY_PICK && (t.customId && t.type === x.MERGE || t.type !== x.MERGE) && i.showCommitLabel) {
418
+ let a = e.append("g"), o = a.insert("rect").attr("class", "commit-label-bkg"), s = a.append("text").attr("x", r).attr("y", n.y + 25).attr("class", "commit-label").text(t.id), c = s.node()?.getBBox();
419
+ if (c && (o.attr("x", n.posWithOffset - c.width / 2 - P).attr("y", n.y + 13.5).attr("width", c.width + 2 * P).attr("height", c.height + 2 * P), K === "TB" || K === "BT" ? (o.attr("x", n.x - (c.width + 4 * N + 5)).attr("y", n.y - 12), s.attr("x", n.x - (c.width + 4 * N)).attr("y", n.y + c.height - 12)) : s.attr("x", n.posWithOffset - c.width / 2), i.rotateCommitLabel)) {
420
+ if (K === "TB" || K === "BT") s.attr("transform", "rotate(-45, " + n.x + ", " + n.y + ")"), o.attr("transform", "rotate(-45, " + n.x + ", " + n.y + ")");
421
+ else {
422
+ let e = -7.5 - (c.width + 10) / 25 * 9.5, t = 10 + c.width / 25 * 8.5;
423
+ a.attr("transform", "translate(" + e + ", " + t + ") rotate(-45, " + r + ", " + n.y + ")");
424
+ }
425
+ }
426
+ }
427
+ }, "drawCommitLabel"), je = /* @__PURE__ */ t((e, t, n, r) => {
428
+ if (t.tags.length > 0) {
429
+ let i = 0, a = 0, o = 0, s = [];
430
+ for (let r of t.tags.reverse()) {
431
+ let t = e.insert("polygon"), c = e.append("circle"), l = e.append("text").attr("y", n.y - 16 - i).attr("class", "tag-label").text(r), u = l.node()?.getBBox();
432
+ if (!u) throw Error("Tag bbox not found");
433
+ a = Math.max(a, u.width), o = Math.max(o, u.height), l.attr("x", n.posWithOffset - u.width / 2), s.push({
434
+ tag: l,
435
+ hole: c,
436
+ rect: t,
437
+ yOffset: i
438
+ }), i += 20;
439
+ }
440
+ for (let { tag: e, hole: t, rect: i, yOffset: c } of s) {
441
+ let s = o / 2, l = n.y - 19.2 - c;
442
+ if (i.attr("class", "tag-label-bkg").attr("points", `
443
+ ${r - a / 2 - N / 2},${l + P}
444
+ ${r - a / 2 - N / 2},${l - P}
445
+ ${n.posWithOffset - a / 2 - N},${l - s - P}
446
+ ${n.posWithOffset + a / 2 + N},${l - s - P}
447
+ ${n.posWithOffset + a / 2 + N},${l + s + P}
448
+ ${n.posWithOffset - a / 2 - N},${l + s + P}`), t.attr("cy", l).attr("cx", r - a / 2 + N / 2).attr("r", 1.5).attr("class", "tag-hole"), K === "TB" || K === "BT") {
449
+ let o = r + c;
450
+ i.attr("class", "tag-label-bkg").attr("points", `
451
+ ${n.x},${o + 2}
452
+ ${n.x},${o - 2}
453
+ ${n.x + j},${o - s - 2}
454
+ ${n.x + j + a + 4},${o - s - 2}
455
+ ${n.x + j + a + 4},${o + s + 2}
456
+ ${n.x + j},${o + s + 2}`).attr("transform", "translate(12,12) rotate(45, " + n.x + "," + r + ")"), t.attr("cx", n.x + N / 2).attr("cy", o).attr("transform", "translate(12,12) rotate(45, " + n.x + "," + r + ")"), e.attr("x", n.x + 5).attr("y", o + 3).attr("transform", "translate(14,14) rotate(45, " + n.x + "," + r + ")");
457
+ }
458
+ }
459
+ }
460
+ }, "drawCommitTags"), Me = /* @__PURE__ */ t((e) => {
461
+ switch (e.customType ?? e.type) {
462
+ case x.NORMAL: return "commit-normal";
463
+ case x.REVERSE: return "commit-reverse";
464
+ case x.HIGHLIGHT: return "commit-highlight";
465
+ case x.MERGE: return "commit-merge";
466
+ case x.CHERRY_PICK: return "commit-cherry-pick";
467
+ default: return "commit-normal";
468
+ }
469
+ }, "getCommitClassType"), Ne = /* @__PURE__ */ t((e, t, n, r) => {
470
+ let i = {
471
+ x: 0,
472
+ y: 0
473
+ };
474
+ if (e.parents.length > 0) {
475
+ let n = J(e.parents);
476
+ if (n) {
477
+ let a = r.get(n) ?? i;
478
+ return t === "TB" ? a.y + M : t === "BT" ? (r.get(e.id) ?? i).y - M : a.x + M;
479
+ }
480
+ } else if (t === "TB") return H;
481
+ else if (t === "BT") return (r.get(e.id) ?? i).y - M;
482
+ else return 0;
483
+ return 0;
484
+ }, "calculatePosition"), Pe = /* @__PURE__ */ t((e, t, n) => {
485
+ let r = K === "BT" && n ? t : t + j, i = B.get(e.branch)?.pos, a = K === "TB" || K === "BT" ? B.get(e.branch)?.pos : r;
486
+ if (a === void 0 || i === void 0) throw Error(`Position were undefined for commit ${e.id}`);
487
+ let o = I.has(m().theme ?? "");
488
+ return {
489
+ x: a,
490
+ y: K === "TB" || K === "BT" ? r : i + (o ? L / 2 + 1 : -2),
491
+ posWithOffset: r
492
+ };
493
+ }, "getCommitPosition"), Y = /* @__PURE__ */ t((e, n, r, i) => {
494
+ let a = e.append("g").attr("class", "commit-bullets"), o = e.append("g").attr("class", "commit-labels"), s = K === "TB" || K === "BT" ? H : 0, c = [...n.keys()], l = i.parallelCommits ?? !1, u = /* @__PURE__ */ t((e, t) => {
495
+ let r = n.get(e)?.seq, i = n.get(t)?.seq;
496
+ return r !== void 0 && i !== void 0 ? r - i : 0;
497
+ }, "sortKeys"), d = c.sort(u);
498
+ K === "BT" && (l && we(d, n, s), d = d.reverse()), d.forEach((e) => {
499
+ let t = n.get(e);
500
+ if (!t) throw Error(`Commit not found for key ${e}`);
501
+ l && (s = Ne(t, K, s, V));
502
+ let c = Pe(t, s, l);
503
+ if (r) {
504
+ let e = Me(t), n = t.customType ?? t.type, r = B.get(t.branch)?.index ?? 0;
505
+ ke(a, t, c, e, r, n), Ae(o, t, c, s, i), je(o, t, c, s);
506
+ }
507
+ K === "TB" || K === "BT" ? V.set(t.id, {
508
+ x: c.x,
509
+ y: c.posWithOffset
510
+ }) : V.set(t.id, {
511
+ x: c.posWithOffset,
512
+ y: c.y
513
+ }), s = K === "BT" && l ? s + M : s + M + j, s > G && (G = s);
514
+ });
515
+ }, "drawCommits"), Fe = /* @__PURE__ */ t((e, n, r, i, a) => {
516
+ let o = (K === "TB" || K === "BT" ? r.x < i.x : r.y < i.y) ? n.branch : e.branch, s = /* @__PURE__ */ t((e) => e.branch === o, "isOnBranchToGetCurve"), c = /* @__PURE__ */ t((t) => t.seq > e.seq && t.seq < n.seq, "isBetweenCommits");
517
+ return [...a.values()].some((e) => c(e) && s(e));
518
+ }, "shouldRerouteArrow"), X = /* @__PURE__ */ t((e, t, n = 0) => {
519
+ let r = e + Math.abs(e - t) / 2;
520
+ return n > 5 ? r : W.every((e) => Math.abs(e - r) >= 10) ? (W.push(r), r) : X(e, t - Math.abs(e - t) / 5, n + 1);
521
+ }, "findLane"), Ie = /* @__PURE__ */ t((e, t, n, r) => {
522
+ let { theme: i } = m(), a = R.has(i ?? ""), o = V.get(t.id), s = V.get(n.id);
523
+ if (o === void 0 || s === void 0) throw Error(`Commit positions not found for commits ${t.id} and ${n.id}`);
524
+ let c = Fe(t, n, o, s, r), l = "", u = "", d = 0, f = 0, p = B.get(n.branch)?.index;
525
+ n.type === x.MERGE && t.id !== n.parents[0] && (p = B.get(t.branch)?.index);
526
+ let h;
527
+ if (c) {
528
+ l = "A 10 10, 0, 0, 0,", u = "A 10 10, 0, 0, 1,", d = 10, f = 10;
529
+ let e = o.y < s.y ? X(o.y, s.y) : X(s.y, o.y), n = o.x < s.x ? X(o.x, s.x) : X(s.x, o.x);
530
+ K === "TB" ? o.x < s.x ? h = `M ${o.x} ${o.y} L ${n - d} ${o.y} ${u} ${n} ${o.y + f} L ${n} ${s.y - d} ${l} ${n + f} ${s.y} L ${s.x} ${s.y}` : (p = B.get(t.branch)?.index, h = `M ${o.x} ${o.y} L ${n + d} ${o.y} ${l} ${n} ${o.y + f} L ${n} ${s.y - d} ${u} ${n - f} ${s.y} L ${s.x} ${s.y}`) : K === "BT" ? o.x < s.x ? h = `M ${o.x} ${o.y} L ${n - d} ${o.y} ${l} ${n} ${o.y - f} L ${n} ${s.y + d} ${u} ${n + f} ${s.y} L ${s.x} ${s.y}` : (p = B.get(t.branch)?.index, h = `M ${o.x} ${o.y} L ${n + d} ${o.y} ${u} ${n} ${o.y - f} L ${n} ${s.y + d} ${l} ${n - f} ${s.y} L ${s.x} ${s.y}`) : o.y < s.y ? h = `M ${o.x} ${o.y} L ${o.x} ${e - d} ${l} ${o.x + f} ${e} L ${s.x - d} ${e} ${u} ${s.x} ${e + f} L ${s.x} ${s.y}` : (p = B.get(t.branch)?.index, h = `M ${o.x} ${o.y} L ${o.x} ${e + d} ${u} ${o.x + f} ${e} L ${s.x - d} ${e} ${l} ${s.x} ${e - f} L ${s.x} ${s.y}`);
531
+ } else l = "A 20 20, 0, 0, 0,", u = "A 20 20, 0, 0, 1,", d = 20, f = 20, K === "TB" ? (o.x < s.x && (h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${o.x} ${s.y - d} ${l} ${o.x + f} ${s.y} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${s.x - d} ${o.y} ${u} ${s.x} ${o.y + f} L ${s.x} ${s.y}`), o.x > s.x && (l = "A 20 20, 0, 0, 0,", u = "A 20 20, 0, 0, 1,", d = 20, f = 20, h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${o.x} ${s.y - d} ${u} ${o.x - f} ${s.y} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${s.x + d} ${o.y} ${l} ${s.x} ${o.y + f} L ${s.x} ${s.y}`), o.x === s.x && (h = `M ${o.x} ${o.y} L ${s.x} ${s.y}`)) : K === "BT" ? (o.x < s.x && (h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${o.x} ${s.y + d} ${u} ${o.x + f} ${s.y} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${s.x - d} ${o.y} ${l} ${s.x} ${o.y - f} L ${s.x} ${s.y}`), o.x > s.x && (l = "A 20 20, 0, 0, 0,", u = "A 20 20, 0, 0, 1,", d = 20, f = 20, h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${o.x} ${s.y + d} ${l} ${o.x - f} ${s.y} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${s.x + d} ${o.y} ${u} ${s.x} ${o.y - f} L ${s.x} ${s.y}`), o.x === s.x && (h = `M ${o.x} ${o.y} L ${s.x} ${s.y}`)) : (o.y < s.y && (h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${s.x - d} ${o.y} ${u} ${s.x} ${o.y + f} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${o.x} ${s.y - d} ${l} ${o.x + f} ${s.y} L ${s.x} ${s.y}`), o.y > s.y && (h = n.type === x.MERGE && t.id !== n.parents[0] ? `M ${o.x} ${o.y} L ${s.x - d} ${o.y} ${l} ${s.x} ${o.y - f} L ${s.x} ${s.y}` : `M ${o.x} ${o.y} L ${o.x} ${s.y + d} ${u} ${o.x + f} ${s.y} L ${s.x} ${s.y}`), o.y === s.y && (h = `M ${o.x} ${o.y} L ${s.x} ${s.y}`));
532
+ if (h === void 0) throw Error("Line definition not found");
533
+ e.append("path").attr("d", h).attr("class", "arrow arrow" + z(p, F, a));
534
+ }, "drawArrow"), Le = /* @__PURE__ */ t((e, t) => {
535
+ let n = e.append("g").attr("class", "commit-arrows");
536
+ [...t.keys()].forEach((e) => {
537
+ let r = t.get(e);
538
+ r.parents && r.parents.length > 0 && r.parents.forEach((e) => {
539
+ Ie(n, t.get(e), r, t);
540
+ });
541
+ });
542
+ }, "drawArrows"), Re = /* @__PURE__ */ t((e, t, n, r) => {
543
+ let { look: i, theme: a, themeVariables: o } = m(), { dropShadow: s, THEME_COLOR_LIMIT: c } = o, l = I.has(a ?? ""), u = R.has(a ?? ""), d = e.append("g");
544
+ t.forEach((e, t) => {
545
+ let a = z(t, l ? c : F, u), o = B.get(e.name)?.pos;
546
+ if (o === void 0) throw Error(`Position not found for branch ${e.name}`);
547
+ let f = K === "TB" || K === "BT" ? o : l ? o + L / 2 + 1 : o - 2, p = d.append("line");
548
+ p.attr("x1", 0), p.attr("y1", f), p.attr("x2", G), p.attr("y2", f), p.attr("class", "branch branch" + a), K === "TB" ? (p.attr("y1", H), p.attr("x1", o), p.attr("y2", G), p.attr("x2", o)) : K === "BT" && (p.attr("y1", G), p.attr("x1", o), p.attr("y2", H), p.attr("x2", o)), W.push(f);
549
+ let m = e.name, h = q(m), g = d.insert("rect"), _ = d.insert("g").attr("class", "branchLabel").insert("g").attr("class", "label branch-label" + a);
550
+ _.node().appendChild(h);
551
+ let v = h.getBBox(), y = l ? 0 : 4, b = l ? 16 : 0, x = l ? L : 0;
552
+ i === "neo" && g.attr("data-look", "neo"), g.attr("class", "branchLabelBkg label" + a).attr("style", i === "neo" ? `filter:${l ? `url(#${r}-drop-shadow)` : s}` : "").attr("rx", y).attr("ry", y).attr("x", -v.width - 4 - (n.rotateCommitLabel === !0 ? 30 : 0)).attr("y", -v.height / 2 + 10).attr("width", v.width + 18 + b).attr("height", v.height + 4 + x), _.attr("transform", "translate(" + (-v.width - 14 - (n.rotateCommitLabel === !0 ? 30 : 0) + b / 2) + ", " + (f - v.height / 2 - 2) + ")"), K === "TB" ? (g.attr("x", o - v.width / 2 - 10).attr("y", 0), _.attr("transform", "translate(" + (o - v.width / 2 - 5) + ", 0)"), l && (g.attr("transform", `translate(${-b / 2 - 3}, ${-x - 10})`), _.attr("transform", "translate(" + (o - v.width / 2 - 5) + ", " + (-x * 2 + 7) + ")"))) : K === "BT" ? (g.attr("x", o - v.width / 2 - 10).attr("y", G), _.attr("transform", "translate(" + (o - v.width / 2 - 5) + ", " + G + ")"), l && (g.attr("transform", `translate(${-b / 2 - 3}, ${x + 10})`), _.attr("transform", "translate(" + (o - v.width / 2 - 5) + ", " + (G + x * 2 + 4) + ")"))) : g.attr("transform", "translate(-19, " + (f - 12 - x / 2) + ")");
553
+ });
554
+ }, "drawBranches"), ze = /* @__PURE__ */ t(function(e, t, n, r, i) {
555
+ return B.set(e, {
556
+ pos: t,
557
+ index: n
558
+ }), t += 50 + (i ? 40 : 0) + (K === "TB" || K === "BT" ? r.width / 2 : 0), t;
559
+ }, "setBranchPosition"), Be = { draw: /* @__PURE__ */ t(function(e, t, i, a) {
560
+ Se(), n.debug("in gitgraph renderer", e + "\n", "id:", t, i);
561
+ let o = a.db;
562
+ if (!o.getConfig) {
563
+ n.error("getConfig method is not available on db");
564
+ return;
565
+ }
566
+ let c = o.getConfig(), l = c.rotateCommitLabel ?? !1;
567
+ U = o.getCommits();
568
+ let u = o.getBranchesAsObjArray();
569
+ K = o.getDirection();
570
+ let d = r(`[id="${t}"]`), { look: f, theme: p, themeVariables: h } = m(), { useGradient: _, gradientStart: v, gradientStop: y, filterColor: b } = h;
571
+ if (_) {
572
+ let e = d.append("defs").append("linearGradient").attr("id", t + "-gradient").attr("gradientUnits", "objectBoundingBox").attr("x1", "0%").attr("y1", "0%").attr("x2", "100%").attr("y2", "0%");
573
+ e.append("stop").attr("offset", "0%").attr("stop-color", v).attr("stop-opacity", 1), e.append("stop").attr("offset", "100%").attr("stop-color", y).attr("stop-opacity", 1);
574
+ }
575
+ f === "neo" && I.has(p ?? "") && d.append("defs").append("filter").attr("id", t + "-drop-shadow").attr("height", "130%").attr("width", "130%").append("feDropShadow").attr("dx", "4").attr("dy", "4").attr("stdDeviation", 0).attr("flood-opacity", "0.06").attr("flood-color", b);
576
+ let x = 0;
577
+ u.forEach((e, t) => {
578
+ let n = q(e.name), r = d.append("g"), i = r.insert("g").attr("class", "branchLabel"), a = i.insert("g").attr("class", "label branch-label");
579
+ a.node()?.appendChild(n);
580
+ let o = n.getBBox();
581
+ x = ze(e.name, x, t, o, l), a.remove(), i.remove(), r.remove();
582
+ }), Y(d, U, !1, c), c.showBranches && Re(d, u, c, t), Le(d, U), Y(d, U, !0, c), g.insertTitle(d, "gitTitleText", c.titleTopMargin ?? 0, o.getDiagramTitle()), s(void 0, d, c.diagramPadding, c.useMaxWidth);
583
+ }, "draw") }, Z = 8, Q = /* @__PURE__ */ new Set([
584
+ "redux",
585
+ "redux-dark",
586
+ "redux-color",
587
+ "redux-dark-color"
588
+ ]), Ve = /* @__PURE__ */ new Set(["redux-color", "redux-dark-color"]), $ = /* @__PURE__ */ new Set(["neo", "neo-dark"]), He = /* @__PURE__ */ new Set([
589
+ "dark",
590
+ "redux-dark",
591
+ "redux-dark-color",
592
+ "neo-dark"
593
+ ]), Ue = /* @__PURE__ */ new Set([
594
+ "redux",
595
+ "redux-dark",
596
+ "redux-color",
597
+ "redux-dark-color",
598
+ "neo",
599
+ "neo-dark"
600
+ ]), We = /* @__PURE__ */ t((e) => {
601
+ let { svgId: t } = e, n = "";
602
+ if (e.useGradient && t) for (let r = 0; r < e.THEME_COLOR_LIMIT; r++) n += `
603
+ .label${r} { fill: ${e.mainBkg}; stroke: url(${t}-gradient); stroke-width: ${e.strokeWidth};}
604
+ `;
605
+ return n;
606
+ }, "genGitGraphGradient"), Ge = /* @__PURE__ */ t((e) => {
607
+ let { theme: t, themeVariables: n } = l(), { borderColorArray: r } = n, i = Q.has(t);
608
+ if ($.has(t)) {
609
+ let t = "";
610
+ for (let n = 0; n < e.THEME_COLOR_LIMIT; n++) if (n === 0) t += `
611
+ .branch-label${n} { fill: ${e.nodeBorder};}
612
+ .commit${n} { stroke: ${e.nodeBorder}; }
613
+ .commit-highlight${n} { stroke: ${e.nodeBorder}; fill: ${e.nodeBorder}; }
614
+ .arrow${n} { stroke: ${e.nodeBorder}; }
615
+ .commit-bullets { fill: ${e.nodeBorder}; }
616
+ .commit-cherry-pick${n} { stroke: ${e.nodeBorder}; }
617
+ ${We(e)}`;
618
+ else {
619
+ let r = n % Z;
620
+ t += `
621
+ .branch-label${n} { fill: ${e["gitBranchLabel" + r]}; }
622
+ .commit${n} { stroke: ${e["git" + r]}; fill: ${e["git" + r]}; }
623
+ .commit-highlight${n} { stroke: ${e["gitInv" + r]}; fill: ${e["gitInv" + r]}; }
624
+ .arrow${n} { stroke: ${e["git" + r]}; }
625
+ `;
626
+ }
627
+ return t;
628
+ }
629
+ if (Ve.has(t)) {
630
+ let n = "";
631
+ for (let a = 0; a < e.THEME_COLOR_LIMIT; a++) if (a === 0) n += `
632
+ .branch-label${a} { fill: ${e.nodeBorder}; ${i ? `font-weight:${e.noteFontWeight}` : ""} }
633
+ .commit${a} { stroke: ${e.nodeBorder}; }
634
+ .commit-highlight${a} { stroke: ${e.nodeBorder}; fill: ${e.mainBkg}; }
635
+ .label${a} { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: ${e.strokeWidth}; ${i ? `font-weight:${e.noteFontWeight}` : ""} }
636
+ .arrow${a} { stroke: ${e.nodeBorder}; }
637
+ .commit-bullets { fill: ${e.nodeBorder}; }
638
+ `;
639
+ else {
640
+ let o = a % r.length;
641
+ n += `
642
+ .branch-label${a} { fill: ${e.nodeBorder}; ${i ? `font-weight:${e.noteFontWeight}` : ""} }
643
+ .commit${a} { stroke: ${r[o]}; fill: ${r[o]}; }
644
+ .commit-highlight${a} { stroke: ${r[o]}; fill: ${r[o]}; }
645
+ .label${a} { fill: ${He.has(t) ? e.mainBkg : r[o]}; stroke: ${r[o]}; stroke-width: ${e.strokeWidth}; }
646
+ .arrow${a} { stroke: ${r[o]}; }
647
+ `;
648
+ }
649
+ return n;
650
+ }
651
+ {
652
+ let t = "";
653
+ for (let n = 0; n < e.THEME_COLOR_LIMIT; n++) t += `
654
+ .branch-label${n} { fill: ${e.nodeBorder}; ${i ? `font-weight:${e.noteFontWeight}` : ""} }
655
+ .commit${n} { stroke: ${e.nodeBorder}; }
656
+ .commit-highlight${n} { stroke: ${e.nodeBorder}; fill: ${e.nodeBorder}; }
657
+ .label${n} { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: ${e.strokeWidth}; ${i ? `font-weight:${e.noteFontWeight}` : ""}}
658
+ .arrow${n} { stroke: ${e.nodeBorder}; }
659
+ .commit-bullets { fill: ${e.nodeBorder}; }
660
+ .commit-cherry-pick${n} { stroke: ${e.nodeBorder}; }
661
+ `;
662
+ return t;
663
+ }
664
+ }, "genColor"), Ke = /* @__PURE__ */ t((e) => `${Array.from({ length: e.THEME_COLOR_LIMIT }, (e, t) => t).map((t) => {
665
+ let n = t % Z;
666
+ return `
667
+ .branch-label${t} { fill: ${e["gitBranchLabel" + n]}; }
668
+ .commit${t} { stroke: ${e["git" + n]}; fill: ${e["git" + n]}; }
669
+ .commit-highlight${t} { stroke: ${e["gitInv" + n]}; fill: ${e["gitInv" + n]}; }
670
+ .label${t} { fill: ${e["git" + n]}; }
671
+ .arrow${t} { stroke: ${e["git" + n]}; }
672
+ `;
673
+ }).join("\n")}`, "normalTheme"), qe = {
674
+ parser: be,
675
+ db: A,
676
+ renderer: Be,
677
+ styles: /* @__PURE__ */ t((e) => {
678
+ let { theme: t } = l(), n = Ue.has(t);
679
+ return `
680
+ .commit-id,
681
+ .commit-msg,
682
+ .branch-label {
683
+ fill: lightgrey;
684
+ color: lightgrey;
685
+ font-family: 'trebuchet ms', verdana, arial, sans-serif;
686
+ font-family: var(--mermaid-font-family);
687
+ }
688
+
689
+ ${n ? Ge(e) : Ke(e)}
690
+
691
+ .branch {
692
+ stroke-width: ${e.strokeWidth};
693
+ stroke: ${e.commitLineColor ?? e.lineColor};
694
+ stroke-dasharray: ${n ? "4 2" : "2"};
695
+ }
696
+ .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${n ? e.nodeBorder : e.commitLabelColor}; ${n ? `font-weight:${e.noteFontWeight};` : ""}}
697
+ .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${n ? "transparent" : e.commitLabelBackground}; opacity: ${n ? "" : .5}; }
698
+ .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};}
699
+ .tag-label-bkg { fill: ${n ? e.mainBkg : e.tagLabelBackground}; stroke: ${n ? e.nodeBorder : e.tagLabelBorder}; ${n ? `filter:${e.dropShadow}` : ""} }
700
+ .tag-hole { fill: ${e.textColor}; }
701
+
702
+ .commit-merge {
703
+ stroke: ${n ? e.mainBkg : e.primaryColor};
704
+ fill: ${n ? e.mainBkg : e.primaryColor};
705
+ }
706
+ .commit-reverse {
707
+ stroke: ${n ? e.mainBkg : e.primaryColor};
708
+ fill: ${n ? e.mainBkg : e.primaryColor};
709
+ stroke-width: ${n ? e.strokeWidth : 3};
710
+ }
711
+ .commit-highlight-outer {
712
+ }
713
+ .commit-highlight-inner {
714
+ stroke: ${n ? e.mainBkg : e.primaryColor};
715
+ fill: ${n ? e.mainBkg : e.primaryColor};
716
+ }
717
+
718
+ .arrow {
719
+ /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
720
+ stroke-width: ${Q.has(t) ? e.strokeWidth : 8};
721
+ stroke-linecap: round;
722
+ fill: none
723
+ }
724
+ .gitTitleText {
725
+ text-anchor: middle;
726
+ font-size: 18px;
727
+ fill: ${e.textColor};
728
+ }
729
+ `;
730
+ }, "getStyles")
731
+ };
732
+ //#endregion
733
+ export { qe as diagram };