agentic-mermaid 0.4.1 → 0.5.3

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 (253) hide show
  1. package/AGENT_NATIVE.md +94 -627
  2. package/CHANGELOG.md +651 -0
  3. package/Instructions_for_agents.md +44 -23
  4. package/LICENSES/Khroma-MIT.txt +21 -0
  5. package/LICENSES/Mermaid-MIT.txt +21 -0
  6. package/LICENSES/es-toolkit-MIT.txt +21 -0
  7. package/LICENSES/pele-MIT.txt +40 -0
  8. package/LICENSES/zenuml-core-MIT.txt +21 -0
  9. package/README.md +93 -50
  10. package/SECURITY.md +28 -12
  11. package/THIRD_PARTY_NOTICES.md +60 -0
  12. package/assets/hero.png +0 -0
  13. package/dist/agent-core.d.ts +478 -210
  14. package/dist/agent-core.js +1 -396
  15. package/dist/agent.d.ts +17 -8
  16. package/dist/agent.js +1 -408
  17. package/dist/agentic-mermaid-mcp.js +1 -11
  18. package/dist/am.js +1 -34562
  19. package/dist/browser-lazy/chunks/agentic-producer-core-CC6OOLDW.js +1 -0
  20. package/dist/browser-lazy/chunks/architecture-QUFVKYJR.js +13 -0
  21. package/dist/browser-lazy/chunks/block-6J3Q63BO.js +11 -0
  22. package/dist/browser-lazy/chunks/builtin-backends-7SOZZHPF.js +12 -0
  23. package/dist/browser-lazy/chunks/c4-SQVBZAKJ.js +10 -0
  24. package/dist/browser-lazy/chunks/chunk-2GPK4VFF.js +5 -0
  25. package/dist/browser-lazy/chunks/chunk-2I4UPL7Q.js +3 -0
  26. package/dist/browser-lazy/chunks/chunk-2SH76OTH.js +1 -0
  27. package/dist/browser-lazy/chunks/chunk-2UIA2IME.js +3 -0
  28. package/dist/browser-lazy/chunks/chunk-4LHYF3BS.js +1 -0
  29. package/dist/browser-lazy/chunks/chunk-5B2Z7575.js +1 -0
  30. package/dist/browser-lazy/chunks/chunk-5FQ534HP.js +1 -0
  31. package/dist/browser-lazy/chunks/chunk-5UVGUSD6.js +1 -0
  32. package/dist/browser-lazy/chunks/chunk-5X6MJX3H.js +1 -0
  33. package/dist/browser-lazy/chunks/chunk-AMJLVPUB.js +4 -0
  34. package/dist/browser-lazy/chunks/chunk-BU5LHXNJ.js +3 -0
  35. package/dist/browser-lazy/chunks/chunk-BY2CPG6B.js +1 -0
  36. package/dist/browser-lazy/chunks/chunk-CN7WTBWB.js +1 -0
  37. package/dist/browser-lazy/chunks/chunk-CQE4HQEW.js +1 -0
  38. package/dist/browser-lazy/chunks/chunk-CSFUKSU6.js +1 -0
  39. package/dist/browser-lazy/chunks/chunk-DF6765YX.js +17 -0
  40. package/dist/browser-lazy/chunks/chunk-E2WMJZNM.js +1 -0
  41. package/dist/browser-lazy/chunks/chunk-FAIMVOX5.js +6 -0
  42. package/dist/browser-lazy/chunks/chunk-GVOEAY52.js +1 -0
  43. package/dist/browser-lazy/chunks/chunk-HLWUNUCM.js +1 -0
  44. package/dist/browser-lazy/chunks/chunk-ICC7HBJX.js +1 -0
  45. package/dist/browser-lazy/chunks/chunk-J35HAQQF.js +20 -0
  46. package/dist/browser-lazy/chunks/chunk-J7FFAFQF.js +1 -0
  47. package/dist/browser-lazy/chunks/chunk-LH7HUDKW.js +1 -0
  48. package/dist/browser-lazy/chunks/chunk-N5ELX7LR.js +2 -0
  49. package/dist/browser-lazy/chunks/chunk-NMQQMRIR.js +1 -0
  50. package/dist/browser-lazy/chunks/chunk-NO7ZIVRU.js +1 -0
  51. package/dist/browser-lazy/chunks/chunk-OZ443IVJ.js +16 -0
  52. package/dist/browser-lazy/chunks/chunk-PQGPS2YV.js +7 -0
  53. package/dist/browser-lazy/chunks/chunk-QA6GJQ4X.js +1 -0
  54. package/dist/browser-lazy/chunks/chunk-RIVTHZAQ.js +1 -0
  55. package/dist/browser-lazy/chunks/chunk-SZELX2EJ.js +1 -0
  56. package/dist/browser-lazy/chunks/chunk-TYZOZXUJ.js +22 -0
  57. package/dist/browser-lazy/chunks/chunk-UL6NDWLL.js +1 -0
  58. package/dist/browser-lazy/chunks/chunk-VQYYGAXP.js +1 -0
  59. package/dist/browser-lazy/chunks/chunk-VWVZGQE2.js +1 -0
  60. package/dist/browser-lazy/chunks/chunk-X2UYKWKM.js +4 -0
  61. package/dist/browser-lazy/chunks/chunk-YCEICNM6.js +1 -0
  62. package/dist/browser-lazy/chunks/chunk-Z3FDIVLN.js +20 -0
  63. package/dist/browser-lazy/chunks/class-5QA4SCTS.js +13 -0
  64. package/dist/browser-lazy/chunks/decode-63UIZGD2.js +1 -0
  65. package/dist/browser-lazy/chunks/elk.bundled-L4CADV5W.js +24 -0
  66. package/dist/browser-lazy/chunks/er-7ZSKGN7Y.js +11 -0
  67. package/dist/browser-lazy/chunks/eventmodeling-2BPLHWRN.js +19 -0
  68. package/dist/browser-lazy/chunks/flowchart-NEIMZTB5.js +4 -0
  69. package/dist/browser-lazy/chunks/forest-implementation-AEP24AIP.js +1 -0
  70. package/dist/browser-lazy/chunks/gantt-RDPIFYAF.js +11 -0
  71. package/dist/browser-lazy/chunks/gitgraph-N4Y5RYB7.js +9 -0
  72. package/dist/browser-lazy/chunks/ishikawa-LD3YBDJN.js +6 -0
  73. package/dist/browser-lazy/chunks/journey-6YQR5DJX.js +16 -0
  74. package/dist/browser-lazy/chunks/kanban-PLMJ7NBW.js +20 -0
  75. package/dist/browser-lazy/chunks/mermaid-yaml-runtime-QVYX4EWK.js +136 -0
  76. package/dist/browser-lazy/chunks/mindmap-K2UBFO3Y.js +12 -0
  77. package/dist/browser-lazy/chunks/packet-CUW4QY6Y.js +7 -0
  78. package/dist/browser-lazy/chunks/pie-7F7UUCG3.js +15 -0
  79. package/dist/browser-lazy/chunks/quadrant-TOONO2WC.js +10 -0
  80. package/dist/browser-lazy/chunks/radar-J6JVWVAX.js +16 -0
  81. package/dist/browser-lazy/chunks/render-core-BZOM3K7D.js +3 -0
  82. package/dist/browser-lazy/chunks/requirement-CMAKDJPO.js +19 -0
  83. package/dist/browser-lazy/chunks/sankey-AWXQEP3F.js +13 -0
  84. package/dist/browser-lazy/chunks/sequence-Q2RJRB4L.js +5 -0
  85. package/dist/browser-lazy/chunks/state-WRBFQEDX.js +4 -0
  86. package/dist/browser-lazy/chunks/timeline-D2KILFXM.js +6 -0
  87. package/dist/browser-lazy/chunks/treemap-N3VYX5D4.js +6 -0
  88. package/dist/browser-lazy/chunks/xychart-G73OGK66.js +16 -0
  89. package/dist/browser-lazy/chunks/zenuml-H4BXNYXR.js +16 -0
  90. package/dist/browser-lazy/index.d.ts +544 -275
  91. package/dist/browser-lazy/index.js +1 -1
  92. package/dist/browser.global.js +802 -565
  93. package/dist/chunk-3LGLPG33.js +2 -0
  94. package/dist/chunk-7CRDX2QR.js +2 -0
  95. package/dist/chunk-7PPW2BMO.js +2 -0
  96. package/dist/chunk-DQDKA5ND.js +2 -0
  97. package/dist/chunk-EHCMJUMD.js +52 -0
  98. package/dist/chunk-GVCHLSHH.js +4 -0
  99. package/dist/chunk-H3NCS2XZ.js +19 -0
  100. package/dist/chunk-JZOJ4YGS.js +201 -0
  101. package/dist/chunk-MKE7GNYU.js +146 -0
  102. package/dist/chunk-NKNFOREZ.js +2 -0
  103. package/dist/chunk-O7H2UX5K.js +2 -0
  104. package/dist/chunk-OMY6NRQD.js +58 -0
  105. package/dist/chunk-UA234O4M.js +4 -0
  106. package/dist/chunk-VUFVLGTH.js +2 -0
  107. package/dist/chunk-XU5LPD2D.js +2 -0
  108. package/dist/cli-YGGTJZH7.js +226 -0
  109. package/dist/elk-constructor.js +2 -0
  110. package/dist/elk-constructor.node.js +11 -0
  111. package/dist/index-EeXqJXr5.d.ts +1223 -0
  112. package/dist/index.d.ts +4 -1
  113. package/dist/index.js +1 -334
  114. package/dist/jsonl-RPJY6YWO.js +2 -0
  115. package/dist/mcp-cli-63DYXTVD.js +2 -0
  116. package/dist/{index-BGA_-6LV.d.ts → paint-certification-6rwQjIv_.d.ts} +5283 -6173
  117. package/dist/server-5NEOHOFS.js +524 -0
  118. package/dist/svg-styles-BdnoM7AT.d.ts +724 -0
  119. package/dist/svg-styles.d.ts +1 -0
  120. package/dist/svg-styles.js +2 -0
  121. package/dist/svg.d.ts +13 -0
  122. package/dist/svg.js +2 -0
  123. package/dist/types-BcS52Mjt.d.ts +1360 -0
  124. package/dist/zenuml/chunks/appearance-UOQ5KA6O.js +1 -0
  125. package/dist/zenuml/chunks/builtin-backends-KDKE7YHO.js +12 -0
  126. package/dist/zenuml/chunks/chunk-42DXZ5C6.js +4 -0
  127. package/dist/zenuml/chunks/chunk-7TVYPTDW.js +1 -0
  128. package/dist/zenuml/chunks/chunk-EVPSMEKN.js +1 -0
  129. package/dist/zenuml/chunks/chunk-OXQWRSBM.js +20 -0
  130. package/dist/zenuml/chunks/chunk-QWX77U7G.js +2 -0
  131. package/dist/zenuml/chunks/chunk-RLJEI7YN.js +29 -0
  132. package/dist/zenuml/chunks/chunk-RZ6XK5CD.js +29 -0
  133. package/dist/zenuml/chunks/decode-BWERFDGK.js +1 -0
  134. package/dist/zenuml/chunks/mermaid-yaml-runtime-KZVU74WU.js +136 -0
  135. package/dist/zenuml/chunks/render-core-V5RQ737O.js +3 -0
  136. package/dist/zenuml/chunks/zenuml-EA2ZFRUX.js +20 -0
  137. package/dist/zenuml-frame.global.js +3626 -0
  138. package/dist/zenuml.d.ts +83 -0
  139. package/dist/zenuml.js +1 -0
  140. package/docs/MCP-DIRECTORY-LISTINGS.md +5 -1
  141. package/docs/README.md +59 -103
  142. package/docs/agent-api-cookbook.md +26 -16
  143. package/docs/agent-mutation-policy.md +86 -15
  144. package/docs/agent-workflow-examples.md +1 -1
  145. package/docs/api-advanced.md +385 -0
  146. package/docs/api.md +320 -366
  147. package/docs/ascii.md +40 -4
  148. package/docs/browser.md +46 -7
  149. package/docs/choosing-a-diagram.md +148 -0
  150. package/docs/code-mode-impact.md +1 -0
  151. package/docs/comparison.md +244 -28
  152. package/docs/computational-aesthetics-prototype-plan.md +10 -10
  153. package/docs/config.md +60 -2
  154. package/docs/custom-fonts.md +78 -21
  155. package/docs/diagram-families.md +160 -10
  156. package/docs/eventmodeling-and-zenuml.md +165 -0
  157. package/docs/features.md +21 -19
  158. package/docs/fork-differences.md +105 -32
  159. package/docs/getting-started.md +56 -51
  160. package/docs/layout-certification.md +126 -0
  161. package/docs/mcp-code-mode-rationale.md +20 -12
  162. package/docs/mcp-http-transport.md +14 -8
  163. package/docs/quality.md +145 -15
  164. package/docs/react.md +76 -31
  165. package/docs/style-authoring.md +23 -11
  166. package/docs/svg-semantic-contract.md +104 -4
  167. package/docs/testing-strategy.md +684 -126
  168. package/docs/theming.md +27 -8
  169. package/examples/styles/readme-hero.md +25 -0
  170. package/examples/styles/readme-hero.mmd +13 -0
  171. package/examples/styles/readme-hero.style.json +7 -0
  172. package/package.json +114 -57
  173. package/server.json +2 -2
  174. package/skills/agentic-mermaid-diagram-workflow/SKILL.md +26 -8
  175. package/skills/agentic-mermaid-diagram-workflow/references/cli.md +13 -3
  176. package/skills/agentic-mermaid-diagram-workflow/references/code-mode.md +2 -1
  177. package/skills/agentic-mermaid-diagram-workflow/references/flowchart.md +9 -6
  178. package/skills/agentic-mermaid-diagram-workflow/references/hosted-mcp.md +1 -0
  179. package/skills/agentic-mermaid-diagram-workflow/references/sequence.md +4 -3
  180. package/skills/agentic-mermaid-diagram-workflow/references/timeline.md +7 -6
  181. package/skills/agentic-mermaid-diagram-workflow/references/upstream/agentflow.md +574 -0
  182. package/skills/agentic-mermaid-diagram-workflow/references/upstream/architecture.md +10 -2
  183. package/skills/agentic-mermaid-diagram-workflow/references/upstream/c4.md +18 -0
  184. package/skills/agentic-mermaid-diagram-workflow/references/upstream/classDiagram.md +123 -0
  185. package/skills/agentic-mermaid-diagram-workflow/references/upstream/cynefin.md +6 -1
  186. package/skills/agentic-mermaid-diagram-workflow/references/upstream/entityRelationshipDiagram.md +129 -9
  187. package/skills/agentic-mermaid-diagram-workflow/references/upstream/eventmodeling.md +22 -0
  188. package/skills/agentic-mermaid-diagram-workflow/references/upstream/flowchart.md +188 -60
  189. package/skills/agentic-mermaid-diagram-workflow/references/upstream/gitgraph.md +13 -7
  190. package/skills/agentic-mermaid-diagram-workflow/references/upstream/mindmap.md +110 -1
  191. package/skills/agentic-mermaid-diagram-workflow/references/upstream/packet.md +38 -0
  192. package/skills/agentic-mermaid-diagram-workflow/references/upstream/requirementDiagram.md +115 -0
  193. package/skills/agentic-mermaid-diagram-workflow/references/upstream/sequenceDiagram.md +101 -0
  194. package/skills/agentic-mermaid-diagram-workflow/references/upstream/stateDiagram.md +87 -0
  195. package/skills/agentic-mermaid-diagram-workflow/references/upstream/swimlanes.md +105 -2
  196. package/skills/agentic-mermaid-diagram-workflow/references/upstream/timeline.md +12 -6
  197. package/skills/agentic-mermaid-diagram-workflow/references/upstream/usecase.md +953 -0
  198. package/skills/agentic-mermaid-diagram-workflow/references/upstream/venn.md +77 -0
  199. package/skills/agentic-mermaid-diagram-workflow/references/upstream/xyChart.md +1 -1
  200. package/dist/browser-lazy/chunks/architecture-KTHE2HX3.js +0 -31
  201. package/dist/browser-lazy/chunks/chunk-2XCPFAD5.js +0 -46
  202. package/dist/browser-lazy/chunks/chunk-3H4F7RBT.js +0 -1
  203. package/dist/browser-lazy/chunks/chunk-4EVLW2NJ.js +0 -1
  204. package/dist/browser-lazy/chunks/chunk-5Q4S74UO.js +0 -1
  205. package/dist/browser-lazy/chunks/chunk-6OAPWSDO.js +0 -1
  206. package/dist/browser-lazy/chunks/chunk-A7L4WWVW.js +0 -143
  207. package/dist/browser-lazy/chunks/chunk-C7FJO2I3.js +0 -4
  208. package/dist/browser-lazy/chunks/chunk-D3XXDKIO.js +0 -1
  209. package/dist/browser-lazy/chunks/chunk-DXA5WL7H.js +0 -4
  210. package/dist/browser-lazy/chunks/chunk-EPFMQPXX.js +0 -1
  211. package/dist/browser-lazy/chunks/chunk-FFOHLPDA.js +0 -2
  212. package/dist/browser-lazy/chunks/chunk-FLD63DXE.js +0 -2
  213. package/dist/browser-lazy/chunks/chunk-G6OLSHRG.js +0 -7
  214. package/dist/browser-lazy/chunks/chunk-GRXCKTHX.js +0 -0
  215. package/dist/browser-lazy/chunks/chunk-I6VE56S7.js +0 -1
  216. package/dist/browser-lazy/chunks/chunk-KJVNXJ5Y.js +0 -1
  217. package/dist/browser-lazy/chunks/chunk-L227EPFP.js +0 -11
  218. package/dist/browser-lazy/chunks/chunk-LNIHDJSF.js +0 -1
  219. package/dist/browser-lazy/chunks/chunk-M6BT2HIP.js +0 -1
  220. package/dist/browser-lazy/chunks/chunk-NZRUMODH.js +0 -1
  221. package/dist/browser-lazy/chunks/chunk-OFRMKQA6.js +0 -1
  222. package/dist/browser-lazy/chunks/chunk-P7HMSKHJ.js +0 -1
  223. package/dist/browser-lazy/chunks/chunk-PXKL3O6H.js +0 -1
  224. package/dist/browser-lazy/chunks/chunk-PZEWZT35.js +0 -1
  225. package/dist/browser-lazy/chunks/chunk-STQRDZ67.js +0 -1
  226. package/dist/browser-lazy/chunks/chunk-SUFMSWTX.js +0 -1
  227. package/dist/browser-lazy/chunks/chunk-T7IJ6V4B.js +0 -3
  228. package/dist/browser-lazy/chunks/chunk-UAEZO5VL.js +0 -1
  229. package/dist/browser-lazy/chunks/chunk-WEUWIFG3.js +0 -1
  230. package/dist/browser-lazy/chunks/chunk-X64T74C5.js +0 -24
  231. package/dist/browser-lazy/chunks/class-F7R6TJ73.js +0 -9
  232. package/dist/browser-lazy/chunks/er-BDK7CM5L.js +0 -9
  233. package/dist/browser-lazy/chunks/flowchart-KFU6XV7S.js +0 -4
  234. package/dist/browser-lazy/chunks/gantt-I64VVDSP.js +0 -28
  235. package/dist/browser-lazy/chunks/gitgraph-EDUVJ5IJ.js +0 -8
  236. package/dist/browser-lazy/chunks/journey-TLO2RNM3.js +0 -40
  237. package/dist/browser-lazy/chunks/mindmap-OJCNDYPM.js +0 -9
  238. package/dist/browser-lazy/chunks/pie-HVG6XO7K.js +0 -19
  239. package/dist/browser-lazy/chunks/quadrant-U6S2L4MJ.js +0 -24
  240. package/dist/browser-lazy/chunks/radar-ZDLOBTVG.js +0 -32
  241. package/dist/browser-lazy/chunks/render-core-Y2DFNMQG.js +0 -12
  242. package/dist/browser-lazy/chunks/sequence-Z4WFS3VB.js +0 -12
  243. package/dist/browser-lazy/chunks/state-2HV2YGN3.js +0 -4
  244. package/dist/browser-lazy/chunks/timeline-XM4UFPOC.js +0 -20
  245. package/dist/browser-lazy/chunks/xychart-7JDHWTQY.js +0 -36
  246. package/dist/chunk-GGXCNCNA.js +0 -4118
  247. package/dist/chunk-IVD4NXNE.js +0 -615
  248. package/dist/chunk-JDMRPUAG.js +0 -37
  249. package/dist/chunk-JWAAW3FH.js +0 -149
  250. package/dist/chunk-LCGBT32P.js +0 -62036
  251. package/dist/chunk-RWMZRUIC.js +0 -4715
  252. package/dist/mcp-cli-4MLKC3ZH.js +0 -17
  253. package/docs/mutation-testing.md +0 -285
