@scalar/agent-chat 0.2.3 → 0.2.6

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 (270) hide show
  1. package/LICENSE +21 -0
  2. package/dist/App.vue.d.ts +3 -2
  3. package/dist/App.vue.d.ts.map +1 -1
  4. package/dist/App.vue.js +32 -0
  5. package/dist/App.vue2.js +4 -0
  6. package/dist/Chat.vue.d.ts.map +1 -1
  7. package/dist/Chat.vue.js +23 -0
  8. package/dist/Chat.vue2.js +4 -0
  9. package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
  10. package/dist/api.d.ts +50 -0
  11. package/dist/api.d.ts.map +1 -0
  12. package/dist/api.js +68 -0
  13. package/dist/components/ApprovalSection.vue.d.ts.map +1 -1
  14. package/dist/components/ApprovalSection.vue.js +7 -0
  15. package/dist/components/ApprovalSection.vue2.js +42 -0
  16. package/dist/components/AuthenticationProvided.vue.d.ts +3 -0
  17. package/dist/components/AuthenticationProvided.vue.d.ts.map +1 -0
  18. package/dist/components/AuthenticationProvided.vue.js +13 -0
  19. package/dist/components/AuthenticationRequired.vue.d.ts +3 -0
  20. package/dist/components/AuthenticationRequired.vue.d.ts.map +1 -0
  21. package/dist/components/AuthenticationRequired.vue.js +13 -0
  22. package/dist/components/AutosendPaused.vue.d.ts.map +1 -1
  23. package/dist/components/AutosendPaused.vue.js +13 -0
  24. package/dist/components/ContextItem.vue.d.ts.map +1 -1
  25. package/dist/components/ContextItem.vue.js +7 -0
  26. package/dist/components/ContextItem.vue2.js +19 -0
  27. package/dist/components/ErrorMessage.vue.d.ts +2 -1
  28. package/dist/components/ErrorMessage.vue.d.ts.map +1 -1
  29. package/dist/components/ErrorMessage.vue.js +7 -0
  30. package/dist/components/ErrorMessage.vue2.js +22 -0
  31. package/dist/components/LoadingMiniOpenAPIDoc.vue.d.ts.map +1 -1
  32. package/dist/components/LoadingMiniOpenAPIDoc.vue.js +14 -0
  33. package/dist/components/LoadingOpenAPISpecsSummary.vue.d.ts.map +1 -1
  34. package/dist/components/LoadingOpenAPISpecsSummary.vue.js +14 -0
  35. package/dist/components/Logo.vue.d.ts.map +1 -1
  36. package/dist/components/Logo.vue.js +23 -0
  37. package/dist/components/PaymentSection.vue.d.ts.map +1 -1
  38. package/dist/components/PaymentSection.vue.js +7 -0
  39. package/dist/components/PaymentSection.vue2.js +34 -0
  40. package/dist/components/RequestApproved.vue.d.ts.map +1 -1
  41. package/dist/components/RequestApproved.vue.js +13 -0
  42. package/dist/components/RequestFailed.vue.d.ts.map +1 -1
  43. package/dist/components/RequestFailed.vue.js +24 -0
  44. package/dist/components/RequestPreview.vue.d.ts +1 -1
  45. package/dist/components/RequestPreview.vue.d.ts.map +1 -1
  46. package/dist/components/RequestPreview.vue.js +7 -0
  47. package/dist/components/RequestPreview.vue2.js +123 -0
  48. package/dist/components/RequestRejected.vue.d.ts.map +1 -1
  49. package/dist/components/RequestRejected.vue.js +22 -0
  50. package/dist/components/RequestSuccess.vue.d.ts.map +1 -1
  51. package/dist/components/RequestSuccess.vue.js +13 -0
  52. package/dist/components/ResponseBody/ResponseBody.vue.d.ts +1 -1
  53. package/dist/components/ResponseBody/ResponseBody.vue.d.ts.map +1 -1
  54. package/dist/components/ResponseBody/ResponseBody.vue.js +41 -0
  55. package/dist/components/ResponseBody/ResponseBody.vue2.js +4 -0
  56. package/dist/components/ResponseBody/ResponseBodyInfo.vue.d.ts.map +1 -1
  57. package/dist/components/ResponseBody/ResponseBodyInfo.vue.js +14 -0
  58. package/dist/components/ResponseBody/ResponseBodyPreview.vue.d.ts +1 -1
  59. package/dist/components/ResponseBody/ResponseBodyPreview.vue.d.ts.map +1 -1
  60. package/dist/components/ResponseBody/ResponseBodyPreview.vue.js +7 -0
  61. package/dist/components/ResponseBody/ResponseBodyPreview.vue2.js +65 -0
  62. package/dist/components/ResponseBody/ResponseBodyRaw.vue.d.ts.map +1 -1
  63. package/dist/components/ResponseBody/ResponseBodyRaw.vue.js +20 -0
  64. package/dist/components/ResponseBody/ResponseBodyRaw.vue2.js +4 -0
  65. package/dist/components/ResponseBody/ResponseBodyToggle.vue.d.ts +2 -2
  66. package/dist/components/ResponseBody/ResponseBodyToggle.vue.d.ts.map +1 -1
  67. package/dist/components/ResponseBody/ResponseBodyToggle.vue.js +26 -0
  68. package/dist/components/ResponseBody/ResponseBodyToggle.vue2.js +4 -0
  69. package/dist/components/ResponseBody/helpers/media-types.js +130 -0
  70. package/dist/components/ResponseBody/helpers/process-response-body.d.ts +1 -1
  71. package/dist/components/ResponseBody/helpers/process-response-body.d.ts.map +1 -1
  72. package/dist/components/ResponseBody/helpers/process-response-body.js +33 -0
  73. package/dist/components/SearchPopover.vue.d.ts +2 -2
  74. package/dist/components/SearchPopover.vue.d.ts.map +1 -1
  75. package/dist/components/SearchPopover.vue.js +7 -0
  76. package/dist/components/SearchPopover.vue2.js +67 -0
  77. package/dist/components/Selector.vue.d.ts +24 -0
  78. package/dist/components/Selector.vue.d.ts.map +1 -0
  79. package/dist/components/Selector.vue.js +67 -0
  80. package/dist/components/Selector.vue2.js +4 -0
  81. package/dist/components/SendingRequest.vue.d.ts.map +1 -1
  82. package/dist/components/SendingRequest.vue.js +24 -0
  83. package/dist/components/ServerSelector.vue.d.ts +22 -0
  84. package/dist/components/ServerSelector.vue.d.ts.map +1 -0
  85. package/dist/components/ServerSelector.vue.js +57 -0
  86. package/dist/components/ServerSelector.vue2.js +4 -0
  87. package/dist/components/Suggestion.vue.d.ts.map +1 -1
  88. package/dist/components/TestRequestButton.vue.d.ts.map +1 -1
  89. package/dist/components/{Endpoint.vue.d.ts → UploadSection.vue.d.ts} +3 -5
  90. package/dist/components/UploadSection.vue.d.ts.map +1 -0
  91. package/dist/components/UploadSection.vue.js +7 -0
  92. package/dist/components/UploadSection.vue2.js +62 -0
  93. package/dist/entities/prompt/constants.d.ts +2 -0
  94. package/dist/entities/prompt/constants.d.ts.map +1 -0
  95. package/dist/entities/prompt/constants.js +4 -0
  96. package/dist/entities/registry/document.d.ts +21 -0
  97. package/dist/entities/registry/document.d.ts.map +1 -0
  98. package/dist/entities/registry/document.js +12 -0
  99. package/dist/entities/tools/ask-for-authentication.d.ts +7 -0
  100. package/dist/entities/tools/ask-for-authentication.d.ts.map +1 -0
  101. package/dist/entities/tools/ask-for-authentication.js +8 -0
  102. package/dist/entities/tools/constants.d.ts +2 -0
  103. package/dist/entities/tools/constants.d.ts.map +1 -0
  104. package/dist/entities/tools/constants.js +4 -0
  105. package/dist/entities/tools/execute-request.d.ts +42 -0
  106. package/dist/entities/tools/execute-request.d.ts.map +1 -0
  107. package/dist/entities/tools/execute-request.js +11 -0
  108. package/dist/entities/tools/get-mini-openapi-spec.d.ts +12 -0
  109. package/dist/entities/tools/get-mini-openapi-spec.d.ts.map +1 -0
  110. package/dist/entities/tools/get-mini-openapi-spec.js +8 -0
  111. package/dist/entities/tools/get-openapi-spec-summary.d.ts +10 -0
  112. package/dist/entities/tools/get-openapi-spec-summary.d.ts.map +1 -0
  113. package/dist/entities/tools/get-openapi-spec-summary.js +4 -0
  114. package/dist/helpers.d.ts +20 -12
  115. package/dist/helpers.d.ts.map +1 -1
  116. package/dist/helpers.js +122 -0
  117. package/dist/hooks/{useChatApprovals.d.ts → use-chat-approvals.d.ts} +1 -1
  118. package/dist/hooks/use-chat-approvals.d.ts.map +1 -0
  119. package/dist/hooks/use-chat-approvals.js +21 -0
  120. package/dist/hooks/use-chat-error.d.ts +14 -0
  121. package/dist/hooks/use-chat-error.d.ts.map +1 -0
  122. package/dist/hooks/use-chat-error.js +23 -0
  123. package/dist/hooks/use-chat-pending-client-tool-parts.d.ts +19 -0
  124. package/dist/hooks/use-chat-pending-client-tool-parts.d.ts.map +1 -0
  125. package/dist/hooks/use-chat-pending-client-tool-parts.js +12 -0
  126. package/dist/hooks/{useChatScroll.d.ts → use-chat-scroll.d.ts} +1 -1
  127. package/dist/hooks/use-chat-scroll.d.ts.map +1 -0
  128. package/dist/hooks/use-chat-scroll.js +16 -0
  129. package/dist/hooks/{useSearch.d.ts → use-search.d.ts} +11 -11
  130. package/dist/hooks/use-search.d.ts.map +1 -0
  131. package/dist/hooks/use-search.js +25 -0
  132. package/dist/hooks/use-term-and-conditions.d.ts +6 -0
  133. package/dist/hooks/use-term-and-conditions.d.ts.map +1 -0
  134. package/dist/hooks/use-term-and-conditions.js +16 -0
  135. package/dist/hooks/use-upload-tmp-document.d.ts +19 -0
  136. package/dist/hooks/use-upload-tmp-document.d.ts.map +1 -0
  137. package/dist/hooks/use-upload-tmp-document.js +64 -0
  138. package/dist/index.d.ts +2 -1
  139. package/dist/index.d.ts.map +1 -1
  140. package/dist/index.js +2 -1
  141. package/dist/package.json +34 -23
  142. package/dist/registry/add-documents-to-store.d.ts +6 -6
  143. package/dist/registry/add-documents-to-store.d.ts.map +1 -1
  144. package/dist/registry/add-documents-to-store.js +40 -0
  145. package/dist/registry/create-document-name.d.ts +2 -0
  146. package/dist/registry/create-document-name.d.ts.map +1 -0
  147. package/dist/registry/create-document-name.js +6 -0
  148. package/dist/state/state.d.ts +20 -8
  149. package/dist/state/state.d.ts.map +1 -1
  150. package/dist/state/state.js +110 -0
  151. package/dist/style.css +1 -1
  152. package/dist/types.d.ts +2 -0
  153. package/dist/types.d.ts.map +1 -0
  154. package/dist/views/Chat/Chat.vue.d.ts.map +1 -1
  155. package/dist/views/Chat/Chat.vue.js +7 -0
  156. package/dist/views/Chat/Chat.vue2.js +77 -0
  157. package/dist/views/Chat/Messages/AskForAuthentication.vue.d.ts +10 -0
  158. package/dist/views/Chat/Messages/AskForAuthentication.vue.d.ts.map +1 -0
  159. package/dist/views/Chat/Messages/AskForAuthentication.vue.js +7 -0
  160. package/dist/views/Chat/Messages/AskForAuthentication.vue2.js +93 -0
  161. package/dist/views/Chat/Messages/ExecuteRequestTool.vue.d.ts +2 -2
  162. package/dist/views/Chat/Messages/ExecuteRequestTool.vue.d.ts.map +1 -1
  163. package/dist/views/Chat/Messages/ExecuteRequestTool.vue.js +7 -0
  164. package/dist/views/Chat/Messages/ExecuteRequestTool.vue2.js +23 -0
  165. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue.d.ts +2 -2
  166. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue.d.ts.map +1 -1
  167. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue.js +7 -0
  168. package/dist/views/Chat/Messages/GetMiniOpenAPIDocTool.vue2.js +56 -0
  169. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts +2 -2
  170. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.d.ts.map +1 -1
  171. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue.js +26 -0
  172. package/dist/views/Chat/Messages/GetOpenAPISpecsSummary.vue2.js +4 -0
  173. package/dist/views/Chat/Messages/Text.vue.d.ts.map +1 -1
  174. package/dist/views/Chat/Messages/Text.vue.js +16 -0
  175. package/dist/views/Chat/Messages/Text.vue2.js +4 -0
  176. package/dist/views/Layout.vue.d.ts.map +1 -1
  177. package/dist/views/Layout.vue.js +7 -0
  178. package/dist/views/Layout.vue2.js +23 -0
  179. package/dist/views/PromptForm.vue.d.ts.map +1 -1
  180. package/dist/views/PromptForm.vue.js +7 -0
  181. package/dist/views/PromptForm.vue2.js +212 -0
  182. package/dist/views/Settings/Auth.vue.d.ts.map +1 -1
  183. package/dist/views/Settings/Auth.vue.js +67 -0
  184. package/dist/views/Settings/Auth.vue2.js +4 -0
  185. package/dist/views/Settings/DocSettings.vue.d.ts.map +1 -1
  186. package/dist/views/Settings/DocSettings.vue.js +7 -0
  187. package/dist/views/Settings/DocSettings.vue2.js +48 -0
  188. package/dist/views/Settings/Settings.vue.d.ts.map +1 -1
  189. package/dist/views/Settings/Settings.vue.js +8 -0
  190. package/dist/views/Settings/Settings.vue2.js +67 -0
  191. package/dist/views/Start.vue.d.ts.map +1 -1
  192. package/dist/views/Start.vue.js +7 -0
  193. package/dist/views/Start.vue2.js +41 -0
  194. package/package.json +52 -7
  195. package/dist/Tooltip-Cm82QgNj.js +0 -575
  196. package/dist/__vite-optional-peer-dep_stream-markdown_markstream-vue_false-sdjmOmXd.js +0 -5
  197. package/dist/__vite-optional-peer-dep_stream-monaco_markstream-vue_false-HdL4xm5U.js +0 -5
  198. package/dist/__vite-optional-peer-dep_vue-i18n_markstream-vue_false-B9Pwe5kz.js +0 -5
  199. package/dist/_basePickBy-hHD8tMGb.js +0 -151
  200. package/dist/_baseUniq-DTF1wuF6.js +0 -614
  201. package/dist/arc-Dw2RQerU.js +0 -83
  202. package/dist/architecture-U656AL7Q-B00Z9eXr.js +0 -36
  203. package/dist/architectureDiagram-VXUJARFQ-BtOffFaM.js +0 -4662
  204. package/dist/blockDiagram-VD42YOAC-BUqFMMQe.js +0 -2261
  205. package/dist/c4Diagram-YG6GDRKO-NrM1YcpG.js +0 -1579
  206. package/dist/channel-105myCGU.js +0 -5
  207. package/dist/chunk-4BX2VUAB-TAxJli7C.js +0 -8
  208. package/dist/chunk-55IACEB6-VXFJ4bz5.js +0 -8
  209. package/dist/chunk-B4BG7PRW-CZDQpfj5.js +0 -1375
  210. package/dist/chunk-DI55MBZ5-D3l7TA-E.js +0 -1370
  211. package/dist/chunk-FMBD7UC4-BMXFm8I3.js +0 -19
  212. package/dist/chunk-QN33PNHL-BOUpbpWp.js +0 -19
  213. package/dist/chunk-QZHKN3VN-C-TEEx05.js +0 -15
  214. package/dist/chunk-TZMSLE5B-BUiROKNR.js +0 -64
  215. package/dist/classDiagram-2ON5EDUG-HQET4ybK.js +0 -16
  216. package/dist/classDiagram-v2-WZHVMYZB-HQET4ybK.js +0 -16
  217. package/dist/clone-CIIO71O9.js +0 -8
  218. package/dist/components/Endpoint.vue.d.ts.map +0 -1
  219. package/dist/cose-bilkent-S5V4N54A-CMsF4n-5.js +0 -2609
  220. package/dist/cytoscape.esm-DfdJODL8.js +0 -18735
  221. package/dist/dagre-6UL2VRFP-DqzdQ6Qg.js +0 -444
  222. package/dist/defaultLocale-BEa-49Qz.js +0 -171
  223. package/dist/diagram-PSM6KHXK-1xyGntw2.js +0 -531
  224. package/dist/diagram-QEK2KX5R-DdZdlAm1.js +0 -217
  225. package/dist/diagram-S2PKOQOG-C80Eo2jp.js +0 -142
  226. package/dist/erDiagram-Q2GNP2WA-DFVRrMXT.js +0 -841
  227. package/dist/flowDiagram-NV44I4VS-D9QK_qqB.js +0 -1620
  228. package/dist/ganttDiagram-LVOFAZNH-Bo1NTkeQ.js +0 -2506
  229. package/dist/gitGraph-F6HP7TQM-C5hdgcgO.js +0 -27
  230. package/dist/gitGraphDiagram-NY62KEGX-BZqnqZh6.js +0 -699
  231. package/dist/graph-Dth4IhEK.js +0 -247
  232. package/dist/hooks/useChatApprovals.d.ts.map +0 -1
  233. package/dist/hooks/useChatOperationBlocks.d.ts +0 -3
  234. package/dist/hooks/useChatOperationBlocks.d.ts.map +0 -1
  235. package/dist/hooks/useChatScroll.d.ts.map +0 -1
  236. package/dist/hooks/useSearch.d.ts.map +0 -1
  237. package/dist/index-BOvT43H8.js +0 -111780
  238. package/dist/index2-B36B-gt0.js +0 -69
  239. package/dist/index3-CtIyYUnG.js +0 -70
  240. package/dist/index4-Dzz91Ao2.js +0 -537
  241. package/dist/index5-Bmz0gMSP.js +0 -590
  242. package/dist/index6-DMB3qTSV.js +0 -196
  243. package/dist/info-NVLQJR56-azt5obk5.js +0 -27
  244. package/dist/infoDiagram-ER5ION4S-DD4Jtctm.js +0 -24
  245. package/dist/infographic_markstream-vue_false-BfsmcXxk.js +0 -5
  246. package/dist/init-DjUOC4st.js +0 -16
  247. package/dist/journeyDiagram-XKPGCS4Q-CXL6UO0r.js +0 -834
  248. package/dist/kanban-definition-3W4ZIXB7-B57do5Wg.js +0 -719
  249. package/dist/katex-SsTUIUTC.js +0 -11688
  250. package/dist/layout-7TCY8eA2.js +0 -1332
  251. package/dist/linear-DSm5i91N.js +0 -625
  252. package/dist/mermaid-parser.core-CUQWpAMM.js +0 -12746
  253. package/dist/mermaid.core-QjuzH7xx.js +0 -14164
  254. package/dist/mhchem-XHl7cef5.js +0 -2306
  255. package/dist/mindmap-definition-VGOIOE7T-DAQyGNAM.js +0 -784
  256. package/dist/ordinal-DfAQgscy.js +0 -61
  257. package/dist/packet-BFZMPI3H-CixuxAEA.js +0 -27
  258. package/dist/pie-7BOR55EZ-D3cgnzR1.js +0 -32
  259. package/dist/pieDiagram-ADFJNKIX-BqxgYwrL.js +0 -161
  260. package/dist/quadrantDiagram-AYHSOK5B-CQ4v-9Hh.js +0 -1022
  261. package/dist/radar-NHE76QYJ-DhV0Od_M.js +0 -27
  262. package/dist/requirementDiagram-UZGBJVZJ-ncWNAgFi.js +0 -850
  263. package/dist/safeRaf-I3a3-dyJ.js +0 -10
  264. package/dist/sankeyDiagram-TZEHDZUN-yCR2_cH5.js +0 -810
  265. package/dist/sequenceDiagram-WL72ISMW-DZ7wqFyd.js +0 -2511
  266. package/dist/stateDiagram-FKZM4ZOC-Dra68Tzi.js +0 -263
  267. package/dist/stateDiagram-v2-4FDKWEC3-CARbPECD.js +0 -16
  268. package/dist/timeline-definition-IT6M3QCI-DEbG9QIM.js +0 -795
  269. package/dist/treemap-KMMF4GRG-CQbPsyWe.js +0 -81
  270. package/dist/xychartDiagram-PRI3JC2R-C94Pu8hL.js +0 -1340
@@ -1,699 +0,0 @@
1
- import { p as Y } from "./chunk-4BX2VUAB-TAxJli7C.js";
2
- import { I as K } from "./chunk-QZHKN3VN-C-TEEx05.js";
3
- import { _ as l, q as U, p as V, s as X, g as J, a as Q, b as Z, l as m, c as rr, d as er, u as tr, C as ar, y as sr, k as C, D as nr, E as or, F as cr, G as ir } from "./mermaid.core-QjuzH7xx.js";
4
- import { p as dr } from "./mermaid-parser.core-CUQWpAMM.js";
5
- var p = {
6
- NORMAL: 0,
7
- REVERSE: 1,
8
- HIGHLIGHT: 2,
9
- MERGE: 3,
10
- CHERRY_PICK: 4
11
- }, hr = cr.gitGraph, I = /* @__PURE__ */ l(() => nr({
12
- ...hr,
13
- ...or().gitGraph
14
- }), "getConfig"), c = new K(() => {
15
- const t = I(), r = t.mainBranchName, s = t.mainBranchOrder;
16
- return {
17
- mainBranchName: r,
18
- commits: /* @__PURE__ */ new Map(),
19
- head: null,
20
- branchConfig: /* @__PURE__ */ new Map([[r, { name: r, order: s }]]),
21
- branches: /* @__PURE__ */ new Map([[r, null]]),
22
- currBranch: r,
23
- direction: "LR",
24
- seq: 0,
25
- options: {}
26
- };
27
- });
28
- function A() {
29
- return ir({ length: 7 });
30
- }
31
- l(A, "getID");
32
- function F(t, r) {
33
- const s = /* @__PURE__ */ Object.create(null);
34
- return t.reduce((n, e) => {
35
- const a = r(e);
36
- return s[a] || (s[a] = !0, n.push(e)), n;
37
- }, []);
38
- }
39
- l(F, "uniqBy");
40
- var lr = /* @__PURE__ */ l(function(t) {
41
- c.records.direction = t;
42
- }, "setDirection"), $r = /* @__PURE__ */ l(function(t) {
43
- m.debug("options str", t), t = t?.trim(), t = t || "{}";
44
- try {
45
- c.records.options = JSON.parse(t);
46
- } catch (r) {
47
- m.error("error while parsing gitGraph options", r.message);
48
- }
49
- }, "setOptions"), fr = /* @__PURE__ */ l(function() {
50
- return c.records.options;
51
- }, "getOptions"), gr = /* @__PURE__ */ l(function(t) {
52
- let r = t.msg, s = t.id;
53
- const n = t.type;
54
- let e = t.tags;
55
- m.info("commit", r, s, n, e), m.debug("Entering commit:", r, s, n, e);
56
- const a = I();
57
- s = C.sanitizeText(s, a), r = C.sanitizeText(r, a), e = e?.map((o) => C.sanitizeText(o, a));
58
- const d = {
59
- id: s || c.records.seq + "-" + A(),
60
- message: r,
61
- seq: c.records.seq++,
62
- type: n ?? p.NORMAL,
63
- tags: e ?? [],
64
- parents: c.records.head == null ? [] : [c.records.head.id],
65
- branch: c.records.currBranch
66
- };
67
- c.records.head = d, m.info("main branch", a.mainBranchName), c.records.commits.has(d.id) && m.warn(`Commit ID ${d.id} already exists`), c.records.commits.set(d.id, d), c.records.branches.set(c.records.currBranch, d.id), m.debug("in pushCommit " + d.id);
68
- }, "commit"), yr = /* @__PURE__ */ l(function(t) {
69
- let r = t.name;
70
- const s = t.order;
71
- if (r = C.sanitizeText(r, I()), c.records.branches.has(r))
72
- throw new Error(
73
- `Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${r}")`
74
- );
75
- c.records.branches.set(r, c.records.head != null ? c.records.head.id : null), c.records.branchConfig.set(r, { name: r, order: s }), z(r), m.debug("in createBranch");
76
- }, "branch"), ur = /* @__PURE__ */ l((t) => {
77
- let r = t.branch, s = t.id;
78
- const n = t.type, e = t.tags, a = I();
79
- r = C.sanitizeText(r, a), s && (s = C.sanitizeText(s, a));
80
- const d = c.records.branches.get(c.records.currBranch), o = c.records.branches.get(r), f = d ? c.records.commits.get(d) : void 0, h = o ? c.records.commits.get(o) : void 0;
81
- if (f && h && f.branch === r)
82
- throw new Error(`Cannot merge branch '${r}' into itself.`);
83
- if (c.records.currBranch === r) {
84
- const i = new Error('Incorrect usage of "merge". Cannot merge a branch to itself');
85
- throw i.hash = {
86
- text: `merge ${r}`,
87
- token: `merge ${r}`,
88
- expected: ["branch abc"]
89
- }, i;
90
- }
91
- if (f === void 0 || !f) {
92
- const i = new Error(
93
- `Incorrect usage of "merge". Current branch (${c.records.currBranch})has no commits`
94
- );
95
- throw i.hash = {
96
- text: `merge ${r}`,
97
- token: `merge ${r}`,
98
- expected: ["commit"]
99
- }, i;
100
- }
101
- if (!c.records.branches.has(r)) {
102
- const i = new Error(
103
- 'Incorrect usage of "merge". Branch to be merged (' + r + ") does not exist"
104
- );
105
- throw i.hash = {
106
- text: `merge ${r}`,
107
- token: `merge ${r}`,
108
- expected: [`branch ${r}`]
109
- }, i;
110
- }
111
- if (h === void 0 || !h) {
112
- const i = new Error(
113
- 'Incorrect usage of "merge". Branch to be merged (' + r + ") has no commits"
114
- );
115
- throw i.hash = {
116
- text: `merge ${r}`,
117
- token: `merge ${r}`,
118
- expected: ['"commit"']
119
- }, i;
120
- }
121
- if (f === h) {
122
- const i = new Error('Incorrect usage of "merge". Both branches have same head');
123
- throw i.hash = {
124
- text: `merge ${r}`,
125
- token: `merge ${r}`,
126
- expected: ["branch abc"]
127
- }, i;
128
- }
129
- if (s && c.records.commits.has(s)) {
130
- const i = new Error(
131
- 'Incorrect usage of "merge". Commit with id:' + s + " already exists, use different custom id"
132
- );
133
- throw i.hash = {
134
- text: `merge ${r} ${s} ${n} ${e?.join(" ")}`,
135
- token: `merge ${r} ${s} ${n} ${e?.join(" ")}`,
136
- expected: [
137
- `merge ${r} ${s}_UNIQUE ${n} ${e?.join(" ")}`
138
- ]
139
- }, i;
140
- }
141
- const $ = o || "", g = {
142
- id: s || `${c.records.seq}-${A()}`,
143
- message: `merged branch ${r} into ${c.records.currBranch}`,
144
- seq: c.records.seq++,
145
- parents: c.records.head == null ? [] : [c.records.head.id, $],
146
- branch: c.records.currBranch,
147
- type: p.MERGE,
148
- customType: n,
149
- customId: !!s,
150
- tags: e ?? []
151
- };
152
- c.records.head = g, c.records.commits.set(g.id, g), c.records.branches.set(c.records.currBranch, g.id), m.debug(c.records.branches), m.debug("in mergeBranch");
153
- }, "merge"), xr = /* @__PURE__ */ l(function(t) {
154
- let r = t.id, s = t.targetId, n = t.tags, e = t.parent;
155
- m.debug("Entering cherryPick:", r, s, n);
156
- const a = I();
157
- if (r = C.sanitizeText(r, a), s = C.sanitizeText(s, a), n = n?.map((f) => C.sanitizeText(f, a)), e = C.sanitizeText(e, a), !r || !c.records.commits.has(r)) {
158
- const f = new Error(
159
- 'Incorrect usage of "cherryPick". Source commit id should exist and provided'
160
- );
161
- throw f.hash = {
162
- text: `cherryPick ${r} ${s}`,
163
- token: `cherryPick ${r} ${s}`,
164
- expected: ["cherry-pick abc"]
165
- }, f;
166
- }
167
- const d = c.records.commits.get(r);
168
- if (d === void 0 || !d)
169
- throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');
170
- if (e && !(Array.isArray(d.parents) && d.parents.includes(e)))
171
- throw new Error(
172
- "Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit."
173
- );
174
- const o = d.branch;
175
- if (d.type === p.MERGE && !e)
176
- throw new Error(
177
- "Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified."
178
- );
179
- if (!s || !c.records.commits.has(s)) {
180
- if (o === c.records.currBranch) {
181
- const g = new Error(
182
- 'Incorrect usage of "cherryPick". Source commit is already on current branch'
183
- );
184
- throw g.hash = {
185
- text: `cherryPick ${r} ${s}`,
186
- token: `cherryPick ${r} ${s}`,
187
- expected: ["cherry-pick abc"]
188
- }, g;
189
- }
190
- const f = c.records.branches.get(c.records.currBranch);
191
- if (f === void 0 || !f) {
192
- const g = new Error(
193
- `Incorrect usage of "cherry-pick". Current branch (${c.records.currBranch})has no commits`
194
- );
195
- throw g.hash = {
196
- text: `cherryPick ${r} ${s}`,
197
- token: `cherryPick ${r} ${s}`,
198
- expected: ["cherry-pick abc"]
199
- }, g;
200
- }
201
- const h = c.records.commits.get(f);
202
- if (h === void 0 || !h) {
203
- const g = new Error(
204
- `Incorrect usage of "cherry-pick". Current branch (${c.records.currBranch})has no commits`
205
- );
206
- throw g.hash = {
207
- text: `cherryPick ${r} ${s}`,
208
- token: `cherryPick ${r} ${s}`,
209
- expected: ["cherry-pick abc"]
210
- }, g;
211
- }
212
- const $ = {
213
- id: c.records.seq + "-" + A(),
214
- message: `cherry-picked ${d?.message} into ${c.records.currBranch}`,
215
- seq: c.records.seq++,
216
- parents: c.records.head == null ? [] : [c.records.head.id, d.id],
217
- branch: c.records.currBranch,
218
- type: p.CHERRY_PICK,
219
- tags: n ? n.filter(Boolean) : [
220
- `cherry-pick:${d.id}${d.type === p.MERGE ? `|parent:${e}` : ""}`
221
- ]
222
- };
223
- c.records.head = $, c.records.commits.set($.id, $), c.records.branches.set(c.records.currBranch, $.id), m.debug(c.records.branches), m.debug("in cherryPick");
224
- }
225
- }, "cherryPick"), z = /* @__PURE__ */ l(function(t) {
226
- if (t = C.sanitizeText(t, I()), c.records.branches.has(t)) {
227
- c.records.currBranch = t;
228
- const r = c.records.branches.get(c.records.currBranch);
229
- r === void 0 || !r ? c.records.head = null : c.records.head = c.records.commits.get(r) ?? null;
230
- } else {
231
- const r = new Error(
232
- `Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`
233
- );
234
- throw r.hash = {
235
- text: `checkout ${t}`,
236
- token: `checkout ${t}`,
237
- expected: [`branch ${t}`]
238
- }, r;
239
- }
240
- }, "checkout");
241
- function H(t, r, s) {
242
- const n = t.indexOf(r);
243
- n === -1 ? t.push(s) : t.splice(n, 1, s);
244
- }
245
- l(H, "upsert");
246
- function P(t) {
247
- const r = t.reduce((e, a) => e.seq > a.seq ? e : a, t[0]);
248
- let s = "";
249
- t.forEach(function(e) {
250
- e === r ? s += " *" : s += " |";
251
- });
252
- const n = [s, r.id, r.seq];
253
- for (const e in c.records.branches)
254
- c.records.branches.get(e) === r.id && n.push(e);
255
- if (m.debug(n.join(" ")), r.parents && r.parents.length == 2 && r.parents[0] && r.parents[1]) {
256
- const e = c.records.commits.get(r.parents[0]);
257
- H(t, r, e), r.parents[1] && t.push(c.records.commits.get(r.parents[1]));
258
- } else {
259
- if (r.parents.length == 0)
260
- return;
261
- if (r.parents[0]) {
262
- const e = c.records.commits.get(r.parents[0]);
263
- H(t, r, e);
264
- }
265
- }
266
- t = F(t, (e) => e.id), P(t);
267
- }
268
- l(P, "prettyPrintCommitHistory");
269
- var pr = /* @__PURE__ */ l(function() {
270
- m.debug(c.records.commits);
271
- const t = N()[0];
272
- P([t]);
273
- }, "prettyPrint"), mr = /* @__PURE__ */ l(function() {
274
- c.reset(), sr();
275
- }, "clear"), br = /* @__PURE__ */ l(function() {
276
- return [...c.records.branchConfig.values()].map((r, s) => r.order !== null && r.order !== void 0 ? r : {
277
- ...r,
278
- order: parseFloat(`0.${s}`)
279
- }).sort((r, s) => (r.order ?? 0) - (s.order ?? 0)).map(({ name: r }) => ({ name: r }));
280
- }, "getBranchesAsObjArray"), wr = /* @__PURE__ */ l(function() {
281
- return c.records.branches;
282
- }, "getBranches"), vr = /* @__PURE__ */ l(function() {
283
- return c.records.commits;
284
- }, "getCommits"), N = /* @__PURE__ */ l(function() {
285
- const t = [...c.records.commits.values()];
286
- return t.forEach(function(r) {
287
- m.debug(r.id);
288
- }), t.sort((r, s) => r.seq - s.seq), t;
289
- }, "getCommitsArray"), Cr = /* @__PURE__ */ l(function() {
290
- return c.records.currBranch;
291
- }, "getCurrentBranch"), Er = /* @__PURE__ */ l(function() {
292
- return c.records.direction;
293
- }, "getDirection"), Tr = /* @__PURE__ */ l(function() {
294
- return c.records.head;
295
- }, "getHead"), S = {
296
- commitType: p,
297
- getConfig: I,
298
- setDirection: lr,
299
- setOptions: $r,
300
- getOptions: fr,
301
- commit: gr,
302
- branch: yr,
303
- merge: ur,
304
- cherryPick: xr,
305
- checkout: z,
306
- //reset,
307
- prettyPrint: pr,
308
- clear: mr,
309
- getBranchesAsObjArray: br,
310
- getBranches: wr,
311
- getCommits: vr,
312
- getCommitsArray: N,
313
- getCurrentBranch: Cr,
314
- getDirection: Er,
315
- getHead: Tr,
316
- setAccTitle: Z,
317
- getAccTitle: Q,
318
- getAccDescription: J,
319
- setAccDescription: X,
320
- setDiagramTitle: V,
321
- getDiagramTitle: U
322
- }, Br = /* @__PURE__ */ l((t, r) => {
323
- Y(t, r), t.dir && r.setDirection(t.dir);
324
- for (const s of t.statements)
325
- Lr(s, r);
326
- }, "populate"), Lr = /* @__PURE__ */ l((t, r) => {
327
- const n = {
328
- Commit: /* @__PURE__ */ l((e) => r.commit(kr(e)), "Commit"),
329
- Branch: /* @__PURE__ */ l((e) => r.branch(Mr(e)), "Branch"),
330
- Merge: /* @__PURE__ */ l((e) => r.merge(Ir(e)), "Merge"),
331
- Checkout: /* @__PURE__ */ l((e) => r.checkout(Rr(e)), "Checkout"),
332
- CherryPicking: /* @__PURE__ */ l((e) => r.cherryPick(Gr(e)), "CherryPicking")
333
- }[t.$type];
334
- n ? n(t) : m.error(`Unknown statement type: ${t.$type}`);
335
- }, "parseStatement"), kr = /* @__PURE__ */ l((t) => ({
336
- id: t.id,
337
- msg: t.message ?? "",
338
- type: t.type !== void 0 ? p[t.type] : p.NORMAL,
339
- tags: t.tags ?? void 0
340
- }), "parseCommit"), Mr = /* @__PURE__ */ l((t) => ({
341
- name: t.name,
342
- order: t.order ?? 0
343
- }), "parseBranch"), Ir = /* @__PURE__ */ l((t) => ({
344
- branch: t.branch,
345
- id: t.id ?? "",
346
- type: t.type !== void 0 ? p[t.type] : void 0,
347
- tags: t.tags ?? void 0
348
- }), "parseMerge"), Rr = /* @__PURE__ */ l((t) => t.branch, "parseCheckout"), Gr = /* @__PURE__ */ l((t) => ({
349
- id: t.id,
350
- targetId: "",
351
- tags: t.tags?.length === 0 ? void 0 : t.tags,
352
- parent: t.parent
353
- }), "parseCherryPicking"), Or = {
354
- parse: /* @__PURE__ */ l(async (t) => {
355
- const r = await dr("gitGraph", t);
356
- m.debug(r), Br(r, S);
357
- }, "parse")
358
- }, qr = rr(), v = qr?.gitGraph, L = 10, k = 40, E = 4, T = 2, M = 8, b = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map(), O = 30, R = /* @__PURE__ */ new Map(), q = [], B = 0, u = "LR", Ar = /* @__PURE__ */ l(() => {
359
- b.clear(), w.clear(), R.clear(), B = 0, q = [], u = "LR";
360
- }, "clear"), W = /* @__PURE__ */ l((t) => {
361
- const r = document.createElementNS("http://www.w3.org/2000/svg", "text");
362
- return (typeof t == "string" ? t.split(/\\n|\n|<br\s*\/?>/gi) : t).forEach((n) => {
363
- const e = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
364
- e.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"), e.setAttribute("dy", "1em"), e.setAttribute("x", "0"), e.setAttribute("class", "row"), e.textContent = n.trim(), r.appendChild(e);
365
- }), r;
366
- }, "drawText"), j = /* @__PURE__ */ l((t) => {
367
- let r, s, n;
368
- return u === "BT" ? (s = /* @__PURE__ */ l((e, a) => e <= a, "comparisonFunc"), n = 1 / 0) : (s = /* @__PURE__ */ l((e, a) => e >= a, "comparisonFunc"), n = 0), t.forEach((e) => {
369
- const a = u === "TB" || u == "BT" ? w.get(e)?.y : w.get(e)?.x;
370
- a !== void 0 && s(a, n) && (r = e, n = a);
371
- }), r;
372
- }, "findClosestParent"), _r = /* @__PURE__ */ l((t) => {
373
- let r = "", s = 1 / 0;
374
- return t.forEach((n) => {
375
- const e = w.get(n).y;
376
- e <= s && (r = n, s = e);
377
- }), r || void 0;
378
- }, "findClosestParentBT"), Hr = /* @__PURE__ */ l((t, r, s) => {
379
- let n = s, e = s;
380
- const a = [];
381
- t.forEach((d) => {
382
- const o = r.get(d);
383
- if (!o)
384
- throw new Error(`Commit not found for key ${d}`);
385
- o.parents.length ? (n = Dr(o), e = Math.max(n, e)) : a.push(o), Fr(o, n);
386
- }), n = e, a.forEach((d) => {
387
- zr(d, n, s);
388
- }), t.forEach((d) => {
389
- const o = r.get(d);
390
- if (o?.parents.length) {
391
- const f = _r(o.parents);
392
- n = w.get(f).y - k, n <= e && (e = n);
393
- const h = b.get(o.branch).pos, $ = n - L;
394
- w.set(o.id, { x: h, y: $ });
395
- }
396
- });
397
- }, "setParallelBTPos"), Pr = /* @__PURE__ */ l((t) => {
398
- const r = j(t.parents.filter((n) => n !== null));
399
- if (!r)
400
- throw new Error(`Closest parent not found for commit ${t.id}`);
401
- const s = w.get(r)?.y;
402
- if (s === void 0)
403
- throw new Error(`Closest parent position not found for commit ${t.id}`);
404
- return s;
405
- }, "findClosestParentPos"), Dr = /* @__PURE__ */ l((t) => Pr(t) + k, "calculateCommitPosition"), Fr = /* @__PURE__ */ l((t, r) => {
406
- const s = b.get(t.branch);
407
- if (!s)
408
- throw new Error(`Branch not found for commit ${t.id}`);
409
- const n = s.pos, e = r + L;
410
- return w.set(t.id, { x: n, y: e }), { x: n, y: e };
411
- }, "setCommitPosition"), zr = /* @__PURE__ */ l((t, r, s) => {
412
- const n = b.get(t.branch);
413
- if (!n)
414
- throw new Error(`Branch not found for commit ${t.id}`);
415
- const e = r + s, a = n.pos;
416
- w.set(t.id, { x: a, y: e });
417
- }, "setRootPosition"), Nr = /* @__PURE__ */ l((t, r, s, n, e, a) => {
418
- if (a === p.HIGHLIGHT)
419
- t.append("rect").attr("x", s.x - 10).attr("y", s.y - 10).attr("width", 20).attr("height", 20).attr(
420
- "class",
421
- `commit ${r.id} commit-highlight${e % M} ${n}-outer`
422
- ), t.append("rect").attr("x", s.x - 6).attr("y", s.y - 6).attr("width", 12).attr("height", 12).attr(
423
- "class",
424
- `commit ${r.id} commit${e % M} ${n}-inner`
425
- );
426
- else if (a === p.CHERRY_PICK)
427
- t.append("circle").attr("cx", s.x).attr("cy", s.y).attr("r", 10).attr("class", `commit ${r.id} ${n}`), t.append("circle").attr("cx", s.x - 3).attr("cy", s.y + 2).attr("r", 2.75).attr("fill", "#fff").attr("class", `commit ${r.id} ${n}`), t.append("circle").attr("cx", s.x + 3).attr("cy", s.y + 2).attr("r", 2.75).attr("fill", "#fff").attr("class", `commit ${r.id} ${n}`), t.append("line").attr("x1", s.x + 3).attr("y1", s.y + 1).attr("x2", s.x).attr("y2", s.y - 5).attr("stroke", "#fff").attr("class", `commit ${r.id} ${n}`), t.append("line").attr("x1", s.x - 3).attr("y1", s.y + 1).attr("x2", s.x).attr("y2", s.y - 5).attr("stroke", "#fff").attr("class", `commit ${r.id} ${n}`);
428
- else {
429
- const d = t.append("circle");
430
- if (d.attr("cx", s.x), d.attr("cy", s.y), d.attr("r", r.type === p.MERGE ? 9 : 10), d.attr("class", `commit ${r.id} commit${e % M}`), a === p.MERGE) {
431
- const o = t.append("circle");
432
- o.attr("cx", s.x), o.attr("cy", s.y), o.attr("r", 6), o.attr(
433
- "class",
434
- `commit ${n} ${r.id} commit${e % M}`
435
- );
436
- }
437
- a === p.REVERSE && t.append("path").attr(
438
- "d",
439
- `M ${s.x - 5},${s.y - 5}L${s.x + 5},${s.y + 5}M${s.x - 5},${s.y + 5}L${s.x + 5},${s.y - 5}`
440
- ).attr("class", `commit ${n} ${r.id} commit${e % M}`);
441
- }
442
- }, "drawCommitBullet"), Sr = /* @__PURE__ */ l((t, r, s, n) => {
443
- if (r.type !== p.CHERRY_PICK && (r.customId && r.type === p.MERGE || r.type !== p.MERGE) && v?.showCommitLabel) {
444
- const e = t.append("g"), a = e.insert("rect").attr("class", "commit-label-bkg"), d = e.append("text").attr("x", n).attr("y", s.y + 25).attr("class", "commit-label").text(r.id), o = d.node()?.getBBox();
445
- if (o && (a.attr("x", s.posWithOffset - o.width / 2 - T).attr("y", s.y + 13.5).attr("width", o.width + 2 * T).attr("height", o.height + 2 * T), u === "TB" || u === "BT" ? (a.attr("x", s.x - (o.width + 4 * E + 5)).attr("y", s.y - 12), d.attr("x", s.x - (o.width + 4 * E)).attr("y", s.y + o.height - 12)) : d.attr("x", s.posWithOffset - o.width / 2), v.rotateCommitLabel))
446
- if (u === "TB" || u === "BT")
447
- d.attr(
448
- "transform",
449
- "rotate(-45, " + s.x + ", " + s.y + ")"
450
- ), a.attr(
451
- "transform",
452
- "rotate(-45, " + s.x + ", " + s.y + ")"
453
- );
454
- else {
455
- const f = -7.5 - (o.width + 10) / 25 * 9.5, h = 10 + o.width / 25 * 8.5;
456
- e.attr(
457
- "transform",
458
- "translate(" + f + ", " + h + ") rotate(-45, " + n + ", " + s.y + ")"
459
- );
460
- }
461
- }
462
- }, "drawCommitLabel"), Wr = /* @__PURE__ */ l((t, r, s, n) => {
463
- if (r.tags.length > 0) {
464
- let e = 0, a = 0, d = 0;
465
- const o = [];
466
- for (const f of r.tags.reverse()) {
467
- const h = t.insert("polygon"), $ = t.append("circle"), g = t.append("text").attr("y", s.y - 16 - e).attr("class", "tag-label").text(f), i = g.node()?.getBBox();
468
- if (!i)
469
- throw new Error("Tag bbox not found");
470
- a = Math.max(a, i.width), d = Math.max(d, i.height), g.attr("x", s.posWithOffset - i.width / 2), o.push({
471
- tag: g,
472
- hole: $,
473
- rect: h,
474
- yOffset: e
475
- }), e += 20;
476
- }
477
- for (const { tag: f, hole: h, rect: $, yOffset: g } of o) {
478
- const i = d / 2, y = s.y - 19.2 - g;
479
- if ($.attr("class", "tag-label-bkg").attr(
480
- "points",
481
- `
482
- ${n - a / 2 - E / 2},${y + T}
483
- ${n - a / 2 - E / 2},${y - T}
484
- ${s.posWithOffset - a / 2 - E},${y - i - T}
485
- ${s.posWithOffset + a / 2 + E},${y - i - T}
486
- ${s.posWithOffset + a / 2 + E},${y + i + T}
487
- ${s.posWithOffset - a / 2 - E},${y + i + T}`
488
- ), h.attr("cy", y).attr("cx", n - a / 2 + E / 2).attr("r", 1.5).attr("class", "tag-hole"), u === "TB" || u === "BT") {
489
- const x = n + g;
490
- $.attr("class", "tag-label-bkg").attr(
491
- "points",
492
- `
493
- ${s.x},${x + 2}
494
- ${s.x},${x - 2}
495
- ${s.x + L},${x - i - 2}
496
- ${s.x + L + a + 4},${x - i - 2}
497
- ${s.x + L + a + 4},${x + i + 2}
498
- ${s.x + L},${x + i + 2}`
499
- ).attr("transform", "translate(12,12) rotate(45, " + s.x + "," + n + ")"), h.attr("cx", s.x + E / 2).attr("cy", x).attr("transform", "translate(12,12) rotate(45, " + s.x + "," + n + ")"), f.attr("x", s.x + 5).attr("y", x + 3).attr("transform", "translate(14,14) rotate(45, " + s.x + "," + n + ")");
500
- }
501
- }
502
- }
503
- }, "drawCommitTags"), jr = /* @__PURE__ */ l((t) => {
504
- switch (t.customType ?? t.type) {
505
- case p.NORMAL:
506
- return "commit-normal";
507
- case p.REVERSE:
508
- return "commit-reverse";
509
- case p.HIGHLIGHT:
510
- return "commit-highlight";
511
- case p.MERGE:
512
- return "commit-merge";
513
- case p.CHERRY_PICK:
514
- return "commit-cherry-pick";
515
- default:
516
- return "commit-normal";
517
- }
518
- }, "getCommitClassType"), Yr = /* @__PURE__ */ l((t, r, s, n) => {
519
- const e = { x: 0, y: 0 };
520
- if (t.parents.length > 0) {
521
- const a = j(t.parents);
522
- if (a) {
523
- const d = n.get(a) ?? e;
524
- return r === "TB" ? d.y + k : r === "BT" ? (n.get(t.id) ?? e).y - k : d.x + k;
525
- }
526
- } else
527
- return r === "TB" ? O : r === "BT" ? (n.get(t.id) ?? e).y - k : 0;
528
- return 0;
529
- }, "calculatePosition"), Kr = /* @__PURE__ */ l((t, r, s) => {
530
- const n = u === "BT" && s ? r : r + L, e = u === "TB" || u === "BT" ? n : b.get(t.branch)?.pos, a = u === "TB" || u === "BT" ? b.get(t.branch)?.pos : n;
531
- if (a === void 0 || e === void 0)
532
- throw new Error(`Position were undefined for commit ${t.id}`);
533
- return { x: a, y: e, posWithOffset: n };
534
- }, "getCommitPosition"), D = /* @__PURE__ */ l((t, r, s) => {
535
- if (!v)
536
- throw new Error("GitGraph config not found");
537
- const n = t.append("g").attr("class", "commit-bullets"), e = t.append("g").attr("class", "commit-labels");
538
- let a = u === "TB" || u === "BT" ? O : 0;
539
- const d = [...r.keys()], o = v?.parallelCommits ?? !1, f = /* @__PURE__ */ l(($, g) => {
540
- const i = r.get($)?.seq, y = r.get(g)?.seq;
541
- return i !== void 0 && y !== void 0 ? i - y : 0;
542
- }, "sortKeys");
543
- let h = d.sort(f);
544
- u === "BT" && (o && Hr(h, r, a), h = h.reverse()), h.forEach(($) => {
545
- const g = r.get($);
546
- if (!g)
547
- throw new Error(`Commit not found for key ${$}`);
548
- o && (a = Yr(g, u, a, w));
549
- const i = Kr(g, a, o);
550
- if (s) {
551
- const y = jr(g), x = g.customType ?? g.type, _ = b.get(g.branch)?.index ?? 0;
552
- Nr(n, g, i, y, _, x), Sr(e, g, i, a), Wr(e, g, i, a);
553
- }
554
- u === "TB" || u === "BT" ? w.set(g.id, { x: i.x, y: i.posWithOffset }) : w.set(g.id, { x: i.posWithOffset, y: i.y }), a = u === "BT" && o ? a + k : a + k + L, a > B && (B = a);
555
- });
556
- }, "drawCommits"), Ur = /* @__PURE__ */ l((t, r, s, n, e) => {
557
- const d = (u === "TB" || u === "BT" ? s.x < n.x : s.y < n.y) ? r.branch : t.branch, o = /* @__PURE__ */ l((h) => h.branch === d, "isOnBranchToGetCurve"), f = /* @__PURE__ */ l((h) => h.seq > t.seq && h.seq < r.seq, "isBetweenCommits");
558
- return [...e.values()].some((h) => f(h) && o(h));
559
- }, "shouldRerouteArrow"), G = /* @__PURE__ */ l((t, r, s = 0) => {
560
- const n = t + Math.abs(t - r) / 2;
561
- if (s > 5)
562
- return n;
563
- if (q.every((d) => Math.abs(d - n) >= 10))
564
- return q.push(n), n;
565
- const a = Math.abs(t - r);
566
- return G(t, r - a / 5, s + 1);
567
- }, "findLane"), Vr = /* @__PURE__ */ l((t, r, s, n) => {
568
- const e = w.get(r.id), a = w.get(s.id);
569
- if (e === void 0 || a === void 0)
570
- throw new Error(`Commit positions not found for commits ${r.id} and ${s.id}`);
571
- const d = Ur(r, s, e, a, n);
572
- let o = "", f = "", h = 0, $ = 0, g = b.get(s.branch)?.index;
573
- s.type === p.MERGE && r.id !== s.parents[0] && (g = b.get(r.branch)?.index);
574
- let i;
575
- if (d) {
576
- o = "A 10 10, 0, 0, 0,", f = "A 10 10, 0, 0, 1,", h = 10, $ = 10;
577
- const y = e.y < a.y ? G(e.y, a.y) : G(a.y, e.y), x = e.x < a.x ? G(e.x, a.x) : G(a.x, e.x);
578
- u === "TB" ? e.x < a.x ? i = `M ${e.x} ${e.y} L ${x - h} ${e.y} ${f} ${x} ${e.y + $} L ${x} ${a.y - h} ${o} ${x + $} ${a.y} L ${a.x} ${a.y}` : (g = b.get(r.branch)?.index, i = `M ${e.x} ${e.y} L ${x + h} ${e.y} ${o} ${x} ${e.y + $} L ${x} ${a.y - h} ${f} ${x - $} ${a.y} L ${a.x} ${a.y}`) : u === "BT" ? e.x < a.x ? i = `M ${e.x} ${e.y} L ${x - h} ${e.y} ${o} ${x} ${e.y - $} L ${x} ${a.y + h} ${f} ${x + $} ${a.y} L ${a.x} ${a.y}` : (g = b.get(r.branch)?.index, i = `M ${e.x} ${e.y} L ${x + h} ${e.y} ${f} ${x} ${e.y - $} L ${x} ${a.y + h} ${o} ${x - $} ${a.y} L ${a.x} ${a.y}`) : e.y < a.y ? i = `M ${e.x} ${e.y} L ${e.x} ${y - h} ${o} ${e.x + $} ${y} L ${a.x - h} ${y} ${f} ${a.x} ${y + $} L ${a.x} ${a.y}` : (g = b.get(r.branch)?.index, i = `M ${e.x} ${e.y} L ${e.x} ${y + h} ${f} ${e.x + $} ${y} L ${a.x - h} ${y} ${o} ${a.x} ${y - $} L ${a.x} ${a.y}`);
579
- } else
580
- o = "A 20 20, 0, 0, 0,", f = "A 20 20, 0, 0, 1,", h = 20, $ = 20, u === "TB" ? (e.x < a.x && (s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${e.x} ${a.y - h} ${o} ${e.x + $} ${a.y} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${a.x - h} ${e.y} ${f} ${a.x} ${e.y + $} L ${a.x} ${a.y}`), e.x > a.x && (o = "A 20 20, 0, 0, 0,", f = "A 20 20, 0, 0, 1,", h = 20, $ = 20, s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${e.x} ${a.y - h} ${f} ${e.x - $} ${a.y} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${a.x + h} ${e.y} ${o} ${a.x} ${e.y + $} L ${a.x} ${a.y}`), e.x === a.x && (i = `M ${e.x} ${e.y} L ${a.x} ${a.y}`)) : u === "BT" ? (e.x < a.x && (s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${e.x} ${a.y + h} ${f} ${e.x + $} ${a.y} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${a.x - h} ${e.y} ${o} ${a.x} ${e.y - $} L ${a.x} ${a.y}`), e.x > a.x && (o = "A 20 20, 0, 0, 0,", f = "A 20 20, 0, 0, 1,", h = 20, $ = 20, s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${e.x} ${a.y + h} ${o} ${e.x - $} ${a.y} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${a.x - h} ${e.y} ${o} ${a.x} ${e.y - $} L ${a.x} ${a.y}`), e.x === a.x && (i = `M ${e.x} ${e.y} L ${a.x} ${a.y}`)) : (e.y < a.y && (s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${a.x - h} ${e.y} ${f} ${a.x} ${e.y + $} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${e.x} ${a.y - h} ${o} ${e.x + $} ${a.y} L ${a.x} ${a.y}`), e.y > a.y && (s.type === p.MERGE && r.id !== s.parents[0] ? i = `M ${e.x} ${e.y} L ${a.x - h} ${e.y} ${o} ${a.x} ${e.y - $} L ${a.x} ${a.y}` : i = `M ${e.x} ${e.y} L ${e.x} ${a.y + h} ${f} ${e.x + $} ${a.y} L ${a.x} ${a.y}`), e.y === a.y && (i = `M ${e.x} ${e.y} L ${a.x} ${a.y}`));
581
- if (i === void 0)
582
- throw new Error("Line definition not found");
583
- t.append("path").attr("d", i).attr("class", "arrow arrow" + g % M);
584
- }, "drawArrow"), Xr = /* @__PURE__ */ l((t, r) => {
585
- const s = t.append("g").attr("class", "commit-arrows");
586
- [...r.keys()].forEach((n) => {
587
- const e = r.get(n);
588
- e.parents && e.parents.length > 0 && e.parents.forEach((a) => {
589
- Vr(s, r.get(a), e, r);
590
- });
591
- });
592
- }, "drawArrows"), Jr = /* @__PURE__ */ l((t, r) => {
593
- const s = t.append("g");
594
- r.forEach((n, e) => {
595
- const a = e % M, d = b.get(n.name)?.pos;
596
- if (d === void 0)
597
- throw new Error(`Position not found for branch ${n.name}`);
598
- const o = s.append("line");
599
- o.attr("x1", 0), o.attr("y1", d), o.attr("x2", B), o.attr("y2", d), o.attr("class", "branch branch" + a), u === "TB" ? (o.attr("y1", O), o.attr("x1", d), o.attr("y2", B), o.attr("x2", d)) : u === "BT" && (o.attr("y1", B), o.attr("x1", d), o.attr("y2", O), o.attr("x2", d)), q.push(d);
600
- const f = n.name, h = W(f), $ = s.insert("rect"), i = s.insert("g").attr("class", "branchLabel").insert("g").attr("class", "label branch-label" + a);
601
- i.node().appendChild(h);
602
- const y = h.getBBox();
603
- $.attr("class", "branchLabelBkg label" + a).attr("rx", 4).attr("ry", 4).attr("x", -y.width - 4 - (v?.rotateCommitLabel === !0 ? 30 : 0)).attr("y", -y.height / 2 + 8).attr("width", y.width + 18).attr("height", y.height + 4), i.attr(
604
- "transform",
605
- "translate(" + (-y.width - 14 - (v?.rotateCommitLabel === !0 ? 30 : 0)) + ", " + (d - y.height / 2 - 1) + ")"
606
- ), u === "TB" ? ($.attr("x", d - y.width / 2 - 10).attr("y", 0), i.attr("transform", "translate(" + (d - y.width / 2 - 5) + ", 0)")) : u === "BT" ? ($.attr("x", d - y.width / 2 - 10).attr("y", B), i.attr("transform", "translate(" + (d - y.width / 2 - 5) + ", " + B + ")")) : $.attr("transform", "translate(-19, " + (d - y.height / 2) + ")");
607
- });
608
- }, "drawBranches"), Qr = /* @__PURE__ */ l(function(t, r, s, n, e) {
609
- return b.set(t, { pos: r, index: s }), r += 50 + (e ? 40 : 0) + (u === "TB" || u === "BT" ? n.width / 2 : 0), r;
610
- }, "setBranchPosition"), Zr = /* @__PURE__ */ l(function(t, r, s, n) {
611
- if (Ar(), m.debug("in gitgraph renderer", t + `
612
- `, "id:", r, s), !v)
613
- throw new Error("GitGraph config not found");
614
- const e = v.rotateCommitLabel ?? !1, a = n.db;
615
- R = a.getCommits();
616
- const d = a.getBranchesAsObjArray();
617
- u = a.getDirection();
618
- const o = er(`[id="${r}"]`);
619
- let f = 0;
620
- d.forEach((h, $) => {
621
- const g = W(h.name), i = o.append("g"), y = i.insert("g").attr("class", "branchLabel"), x = y.insert("g").attr("class", "label branch-label");
622
- x.node()?.appendChild(g);
623
- const _ = g.getBBox();
624
- f = Qr(h.name, f, $, _, e), x.remove(), y.remove(), i.remove();
625
- }), D(o, R, !1), v.showBranches && Jr(o, d), Xr(o, R), D(o, R, !0), tr.insertTitle(
626
- o,
627
- "gitTitleText",
628
- v.titleTopMargin ?? 0,
629
- a.getDiagramTitle()
630
- ), ar(
631
- void 0,
632
- o,
633
- v.diagramPadding,
634
- v.useMaxWidth
635
- );
636
- }, "draw"), re = {
637
- draw: Zr
638
- }, ee = /* @__PURE__ */ l((t) => `
639
- .commit-id,
640
- .commit-msg,
641
- .branch-label {
642
- fill: lightgrey;
643
- color: lightgrey;
644
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
645
- font-family: var(--mermaid-font-family);
646
- }
647
- ${[0, 1, 2, 3, 4, 5, 6, 7].map(
648
- (r) => `
649
- .branch-label${r} { fill: ${t["gitBranchLabel" + r]}; }
650
- .commit${r} { stroke: ${t["git" + r]}; fill: ${t["git" + r]}; }
651
- .commit-highlight${r} { stroke: ${t["gitInv" + r]}; fill: ${t["gitInv" + r]}; }
652
- .label${r} { fill: ${t["git" + r]}; }
653
- .arrow${r} { stroke: ${t["git" + r]}; }
654
- `
655
- ).join(`
656
- `)}
657
-
658
- .branch {
659
- stroke-width: 1;
660
- stroke: ${t.lineColor};
661
- stroke-dasharray: 2;
662
- }
663
- .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};}
664
- .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; }
665
- .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}
666
- .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; }
667
- .tag-hole { fill: ${t.textColor}; }
668
-
669
- .commit-merge {
670
- stroke: ${t.primaryColor};
671
- fill: ${t.primaryColor};
672
- }
673
- .commit-reverse {
674
- stroke: ${t.primaryColor};
675
- fill: ${t.primaryColor};
676
- stroke-width: 3;
677
- }
678
- .commit-highlight-outer {
679
- }
680
- .commit-highlight-inner {
681
- stroke: ${t.primaryColor};
682
- fill: ${t.primaryColor};
683
- }
684
-
685
- .arrow { stroke-width: 8; stroke-linecap: round; fill: none}
686
- .gitTitleText {
687
- text-anchor: middle;
688
- font-size: 18px;
689
- fill: ${t.textColor};
690
- }
691
- `, "getStyles"), te = ee, ce = {
692
- parser: Or,
693
- db: S,
694
- renderer: re,
695
- styles: te
696
- };
697
- export {
698
- ce as diagram
699
- };