@@ -1,12 +0,0 @@
1
- import{c as Ye,d as Fe}from"./chunk-A7L4WWVW.js";import{f as Ze}from"./chunk-NZRUMODH.js";import"./chunk-KJVNXJ5Y.js";import{e as xe}from"./chunk-LNIHDJSF.js";import"./chunk-FFOHLPDA.js";import{a as it}from"./chunk-I6VE56S7.js";import{a as rt}from"./chunk-OFRMKQA6.js";import{b as Ne,e as Be}from"./chunk-FLD63DXE.js";import{a as J,c as fe,d as ue,e as ee,g as _e,j as A,k as me}from"./chunk-UAEZO5VL.js";import{a as Xe,b as Oe,c as Ge}from"./chunk-EPFMQPXX.js";import{G as Ke,H as Qe,I as Je,L as G,N as Ve,O as b,P as Z,i as ae,ia as V,j as Le,ja as se,ka as U,l as Ue,la as ce,m as We,na as et,oa as tt,pa as oe,qa as ot,t as je,xa as nt}from"./chunk-2XCPFAD5.js";import"./chunk-P7HMSKHJ.js";var Lt=Object.freeze({id:"sequence",upstreamId:"sequence",maturity:"stable",label:"Sequence",headers:["sequenceDiagram"],aliases:[],config:{section:"sequence",keys:["actorMargin","width","height","diagramMarginX","diagramMarginY","messageMargin","noteMargin","activationWidth","showSequenceNumbers","boxMargin","boxTextMargin","messageAlign","mirrorActors","bottomMarginAdj","rightAngles","wrap","wrapPadding","labelBoxWidth","labelBoxHeight","hideUnusedParticipants","forceMenus","arrowMarkerAbsolute","noteAlign","actorFontSize","actorFontFamily","actorFontWeight","noteFontSize","noteFontFamily","noteFontWeight","messageFontSize","messageFontFamily","messageFontWeight","useMaxWidth","useWidth"],noopKeys:["actorFontFamily","actorFontSize","actorFontWeight","arrowMarkerAbsolute","bottomMarginAdj","boxMargin","boxTextMargin","forceMenus","hideUnusedParticipants","labelBoxHeight","labelBoxWidth","messageAlign","messageFontFamily","messageFontSize","messageFontWeight","mirrorActors","noteAlign","noteFontFamily","noteFontSize","noteFontWeight","rightAngles","useMaxWidth","useWidth","wrap","wrapPadding"]},identity:{id:"family:sequence",kind:"family",version:"1.0.0",compatibility:{core:"^0.4.0"},provenance:{owner:"agentic-mermaid",source:"built-in"}},collisionPriority:100,semanticChannels:["category"],semanticRoles:["prelude","defs","chrome","actor","lifeline","activation","message","block","group","note","label","icon"],scenePrimitiveEvidence:[{role:"prelude",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"defs",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"defs",primitive:"marker",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"actor",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"actor",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"lifeline",primitive:"connector",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"activation",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"message",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"message",primitive:"connector",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"block",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"block",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"block",primitive:"connector",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"note",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"note",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"label",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"icon",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"icon",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"icon",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]}],example:`sequenceDiagram
2
- participant U as User
3
- participant S as Server
4
- U->>S: request
5
- S-->>U: response`,detect:e=>/^sequencediagram\s*$/.test(e),detectLoose:e=>/^sequencediagram(?:\s|$)/.test(e)}),at=Lt;var st=["actorMargin","width","height","diagramMarginX","diagramMarginY","messageMargin","noteMargin","activationWidth"],jt=[...st,"showSequenceNumbers"];function ct(e){if(!e||!Ye(e,["sequence"]))return{};let t={};for(let i of st){let n=Fe(e,["sequence",i]);typeof n=="number"&&Number.isFinite(n)&&n>=0&&(t[i]=n)}return Fe(e,["sequence","showSequenceNumbers"])===!0&&(t.showSequenceNumbers=!0),t}function lt(e){let t=e.toLowerCase();return t==="transparent"||t in Le||/^#[0-9a-fA-F]{3,8}$/.test(e)?!0:/^(?:rgb|rgba|hsl|hsla)\([^)]*\)$/i.test(e)}function dt(e){let t=Le[e.toLowerCase()];if(t)return t;let r=Ue(e);if(r)return We(r[0],r[1],r[2]);let i=e.match(/^rgba?\(\s*(\d{1,3})\s*[, ]\s*(\d{1,3})\s*[, ]\s*(\d{1,3})/i);return i?We(Math.min(255,Number.parseInt(i[1],10)),Math.min(255,Number.parseInt(i[2],10)),Math.min(255,Number.parseInt(i[3],10))):null}var Wt=/^(\S+?)(\(\))?\s*(<<-->>|<<->>|-->>|->>|--x|-x|--\)|-\)|-->|->|--[|\\/]|-[|\\/]|[|\\/]--|[|\\/]-)\s*(\(\))?([+-]?)(\S+?)\s*:\s*(.+)$/;function Ct(e){let t=e.match(Wt);return!t||!qt(t[3])?null:{from:t[1],arrow:t[3],activationMark:t[5]||void 0,to:t[6],label:t[7],centralStart:!!t[2],centralEnd:!!t[4]}}function gt(e,t={}){let r=Ne(e);e=r.familyLines;let i={actors:[],messages:[],blocks:[],notes:[],activationEvents:[],boxes:[],...r.accessibility.title!==void 0?{accessibilityTitle:G(r.accessibility.title)}:{},...r.accessibility.descr!==void 0?{accessibilityDescription:G(r.accessibility.descr)}:{}},n=new Set,s=[],c=null,d=t.showSequenceNumbers===!0?{next:1,step:1}:null,f=[],M=[],k=(u,x,w,C,q,E=!1,R=!1)=>{le(i,n,u),le(i,n,C);let D=Rt(x),L={from:u,to:C,label:G(q.trim()),lineStyle:D.lineStyle,startHead:D.startHead,endHead:D.endHead,centralStart:E,centralEnd:R};w==="+"&&(L.activate=!0),w==="-"&&(L.deactivate=!0),d&&(L.number=d.next,d.next=Math.round((d.next+d.step)*100)/100),pt(f,$=>$===C,i,$=>{$.createMessageIndex=i.messages.length}),pt(M,$=>$===u||$===C,i,$=>{$.destroyMessageIndex=i.messages.length}),i.messages.push(L)};for(let u=1;u<e.length;u++){let x=e[u],w=zt(x);if(w){let{id:h,label:y,type:T}=w;n.has(h)||(n.add(h),i.actors.push({id:h,label:y,type:T})),c&&!c.actorIds.includes(h)&&c.actorIds.push(h);continue}let C=Ht(x);if(C){le(i,n,C.actorId);let h=i.actors.find(y=>y.id===C.actorId);h.links={...h.links,...C.links};continue}let q=x.match(/^autonumber(?:\s+(.*))?$/i);if(q){let h=q[1]?.trim()??"";if(/^off$/i.test(h))d=null;else{let y=h.match(/^(\d+(?:\.\d+)?)(?:\s+(\d+(?:\.\d+)?))?$/);d={next:y?Number.parseFloat(y[1]):1,step:y?.[2]!==void 0?Number.parseFloat(y[2]):1}}continue}let E=x.match(/^box(?:\s+(.*))?$/i);if(E){let h=E[1]?.trim()??"",y={actorIds:[]},T=h.match(/^((?:rgb|rgba|hsl|hsla)\([^)]*\))\s*(.*)$/i),m=h;if(T)y.color=T[1],m=T[2]?.trim()??"";else{let p=h.split(/\s+/,1)[0]??"";p&&lt(p)&&(y.color=p,m=h.slice(p.length).trim())}m&&(y.label=G(m)),i.boxes.push(y),c=y;continue}let R=x.match(/^create\s+(participant|actor)\s+(\S+?)(?:\s+as\s+(.+))?$/i);if(R){let h=R[1].toLowerCase(),y=R[2],T=G(R[3]?.trim()??y);n.has(y)||(n.add(y),i.actors.push({id:y,label:T,type:h})),f.push(y);continue}let D=x.match(/^destroy\s+(\S+)$/i);if(D){M.push(D[1]);continue}let L=x.match(/^Note\s+(left of|right of|over)\s+([^:]+):\s*(.+)$/i);if(L){let h=L[1].toLowerCase(),y=L[2].trim(),T=G(L[3].trim()),m=y.split(",").map(F=>F.trim());for(let F of m)le(i,n,F);let p="over";h==="left of"?p="left":h==="right of"&&(p="right"),i.notes.push({actorIds:m,text:T,position:p,afterIndex:i.messages.length-1});continue}let $=x.match(/^(loop|alt|opt|par|critical|break|rect)\s*(.*)$/);if($){let h=$[1],y=$[2]?.trim()??"",T=G(y);s.push({type:h,label:T,startIndex:i.messages.length,dividers:[]});continue}let Y=x.match(/^(else|and)\s*(.*)$/);if(Y&&s.length>0){let h=Y[2]?.trim()??"",y=G(h);s[s.length-1].dividers.push({index:i.messages.length,label:y});continue}if(x==="end"&&s.length>0){let h=s.pop();i.blocks.push({type:h.type,label:h.label,startIndex:h.startIndex,endIndex:Math.max(i.messages.length-1,h.startIndex),dividers:h.dividers});continue}if(x==="end"&&c){c=null;continue}let l=Ct(x);if(l){k(l.from,l.arrow,l.activationMark,l.to,l.label,l.centralStart,l.centralEnd);continue}let v=x.match(/^(activate|deactivate)\s+(\S+)$/i);if(v){let h=v[2];le(i,n,h),i.activationEvents.push({actorId:h,kind:v[1].toLowerCase(),messageIndex:i.messages.length});continue}}return i}var Tt=new Set(["participant","actor","boundary","control","entity","database","collections","queue"]);function zt(e){let t=e.match(/^(participant|actor)\s+([^\s@]+)@\{([\s\S]+)\}(?:\s+as\s+(.+))?$/i);if(t){let n=t[1].toLowerCase(),s=t[2],c={};try{c=JSON.parse(`{${t[3]}}`)}catch{let k=t[3].replace(/(^|[,{])(\s*)([A-Za-z][\w-]*)\s*:/g,'$1$2"$3":').replace(/'([^'\\]*(?:\\.[^'\\]*)*)'/g,(u,x)=>JSON.stringify(x.replace(/\\'/g,"'")));try{c=JSON.parse(`{${k}}`)}catch{return null}}let d=typeof c.type=="string"?c.type.toLowerCase():n;if(!Tt.has(d))throw new Error(`Unknown sequence actor type '${d}'`);let f=d,M=t[4]?.trim()??(typeof c.alias=="string"?c.alias:void 0);return{id:s,label:G(M??s),type:f}}let r=e.match(/^(participant|actor)\s+(\S+?)(?:\s+as\s+(.+))?$/i);if(!r)return null;let i=r[2];return{id:i,label:G(r[3]?.trim()??i),type:r[1].toLowerCase()}}function Ht(e){let t=e.match(/^link\s+(\S+)\s*:\s*(.+?)\s*@\s*(\S+)$/i);if(t)return/^(?:https?:|mailto:)/i.test(t[3])?{actorId:t[1],links:{[t[2].trim()]:t[3]}}:null;let r=e.match(/^links\s+(\S+)\s*:\s*(\{.*\})$/i);if(!r)return null;try{let i=JSON.parse(r[2]),n={};for(let[s,c]of Object.entries(i))typeof c=="string"&&/^(?:https?:|mailto:)/i.test(c)&&(n[s]=c);return Object.keys(n).length>0?{actorId:r[1],links:n}:null}catch{return null}}function qt(e){return/^(?:<<-+>>|-+>>?|-+[)x]|-+[|\\/]|[|\\/]-+)$/.test(e)}function Rt(e){let t=e.includes("--")?"dashed":"solid";return/^<<-+>>$/.test(e)?{lineStyle:t,startHead:"filled",endHead:"filled"}:e.endsWith("x")?{lineStyle:t,startHead:"none",endHead:"cross"}:e.endsWith(")")?{lineStyle:t,startHead:"none",endHead:"open"}:/^-+>>$/.test(e)?{lineStyle:t,startHead:"none",endHead:"filled"}:/^-+>$/.test(e)?{lineStyle:t,startHead:"none",endHead:"none"}:/^[|\\/]-+$/.test(e)?{lineStyle:t,startHead:e.startsWith("/")?"half-bottom":"half-top",endHead:"none"}:/^-+[|\\/]$/.test(e)?{lineStyle:t,startHead:"none",endHead:e.endsWith("/")?"half-bottom":"half-top"}:{lineStyle:t,startHead:"none",endHead:"open"}}function le(e,t,r){t.has(r)||(t.add(r),e.actors.push({id:r,label:r,type:"participant"}))}function pt(e,t,r,i){for(let n=e.length-1;n>=0;n--){let s=e[n];if(!t(s))continue;let c=r.actors.find(d=>d.id===s);c&&i(c),e.splice(n,1)}}function Ce(e){return e.number!==void 0?`${e.number}. ${e.label}`:e.label}var z={padding:30,actorGap:140,actorHeight:40,actorPadX:16,headerGap:26,messageRowHeight:40,selfMessageHeight:30,activationWidth:10,blockPadX:10,blockPadTop:40,blockPadBottom:8,blockHeaderExtra:28,dividerExtra:24,noteWidth:60,notePadX:12,notePadY:6,noteGap:10,boxPadX:8,boxTitleSpace:22,boxPadBottom:8},ne={nodeLabelFontSize:fe.nodeLabel,edgeLabelFontSize:fe.edgeLabel,groupHeaderFontSize:fe.edgeLabel,nodeLabelFontWeight:ue.nodeLabel,edgeLabelFontWeight:ue.edgeLabel,groupHeaderFontWeight:ue.groupHeader,nodePaddingX:z.actorPadX,nodePaddingY:z.notePadY,nodeCornerRadius:4,nodeLineWidth:ee.outerBox,edgeLineWidth:ee.connector,groupCornerRadius:0,groupPaddingX:z.blockPadX,groupPaddingY:8,groupLabelPaddingX:6,groupLineWidth:ee.outerBox};function ht(e,t={},r={},i){let n=me(t,ne,i),s=r.diagramMarginX??z.padding,c=r.diagramMarginY??z.padding,d=r.width??80,f=r.noteMargin??z.noteGap,M=r.activationWidth??z.activationWidth,k=e.actors.map(o=>xe(i,"actor",{category:o.id},{includeFallback:!1})),u=Math.max(r.height??z.actorHeight,...k.map(o=>ae("Mg",o?.fontSize??n.nodeLabelFontSize,o?.fontWeight??n.nodeLabelFontWeight).height+(o?.paddingY??n.nodePaddingY)*2)),x=ae("Mg",ne.edgeLabelFontSize,ne.edgeLabelFontWeight).height,w=ae("Mg",n.edgeLabelFontSize,n.edgeLabelFontWeight).height,C=r.messageMargin??z.messageRowHeight,q=Math.max(C,C+w-x),E=Math.max(z.selfMessageHeight,q-10),R=Math.max(z.blockPadTop,z.blockPadTop+(n.groupHeaderFontSize-ne.groupHeaderFontSize)+(n.groupPaddingY-ne.groupPaddingY)*2),D=Math.max(z.blockHeaderExtra,R+n.groupPaddingY+20-q);if(e.actors.length===0)return{width:0,height:0,accessibilityTitle:e.accessibilityTitle,accessibilityDescription:e.accessibilityDescription,actors:[],lifelines:[],messages:[],activations:[],blocks:[],notes:[],boxes:[],destructions:[]};let L=e.actors.map((o,a)=>{let g=k[a],_=g?.textTransform??n.nodeTextTransform,H=g?.fontSize??n.nodeLabelFontSize,S=g?.fontWeight??n.nodeLabelFontWeight,P=g?.paddingX??n.nodePaddingX,O=A(o.label,_),Q=g?.letterSpacing??n.nodeLetterSpacing,B=Math.max(0,[...O].length-1)*Q,te=J(O,H,S)+B;return Math.max(te+P*2,d)}),$=new Map;for(let o=0;o<e.actors.length;o++)$.set(e.actors[o].id,o);let Y=Array.from({length:Math.max(0,e.actors.length-1)},()=>0);for(let o of e.messages){let a=$.get(o.from),g=$.get(o.to);if(a===void 0||g===void 0||a===g)continue;let _=Math.min(a,g),H=Math.max(a,g),S=H-_,P=A(Ce(o),n.edgeTextTransform),O=Math.max(0,[...P].length-1)*n.edgeLetterSpacing,Q=(J(P,n.edgeLabelFontSize,n.edgeLabelFontWeight)+O+16)/S;for(let B=_;B<H;B++)Y[B]=Math.max(Y[B],Q)}let l=[],v=s+L[0]/2;for(let o=0;o<e.actors.length;o++){if(o>0){let a=(L[o-1]+L[o])/2,g=r.actorMargin!==void 0?a+r.actorMargin:Math.max(z.actorGap,a+40);v+=Math.max(g,Y[o-1]??0)}l.push(v)}let h=(e.boxes??[]).filter(o=>o.actorIds.some(a=>$.has(a))),y=c+(h.length>0?z.boxTitleSpace+6:0),T=e.actors.map((o,a)=>({id:o.id,label:o.label,type:o.type,...o.links?{links:{...o.links}}:{},x:l[a],y,width:L[a],height:u})),m=y+u+z.headerGap,p=[],F=new Map;for(let o of e.blocks){let a=F.get(o.startIndex)??0;F.set(o.startIndex,Math.max(a,D));for(let g of o.dividers){let _=F.get(g.index)??0;F.set(g.index,Math.max(_,z.dividerExtra))}}let W=new Map,ie=new Map,de=new Map;for(let o=0;o<e.actors.length;o++){let a=e.actors[o];if(a.createMessageIndex!==void 0&&a.createMessageIndex<e.messages.length){let g=W.get(a.createMessageIndex)??[];g.push(o),W.set(a.createMessageIndex,g);let _=F.get(a.createMessageIndex)??0;F.set(a.createMessageIndex,Math.max(_,u/2+8))}if(a.destroyMessageIndex!==void 0&&a.destroyMessageIndex<e.messages.length){let g=ie.get(a.destroyMessageIndex)??[];g.push(a.id),ie.set(a.destroyMessageIndex,g)}}let pe=new Map;for(let o of e.notes){let a=pe.get(o.afterIndex)??[];a.push(o),pe.set(o.afterIndex,a)}let be=[],ge=new Map,ye=[],bt=4,$e=new Map;for(let o of e.activationEvents??[]){let a=$e.get(o.messageIndex)??[];a.push(o),$e.set(o.messageIndex,a)}let Te=(o,a)=>{let g=ge.get(o)??[];g.push({startY:a,depth:g.length}),ge.set(o,g)},Se=(o,a)=>{let g=ge.get(o);if(!g||g.length===0)return;let{startY:_,depth:H}=g.pop(),S=$.get(o);S===void 0||a<=_||ye.push({actorId:o,x:l[S]-M/2+H*bt,topY:_,bottomY:a,width:M})},ze=(o,a)=>{for(let g of $e.get(o)??[])g.kind==="activate"?Te(g.actorId,a):Se(g.actorId,a)},He=(o,a)=>{let g=A(o.text,n.nodeTextTransform),_=Math.max(z.noteWidth,J(g,n.nodeLabelFontSize,n.nodeLabelFontWeight)+n.nodePaddingX*2),H=ae(g,n.nodeLabelFontSize,n.nodeLabelFontWeight).height+n.nodePaddingY*2,S=$.get(o.actorIds[0]??"")??0,P;if(o.position==="left")P=l[S]-L[S]/2-_-f;else if(o.position==="right")P=l[S]+L[S]/2+f;else if(o.actorIds.length>1){let O=$.get(o.actorIds[o.actorIds.length-1]??"")??S;P=(l[S]+l[O])/2-_/2}else P=l[S]-_/2;return{text:o.text,x:P,y:a,width:_,height:H,position:o.position,actors:o.actorIds}},ke=pe.get(-1);if(ke&&ke.length>0){let o=m;for(let a of ke){let g=He(a,o);be.push(g),o+=g.height+4}m=Math.max(m,o+q/2)}for(let o=0;o<e.messages.length;o++){let a=e.messages[o],g=$.get(a.from)??0,_=$.get(a.to)??0,H=a.from===a.to,S=F.get(o)??0;S>0&&(m+=S),ze(o,m);let P=l[g],O=l[_];p.push({from:a.from,to:a.to,label:Ce(a),lineStyle:a.lineStyle,startHead:a.startHead,endHead:a.endHead,centralStart:a.centralStart??!1,centralEnd:a.centralEnd??!1,x1:P,x2:O,y:m,isSelf:H});let Q=ie.get(o);if(Q)for(let te of Q)de.set(te,m);a.activate&&Te(a.to,m),a.deactivate&&Se(a.from,m),m+=H?E+q:q,W.has(o)&&(m+=u/2);let B=pe.get(o);if(B&&B.length>0){let te=H?E:0,I=p[o].y+te+14;for(let N of B){let he=He(N,I);be.push(he),I+=he.height+4}m=Math.max(m,I+q/2)}}let qe=Math.max(p[p.length-1]?.y??m,m-q/2);ze(e.messages.length,qe);for(let[o,a]of ge)for(;a.length>0;)Se(o,qe);for(let[o,a]of W){let g=p[o]?.y;if(g!==void 0)for(let _ of a)T[_].y=g-u/2}let ve=e.blocks.map(o=>{let a=p[o.startIndex],g=p[o.endIndex],_=(a?.y??m)-R,H=(g?.y??m)+n.groupPaddingY+12,S=new Set;for(let I=o.startIndex;I<=o.endIndex;I++){let N=e.messages[I];N&&(S.add($.get(N.from)??0),S.add($.get(N.to)??0))}if(S.size===0)for(let I=0;I<e.actors.length;I++)S.add(I);let P=Math.min(...S),O=Math.max(...S),Q=l[P]-L[P]/2-n.groupPaddingX,B=l[O]+L[O]/2+n.groupPaddingX,te=o.dividers.map(I=>{let N=p[I.index],he=N?.y??m,Ie=28;if(I.label&&N?.label){let Mt=A(`[${I.label}]`,n.edgeTextTransform),wt=J(Mt,n.edgeLabelFontSize,n.edgeLabelFontWeight),Pe=Q+8,Ft=Pe+wt,Ae=J(A(N.label,n.edgeTextTransform),n.edgeLabelFontSize,n.edgeLabelFontWeight),De=N.isSelf?N.x1+36:(N.x1+N.x2)/2-Ae/2,_t=De+Ae,Ee=8;Ft+Ee>De&&Pe-Ee<_t&&(Ie=Math.max(36,Math.ceil(24+w)))}return{y:he-Ie,label:I.label}});return{type:o.type,label:o.label,x:Q,y:_,width:B-Q,height:H-_,dividers:te}}),Me=be,yt=m,we=h.map(o=>{let a=o.actorIds.map(S=>$.get(S)).filter(S=>S!==void 0),g=Math.min(...a.map(S=>l[S]-L[S]/2))-z.boxPadX,_=Math.max(...a.map(S=>l[S]+L[S]/2))+z.boxPadX;if(o.label){let S=J(A(o.label,n.groupTextTransform),n.groupHeaderFontSize,n.groupHeaderFontWeight);_=Math.max(_,g+S+z.boxPadX*2)}let H=c;return{label:o.label,color:o.color,x:g,y:H,width:_-g,height:yt+z.boxPadBottom-H}}),Re=m+c,j=s,X=0;for(let o of T)j=Math.min(j,o.x-o.width/2),X=Math.max(X,o.x+o.width/2);for(let o of ve)j=Math.min(j,o.x),X=Math.max(X,o.x+o.width);for(let o of Me)j=Math.min(j,o.x),X=Math.max(X,o.x+o.width);for(let o of we)j=Math.min(j,o.x),X=Math.max(X,o.x+o.width);for(let o of p)if(o.isSelf&&o.label){let _=o.x1+30+8,H=J(A(o.label,n.edgeTextTransform),n.edgeLabelFontSize,n.edgeLabelFontWeight);X=Math.max(X,_+H+8)}let K=j<s?s-j:0;if(K>0){for(let o of T)o.x+=K;for(let o of p)o.x1+=K,o.x2+=K;for(let o of ye)o.x+=K;for(let o of ve)o.x+=K;for(let o of Me)o.x+=K;for(let o of we)o.x+=K;for(let o=0;o<l.length;o++)l[o]+=K}let $t=e.actors.map((o,a)=>({actorId:o.id,x:l[a],topY:T[a].y+u,bottomY:de.get(o.id)??Re-c})),St=e.actors.filter(o=>de.has(o.id)).map(o=>({actorId:o.id,x:l[$.get(o.id)],y:de.get(o.id)})),kt=X+K+s,vt=Re;return{width:Math.max(kt,200),height:Math.max(vt,100),accessibilityTitle:e.accessibilityTitle,accessibilityDescription:e.accessibilityDescription,actors:T,lifelines:$t,messages:p,activations:ye,blocks:ve,notes:Me,boxes:we,destructions:St}}function mt(e){let{positioned:t,colors:r,resolved:i}=e,n=i.renderOptions,s=r.font??"Inter",c=n.transparent??!1,d=[],f=me(n,ne,i.styleFace),M=`seq-${it(t.width,t.height,t.actors.length,t.messages.length)}`,k=`${M}-title`,u=`${M}-desc`,x=rt(t.accessibilityTitle,t.accessibilityDescription,k,u);d.push(ot({id:"prelude",width:t.width,height:t.height,colors:r,transparent:c,font:s,hasMonoFont:!1},Je(t.width,t.height,r,c,x)+`
6
- `+Qe(s,!1,r.shadow,r.embedFontImport)));let w=[];w.push("<defs>");let C=xt(f);w.push(nt(C));let q=Ke(r);q&&w.push(q),w.push("</defs>"),d.push(et({id:"defs",markerResources:C},w.join(`
7
- `))),t.accessibilityTitle&&d.push(ce({id:"a11y-title",role:"chrome"},`<title id="${k}">${ut(t.accessibilityTitle)}</title>`)),t.accessibilityDescription&&d.push(ce({id:"a11y-desc",role:"chrome"},`<desc id="${u}">${ut(t.accessibilityDescription)}</desc>`));let E=new Map;for(let l of t.boxes){let v=l.label??"",h=E.get(v)??0;E.set(v,h+1),d.push(Bt(l,f,`box:${v}#${h}`))}let R=new Map;for(let l of t.blocks){let v=R.get(l.type)??0;R.set(l.type,v+1),d.push(Et(l,f,`block:${l.type}#${v}`))}for(let l of t.lifelines)d.push(Pt(l,f));let D=new Map;for(let l of t.blocks){let v=D.get(l.type)??0;D.set(l.type,v+1),d.push(Nt(l,f,`block:${l.type}#${v}`))}let L=new Map;for(let l of t.activations){let v=L.get(l.actorId)??0;L.set(l.actorId,v+1),d.push(At(l,f,`activation:${l.actorId}#${v}`))}let $=new Map;for(let l of t.messages){let v=`${l.from}->${l.to}`,h=$.get(v)??0;$.set(v,h+1),d.push(Dt(l,f,`message:${v}#${h}`))}let Y=new Map;for(let l of t.notes){let v=`${(l.actors??[]).join(",")}@${l.position??"over"}`,h=Y.get(v)??0;Y.set(v,h+1),d.push(Ot(l,f,`note:${v}#${h}`))}for(let l of t.destructions)d.push(Xt(l,f));for(let l of t.actors)d.push(It(l,f,i.styleFace,n.security!=="strict"));return d.push(tt()),{family:"sequence",width:t.width,height:t.height,colors:r,transparent:c,parts:d}}function xt(e){let t=_e.width,r=_e.height,i=e.edgeStrokeColor??"var(--_arrow)",n={size:{width:t,height:r},orient:"auto-start-reverse"},s=[{x:0,y:0},{x:t,y:r/2},{x:0,y:r}];return[{...n,id:"seq-arrow",shape:"arrow",ref:{x:t,y:r/2},geometry:{kind:"polygon",points:s},paint:{fill:i}},{...n,id:"seq-arrow-open",shape:"open-arrow",ref:{x:t,y:r/2},geometry:{kind:"polyline",points:s},paint:{fill:"none",stroke:i,strokeWidth:"1"}},{...n,id:"seq-arrow-cross",shape:"cross",ref:{x:t/2,y:r/2},orient:"auto",geometry:{kind:"path",d:`M1 1 L${t-1} ${r-1} M1 ${r-1} L${t-1} 1`},paint:{fill:"none",stroke:i,strokeWidth:"1.5"}},{...n,id:"seq-arrow-half-top",shape:"open-arrow",ref:{x:t,y:r/2},geometry:{kind:"path",d:`M0 0 L${t} ${r/2}`},paint:{fill:"none",stroke:i,strokeWidth:"1"}},{...n,id:"seq-arrow-half-bottom",shape:"open-arrow",ref:{x:t,y:r/2},geometry:{kind:"path",d:`M0 ${r} L${t} ${r/2}`},paint:{fill:"none",stroke:i,strokeWidth:"1"}}]}function ft(e,t){if(t==="none")return;let r=t==="filled"?"seq-arrow":t==="cross"?"seq-arrow-cross":t==="half-top"?"seq-arrow-half-top":t==="half-bottom"?"seq-arrow-half-bottom":"seq-arrow-open";return xt(e).find(i=>i.id===r)}function It(e,t,r,i){let{id:n,x:s,y:c,width:d,height:f,label:M,type:k}=e,u=[],x=xe(r,"actor",{category:n},{includeFallback:!1}),w=x?.fontSize??t.nodeLabelFontSize,C=x?.fontWeight??t.nodeLabelFontWeight,q=x?.letterSpacing??t.nodeLetterSpacing,E=x?.textTransform??t.nodeTextTransform,R=x?.lineWidth??t.nodeLineWidth,D=x?.fillColor??t.nodeFillColor??"var(--_node-fill)",L=x?.borderColor??t.nodeBorderColor??"var(--_node-stroke)",$=x?.textColor??t.nodeTextColor??"var(--_text)",Y=i&&e.links?` data-links="${b(JSON.stringify(e.links))}" role="link" tabindex="0"`:"",l=`<g class="actor" data-id="${b(n)}" data-label="${b(M)}" data-type="${k}"${Y}>`,v=A(M,E),h=`font-size="${w}" text-anchor="middle" font-weight="${C}"${re(q)} fill="${b($)}"`;if(k==="actor"){let y=f/24*.9,T=s-12*y,m=c+(f-24*y)/2,p=R/y,F=b(x?.borderColor??t.edgeStrokeColor??"var(--_line)");u.push({indent:2,node:ce({id:`actor:${n}:icon`,role:"icon",channels:{category:n}},`<g transform="translate(${T},${m}) scale(${y})">
8
- <path d="M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z" fill="none" stroke="${F}" stroke-width="${p}" />
9
- <path d="M15 10C15 11.6569 13.6569 13 12 13C10.3431 13 9 11.6569 9 10C9 8.34315 10.3431 7 12 7C13.6569 7 15 8.34315 15 10Z" fill="none" stroke="${F}" stroke-width="${p}" />
10
- <path d="M5.62842 18.3563C7.08963 17.0398 9.39997 16 12 16C14.6 16 16.9104 17.0398 18.3716 18.3563" fill="none" stroke="${F}" stroke-width="${p}" />
11
- </g>`)}),u.push({indent:2,node:U({id:`actor:${n}:label`,role:"label",text:v,x:s,y:c+f+14,fontSize:w,anchor:"middle",paint:{fill:$},channels:{category:n}},Z(v,s,c+f+14,w,h))})}else if(k!=="participant"){let y=b(x?.borderColor??t.edgeStrokeColor??"var(--_line)"),T=b(D),m=s-d/2,p=c+2,F=d,W=Math.max(24,f-4),ie=k==="database"?`<ellipse cx="${s}" cy="${p+5}" rx="${F/2}" ry="5"/><path d="M${m} ${p+5}V${p+W-5}A${F/2} 5 0 0 0 ${m+F} ${p+W-5}V${p+5}"/><ellipse cx="${s}" cy="${p+W-5}" rx="${F/2}" ry="5"/>`:k==="collections"?`<rect x="${m+6}" y="${p}" width="${F-6}" height="${W-6}"/><rect x="${m}" y="${p+6}" width="${F-6}" height="${W-6}"/>`:k==="queue"?`<rect x="${m}" y="${p}" width="${F}" height="${W}" rx="${W/2}"/><line x1="${m+8}" y1="${p+W/2}" x2="${m+F-8}" y2="${p+W/2}"/>`:k==="entity"?`<circle cx="${s}" cy="${p+W/2-3}" r="${Math.min(F,W)/2-3}"/><line x1="${m+5}" y1="${p+W}" x2="${m+F-5}" y2="${p+W}"/>`:k==="boundary"?`<circle cx="${s+3}" cy="${p+W/2}" r="${Math.min(F,W)/2-3}"/><line x1="${m+3}" y1="${p+2}" x2="${m+3}" y2="${p+W-2}"/>`:k==="control"?`<circle cx="${s}" cy="${p+W/2}" r="${Math.min(F,W)/2-3}"/><path d="M${s-4} ${p+4}L${s+4} ${p}L${s+2} ${p+8}"/>`:`<circle cx="${s}" cy="${p+W/2}" r="${Math.min(F,W)/2-3}"/>`;u.push({indent:2,node:ce({id:`actor:${n}:icon`,role:"icon",channels:{category:n}},`<g class="sequence-actor-glyph sequence-actor-${k}" fill="${T}" stroke="${y}" stroke-width="${R}">${ie}</g>`)}),u.push({indent:2,node:U({id:`actor:${n}:label`,role:"label",text:v,x:s,y:c+f+14,fontSize:w,anchor:"middle",paint:{fill:$},channels:{category:n}},Z(v,s,c+f+14,w,h))})}else{let y=s-d/2,T=D,m=L,p=x?.cornerRadius??t.cornerRadius??4;u.push({indent:2,node:V({id:`actor:${n}:box`,role:"actor",geometry:{kind:"rect",x:y,y:c,width:d,height:f,rx:p,ry:p},paint:{fill:T,stroke:m,strokeWidth:String(R)},channels:{category:n}},`<rect x="${y}" y="${c}" width="${d}" height="${f}" rx="${p}" ry="${p}" fill="${b(T)}" stroke="${b(m)}" stroke-width="${R}" />`)}),u.push({indent:2,node:U({id:`actor:${n}:label`,role:"label",text:v,x:s,y:c+f/2,fontSize:w,anchor:"middle",paint:{fill:$},channels:{category:n}},Z(v,s,c+f/2,w,h))})}return e.links&&u.push({indent:2,node:U({id:`actor:${n}:menu`,role:"icon",text:"\u22EF",x:s+d/2-7,y:c+10,fontSize:10,anchor:"middle",paint:{fill:$},channels:{category:n}},`<text class="sequence-actor-menu" x="${s+d/2-7}" y="${c+10}" text-anchor="middle" font-size="10" fill="${b($)}">\u22EF</text>`)}),oe({id:`actor:${n}`,role:"actor",open:l,close:"</g>",children:u,channels:{category:n}})}function Pt(e,t){let r=t.edgeStrokeColor??"var(--_line)",i=Math.max(.75,t.lineWidth*.75);return se({id:`lifeline:${e.actorId}`,role:"lifeline",geometry:{kind:"line",x1:e.x,y1:e.topY,x2:e.x,y2:e.bottomY},lineStyle:"dashed",paint:{stroke:r,strokeWidth:String(i),strokeDasharray:"6 4"}},`<line class="lifeline" data-actor="${b(e.actorId)}" x1="${e.x}" y1="${e.topY}" x2="${e.x}" y2="${e.bottomY}" stroke="${b(r)}" stroke-width="${i}" stroke-dasharray="6 4" />`)}function At(e,t,r){let i=t.nodeFillColor??"var(--_node-fill)",n=t.nodeBorderColor??"var(--_node-stroke)";return V({id:r,role:"activation",geometry:{kind:"rect",x:e.x,y:e.topY,width:e.width,height:e.bottomY-e.topY},paint:{fill:i,stroke:n,strokeWidth:String(ee.innerBox)}},`<rect class="activation" data-actor="${b(e.actorId)}" x="${e.x}" y="${e.topY}" width="${e.width}" height="${e.bottomY-e.topY}" fill="${b(i)}" stroke="${b(n)}" stroke-width="${ee.innerBox}" />`)}function Dt(e,t,r){let i=[],n=e.lineStyle==="dashed"?' stroke-dasharray="6 4"':"",s=ft(t,e.startHead),c=ft(t,e.endHead),d=`${s?` marker-start="url(#${s.id})"`:""}${c?` marker-end="url(#${c.id})"`:""}`,f=t.edgeStrokeColor??"var(--_line)",M=t.edgeTextColor??"var(--_text-muted)",k=A(e.label,t.edgeTextTransform),u={stroke:f,strokeWidth:String(t.lineWidth),...e.lineStyle==="dashed"?{strokeDasharray:"6 4"}:{}},x={endpoints:{from:e.from,to:e.to},relationship:{kind:"sequence-message",direction:e.isSelf?"self":s&&c?"bidirectional":s?"reverse":c?"forward":"undirected"},route:{ownership:"layout"},labels:e.label?[{text:e.label}]:[]},w=`<g class="message" data-label="${b(e.label)}" data-line-style="${e.lineStyle}" data-start-head="${e.startHead}" data-end-head="${e.endHead}" data-central-start="${e.centralStart}" data-central-end="${e.centralEnd}" data-self="${e.isSelf}">`;if(e.isSelf)i.push({indent:2,node:se({id:`${r}:line`,role:"message",geometry:{kind:"polyline",points:[{x:e.x1,y:e.y},{x:e.x1+30,y:e.y},{x:e.x1+30,y:e.y+20},{x:e.x2,y:e.y+20}]},lineStyle:e.lineStyle,paint:u,...s?{startMarker:s}:{},...c?{endMarker:c}:{},...x},`<polyline points="${e.x1},${e.y} ${e.x1+30},${e.y} ${e.x1+30},${e.y+20} ${e.x2},${e.y+20}" fill="none" stroke="${b(f)}" stroke-width="${t.lineWidth}"${n}${d} />`)}),i.push({indent:2,node:U({id:`${r}:label`,role:"label",text:k,x:e.x1+30+8,y:e.y+20/2,fontSize:t.edgeLabelFontSize,anchor:"start",paint:{fill:M}},Z(k,e.x1+30+8,e.y+20/2,t.edgeLabelFontSize,`font-size="${t.edgeLabelFontSize}" text-anchor="start" font-weight="${t.edgeLabelFontWeight}"${re(t.edgeLetterSpacing)} fill="${b(M)}"`))});else{i.push({indent:2,node:se({id:`${r}:line`,role:"message",geometry:{kind:"line",x1:e.x1,y1:e.y,x2:e.x2,y2:e.y},lineStyle:e.lineStyle,paint:u,...s?{startMarker:s}:{},...c?{endMarker:c}:{},...x},`<line x1="${e.x1}" y1="${e.y}" x2="${e.x2}" y2="${e.y}" stroke="${b(f)}" stroke-width="${t.lineWidth}"${n}${d} />`)});let C=(e.x1+e.x2)/2;i.push({indent:2,node:U({id:`${r}:label`,role:"label",text:k,x:C,y:e.y-10,fontSize:t.edgeLabelFontSize,anchor:"middle",paint:{fill:M}},Z(k,C,e.y-10,t.edgeLabelFontSize,`font-size="${t.edgeLabelFontSize}" text-anchor="middle" font-weight="${t.edgeLabelFontWeight}"${re(t.edgeLetterSpacing)} fill="${b(M)}"`))})}return e.centralStart&&i.push({indent:2,node:V({id:`${r}:central-start`,role:"chrome",geometry:{kind:"circle",cx:e.x1,cy:e.y,r:4},paint:{fill:"var(--bg)",stroke:f,strokeWidth:"1.5"}},`<circle class="sequence-central-connection" data-side="start" cx="${e.x1}" cy="${e.y}" r="4" fill="var(--bg)" stroke="${b(f)}" stroke-width="1.5" />`)}),e.centralEnd&&i.push({indent:2,node:V({id:`${r}:central-end`,role:"chrome",geometry:{kind:"circle",cx:e.x2,cy:e.y,r:4},paint:{fill:"var(--bg)",stroke:f,strokeWidth:"1.5"}},`<circle class="sequence-central-connection" data-side="end" cx="${e.x2}" cy="${e.y}" r="4" fill="var(--bg)" stroke="${b(f)}" stroke-width="1.5" />`)}),oe({id:r,role:"message",open:w,close:"</g>",children:i})}function Et(e,t,r){let i=[],n=e.label?` data-label="${b(e.label)}"`:"",s=`<g class="block" data-type="${b(e.type)}"${n}>`,c=t.groupFillColor??"none",d=t.groupBorderColor??"var(--_node-stroke)";i.push({indent:2,node:V({id:`${r}:rect`,role:"block",geometry:{kind:"rect",x:e.x,y:e.y,width:e.width,height:e.height,rx:t.groupCornerRadius,ry:t.groupCornerRadius},paint:{fill:c,stroke:d,strokeWidth:String(t.groupLineWidth)}},`<rect x="${e.x}" y="${e.y}" width="${e.width}" height="${e.height}" rx="${t.groupCornerRadius}" ry="${t.groupCornerRadius}" fill="${b(c)}" stroke="${b(d)}" stroke-width="${t.groupLineWidth}" />`)});let f=t.edgeStrokeColor??"var(--_line)",M=t.edgeTextColor??"var(--_text-muted)",k=0;for(let u of e.dividers){let x=`${r}:divider#${k}`;k++;let w=Math.max(.75,t.lineWidth*.75);if(i.push({indent:2,node:se({id:x,role:"block",geometry:{kind:"line",x1:e.x,y1:u.y,x2:e.x+e.width,y2:u.y},lineStyle:"dashed",paint:{stroke:f,strokeWidth:String(w),strokeDasharray:"6 4"}},`<line x1="${e.x}" y1="${u.y}" x2="${e.x+e.width}" y2="${u.y}" stroke="${b(f)}" stroke-width="${w}" stroke-dasharray="6 4" />`)}),u.label){let C=A(`[${u.label}]`,t.edgeTextTransform);i.push({indent:2,node:U({id:`${x}:label`,role:"label",text:C,x:e.x+8,y:u.y+14,fontSize:t.edgeLabelFontSize,anchor:"start",paint:{fill:M}},Z(C,e.x+8,u.y+14,t.edgeLabelFontSize,`font-size="${t.edgeLabelFontSize}" text-anchor="start" font-weight="${t.edgeLabelFontWeight}"${re(t.edgeLetterSpacing)} fill="${b(M)}"`))})}}return oe({id:r,role:"block",open:s,close:"</g>",children:i})}function Nt(e,t,r){let i=A(`${e.type}${e.label?` [${e.label}]`:""}`,t.groupTextTransform),n=i.split(`
12
- `)[0],s=J(n,t.groupHeaderFontSize,t.groupHeaderFontWeight)+t.groupPaddingX*2,c=Math.max(18,t.groupHeaderFontSize+t.groupPaddingY),d=t.groupHeaderFillColor??"var(--_group-hdr)",f=t.groupBorderColor??"var(--_node-stroke)",M=t.groupTextColor??"var(--_text-sec)";return oe({id:`${r}:header-overlay`,role:"block",open:'<g class="sequence-block-header-overlay" pointer-events="none" aria-hidden="true">',close:"</g>",children:[{indent:0,node:V({id:`${r}:tab`,role:"block",geometry:{kind:"rect",x:e.x,y:e.y,width:s,height:c},paint:{fill:d,stroke:f,strokeWidth:String(t.groupLineWidth)}},`<rect x="${e.x}" y="${e.y}" width="${s}" height="${c}" fill="${b(d)}" stroke="${b(f)}" stroke-width="${t.groupLineWidth}" />`)},{indent:0,node:U({id:`${r}:label`,role:"label",text:i,x:e.x+t.groupLabelPaddingX,y:e.y+c/2,fontSize:t.groupHeaderFontSize,anchor:"start",paint:{fill:M}},Z(i,e.x+t.groupLabelPaddingX,e.y+c/2,t.groupHeaderFontSize,`font-size="${t.groupHeaderFontSize}" font-weight="${t.groupHeaderFontWeight}"${t.groupFont?` font-family="${b(t.groupFont)}"`:""}${re(t.groupLetterSpacing)} fill="${b(M)}"`))}]})}function Bt(e,t,r){let i=[],s=`<g class="box"${e.label?` data-label="${b(e.label)}"`:""}>`,c=e.color?.toLowerCase()==="transparent"?"none":e.color,d=c??"color-mix(in srgb, var(--fg) 5%, var(--bg))";if(i.push({indent:2,node:V({id:`${r}:rect`,role:"group",geometry:{kind:"rect",x:e.x,y:e.y,width:e.width,height:e.height,rx:t.groupCornerRadius,ry:t.groupCornerRadius},paint:{fill:d,stroke:"none"}},`<rect x="${e.x}" y="${e.y}" width="${e.width}" height="${e.height}" rx="${t.groupCornerRadius}" ry="${t.groupCornerRadius}" fill="${b(d)}" stroke="none" />`)}),e.label){let f=A(e.label,t.groupTextTransform),M=Yt(c,t),k=e.x+e.width/2,u=e.y+13;i.push({indent:2,node:U({id:`${r}:title`,role:"label",text:f,x:k,y:u,fontSize:t.groupHeaderFontSize,anchor:"middle",paint:{fill:M}},Z(f,k,u,t.groupHeaderFontSize,`font-size="${t.groupHeaderFontSize}" text-anchor="middle" font-weight="${t.groupHeaderFontWeight}"${t.groupFont?` font-family="${b(t.groupFont)}"`:""}${re(t.groupLetterSpacing)} fill="${b(M)}"`))})}return oe({id:r,role:"group",open:s,close:"</g>",children:i})}function Yt(e,t){let r=t.groupTextColor??"var(--_text-sec)";if(!e||e==="none")return r;let i=dt(e);if(!i)return r;let n=t.groupTextColor;if(n){let s=je(n,i);if(s!==null&&s>=4.5)return n}return Ze(i)??r}function Xt(e,t){let i=t.edgeStrokeColor??"var(--_line)",n=Math.max(1.5,t.lineWidth),s=`M ${e.x-8} ${e.y-8} L ${e.x+8} ${e.y+8} M ${e.x-8} ${e.y+8} L ${e.x+8} ${e.y-8}`;return V({id:`destroy:${e.actorId}`,role:"icon",geometry:{kind:"path",d:s},paint:{stroke:i,strokeWidth:String(n)},channels:{category:e.actorId}},`<path class="destroy-cross" data-actor="${b(e.actorId)}" d="${s}" fill="none" stroke="${b(i)}" stroke-width="${n}" />`)}function Ot(e,t,r){let{x:i,y:n,width:s,height:c}=e,d=e.actors&&e.actors.length>0?` data-actors="${e.actors.map(b).join(",")}"`:"",f=e.position?` data-position="${b(e.position)}"`:"",M=t.nodeFillColor??"var(--bg)",k=t.nodeBorderColor??"var(--_node-stroke)",u=t.nodeTextColor??"var(--_text-muted)",x=t.cornerRadius??0,w=A(e.text,t.nodeTextTransform);return oe({id:r,role:"note",open:`<g class="note"${f}${d}>`,close:"</g>",children:[{indent:2,node:V({id:`${r}:rect`,role:"note",geometry:{kind:"rect",x:i,y:n,width:s,height:c,rx:x,ry:x},paint:{fill:M,stroke:k,strokeWidth:String(ee.innerBox)}},`<rect x="${i}" y="${n}" width="${s}" height="${c}" rx="${x}" ry="${x}" fill="${b(M)}" stroke="${b(k)}" stroke-width="${ee.innerBox}" />`)},{indent:2,node:U({id:`${r}:text`,role:"label",text:w,x:i+s/2,y:n+c/2,fontSize:t.nodeLabelFontSize,anchor:"middle",paint:{fill:u}},Z(w,i+s/2,n+c/2,t.nodeLabelFontSize,`font-size="${t.nodeLabelFontSize}" text-anchor="middle" font-weight="${t.nodeLabelFontWeight}"${re(t.nodeLetterSpacing)} fill="${b(u)}"`))}]})}function re(e){return e!==0?` letter-spacing="${e}"`:""}var ut=Ve;var qo=Ge(at,{normalizeRequest:e=>({familyConfig:{sequence:ct(e.source.frontmatter)}}),layout:e=>{let t=e.familyConfig?.sequence??{},r=Be(gt(e.source.familyLines,t),e.source.accessibility);return Oe(ht(r,e.renderOptions,t,e.styleFace))},lowerScene:Xe(mt)});export{qo as default};
@@ -1,4 +0,0 @@
1
- import{b as l}from"./chunk-SUFMSWTX.js";import{a as c}from"./chunk-L227EPFP.js";import{a as n}from"./chunk-DXA5WL7H.js";import"./chunk-T7IJ6V4B.js";import"./chunk-5Q4S74UO.js";import"./chunk-STQRDZ67.js";import{c as o}from"./chunk-X64T74C5.js";import"./chunk-WEUWIFG3.js";import"./chunk-NZRUMODH.js";import"./chunk-KJVNXJ5Y.js";import"./chunk-M6BT2HIP.js";import"./chunk-UAEZO5VL.js";import{a,b as r,c as s}from"./chunk-EPFMQPXX.js";import"./chunk-2XCPFAD5.js";import"./chunk-P7HMSKHJ.js";var d=Object.freeze({id:"state",upstreamId:"stateDiagram",maturity:"stable",label:"State",headers:["stateDiagram","stateDiagram-v2"],aliases:[],config:{section:"state",keys:["arrowMarkerAbsolute","compositTitleSize","defaultRenderer","dividerMargin","edgeLengthFactor","fontSize","fontSizeFactor","forkHeight","forkWidth","labelHeight","miniPadding","nodeSpacing","noteMargin","padding","radius","rankSpacing","sizeUnit","textHeight","titleShift","titleTopMargin"]},identity:{id:"family:state",kind:"family",version:"1.0.0",compatibility:{core:"^0.4.0"},provenance:{owner:"agentic-mermaid",source:"built-in"}},collisionPriority:100,semanticChannels:["status"],semanticRoles:["prelude","defs","chrome","group","group-header","edge","edge-label","node","note","label"],scenePrimitiveEvidence:[{role:"prelude",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"defs",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"defs",primitive:"marker",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group-header",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group-header",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"edge",primitive:"connector",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"edge-label",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"node",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"node",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"note",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"note",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"label",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]}],example:`stateDiagram-v2
2
- [*] --> Draft
3
- Draft --> Review : submit
4
- Review --> [*] : approve`,detect:function(i){let t=(i.split(";")[0]??"").trim().toLowerCase();return/^statediagram(?:-v2)?\s*$/.test(t)},detectLoose:function(i){let t=(i.split(";")[0]??"").trim().toLowerCase();return/^statediagram(?:-v2)?(?:\s|$)/.test(t)}}),p=d;var z=s(p,{normalizeRequest:e=>{let i=l(e.source.frontmatter,e.renderOptions),{stateVisual:t,...m}=i;return{renderOptions:m,...t?{appearance:{family:{visual:t}}}:{}}},layout:e=>{let i=e.familyAppearance?.visual;return r(o(n(e.source.familyText),{...e.renderOptions,...e.styleFace?{styleFace:e.styleFace}:{},...i?{stateVisual:i}:{}}))},lowerScene:a(c)});export{z as default};
@@ -1,20 +0,0 @@
1
- import{a as Le}from"./chunk-M6BT2HIP.js";import{a as Q}from"./chunk-PZEWZT35.js";import{a as Ae}from"./chunk-I6VE56S7.js";import{a as De}from"./chunk-OFRMKQA6.js";import{b as ke,c as Me,d as Fe}from"./chunk-FLD63DXE.js";import{e as me,j as U,k as oe}from"./chunk-UAEZO5VL.js";import{a as We,b as Pe,c as Ee}from"./chunk-EPFMQPXX.js";import{G as Ce,H as Re,I as we,L as H,M as K,N as pe,O as M,P as V,e as j,i as q,ia as E,ka as J,la as he,oa as Ie,pa as ae,qa as ze}from"./chunk-2XCPFAD5.js";import"./chunk-P7HMSKHJ.js";var ti=Object.freeze({id:"timeline",upstreamId:"timeline",maturity:"experimental",label:"Timeline",headers:["timeline"],aliases:[],config:{section:"timeline",keys:["disableMulticolor","sectionFills","sectionColours","diagramMarginX","diagramMarginY","leftMargin","width","height","padding","boxMargin","boxTextMargin","noteMargin","messageMargin","messageAlign","bottomMarginAdj","rightAngles","taskFontSize","taskFontFamily","taskMargin","activationWidth","textPlacement","actorColours","useMaxWidth","useWidth"],noopKeys:["diagramMarginX","diagramMarginY","leftMargin","width","height","padding","boxMargin","boxTextMargin","noteMargin","messageMargin","messageAlign","bottomMarginAdj","rightAngles","taskFontSize","taskFontFamily","taskMargin","activationWidth","textPlacement","actorColours","useMaxWidth","useWidth"]},identity:{id:"family:timeline",kind:"family",version:"1.0.0",compatibility:{core:"^0.4.0"},provenance:{owner:"agentic-mermaid",source:"built-in"}},collisionPriority:100,semanticChannels:["category"],semanticRoles:["prelude","chrome","rail","title","section","group-header","period","event","label"],scenePrimitiveEvidence:[{role:"prelude",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"rail",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"title",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"section",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"section",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group-header",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"group-header",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"period",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"period",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"event",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"event",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"label",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]}],example:`timeline
2
- title Roadmap
3
- 2025 : Alpha : Beta
4
- 2026 : GA`,detect:e=>/^timeline(?:\s+(?:td|tb|lr|bt|rl))?\s*$/.test(e),detectLoose:e=>/^timeline(?:\s|$)/.test(e)}),Xe=ti;var o={paddingX:32,paddingY:28,titleFontSize:18,titleFontWeight:600,titleGap:24,titleWrapWidth:420,sectionHeaderHeight:24,sectionFontSize:12,sectionFontWeight:600,sectionHeaderPadX:12,sectionHeaderGap:14,sectionWrapWidth:168,sectionPadX:18,sectionPadBottom:18,sectionGap:28,columnGap:24,pillFontSize:12,pillFontWeight:600,pillWrapWidth:116,pillPadX:12,pillPadY:8,pillMinWidth:72,railToPillGap:22,railToEventsGap:28,markerRadius:8,eventFontSize:12,eventFontWeight:400,eventWrapWidth:148,eventPadX:14,eventPadY:10,eventMinWidth:128,eventGap:10},He=36,ge={nodeLabelFontSize:o.eventFontSize,edgeLabelFontSize:o.pillFontSize,groupHeaderFontSize:o.sectionFontSize,nodeLabelFontWeight:o.eventFontWeight,edgeLabelFontWeight:o.pillFontWeight,groupHeaderFontWeight:o.sectionFontWeight,nodePaddingX:o.eventPadX,nodePaddingY:o.eventPadY,nodeCornerRadius:0,nodeLineWidth:me.outerBox,edgeLineWidth:1.5,groupCornerRadius:0,groupPaddingX:o.sectionPadX,groupPaddingY:o.sectionPadBottom,groupLabelPaddingX:o.sectionHeaderPadX,groupLineWidth:me.outerBox},ni={pill:o.pillWrapWidth,event:o.eventWrapWidth,pillMinWidth:o.pillMinWidth,eventMinWidth:o.eventMinWidth};function Oe(e,i={},r){let n=oe(i,ge,r),t=e.direction==="TD",a=(h,$)=>t?$:h,s=(h,$)=>t?h:$,d=e.sections.some(h=>!!h.label),l=e.sections.length>1||d,c=d?Math.max(o.sectionHeaderHeight,n.groupHeaderFontSize+n.groupPaddingY):0,u=l?n.groupPaddingX:0,v=e.title?le(U(e.title,n.groupTextTransform),o.titleWrapWidth,o.titleFontSize,o.titleFontWeight):void 0,f=v?q(v,o.titleFontSize,o.titleFontWeight):void 0,m=Ne(e,n,ni,t),b=i.timeline?.maxWidth;if(!t&&typeof b=="number"&&Number.isFinite(b)&&b>0){let h=ri(m,u,l),$=m.reduce((P,R)=>P+R.periods.length,0);if(h>b&&$>0){let P=m.reduce(($e,te)=>$e+te.periods.reduce((ne,w)=>ne+w.mainExtent,0),0),R=Math.max(He+n.nodePaddingX*2,(b-(h-P))/$),A=Math.max(He,R-n.nodePaddingX*2);m=Ne(e,n,{pill:Math.min(o.pillWrapWidth,A),event:Math.min(o.eventWrapWidth,A),pillMinWidth:Math.min(o.pillMinWidth,R),eventMinWidth:Math.min(o.eventMinWidth,R)},t)}}let y=Math.max(0,...m.flatMap(h=>h.periods.map($=>s($.pillWidth,$.pillHeight)))),T=o.paddingY;f&&(T+=f.height,T+=o.titleGap);let _=c+(d?o.sectionHeaderGap:0),g=t?o.paddingX:T,S=g+(t?l?u:0:_),p=S+y+o.railToPillGap,Y=p+o.railToEventsGap,z=t?_:0,C=t?T:o.paddingX,O=[],x=p+o.markerRadius;for(let h=0;h<e.sections.length;h++){let $=e.sections[h],P=m[h],R=C,A=z+P.innerMain+u*2,te=C+z+u+(P.innerMain-P.runMain)/2,ne=[],w=p+o.markerRadius;for(let re=0;re<$.periods.length;re++){let de=$.periods[re],k=P.periods[re],F=te+k.mainExtent/2,ce=Y,G=de.events.map((X,ei)=>{let I=k.events[ei],_e=F-a(I.width,I.height)/2,ii={id:X.id,sectionId:$.id,periodId:de.id,periodLabel:k.label,text:I.text,x:t?ce:_e,y:t?_e:ce,width:I.width,height:I.height};return ce+=s(I.width,I.height)+o.eventGap,ii}),ye=p+o.markerRadius,Se=G.length>0?Y-10:p+16,Ze=F-a(k.pillWidth,k.pillHeight)/2;if(ne.push({id:de.id,sectionId:$.id,label:k.label,centerX:t?S+k.pillWidth/2:F,markerX:t?p:F,markerY:t?F:p,pillX:t?S:F-k.pillWidth/2,pillY:t?Ze:S,pillWidth:k.pillWidth,pillHeight:k.pillHeight,stem:t?{x1:ye,y1:F,x2:Se,y2:F}:{x1:F,y1:ye,x2:F,y2:Se},events:G}),G.length>0){let X=G[G.length-1];w=Math.max(w,t?X.x+X.width:X.y+X.height)}te+=k.mainExtent+o.columnGap}w+=n.groupPaddingY,x=Math.max(x,w),O.push({id:$.id,label:P.label,x:t?g:R,y:t?R:g,width:t?w-g:A,height:t?A:w-g,framed:l,headerHeight:c,periods:ne}),C+=A,h<e.sections.length-1&&(C+=l?o.sectionGap:o.columnGap)}let W=C+(t?o.paddingY:o.paddingX),D=x+(t?o.paddingX:o.paddingY),Z=t?D:W,se=t?W:D,B=O.flatMap(h=>h.periods),ve=h=>t?h.markerY:h.centerX,ee=B.length>0?ve(B[0]):t?T:o.paddingX,ie=B.length>0?ve(B[B.length-1]):W-(t?o.paddingY:o.paddingX),xe=ee===ie?ee-42:ee,Te=ee===ie?ie+42:ie;return{width:Z,height:se,title:v?{text:v,x:Z/2,y:o.paddingY+f.height/2}:void 0,accessibilityTitle:e.accessibilityTitle,accessibilityDescription:e.accessibilityDescription,rail:t?{x1:p,y1:xe,x2:p,y2:Te}:{x1:xe,y1:p,x2:Te,y2:p},sections:O}}function Ne(e,i,r,n){let t=(a,s)=>n?s:a;return e.sections.map(a=>{let s=a.label?le(U(a.label,i.groupTextTransform),o.sectionWrapWidth,i.groupHeaderFontSize,i.groupHeaderFontWeight):void 0,d=a.periods.map(v=>{let f=le(U(v.label,i.edgeTextTransform),r.pill,i.edgeLabelFontSize,i.edgeLabelFontWeight),m=q(f,i.edgeLabelFontSize,i.edgeLabelFontWeight),b=Math.max(r.pillMinWidth,m.width+i.nodePaddingX*2),y=m.height+i.nodePaddingY*2,T=v.events.map(g=>{let S=le(U(g.text,i.nodeTextTransform),r.event,i.nodeLabelFontSize,i.nodeLabelFontWeight),p=q(S,i.nodeLabelFontSize,i.nodeLabelFontWeight);return{text:S,width:Math.max(r.eventMinWidth,p.width+i.nodePaddingX*2),height:p.height+i.nodePaddingY*2}}),_=Math.max(t(b,y),...T.map(g=>t(g.width,g.height)));return{label:f,pillWidth:b,pillHeight:y,mainExtent:_,events:T}}),l=d.reduce((v,f,m)=>{let b=m===0?0:o.columnGap;return v+b+f.mainExtent},0),c=s?q(s,i.groupHeaderFontSize,i.groupHeaderFontWeight).width+i.groupLabelPaddingX*2:0,u=n?l:Math.max(l,c);return{label:s,headerWidth:c,runMain:l,innerMain:u,periods:d}})}function ri(e,i,r){let n=o.paddingX;for(let t=0;t<e.length;t++)n+=e[t].innerMain+i*2,t<e.length-1&&(n+=r?o.sectionGap:o.columnGap);return n+o.paddingX}function le(e,i,r,n){return e.split(`
5
- `).flatMap(t=>oi(t,i,r,n)).join(`
6
- `)}function oi(e,i,r,n){let t=K(e);if(j(t,r,n)<=i)return[e];let a=e.trim().split(/\s+/);if(a.length<=1)return Ye(e,i,r,n);let s=[],d="";for(let l of a){let c=d?`${d} ${l}`:l;if(j(K(c),r,n)<=i){d=c;continue}d&&(s.push(d),d=""),j(K(l),r,n)>i?s.push(...Ye(l,i,r,n)):d=l}return d&&s.push(d),s}function Ye(e,i,r,n){let t=[],a="";for(let s of e){let d=a+s;if(a&&j(K(d),r,n)>i){t.push(a),a=s;continue}a=d}return a&&t.push(a),t}var Be=/^timeline\s+(LR|TD)\s*$/i,Ge=/^title\s+(.+)$/i,je=/^section\s+([^:]+)$/i,qe=/^:\s+(.+)$/,Ue=/^([^:#\n]+?)(\s*:\s+.+)$/;function ue(e){let i=[],r=0;for(;r<e.length;){for(;r<e.length&&/\s/.test(e[r]);)r++;if(r>=e.length)break;if(e[r]!==":")throw Q({what:`Invalid timeline event list: "${e}"`,expectedForm:'events separated by " : "',example:"Launch : Beta"});if(r++,r>=e.length||!/\s/.test(e[r]))throw new Error(`Timeline events must use ": " separators: "${e}"`);for(;r<e.length&&/\s/.test(e[r]);)r++;let n=r;for(;r<e.length&&!(e[r]===":"&&/\s/.test(e[r+1]??""));)r++;i.push(e.slice(n,r).trim())}return i}function Ke(e,i={}){let r=ke(e);Me(r),e=r.familyLines;let n={sections:[],...Fe({...i,...r.accessibility})},t=e[0]?.trim().match(Be);t&&(n.direction=t[1].toUpperCase());let a,s,d=0,l=0,c=0,u=()=>a||(a={id:`section-${d++}`,periods:[]},n.sections.push(a),a),v=(f,m)=>{for(let b of m){let y=H(b.trim());if(!y)continue;let T={id:`event-${c++}`,text:y};f.events.push(T)}};for(let f=1;f<e.length;f++){let m=e[f];if(/^timeline\b/i.test(m)||/^#/.test(m))continue;let b=m.match(Ge);if(b){n.title=H(b[1].trim());continue}let y=m.match(je);if(y){a={id:`section-${d++}`,label:H(y[1].trim()),periods:[]},n.sections.push(a),s=void 0;continue}let T=m.match(qe);if(T){if(!s)throw new Error("Timeline continuation found before any period was declared");v(s,ue(`: ${T[1]}`));continue}let _=m.match(Ue);if(_){let g=H(_[1].trim()),S=ue(_[2]);if(!g)throw Q({what:`Invalid timeline period: "${m}"`,expectedForm:"Period : Event[ : Event\u2026]",example:"2025 : Launch : Beta"});let p={id:`period-${l++}`,label:g,events:[]};if(v(p,S),p.events.length===0)throw new Error(`Timeline period "${g}" must include at least one event`);u().periods.push(p),s=p;continue}if(!m.includes(":")&&m.trim().length>0){let g={id:`period-${l++}`,label:H(m.trim()),events:[]};u().periods.push(g),s=g;continue}throw Q({what:`Unsupported timeline syntax: "${m}"`,expectedForm:"a title, a section, or a period (Period : Event\u2026)",example:"2025 : Launch"})}if(n.sections.length===0&&!n.title&&!n.accessibilityTitle&&!n.accessibilityDescription)throw new Error("Timeline diagram must include at least one period, section, or title");return n}var L={titleFontSize:18,titleFontWeight:600,sectionFontSize:12,sectionFontWeight:600,pillFontSize:12,pillFontWeight:600,eventFontSize:12,eventFontWeight:400,markerOuterRadius:8,markerInnerRadius:4.5};function Ve(e){let{positioned:i,colors:r,resolved:n}=e,t=n.renderOptions,a=r.font??"Inter",s=t.transparent??!1,d=n.familyAppearance;if(!d)throw new Error("Timeline rendering requires request-boundary family appearance resolution");let l=d.timelineConfig,c=[],u=oe(t,ge,n.styleFace),v=ai(u),f=i.accessibilityTitle??i.title?.text.replace(/\n+/g," "),m=i.accessibilityDescription,b=d.familyPalettes,y=!l.disableMulticolor,T=y&&i.sections.some(x=>!!x.label),_=`tl-${Ae(i.width,i.height,i.sections.map(x=>x.periods.length).join(","))}`,g=`${_}-title`,S=`${_}-desc`,p=De(f,m,g,S),Y=li(u),z=[we(i.width,i.height,r,s,p),Re(a,!1,r.shadow,r.embedFontImport)],C=Ce(r);C&&z.push(`<defs>${C}</defs>`),z.push(Y),c.push(ze({id:"prelude",width:i.width,height:i.height,colors:r,transparent:s,font:a,hasMonoFont:!1,extraCss:Y},z.join(`
7
- `))),f&&c.push(he({id:"a11y-title",role:"chrome"},`<title id="${g}">${pe(f)}</title>`)),m&&c.push(he({id:"a11y-desc",role:"chrome"},`<desc id="${S}">${pe(m)}</desc>`));for(let x=0;x<i.sections.length;x++){let W=i.sections[x],D=T?x:0;W.framed&&c.push(si(W,D,b,u,v))}c.push(E({id:"rail",role:"rail",geometry:{kind:"line",x1:i.rail.x1,y1:i.rail.y1,x2:i.rail.x2,y2:i.rail.y2},paint:v.rail},`<line class="timeline-rail" x1="${i.rail.x1}" y1="${i.rail.y1}" x2="${i.rail.x2}" y2="${i.rail.y2}" />`));let O=0;for(let x=0;x<i.sections.length;x++){let W=i.sections[x],D=T?x:void 0;for(let Z of W.periods){let se=D??(y?O++:0);c.push(di(Z,W.label,se,b,u,v))}}return i.title&&c.push(J({id:"title",role:"title",text:i.title.text,x:i.title.x,y:i.title.y,fontSize:L.titleFontSize,anchor:"middle",paint:v.title},V(i.title.text,i.title.x,i.title.y,L.titleFontSize,`class="timeline-title" text-anchor="middle" font-size="${L.titleFontSize}" font-weight="${L.titleFontWeight}"`))),c.push(Ie()),{family:"timeline",width:i.width,height:i.height,colors:r,transparent:s,parts:c}}function ai(e){return{title:{fill:e.groupTextColor??e.nodeTextColor??"var(--_text)"},rail:{stroke:e.edgeStrokeColor??"var(--_line)",strokeWidth:String(e.lineWidth)},sectionBg:{fill:e.groupFillColor??"var(--tl-section-bg, color-mix(in srgb, var(--_node-fill) 88%, var(--bg)))",stroke:e.groupBorderColor??"var(--tl-line, var(--_node-stroke))",strokeWidth:String(e.groupLineWidth)},sectionBand:{fill:e.groupHeaderFillColor??"var(--tl-section-band, color-mix(in srgb, var(--_arrow) 8%, var(--bg)))",stroke:e.groupBorderColor??"var(--tl-line, var(--_node-stroke))",strokeWidth:String(e.groupLineWidth)},sectionLabel:{fill:e.groupTextColor??"var(--tl-label, var(--_text-sec))"},stem:{stroke:e.edgeStrokeColor??"var(--tl-line, color-mix(in srgb, var(--_arrow) 32%, var(--_line)))",strokeWidth:String(Math.max(1,e.lineWidth*.75)),strokeDasharray:"3 4"},markerRing:{fill:"var(--bg)",stroke:e.edgeStrokeColor??"var(--tl-line, var(--_arrow))",strokeWidth:"1.5"},markerCore:{fill:e.edgeStrokeColor??"var(--tl-accent, var(--_arrow))"},pill:{fill:e.nodeFillColor??"var(--tl-pill-fill, color-mix(in srgb, var(--_arrow) 7%, var(--bg)))",stroke:e.nodeBorderColor??"var(--tl-pill-stroke, color-mix(in srgb, var(--_arrow) 20%, var(--bg)))",strokeWidth:String(e.nodeLineWidth)},periodText:{fill:e.nodeTextColor??"var(--tl-label, var(--_text))"},eventCard:{fill:e.nodeFillColor??"var(--tl-event-fill, var(--_node-fill))",stroke:e.nodeBorderColor??"var(--tl-line, var(--_node-stroke))",strokeWidth:String(e.nodeLineWidth)},eventText:{fill:e.nodeTextColor??"var(--tl-label, var(--_text-muted))"}}}function li(e){return`<style>
8
- .timeline-title { fill: ${e.groupTextColor??e.nodeTextColor??"var(--_text)"}; }
9
- .timeline-rail { stroke: ${e.edgeStrokeColor??"var(--_line)"}; stroke-width: ${e.lineWidth}; stroke-linecap: round; }
10
- .timeline-section-bg { fill: ${e.groupFillColor??"var(--tl-section-bg, color-mix(in srgb, var(--_node-fill) 88%, var(--bg)))"}; stroke: ${e.groupBorderColor??"var(--tl-line, var(--_node-stroke))"}; stroke-width: ${e.groupLineWidth}; }
11
- .timeline-section-band { fill: ${e.groupHeaderFillColor??"var(--tl-section-band, color-mix(in srgb, var(--_arrow) 8%, var(--bg)))"}; stroke: ${e.groupBorderColor??"var(--tl-line, var(--_node-stroke))"}; stroke-width: ${e.groupLineWidth}; }
12
- .timeline-section-label { fill: ${e.groupTextColor??"var(--tl-label, var(--_text-sec))"}; }
13
- .timeline-stem { stroke: ${e.edgeStrokeColor??"var(--tl-line, color-mix(in srgb, var(--_arrow) 32%, var(--_line)))"}; stroke-width: ${Math.max(1,e.lineWidth*.75)}; stroke-dasharray: 3 4; }
14
- .timeline-marker-ring { fill: var(--bg); stroke: ${e.edgeStrokeColor??"var(--tl-line, var(--_arrow))"}; stroke-width: 1.5; }
15
- .timeline-marker-core { fill: ${e.edgeStrokeColor??"var(--tl-accent, var(--_arrow))"}; }
16
- .timeline-period-pill { fill: ${e.nodeFillColor??"var(--tl-pill-fill, color-mix(in srgb, var(--_arrow) 7%, var(--bg)))"}; stroke: ${e.nodeBorderColor??"var(--tl-pill-stroke, color-mix(in srgb, var(--_arrow) 20%, var(--bg)))"}; stroke-width: ${e.nodeLineWidth}; }
17
- .timeline-period-text { fill: ${e.nodeTextColor??"var(--tl-label, var(--_text))"}; }
18
- .timeline-event-card { fill: ${e.nodeFillColor??"var(--tl-event-fill, var(--_node-fill))"}; stroke: ${e.nodeBorderColor??"var(--tl-line, var(--_node-stroke))"}; stroke-width: ${e.nodeLineWidth}; }
19
- .timeline-event-text { fill: ${e.nodeTextColor??"var(--tl-label, var(--_text-muted))"}; }
20
- </style>`}function si(e,i,r,n,t){let a=e.label??e.id,s=e.label?` data-label="${M(e.label)}"`:"",d=Je(i,r),l=[];if(l.push({indent:2,node:E({id:`section-bg:${a}`,role:"section",geometry:{kind:"rect",x:e.x,y:e.y,width:e.width,height:e.height,rx:n.groupCornerRadius,ry:n.groupCornerRadius},paint:t.sectionBg},`<rect class="timeline-section-bg" x="${e.x}" y="${e.y}" width="${e.width}" height="${e.height}" rx="${n.groupCornerRadius}" ry="${n.groupCornerRadius}" />`)}),e.headerHeight>0){let c=Le(e.x,e.y,e.width,e.headerHeight,n.groupCornerRadius);l.push({indent:2,node:E({id:`section-band:${a}`,role:"group-header",geometry:{kind:"path",d:c},paint:t.sectionBand},`<path class="timeline-section-band" d="${c}" />`)}),e.label&&l.push({indent:2,node:J({id:`section-label:${a}`,role:"group-header",text:e.label,x:e.x+n.groupLabelPaddingX,y:e.y+e.headerHeight/2,fontSize:n.groupHeaderFontSize,anchor:"start",paint:t.sectionLabel},V(e.label,e.x+n.groupLabelPaddingX,e.y+e.headerHeight/2,n.groupHeaderFontSize,`class="timeline-section-label" text-anchor="start" font-size="${n.groupHeaderFontSize}" font-weight="${n.groupHeaderFontWeight}"${n.groupFont?` font-family="${M(n.groupFont)}"`:""}${be(n.groupLetterSpacing)}`))})}return ae({id:`section:${a}`,role:"section",open:`<g class="timeline-section" data-id="${M(e.id)}"${s}${d}>`,close:"</g>",children:l,channels:{category:a}})}function di(e,i,r,n,t,a){let s=i?` data-section="${M(i)}"`:"",d=Je(r,n),l=[];l.push({indent:2,node:E({id:`period-stem:${e.id}`,role:"period",geometry:{kind:"line",x1:e.stem.x1,y1:e.stem.y1,x2:e.stem.x2,y2:e.stem.y2},paint:a.stem},`<line class="timeline-stem" x1="${e.stem.x1}" y1="${e.stem.y1}" x2="${e.stem.x2}" y2="${e.stem.y2}" />`)}),l.push({indent:2,node:E({id:`period-pill:${e.id}`,role:"period",geometry:{kind:"rect",x:e.pillX,y:e.pillY,width:e.pillWidth,height:e.pillHeight,rx:t.cornerRadius??0,ry:t.cornerRadius??0},paint:a.pill},`<rect class="timeline-period-pill" x="${e.pillX}" y="${e.pillY}" width="${e.pillWidth}" height="${e.pillHeight}" rx="${t.cornerRadius??0}" ry="${t.cornerRadius??0}" />`)}),l.push({indent:2,node:J({id:`period-label:${e.id}`,role:"label",text:e.label,x:e.centerX,y:e.pillY+e.pillHeight/2,fontSize:t.edgeLabelFontSize,anchor:"middle",paint:a.periodText},V(e.label,e.centerX,e.pillY+e.pillHeight/2,t.edgeLabelFontSize,`class="timeline-period-text" text-anchor="middle" font-size="${t.edgeLabelFontSize}" font-weight="${t.edgeLabelFontWeight}"${be(t.edgeLetterSpacing)}`))}),l.push({indent:2,node:E({id:`period-marker-ring:${e.id}`,role:"period",geometry:{kind:"circle",cx:e.markerX,cy:e.markerY,r:L.markerOuterRadius},paint:a.markerRing},`<circle class="timeline-marker-ring" cx="${e.markerX}" cy="${e.markerY}" r="${L.markerOuterRadius}" />`)}),l.push({indent:2,node:E({id:`period-marker-core:${e.id}`,role:"period",geometry:{kind:"circle",cx:e.markerX,cy:e.markerY,r:L.markerInnerRadius},paint:a.markerCore},`<circle class="timeline-marker-core" cx="${e.markerX}" cy="${e.markerY}" r="${L.markerInnerRadius}" />`)});for(let c=0;c<e.events.length;c++)l.push({indent:0,node:ci(e.events[c],i,r,n,t,a)});return ae({id:`period:${e.id}`,role:"period",open:`<g class="timeline-period" data-id="${M(e.id)}" data-label="${M(e.label)}"${s}${d}>`,close:"</g>",children:l})}function ci(e,i,r,n,t,a){let s=i?` data-section="${M(i)}"`:"",d=` data-family="${r%n.length}"`,l=`event:${e.id}`,c=E({id:l,role:"event",geometry:{kind:"rect",x:e.x,y:e.y,width:e.width,height:e.height,rx:t.cornerRadius??0,ry:t.cornerRadius??0},paint:a.eventCard},`<rect class="timeline-event-card" x="${e.x}" y="${e.y}" width="${e.width}" height="${e.height}" rx="${t.cornerRadius??0}" ry="${t.cornerRadius??0}" />`),u=J({id:`${l}:label`,role:"label",text:e.text,x:e.x+t.nodePaddingX,y:e.y+e.height/2,fontSize:t.nodeLabelFontSize,anchor:"start",paint:a.eventText},V(e.text,e.x+t.nodePaddingX,e.y+e.height/2,t.nodeLabelFontSize,`class="timeline-event-text" text-anchor="start" font-size="${t.nodeLabelFontSize}" font-weight="${t.nodeLabelFontWeight}"${be(t.nodeLetterSpacing)}`));return ae({id:`${l}:group`,role:"event",open:`<g class="timeline-event" data-id="${M(e.id)}" data-period="${M(e.periodLabel)}"${s}${d}>`,close:"</g>",children:[{indent:2,node:c},{indent:2,node:u}]})}function be(e){return e!==0?` letter-spacing="${e}"`:""}function Je(e,i){let r=e%i.length,n=i[r],t=[`--tl-accent:${n.accent}`,`--tl-fill:${n.fill}`,`--tl-label:${n.label}`,`--tl-line:${n.line}`,`--tl-section-bg:${N(n.fill,"var(--bg)",6)}`,`--tl-section-band:${N(n.fill,"var(--bg)",12)}`,`--tl-pill-fill:${N(n.fill,"var(--bg)",11)}`,`--tl-pill-stroke:${N(n.fill,n.line,36)}`,`--tl-event-fill:${N(n.fill,"var(--_node-fill)",16)}`].join(";");return` data-family="${r}" style="${M(t)}"`}function Qe(e={}){let i=e.mermaidConfig?.timeline??{};return{timelineConfig:i,familyPalettes:mi(i,e.mermaidConfig?.themeVariables)}}function mi(e,i){let r=e.sectionFills??[],n=e.sectionColours??[];return Array.from({length:12},(t,a)=>{let s=r[a%Math.max(r.length,1)]??fe(i,"cScale",a),d=s??"var(--_node-fill)",l=n[a%Math.max(n.length,1)]??fe(i,"cScaleLabel",a)??"var(--_text)",c=fe(i,"cScaleInv",a)??(s?N(d,"var(--_line)",48):"var(--_line)");return{accent:s??"var(--_arrow)",fill:d,label:l,line:c}})}function N(e,i,r){return`color-mix(in srgb, ${e} ${r}%, ${i})`}function fe(e,i,r){if(!e)return;let n=e[`${i}${r}`];return typeof n=="string"&&n.length>0?n:void 0}var Ni=Ee(Xe,{normalizeRequest:e=>({appearance:{family:{...Qe(e.renderOptions)}}}),layout:e=>Pe(Oe(Ke(e.source.familyLines,e.source.accessibility),e.renderOptions,e.styleFace)),lowerScene:We(Ve)});export{Ni as default};
@@ -1,36 +0,0 @@
1
- import{a as ge,b as _e}from"./chunk-G6OLSHRG.js";import{c as D,d as K,e as ke}from"./chunk-A7L4WWVW.js";import"./chunk-KJVNXJ5Y.js";import{a as me,f as Xe}from"./chunk-D3XXDKIO.js";import{e as fe}from"./chunk-LNIHDJSF.js";import"./chunk-FFOHLPDA.js";import{b as Ae,f as $e}from"./chunk-FLD63DXE.js";import{a as oe,e as Se,f as Q,j as G,k as Z}from"./chunk-UAEZO5VL.js";import{a as Le,b as ve,c as Te}from"./chunk-EPFMQPXX.js";import{G as we,H as ze,I as Me,N as M,ia as I,ja as Pe,ka as N,la as j,na as he,oa as Fe,pa as ue,qa as Re}from"./chunk-2XCPFAD5.js";import"./chunk-P7HMSKHJ.js";var Ct=Object.freeze({id:"xychart",upstreamId:"xychart",maturity:"stable",label:"XY chart",headers:["xychart","xychart-beta"],aliases:[],config:{section:"xyChart",keys:["width","height","useMaxWidth","useWidth","titleFontSize","titlePadding","chartOrientation","plotReservedSpacePercent","showDataLabel","showTitle","showLegend","legendFontSize","legendPadding","xAxis","yAxis"]},identity:{id:"family:xychart",kind:"family",version:"1.0.0",compatibility:{core:"^0.4.0"},provenance:{owner:"agentic-mermaid",source:"built-in"}},collisionPriority:100,semanticChannels:["value","category"],semanticRoles:["prelude","defs","chrome","grid","bar","series","point","axis","legend","title","label"],scenePrimitiveEvidence:[{role:"prelude",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"defs",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"document",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"chrome",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"grid",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"bar",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"bar",primitive:"data-mark",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"series",primitive:"connector",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"point",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"point",primitive:"data-mark",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"axis",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"axis",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"legend",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"legend",primitive:"shape",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"legend",primitive:"container",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"title",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]},{role:"label",primitive:"text",applicability:"applicable",realization:"native",evidence:["src/__tests__/section-a-family-descriptor-conformance.test.ts"]}],example:`xychart-beta
2
- title "Revenue"
3
- x-axis [Q1, Q2, Q3]
4
- y-axis "USD" 0 --> 100
5
- bar [45, 62, 80]`,detect:e=>/^xychart(?:-beta)?(?:\s|$)/.test(e),detectLoose:e=>/^xychart(?:-beta)?(?:\s|$)/.test(e)}),Ye=Ct;var R={showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},_={width:700,height:500,useMaxWidth:!0,useWidth:void 0,titleFontSize:20,titlePadding:10,chartOrientation:"vertical",plotReservedSpacePercent:50,showDataLabel:!1,showTitle:!0,showLegend:!0,legendFontSize:14,legendPadding:5,xAxis:{...R},yAxis:{...R}};function We(e){return{showLabel:B(e?.showLabel,R.showLabel),labelFontSize:O(e?.labelFontSize,R.labelFontSize),labelPadding:J(e?.labelPadding,R.labelPadding),showTitle:B(e?.showTitle,R.showTitle),titleFontSize:O(e?.titleFontSize,R.titleFontSize),titlePadding:J(e?.titlePadding,R.titlePadding),showTick:B(e?.showTick,R.showTick),tickLength:J(e?.tickLength,R.tickLength),tickWidth:O(e?.tickWidth,R.tickWidth),showAxisLine:B(e?.showAxisLine,R.showAxisLine),axisLineWidth:O(e?.axisLineWidth,R.axisLineWidth)}}function Ie(e){return{width:O(e.width,_.width),height:O(e.height,_.height),useMaxWidth:B(e.useMaxWidth,_.useMaxWidth),useWidth:At(e.useWidth),titleFontSize:O(e.titleFontSize,_.titleFontSize),titlePadding:J(e.titlePadding,_.titlePadding),chartOrientation:e.chartOrientation==="vertical"||e.chartOrientation==="horizontal"?e.chartOrientation:_.chartOrientation,plotReservedSpacePercent:$t(e.plotReservedSpacePercent,_.plotReservedSpacePercent,10,100),showDataLabel:B(e.showDataLabel,_.showDataLabel),showTitle:B(e.showTitle,_.showTitle),showLegend:B(e.showLegend,_.showLegend),legendFontSize:O(e.legendFontSize,_.legendFontSize),legendPadding:J(e.legendPadding,_.legendPadding),xAxis:We(e.xAxis),yAxis:We(e.yAxis)}}function O(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>0?e:t}function J(e,t){return typeof e=="number"&&Number.isFinite(e)&&e>=0?e:t}function At(e){return typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0}function $t(e,t,i,n){return typeof e=="number"&&Number.isFinite(e)&&e>0&&e<=n?Math.max(i,e):t}function B(e,t){return typeof e=="boolean"?e:t}function ee(e){let t=Math.max(0,...e.series.map(i=>i.data.length));return e.xAxis.categories?Math.max(1,e.xAxis.categories.length,t):Math.max(1,t)}function ye(e,t=ee(e)){if(e.xAxis.range){let{min:i,max:n}=e.xAxis.range,o=t>1?(n-i)/(t-1):0;return Array.from({length:t},(s,c)=>i+o*c)}return Array.from({length:t},(i,n)=>n)}function pe(e,t=ee(e)){return e.xAxis.categories?Array.from({length:t},(i,n)=>e.xAxis.categories[n]??String(n+1)):e.xAxis.range?ye(e,t).map(i=>te(i)):Array.from({length:t},(i,n)=>String(n+1))}function Ee(e,t,i){if(e.length<2)return i;let n=Number.POSITIVE_INFINITY;for(let o=1;o<e.length;o++)n=Math.min(n,Math.abs(t(e[o])-t(e[o-1])));return Number.isFinite(n)&&n>0?n:i}function re(e,t,i=10){if(!(i>0))return[];if(e===t)return[e];let n=t<e,o=n?t:e,s=n?e:t,[c,a,l]=De(o,s,i);if(!(a>=c))return[];let x=a-c+1,h=new Array(x);if(n)if(l<0)for(let u=0;u<x;u++)h[u]=(a-u)/-l;else for(let u=0;u<x;u++)h[u]=(a-u)*l;else if(l<0)for(let u=0;u<x;u++)h[u]=(c+u)/-l;else for(let u=0;u<x;u++)h[u]=(c+u)*l;return h.map(Ne)}function te(e){if(!Number.isFinite(e)||Number.isInteger(e))return String(e);let t=Math.abs(e);if(t>=1e3||t===0)return Ne(e).toString();let i=t<1?2:t<10?1:0;return kt(e.toFixed(i))}function De(e,t,i){let n=(t-e)/Math.max(0,i),o=Math.floor(Math.log10(n)),s=n/Math.pow(10,o),c=s>=Math.sqrt(50)?10:s>=Math.sqrt(10)?5:s>=Math.sqrt(2)?2:1,a,l,x;return o<0?(x=Math.pow(10,-o)/c,a=Math.round(e*x),l=Math.round(t*x),a/x<e&&a++,l/x>t&&l--,x=-x):(x=Math.pow(10,o)*c,a=Math.round(e/x),l=Math.round(t/x),a*x<e&&a++,l*x>t&&l--),l<a&&.5<=i&&i<2?De(e,t,i*2):[a,l,x]}function Ne(e){return Math.round(e*1e12)/1e12}function kt(e){return e.replace(/\.0+$|(\.\d*?[1-9])0+$/,"$1")}function Lt(e){return e.length>1||e.some(t=>t.label!==void 0&&t.label.length>0)}function Oe(e){if(!Lt(e))return[];let t=[],i=0,n=0;for(let o=0;o<e.length;o++){let s=e[o],c=s.type==="bar"?i++:n++,a=s.type==="bar"?`Bar ${c+1}`:`Line ${c+1}`;t.push({label:s.label!==void 0&&s.label.length>0?s.label:a,type:s.type,seriesIndex:c,colorIndex:o})}return t}var He=.05,vt=.6,X=12,be=6,se={nodeLabelFontSize:14,edgeLabelFontSize:16,groupHeaderFontSize:20,nodeLabelFontWeight:400,edgeLabelFontWeight:400,groupHeaderFontWeight:500,nodePaddingX:0,nodePaddingY:0,nodeLineWidth:0,edgeLineWidth:3,groupCornerRadius:0,groupPaddingX:0,groupPaddingY:0,groupLineWidth:Se.outerBox};function Ve(e,t={},i){let n=Z(t,se,i),o=Ie(e.config),s=i;return(s?.group?.fontSize!=null||s?.text?.fontSize!=null)&&(o.titleFontSize=n.groupHeaderFontSize),(s?.node?.fontSize!=null||s?.text?.fontSize!=null)&&(o.xAxis.labelFontSize=n.nodeLabelFontSize,o.yAxis.labelFontSize=n.nodeLabelFontSize),(s?.edge?.fontSize!=null||s?.text?.fontSize!=null)&&(o.xAxis.titleFontSize=n.edgeLabelFontSize,o.yAxis.titleFontSize=n.edgeLabelFontSize),s?.edge?.lineWidth!=null&&(o.xAxis.axisLineWidth=n.lineWidth,o.yAxis.axisLineWidth=n.lineWidth,o.xAxis.tickWidth=n.lineWidth,o.yAxis.tickWidth=n.lineWidth),e.horizontal?St(e,o):Tt(e,o)}function Tt(e,t){let i=t.width,n=t.height,o=ee(e),s=pe(e,o),c=ye(e,o),a=e.yAxis.range,l=re(a.min,a.max),x=l.map(te),h=e.xAxis.range?re(e.xAxis.range.min,e.xAxis.range.max):void 0,u=h?.map(te)??s,y=Math.max(0,n-Math.floor(n*t.plotReservedSpacePercent/100)),m=Math.max(0,i-Math.floor(i*t.plotReservedSpacePercent/100)),f=qe(e.title,t,y);y=Math.max(0,y-f);let b=je(t.xAxis,e.xAxis.title,u,y);y=Math.max(0,y-b.size);let C=Ue(t.yAxis,e.yAxis.title,x,m);m=Math.max(0,m-C.size);let $=Math.max(0,n-f-b.size),T=Ge(e,t,m,i,f,$),g={x:C.size,y:f,width:Math.max(0,i-C.size-T.size),height:$},v=e.xAxis.range?S=>g.x+(S-e.xAxis.range.min)/(e.xAxis.range.max-e.xAxis.range.min||1)*g.width:void 0,P=S=>v?v(c[S]):g.x+(S+.5)*(g.width/o),q=v?Ee(c,v,g.width/Math.max(2,o)):g.width/Math.max(1,o),W=S=>g.y+g.height-(S-a.min)/(a.max-a.min||1)*g.height,r=b.config.showLabel?e.xAxis.range&&h&&v?Be(h,u,v,g,b.config,i):Be(s.map((S,V)=>V),s,P,g,b.config,i):[],d=C.config.showLabel?Ke(l,x,W,g,C.config):[],A=l.map(S=>({x1:g.x,y1:W(S),x2:g.x+g.width,y2:W(S)})),k=e.series.map((S,V)=>V),w=Xt(e,P,q,W,a.min,s,k),z=Yt(e,P,W,s,k);return{width:i,height:n,accessibility:e.accessibility,title:f>0&&e.title?{text:e.title,x:i/2,y:t.titlePadding+t.titleFontSize}:void 0,xAxis:{ticks:r,line:Mt(g,b.config),title:Ft(e.xAxis.title,g,n,b.config),config:b.config},yAxis:{ticks:d,line:Qe(g,C.config),title:Ze(e.yAxis.title,g,C.config),config:C.config},plotArea:g,bars:w,lines:z,gridLines:A,legend:T.items,config:t,theme:e.theme}}function St(e,t){let i=t.width,n=t.height,o=ee(e),s=pe(e,o),c=e.yAxis.range,a=re(c.min,c.max),l=a.map(te),x=Math.max(0,n-Math.floor(n*t.plotReservedSpacePercent/100)),h=Math.max(0,i-Math.floor(i*t.plotReservedSpacePercent/100)),u=qe(e.title,t,x);x=Math.max(0,x-u);let y=wt(t.yAxis,e.yAxis.title,l,x);x=Math.max(0,x-y.size);let m=Ue(t.xAxis,e.xAxis.title,s,h);h=Math.max(0,h-m.size);let f=u+y.size,b=Math.max(0,n-f),C=Ge(e,t,h,i,f,b),$={x:m.size,y:f,width:Math.max(0,i-m.size-C.size),height:b},T=k=>$.x+(k-c.min)/(c.max-c.min||1)*$.width,g=k=>$.y+(k+.5)*($.height/o),v=$.height/Math.max(1,o),P=y.config.showLabel?zt(a,l,T,$,y.config):[],q=m.config.showLabel?Ke(s.map((k,w)=>w),s,g,$,m.config):[],W=a.map(k=>({x1:T(k),y1:$.y,x2:T(k),y2:$.y+$.height})),r=e.series.map((k,w)=>w),d=_t(e,g,v,T,c.min,s,r),A=Wt(e,g,T,s,r);return{width:i,height:n,accessibility:e.accessibility,horizontal:!0,title:u>0&&e.title?{text:e.title,x:i/2,y:t.titlePadding+t.titleFontSize}:void 0,xAxis:{ticks:q,line:Qe($,m.config),title:Ze(e.xAxis.title,$,m.config),config:m.config},yAxis:{ticks:P,line:Pt($,y.config),title:Rt(e.yAxis.title,$,u,y.config),config:y.config},plotArea:$,bars:d,lines:A,gridLines:W,legend:C.items,config:t,theme:e.theme}}function Ge(e,t,i,n,o,s){if(!t.showLegend)return{items:[],size:0};let c=Oe(e.series);if(c.length===0)return{items:[],size:0};let a=Math.ceil(Math.max(...c.map(m=>oe(m.label,t.legendFontSize,400)))),l=t.legendPadding*2+X+be+a,x=Math.max(t.legendFontSize,X)+t.legendPadding,h=t.legendPadding+c.length*x;if(l>i||h>s)return{items:[],size:0};let u=n-l+t.legendPadding;return{items:c.map((m,f)=>({label:m.label,x:u,y:o+t.legendPadding+f*x,type:m.type,seriesIndex:m.seriesIndex,colorIndex:m.colorIndex})),size:l}}function qe(e,t,i){if(!e||!t.showTitle)return 0;let n=t.titleFontSize+t.titlePadding*2;return n<=i?n:0}function je(e,t,i,n){let o=n,s={...e,showAxisLine:!1,showLabel:!1,showTick:!1,showTitle:!1};if(e.showAxisLine&&o>e.axisLineWidth&&(s.showAxisLine=!0,o-=e.axisLineWidth),e.showLabel){let c=e.labelFontSize+e.labelPadding*2;c<=o&&i.length>0&&(s.showLabel=!0,o-=c)}if(e.showTick&&o>=e.tickLength&&(s.showTick=!0,o-=e.tickLength),e.showTitle&&t){let c=e.titleFontSize+e.titlePadding*2;c<=o&&(s.showTitle=!0,o-=c)}return{config:s,size:n-o}}function wt(e,t,i,n){return je(e,t,i,n)}function Ue(e,t,i,n){let o=n,s={...e,showAxisLine:!1,showLabel:!1,showTick:!1,showTitle:!1};if(e.showAxisLine&&o>e.axisLineWidth&&(s.showAxisLine=!0,o-=e.axisLineWidth),e.showLabel&&i.length>0){let a=Math.max(...i.map(l=>oe(l,e.labelFontSize,400)))+e.labelPadding*2;a<=o&&(s.showLabel=!0,o-=a)}if(e.showTick&&o>=e.tickLength&&(s.showTick=!0,o-=e.tickLength),e.showTitle&&t){let c=e.titleFontSize+e.titlePadding*2;c<=o&&(s.showTitle=!0,o-=c)}return{config:s,size:n-o}}function Be(e,t,i,n,o,s){let c=o.showAxisLine?o.axisLineWidth:0,a=o.showTick?o.tickLength:0,l=n.y+n.height+c+a+o.labelPadding+o.labelFontSize*(1-vt),x=t.map(f=>oe(f,o.labelFontSize,400)),h=x.length?Math.max(...x):0,u=e.map(f=>i(f)),y=1/0;for(let f=1;f<u.length;f++)y=Math.min(y,Math.abs(u[f]-u[f-1]));let m=Number.isFinite(y)&&y>0?Math.max(1,Math.ceil((h+6)/y)):1;return e.map((f,b)=>{let C=b%m===0?t[b]:"",$=i(f);if(s!==void 0&&C){let T=x[b]/2;$=Math.max(2+T,Math.min(s-2-T,$))}return{label:C,x:i(f),y:n.y+n.height+c,tx:i(f),ty:n.y+n.height+c+a,labelX:$,labelY:l,textAnchor:"middle"}})}function zt(e,t,i,n,o){let s=o.showAxisLine?o.axisLineWidth:0,c=o.showTick?o.tickLength:0,a=n.y-s-c-o.labelPadding;return e.map((l,x)=>({label:t[x],x:i(l),y:n.y-s,tx:i(l),ty:n.y-s-c,labelX:i(l),labelY:a,textAnchor:"middle"}))}function Ke(e,t,i,n,o){let s=o.showAxisLine?o.axisLineWidth:0,c=o.showTick?o.tickLength:0,a=n.x-s-c-o.labelPadding;return e.map((l,x)=>({label:t[x],x:n.x-s,y:i(l),tx:n.x-s-c,ty:i(l),labelX:a,labelY:i(l),textAnchor:"end"}))}function Mt(e,t){let i=e.y+e.height+(t.showAxisLine?t.axisLineWidth/2:0);return{x1:e.x,y1:i,x2:e.x+e.width,y2:i}}function Pt(e,t){let i=e.y-(t.showAxisLine?t.axisLineWidth/2:0);return{x1:e.x,y1:i,x2:e.x+e.width,y2:i}}function Qe(e,t){let i=e.x-(t.showAxisLine?t.axisLineWidth/2:0);return{x1:i,y1:e.y,x2:i,y2:e.y+e.height}}function Ft(e,t,i,n){if(!(!e||!n.showTitle))return{text:e,x:t.x+t.width/2,y:i-n.titlePadding}}function Rt(e,t,i,n){if(!(!e||!n.showTitle))return{text:e,x:t.x+t.width/2,y:i+n.titlePadding+n.titleFontSize}}function Ze(e,t,i){if(!(!e||!i.showTitle))return{text:e,x:i.titlePadding+i.titleFontSize*.8,y:t.y+t.height/2,rotate:-90}}function Xt(e,t,i,n,o,s,c){let l=e.series.filter(b=>b.type==="bar").length;if(l===0)return[];let x=i*(1-He),h=x/Math.max(1,l),u=[],y=0,m=0,f=n(o);for(let b of e.series){if(b.type!=="bar"){m++;continue}for(let C=0;C<b.data.length;C++){let $=t(C)-x/2+y*h,T=n(b.data[C]);u.push({x:$,y:Math.min(T,f),width:h,height:Math.abs(f-T),value:b.data[C],label:s[C],seriesIndex:y,colorIndex:c[m]})}y++,m++}return u}function _t(e,t,i,n,o,s,c){let l=e.series.filter(b=>b.type==="bar").length;if(l===0)return[];let x=i*(1-He),h=x/Math.max(1,l),u=[],y=0,m=0,f=n(o);for(let b of e.series){if(b.type!=="bar"){m++;continue}for(let C=0;C<b.data.length;C++){let $=t(C)-x/2+y*h,T=n(b.data[C]);u.push({x:Math.min(T,f),y:$,width:Math.abs(T-f),height:h,value:b.data[C],label:s[C],seriesIndex:y,colorIndex:c[m]})}y++,m++}return u}function Yt(e,t,i,n,o){let s=[],c=0,a=0;for(let l of e.series){if(l.type!=="line"){a++;continue}s.push({points:l.data.map((x,h)=>({x:t(h),y:i(x),value:x,label:n[h],...l.pointLabels?.[h]!==void 0?{textLabel:l.pointLabels[h]}:{}})),seriesIndex:c,colorIndex:o[a]}),c++,a++}return s}function Wt(e,t,i,n,o){let s=[],c=0,a=0;for(let l of e.series){if(l.type!=="line"){a++;continue}s.push({points:l.data.map((x,h)=>({x:i(x),y:t(h),value:x,label:n[h],...l.pointLabels?.[h]!==void 0?{textLabel:l.pointLabels[h]}:{}})),seriesIndex:c,colorIndex:o[a]}),c++,a++}return s}function at(e){let t=st(e),i=Ae(t),n=i.accessibility,o=i.unclosedIndex,s=o===void 0?i.familyLines:i.familyLines.slice(0,o-t.length);o!==void 0&&(n.descr=t.slice(o).join(`
6
- `).replace(/^[^{]*\{/,"").trim()||void 0);let c={},a={},l=[],x=st(s),h,u=!1,y;for(let m=0;m<x.length;m++){let f=x[m];if(/^xychart(-beta)?\b/i.test(f)){/\bhorizontal\b/i.test(f)?(u=!0,y="horizontal"):/\bvertical\b/i.test(f)&&(u=!1,y="vertical");continue}let b=f.match(/^title\s+(.+)$/);if(b){h=ie(b[1]);continue}let C=f.match(/^x-axis\s+(.+)$/);if(C){it(c,C[1],"x");continue}let $=f.match(/^y-axis\s+(.+)$/);if($){it(a,$[1],"y");continue}let T=f.match(/^bar(?:\s+(.+?))?\s+\[([^\]]+)\]\s*$/);if(T){let v=Je(T[2]);l.push({type:"bar",label:nt(T[1]),data:v.values});continue}let g=f.match(/^line(?:\s+(.+?))?\s+\[([^\]]+)\]\s*$/);if(g){let v=Je(g[2]);l.push({type:"line",label:nt(g[1]),data:v.values,...v.labels.some(P=>P!==void 0)?{pointLabels:v.labels}:{}});continue}}if(!a.range&&l.length>0){let m=l.flatMap($=>$.data),f=Math.min(...m),b=Math.max(...m),C=b-f||1;f=f-C*.1,b=b+C*.1,f>0&&f<C*.5&&(f=0),a.range={min:f,max:b}}return a.range||(a.range={min:0,max:100}),{title:h,accessibility:n.title||n.descr?{title:n.title,description:n.descr}:void 0,horizontal:u,headerOrientation:y,xAxis:c,yAxis:a,series:l,config:ae({}),theme:le({})}}function lt(e,t,i){return{...e,horizontal:e.headerOrientation?e.horizontal:t.chartOrientation==="horizontal",config:t,theme:i}}var It=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))(?:\s+(.+))?$/;function Je(e){let t=[],i=[];for(let n of dt(e)){let o=n.trim().match(It);if(!o)throw new Error(`Invalid XYChart point: "${n.trim()}"`);let s=Number(o[1]);if(!Number.isFinite(s))throw new Error(`XYChart point must be finite: "${n.trim()}"`);t.push(s),i.push(o[2]?.trim().replace(/\\(["\\])/g,"$1"))}return{values:t,labels:i}}var et=String.raw`[+-]?(?:\d+(?:\.\d+)?|\.\d+)`,tt=new RegExp(`^(${et})\\s*-->\\s*(${et})$`);function it(e,t,i){let n=t.trim();if(n.length===0)return;let o=n.match(/\[(.*)\]\s*$/);if(o&&i==="x"){let a=n.slice(0,o.index).trim();a.length>0&&(e.title=ie(a)),e.categories=dt(o[1]);return}let s=n.match(tt);if(s){e.range={min:parseFloat(s[1]),max:parseFloat(s[2])};return}let c=ct(n);if(c){let a=c.rest.match(tt);if(a){e.title=ie(c.value),e.range={min:parseFloat(a[1]),max:parseFloat(a[2])};return}i==="x"&&c.rest.length===0&&(e.title=ie(c.value))}}function ct(e){let t=e.trim();if(t.length===0)return;if(t.startsWith('"')||t.startsWith("'")){let n=t[0],o=1;for(;o<t.length&&!(t[o]===n&&t[o-1]!=="\\");)o++;return o>=t.length?void 0:{value:t.slice(1,o),rest:t.slice(o+1).trim()}}let i=t.match(/^([^\s]+)(?:\s+(.*))?$/);if(i)return{value:i[1],rest:(i[2]??"").trim()}}function Et(e){let t=ct(e);return t?t.value:e.trim()}function ie(e){let t=e.trim();return t.startsWith('"')||t.startsWith("'")?Et(t):t}function nt(e){if(!e)return;let t=e.trim();return t?ie(t):void 0}function dt(e){let t=[],i="",n=null;for(let o=0;o<e.length;o++){let s=e[o];if(n){s===n&&e[o-1]!=="\\"?n=null:i+=s;continue}if(s==='"'||s==="'"){n=s;continue}if(s===","){ot(t,i),i="";continue}i+=s}return ot(t,i),t}function ot(e,t){let i=t.trim();i.length>0&&e.push(i)}function ae(e){let t=D(e,["config"])??e,i=D(e,["config","xyChart"])??D(e,["xyChart"])??{},n=F(i,["chartOrientation"]);return{width:Y(i,["width"]),height:Y(i,["height"]),useMaxWidth:E(i,["useMaxWidth"])??E(t,["useMaxWidth"]),useWidth:Y(i,["useWidth"])??Y(t,["useWidth"]),titleFontSize:Y(i,["titleFontSize"]),titlePadding:ne(i,["titlePadding"]),chartOrientation:n==="horizontal"||n==="vertical"?n:void 0,plotReservedSpacePercent:Y(i,["plotReservedSpacePercent"]),showDataLabel:E(i,["showDataLabel"]),showTitle:E(i,["showTitle"]),showLegend:E(i,["showLegend"]),legendFontSize:Y(i,["legendFontSize"]),legendPadding:ne(i,["legendPadding"]),xAxis:rt(i,"xAxis"),yAxis:rt(i,"yAxis")}}function le(e){let t=D(e,["config"])??e,i=D(e,["config","themeVariables","xyChart"])??D(e,["themeVariables","xyChart"])??{};return{backgroundColor:F(i,["backgroundColor"]),themeCss:F(t,["themeCSS"]),titleColor:F(i,["titleColor"]),xAxisLabelColor:F(i,["xAxisLabelColor"]),xAxisTickColor:F(i,["xAxisTickColor"]),xAxisLineColor:F(i,["xAxisLineColor"]),xAxisTitleColor:F(i,["xAxisTitleColor"]),yAxisLabelColor:F(i,["yAxisLabelColor"]),yAxisTickColor:F(i,["yAxisTickColor"]),yAxisLineColor:F(i,["yAxisLineColor"]),yAxisTitleColor:F(i,["yAxisTitleColor"]),legendTextColor:F(i,["legendTextColor"]),plotColorPalette:Nt(i,["plotColorPalette"])}}function rt(e,t){let i=D(e,[t]);if(!i)return;let n=E(i,["showLabel"]),o=Y(i,["labelFontSize"]),s=ne(i,["labelPadding"]),c=E(i,["showTitle"]),a=Y(i,["titleFontSize"]),l=ne(i,["titlePadding"]),x=E(i,["showTick"]),h=ne(i,["tickLength"]),u=Y(i,["tickWidth"]),y=E(i,["showAxisLine"]),m=Y(i,["axisLineWidth"]);if(!(n===void 0&&o===void 0&&s===void 0&&c===void 0&&a===void 0&&l===void 0&&x===void 0&&h===void 0&&u===void 0&&y===void 0&&m===void 0))return{showLabel:n,labelFontSize:o,labelPadding:s,showTitle:c,titleFontSize:a,titlePadding:l,showTick:x,tickLength:h,tickWidth:u,showAxisLine:y,axisLineWidth:m}}function Dt(e){if(!e)return;let t=e.split(",").map(i=>i.trim()).filter(Boolean);return t.length>0?t:void 0}function Nt(e,t){let i=ke(e,t);if(i&&i.length>0){let n=i.filter(o=>typeof o=="string").map(o=>o.trim()).filter(Boolean);if(n.length>0)return n}return Dt(F(e,t))}function E(e,t){let i=K(e,t);return typeof i=="boolean"?i:void 0}function Y(e,t){let i=K(e,t);return typeof i=="number"&&Number.isFinite(i)&&i>0?i:void 0}function ne(e,t){let i=K(e,t);return typeof i=="number"&&Number.isFinite(i)&&i>=0?i:void 0}function F(e,t){let i=K(e,t);return typeof i=="string"&&i.trim().length>0?i.trim():void 0}function st(e){let t=[],i=!1;for(let n of e){let o=n.trim();if(!o)continue;if(i){t.push(o),o.includes("}")&&(i=!1);continue}let s=Ot(o);for(let c of s){t.push(c);let a=c.match(/^accDescr\s*:?\s*\{(.*)$/i);a&&!a[1].includes("}")&&(i=!0)}}return t}function Ot(e){let t=[],i="",n=null,o=0,s=0;for(let a=0;a<e.length;a++){let l=e[a];if(n){i+=l,l===n&&e[a-1]!=="\\"&&(n=null);continue}if(l==='"'||l==="'"){n=l,i+=l;continue}if(l==="["){o++,i+=l;continue}if(l==="]"){o--,i+=l;continue}if(l==="{"){s++,i+=l;continue}if(l==="}"){s--,i+=l;continue}if(l===";"&&o===0&&s===0){let x=i.trim();x&&t.push(x),i="";continue}i+=l}let c=i.trim();return c&&t.push(c),t}var H={titleWeight:500,axisTitleWeight:400,labelWeight:400,dotRadius:4,lineWidth:3};function ft(e){let{positioned:t,colors:i,resolved:n}=e,o=n.renderOptions,s=i.font??"Inter",c=o.transparent??!1,a=o.interactive??!1,l=[],x=Z(o,se,n.styleFace),h=mt(t,x),u=!!t.theme.plotColorPalette?.length,y=Math.max(0,...t.bars.map(r=>r.colorIndex),...t.lines.map(r=>r.colorIndex)),m=Gt(t),f=Me(t.width,t.height,i,c,m.openTag).replace("<svg ",`<svg data-xychart-colors="${y}" `),{style:b,defs:C}=Bt(t,a,i.accent,i.bg,o,n.styleFace);l.push(Re({id:"prelude",width:t.width,height:t.height,colors:i,transparent:c,font:s,hasMonoFont:!1,extraCss:b},f+`
7
- `+ze(s,!1,i.shadow,i.embedFontImport)+`
8
- `+b));let $=we(i);$&&l.push(he({id:"shadow-defs"},`<defs>${$}</defs>`)),C&&l.push(he({id:"defs"},C)),m.title&&l.push(j({id:"acc-title",role:"chrome"},m.title)),m.description&&l.push(j({id:"acc-desc",role:"chrome"},m.description));let T={stroke:h.gridStroke,strokeWidth:"1",...x.edgeStrokeColor?{opacity:"0.25"}:{}};t.gridLines.forEach((r,d)=>{l.push(I({id:`grid:y:${d}`,role:"grid",geometry:{kind:"line",x1:L(r.x1),y1:L(r.y1),x2:L(r.x2),y2:L(r.y2)},paint:T},`<line x1="${p(r.x1)}" y1="${p(r.y1)}" x2="${p(r.x2)}" y2="${p(r.y2)}" class="xychart-grid"/>`))}),xt(l,t.xAxis,"x",h.xAxisLineColor,h.xAxisTickColor),xt(l,t.yAxis,"y",h.yAxisLineColor,h.yAxisTickColor);let g=Math.max(0,...t.bars.map(r=>Math.abs(r.value)),...t.lines.flatMap(r=>r.points.map(d=>Math.abs(d.value)))),v=r=>g>0?r/g:void 0,P=[],q=new Map;for(let r of t.bars){let d=q.get(r.seriesIndex)??0;q.set(r.seriesIndex,d+1);let A=`bar:${r.seriesIndex}:${r.label??d}`,k=` data-value="${r.value}"${r.label?` data-label="${M(r.label)}"`:""}`,w={category:`bar-${r.seriesIndex}`,value:v(r.value)},z=fe(n.styleFace,"bar",w,{includeFallback:!1}),S=`var(--xychart-color-${r.colorIndex})`,V=u?S:z?.fillColor??S,ce=z?.strokeColor??z?.borderColor,de=z?.lineWidth,gt=ut({...u?{}:{fill:z?.fillColor},stroke:ce,strokeWidth:de});if(l.push(I({id:A,role:"bar",geometry:{kind:"rect",x:L(r.x),y:L(r.y),width:L(r.width),height:L(r.height)},paint:{fill:V,...ce?{stroke:ce}:{},...de!==void 0?{strokeWidth:String(de)}:{}},channels:w},`<rect x="${p(r.x)}" y="${p(r.y)}" width="${p(r.width)}" height="${p(r.height)}" class="xychart-bar xychart-color-${r.colorIndex}"${gt}${k}/>`)),a){let xe=Ce(r.value),yt=r.label?`${r.label}: ${xe}`:xe,pt=t.horizontal?r.x+r.width:r.x+r.width/2,bt=t.horizontal?r.y+r.height/2:r.y;P.push(j({id:`tooltip:${A}`,role:"chrome"},`<g class="xychart-bar-group"><rect x="${p(r.x)}" y="${p(r.y)}" width="${p(r.width)}" height="${p(r.height)}" fill="transparent"/><title>${M(yt)}</title>`+ge("xychart",pt,bt,xe)+"</g>"))}}for(let r of t.lines){if(r.points.length<2)continue;let d=Ht(r.points),A={category:`line-${r.seriesIndex}`},k=fe(n.styleFace,"series",A,{includeFallback:!1}),w=`var(--xychart-color-${r.colorIndex})`,z=u?w:k?.strokeColor??k?.borderColor??w,S=k?.lineWidth??x.lineWidth,V=ut({...u?{}:{stroke:k?.strokeColor??k?.borderColor},strokeWidth:k?.lineWidth});l.push(Pe({id:`series:line-${r.seriesIndex}`,role:"series",geometry:{kind:"path",d,points:r.points},lineStyle:"solid",paint:{stroke:z,strokeWidth:String(S)},channels:A},`<path d="${d}" class="xychart-line xychart-color-${r.colorIndex}"${V}/>`))}for(let r of t.lines)r.points.forEach((d,A)=>{if(d.textLabel===void 0)return;let k=t.horizontal?"right":"above",w=d.x+(t.horizontal?8:0),z=d.y+(t.horizontal?4:-8),S=t.horizontal?"start":"middle";l.push(I({id:`point-label-dot:${r.seriesIndex}:${A}`,role:"point",geometry:{kind:"circle",cx:L(d.x),cy:L(d.y),r:H.dotRadius},paint:{fill:`var(--xychart-color-${r.colorIndex})`,stroke:"var(--bg)",strokeWidth:"1"},channels:{category:`line-${r.seriesIndex}`,value:v(d.value)}},`<circle cx="${p(d.x)}" cy="${p(d.y)}" r="${H.dotRadius}" class="xychart-dot xychart-color-${r.colorIndex}" data-value="${d.value}"/>`)),l.push(N({id:`point-label:${r.seriesIndex}:${A}`,role:"label",text:d.textLabel,x:w,y:z,fontSize:12,anchor:S,paint:{fill:`var(--xychart-color-${r.colorIndex})`},channels:{category:`line-${r.seriesIndex}`,value:v(d.value)}},`<text class="xychart-point-label xychart-color-${r.colorIndex}" data-label-position="${k}" x="${p(w)}" y="${p(z)}" text-anchor="${S}" font-size="12" fill="var(--xychart-color-${r.colorIndex})">${M(d.textLabel)}</text>`))});let W=[];if(a)for(let r of t.lines)r.points.forEach((d,A)=>{let k=`point:line-${r.seriesIndex}:${d.label??A}`,w=` data-value="${d.value}"${d.label?` data-label="${M(d.label)}"`:""}`,z=Ce(d.value),S=d.label?`${d.label}: ${z}`:z;W.push(ue({id:`point-group:line-${r.seriesIndex}:${d.label??A}`,role:"chrome",open:'<g class="xychart-dot-group">',close:"</g>",join:"",children:[{node:j({id:`hit:${k}`,role:"chrome"},`<circle cx="${p(d.x)}" cy="${p(d.y)}" r="${H.dotRadius*3}" fill="transparent" class="xychart-hit"/>`),indent:0},{node:I({id:k,role:"point",geometry:{kind:"circle",cx:L(d.x),cy:L(d.y),r:H.dotRadius},paint:{fill:`var(--xychart-color-${r.colorIndex})`,stroke:"var(--bg)",strokeWidth:"2"},channels:{category:`line-${r.seriesIndex}`,value:v(d.value)}},`<circle cx="${p(d.x)}" cy="${p(d.y)}" r="${H.dotRadius}" class="xychart-dot xychart-color-${r.colorIndex}"${w}/>`),indent:0},{node:j({id:`tooltip:${k}`,role:"chrome"},`<title>${M(S)}</title>`+ge("xychart",d.x,d.y-H.dotRadius,z)),indent:0}]}))});if(t.config.showDataLabel){let r=new Map;for(let d of Vt(t.bars,t.horizontal??!1)){let A=G(d.text,x.nodeTextTransform),k=r.get(d.bar.seriesIndex)??0;r.set(d.bar.seriesIndex,k+1),l.push(N({id:`label:bar:${d.bar.seriesIndex}:${d.bar.label??k}`,role:"label",text:A,x:d.x,y:d.y,fontSize:d.fontSize,anchor:d.anchor,paint:{fill:h.labelColor},channels:{category:`bar-${d.bar.seriesIndex}`,value:v(d.bar.value)}},`<text x="${p(d.x)}" y="${p(d.y)}" text-anchor="${d.anchor}" ${d.dominantBaseline?`dominant-baseline="${d.dominantBaseline}" `:""}font-size="${d.fontSize}" font-weight="${x.nodeLabelFontWeight}"${U(x.nodeLetterSpacing)} class="xychart-data-label">${M(A)}</text>`))}}if(ht(l,t.xAxis.ticks,t.xAxis.config.labelFontSize,"x",x,h.xAxisLabelColor),ht(l,t.yAxis.ticks,t.yAxis.config.labelFontSize,"y",x,h.yAxisLabelColor),t.xAxis.title){let r=t.xAxis.title,d=G(r.text,x.edgeTextTransform),A=r.rotate?{kind:"rotate",angle:r.rotate,cx:r.x,cy:r.y}:void 0,k=A?` transform="rotate(${A.angle},${A.cx},${A.cy})"`:"";l.push(N({id:"axis:x:title",role:"axis",text:d,x:r.x,y:r.y,fontSize:t.xAxis.config.titleFontSize,anchor:"middle",paint:{fill:h.xAxisTitleColor},transform:A},`<text x="${r.x}" y="${r.y}" text-anchor="middle"${k} font-size="${t.xAxis.config.titleFontSize}" font-weight="${x.edgeLabelFontWeight}"${U(x.edgeLetterSpacing)} dy="${Q}" class="xychart-axis-title xychart-x-axis-title">${M(d)}</text>`))}if(t.yAxis.title){let r=t.yAxis.title,d=G(r.text,x.edgeTextTransform),A=r.rotate?{kind:"rotate",angle:r.rotate,cx:r.x,cy:r.y}:void 0,k=A?` transform="rotate(${A.angle},${A.cx},${A.cy})"`:"";l.push(N({id:"axis:y:title",role:"axis",text:d,x:r.x,y:r.y,fontSize:t.yAxis.config.titleFontSize,anchor:"middle",paint:{fill:h.yAxisTitleColor},transform:A},`<text x="${r.x}" y="${r.y}" text-anchor="middle"${k} font-size="${t.yAxis.config.titleFontSize}" font-weight="${x.edgeLabelFontWeight}"${U(x.edgeLetterSpacing)} dy="${Q}" class="xychart-axis-title xychart-y-axis-title">${M(d)}</text>`))}if(t.title){let r=G(t.title.text,x.groupTextTransform);l.push(N({id:"title",role:"title",text:r,x:t.title.x,y:t.title.y,fontSize:t.config.titleFontSize,anchor:"middle",paint:{fill:h.titleColor}},`<text x="${t.title.x}" y="${t.title.y}" text-anchor="middle" font-size="${t.config.titleFontSize}" font-weight="${x.groupHeaderFontWeight}"${U(x.groupLetterSpacing)} dy="${Q}" class="xychart-title">${M(r)}</text>`))}if(t.legend.length>0){let r=[];for(let d of t.legend){let A=d.y+X/2;d.type==="bar"?r.push({node:I({id:`legend:swatch:${d.colorIndex}`,role:"legend",geometry:{kind:"rect",x:L(d.x),y:L(d.y),width:X,height:X,rx:2,ry:2},paint:{fill:`var(--xychart-color-${d.colorIndex})`},channels:{category:`bar-${d.seriesIndex}`}},`<rect x="${p(d.x)}" y="${p(d.y)}" width="${X}" height="${X}" rx="2" ry="2" class="xychart-legend-swatch" fill="var(--xychart-color-${d.colorIndex})"/>`),indent:2}):(r.push({node:I({id:`legend:swatch:${d.colorIndex}`,role:"legend",geometry:{kind:"line",x1:L(d.x),y1:L(A),x2:L(d.x+X),y2:L(A)},paint:{stroke:`var(--xychart-color-${d.colorIndex})`,strokeWidth:String(H.lineWidth)},channels:{category:`line-${d.seriesIndex}`}},`<line x1="${p(d.x)}" y1="${p(A)}" x2="${p(d.x+X)}" y2="${p(A)}" class="xychart-legend-swatch" stroke="var(--xychart-color-${d.colorIndex})" stroke-width="${H.lineWidth}" stroke-linecap="round"/>`),indent:2}),r.push({node:I({id:`legend:dot:${d.colorIndex}`,role:"legend",geometry:{kind:"circle",cx:L(d.x+X/2),cy:L(A),r:2.5},paint:{fill:`var(--xychart-color-${d.colorIndex})`,stroke:"var(--bg)",strokeWidth:"1"},channels:{category:`line-${d.seriesIndex}`}},`<circle cx="${p(d.x+X/2)}" cy="${p(A)}" r="2.5" class="xychart-legend-dot" fill="var(--xychart-color-${d.colorIndex})" stroke="var(--bg)" stroke-width="1"/>`),indent:2}));let k=G(d.label,x.nodeTextTransform),w=d.x+X+be;r.push({node:N({id:`legend:label:${d.colorIndex}`,role:"legend",text:k,x:L(w),y:L(A),fontSize:t.config.legendFontSize,anchor:"start",paint:{fill:h.legendTextColor}},`<text x="${p(w)}" y="${p(A)}" text-anchor="start" dominant-baseline="middle" font-size="${t.config.legendFontSize}" font-weight="${x.nodeLabelFontWeight}"${U(x.nodeLetterSpacing)} class="xychart-legend-label">${M(k)}</text>`),indent:2})}l.push(ue({id:"legend",role:"legend",open:'<g class="xychart-legend">',close:"</g>",children:r}))}for(let r of P)l.push(r);for(let r of W)l.push(r);return l.push(Fe()),{family:"xychart",width:t.width,height:t.height,colors:i,transparent:c,parts:l}}function xt(e,t,i,n,o){if(t.config.showAxisLine&&e.push(I({id:`axis:${i}:line`,role:"axis",geometry:{kind:"line",x1:L(t.line.x1),y1:L(t.line.y1),x2:L(t.line.x2),y2:L(t.line.y2)},paint:{stroke:n,strokeWidth:String(t.config.axisLineWidth)}},`<line x1="${p(t.line.x1)}" y1="${p(t.line.y1)}" x2="${p(t.line.x2)}" y2="${p(t.line.y2)}" class="xychart-axis-line xychart-${i}-axis-line" stroke-width="${t.config.axisLineWidth}"/>`)),!!t.config.showTick)for(let s of t.ticks)e.push(I({id:`axis:${i}:tick:${s.label}`,role:"axis",geometry:{kind:"line",x1:L(s.x),y1:L(s.y),x2:L(s.tx),y2:L(s.ty)},paint:{stroke:o,strokeWidth:String(t.config.tickWidth)}},`<line x1="${p(s.x)}" y1="${p(s.y)}" x2="${p(s.tx)}" y2="${p(s.ty)}" class="xychart-tick xychart-${i}-tick" stroke-width="${t.config.tickWidth}"/>`))}function ht(e,t,i,n,o,s){for(let c of t){let a=G(c.label,o.edgeTextTransform),l=c.textAnchor==="end"?' dominant-baseline="middle"':"",x=c.textAnchor==="end"?"":` dy="${Q}"`;e.push(N({id:`axis:${n}:label:${c.label}`,role:"axis",text:a,x:c.labelX,y:c.labelY,fontSize:i,anchor:c.textAnchor,paint:{fill:s}},`<text x="${c.labelX}" y="${c.labelY}" text-anchor="${c.textAnchor}"${l} font-size="${i}" font-weight="${o.nodeLabelFontWeight}"${U(o.nodeLetterSpacing)}${x} class="xychart-label xychart-${n}-label">${M(a)}</text>`))}}function mt(e,t){let i=e.theme;return{gridStroke:t.edgeStrokeColor??"color-mix(in srgb, var(--fg) 14%, transparent)",titleColor:i.titleColor??t.groupTextColor??t.nodeTextColor??"var(--_text)",labelColor:t.nodeTextColor??"var(--_text)",axisTitleColor:t.edgeTextColor??t.nodeTextColor??"var(--_text)",xAxisLabelColor:i.xAxisLabelColor??t.nodeTextColor??"var(--_text)",yAxisLabelColor:i.yAxisLabelColor??t.nodeTextColor??"var(--_text)",xAxisTickColor:i.xAxisTickColor??t.groupTextColor??"var(--_text-sec)",yAxisTickColor:i.yAxisTickColor??t.groupTextColor??"var(--_text-sec)",xAxisLineColor:i.xAxisLineColor??t.edgeStrokeColor??"var(--_text-sec)",yAxisLineColor:i.yAxisLineColor??t.edgeStrokeColor??"var(--_text-sec)",xAxisTitleColor:i.xAxisTitleColor??t.edgeTextColor??t.nodeTextColor??"var(--_text)",yAxisTitleColor:i.yAxisTitleColor??t.edgeTextColor??t.nodeTextColor??"var(--_text)",legendTextColor:i.legendTextColor??t.nodeTextColor??"var(--_text)"}}function Bt(e,t,i,n,o={},s){let c=Z(o,se,s),a=mt(e,c),l=i??me,x=e.theme,h=new Set;for(let g of e.bars)h.add(g.colorIndex);for(let g of e.lines)h.add(g.colorIndex);let u=[],y=x.plotColorPalette,m=Xe(Math.max(0,...h)+1,{accent:l,bg:n});for(let g of[...h].sort((v,P)=>v-P)){let v=y&&y.length>0?y[g%y.length]:g===0&&m.length<=6?`var(--accent, ${me})`:m[g];u.push(` --xychart-color-${g}: ${v};`)}let f=[];for(let g of[...h].sort((v,P)=>v-P)){let v=`var(--xychart-color-${g})`;f.push(` .xychart-bar.xychart-color-${g} { fill: ${v}; }`),f.push(` path.xychart-color-${g}, line.xychart-color-${g} { stroke: ${v}; }`),f.push(` circle.xychart-color-${g} { fill: ${v}; }`)}let b=t?_e("xychart",["xychart-bar-group","xychart-dot-group"]):"",C=u.length>0?`
9
- svg {
10
- ${u.join(`
11
- `)}
12
- }`:"",$=e.theme.themeCss?`
13
- ${e.theme.themeCss}
14
- `:"";return{style:`<style>
15
- .xychart-grid { stroke: ${a.gridStroke}; stroke-width: 1${c.edgeStrokeColor?"; opacity: 0.25":""}; }
16
- .xychart-axis-line { fill: none; }
17
- .xychart-tick { fill: none; }
18
- .xychart-x-axis-line { stroke: ${a.xAxisLineColor}; }
19
- .xychart-y-axis-line { stroke: ${a.yAxisLineColor}; }
20
- .xychart-x-tick { stroke: ${a.xAxisTickColor}; }
21
- .xychart-y-tick { stroke: ${a.yAxisTickColor}; }
22
- .xychart-bar { stroke: none; }
23
- .xychart-line { fill: none; stroke-width: ${c.lineWidth}; stroke-linecap: round; stroke-linejoin: round; }
24
- .xychart-dot { stroke: var(--bg); stroke-width: 2; }
25
- .xychart-label { fill: ${a.labelColor}; }
26
- .xychart-x-label { fill: ${a.xAxisLabelColor}; }
27
- .xychart-y-label { fill: ${a.yAxisLabelColor}; }
28
- .xychart-axis-title { fill: ${a.axisTitleColor}; }
29
- .xychart-x-axis-title { fill: ${a.xAxisTitleColor}; }
30
- .xychart-y-axis-title { fill: ${a.yAxisTitleColor}; }
31
- .xychart-title { fill: ${a.titleColor}; }
32
- .xychart-data-label { fill: ${a.labelColor}; pointer-events: none; }${e.legend.length>0?`
33
- .xychart-legend-label { fill: ${a.legendTextColor}; }`:""}${C}
34
- ${f.join(`
35
- `)}${b}${$}
36
- </style>`,defs:""}}function ut(e){let t=[];return e.fill!==void 0&&t.push(`fill:${M(e.fill)}`),e.stroke!==void 0&&t.push(`stroke:${M(e.stroke)}`),e.strokeWidth!==void 0&&t.push(`stroke-width:${e.strokeWidth}`),t.length>0?` style="${t.join(";")}"`:""}function Ht(e){if(e.length===0)return"";let t=`M${p(e[0].x)},${p(e[0].y)}`;for(let i=1;i<e.length;i++)t+=` L${p(e[i].x)},${p(e[i].y)}`;return t}function Vt(e,t){let i=e.filter(a=>a.width>0&&a.height>0);if(i.length===0)return[];let n=i.map(a=>Ce(a.value)),o=i.map((a,l)=>{let x=n[l];if(t){let y=Math.max(0,(a.width-12)/Math.max(1,x.length*.62));return Math.min(a.height*.72,y)}let h=Math.max(0,(a.width-8)/Math.max(1,x.length*.62)),u=Math.max(0,a.height-10);return Math.min(h,u)}),s=Math.floor(Math.min(...o));if(!Number.isFinite(s)||s<8)return[];let c=Math.min(16,s);return i.map((a,l)=>t?{bar:a,x:a.x+a.width-8,y:a.y+a.height/2,text:n[l],anchor:"end",fontSize:c,dominantBaseline:"middle"}:{bar:a,x:a.x+a.width/2,y:a.y+8,text:n[l],anchor:"middle",fontSize:c,dominantBaseline:"hanging"})}function Ce(e){return Number.isInteger(e)?String(e):e.toFixed(Math.abs(e)<10?1:0)}function L(e){return Math.round(e*100)/100}function p(e){return L(e).toString()}function U(e){return e!==0?` letter-spacing="${e}"`:""}function Gt(e){let t=`mermaid-${qt(e)}`,i=e.accessibility?.title?`chart-title-${t}`:void 0,n=e.accessibility?.description?`chart-desc-${t}`:void 0,o=e.config.useWidth??e.width,s=e.config.useMaxWidth?"100%":String(o),c=e.config.useMaxWidth?"100%":String(Math.round(e.height*(o/Math.max(1,e.width)))),a=e.config.useMaxWidth?`max-width:${o}px`:void 0;return{openTag:{width:s,height:c,style:a,attrs:{id:t,class:"xychart",role:i||n?"img":void 0,"aria-roledescription":"xychart","aria-labelledby":i,"aria-describedby":n}},title:e.accessibility?.title?`<title id="${i}">${M(e.accessibility.title)}</title>`:void 0,description:e.accessibility?.description?`<desc id="${n}">${M(e.accessibility.description)}</desc>`:void 0}}function qt(e){let t=[e.width,e.height,e.title?.text??"",e.accessibility?.title??"",e.accessibility?.description??"",e.bars.length,e.lines.length].join("|"),i=5381;for(let n=0;n<t.length;n++)i=(i<<5)+i^t.charCodeAt(n);return Math.abs(i>>>0).toString(36)}var Ti=Te(Ye,{normalizeRequest:e=>{let t=ae(e.source.frontmatter),i=le(e.source.frontmatter);return{familyConfig:{config:t},appearance:{...e.renderOptions.bg===void 0&&i.backgroundColor?{colors:{bg:i.backgroundColor}}:{},family:{theme:i}}}},layout:e=>{let t=e.familyConfig,i=e.familyAppearance,n=lt($e(at(e.source.familyLines),e.source.accessibility),t?.config??ae({}),i?.theme??le({}));return ve(Ve(n,e.renderOptions,e.styleFace),{injectAccessibility:!1})},lowerScene:Le(ft)});export{Ti as default};