@aiquants/markdown 6.2.0 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/README.md +21 -0
  2. package/dist/{abnfDiagram-VRR7QNED-DX6eyf4O.cjs → abnfDiagram-VRR7QNED-BGUmgNQ4.cjs} +1 -1
  3. package/dist/{abnfDiagram-VRR7QNED-Csrzuwyl.js → abnfDiagram-VRR7QNED-D3L_2hCD.js} +3 -3
  4. package/dist/{arc-ZAQ3z7kr.cjs → arc-B48_ucR0.cjs} +1 -1
  5. package/dist/{arc-Gw7Urszo.js → arc-ChEpDr_9.js} +1 -1
  6. package/dist/{architectureDiagram-ZJ3FMSHR-DxzMbkp1.cjs → architectureDiagram-ZJ3FMSHR-Bg0dBVnf.cjs} +1 -1
  7. package/dist/{architectureDiagram-ZJ3FMSHR-Coy6_Fcg.js → architectureDiagram-ZJ3FMSHR-D4ta1ajC.js} +2 -2
  8. package/dist/{blockDiagram-677ZJIJ3-CbR-wn2x.js → blockDiagram-677ZJIJ3-CupyE7nK.js} +3 -3
  9. package/dist/{blockDiagram-677ZJIJ3-THmR4OyE.cjs → blockDiagram-677ZJIJ3-DkWMy8pP.cjs} +1 -1
  10. package/dist/{c4Diagram-LMCZKHZV-DHMqNO9p.js → c4Diagram-LMCZKHZV-Cy1lIde9.js} +2 -2
  11. package/dist/{c4Diagram-LMCZKHZV-BcJpuXK1.cjs → c4Diagram-LMCZKHZV-DxOKAkJI.cjs} +1 -1
  12. package/dist/{channel-CfC4eqki.js → channel-C9c0_XwC.js} +1 -1
  13. package/dist/{channel-Cryph4zI.cjs → channel-TOZvPft0.cjs} +1 -1
  14. package/dist/{chunk-2Q5K7J3B-CxWyY331.cjs → chunk-2Q5K7J3B-DaGwwho3.cjs} +1 -1
  15. package/dist/{chunk-2Q5K7J3B-C3BIc3MH.js → chunk-2Q5K7J3B-DahzXbiI.js} +1 -1
  16. package/dist/{chunk-32BRIVSS-C3w_aYfI.cjs → chunk-32BRIVSS-BddWRgx3.cjs} +1 -1
  17. package/dist/{chunk-32BRIVSS-C37ccuiX.js → chunk-32BRIVSS-DFLtYkrI.js} +1 -1
  18. package/dist/{chunk-5VM5RSS4-Cbt79-V5.cjs → chunk-5VM5RSS4-DSg2-2mp.cjs} +1 -1
  19. package/dist/{chunk-5VM5RSS4-DVLmkcyq.js → chunk-5VM5RSS4-DiwEVqol.js} +1 -1
  20. package/dist/{chunk-EX3LRPZG-Co0Bql0-.js → chunk-EX3LRPZG-Ca4uquaA.js} +4 -4
  21. package/dist/{chunk-EX3LRPZG-BZOxrSRn.cjs → chunk-EX3LRPZG-OD-kvRfM.cjs} +1 -1
  22. package/dist/{chunk-JWPE2WC7-Cvt_ToFU.cjs → chunk-JWPE2WC7-BGdnK7yg.cjs} +1 -1
  23. package/dist/{chunk-JWPE2WC7-DUndc3Wb.js → chunk-JWPE2WC7-njgGfGvE.js} +1 -1
  24. package/dist/{chunk-MOJQB5TN-aTSDPliR.js → chunk-MOJQB5TN-B-H_fDpi.js} +1 -1
  25. package/dist/{chunk-MOJQB5TN-AAMW2q8N.cjs → chunk-MOJQB5TN-DPs_chEk.cjs} +1 -1
  26. package/dist/{chunk-PUDLZKDR-Q5QzbDtY.js → chunk-PUDLZKDR-9xQzJ025.js} +6 -6
  27. package/dist/{chunk-PUDLZKDR-CzCdcyAN.cjs → chunk-PUDLZKDR-DZphdeDg.cjs} +1 -1
  28. package/dist/{chunk-RYQCIY6F-DbjhsOnH.cjs → chunk-RYQCIY6F-8Qpsw4iJ.cjs} +1 -1
  29. package/dist/{chunk-RYQCIY6F-O6wbIIFF.js → chunk-RYQCIY6F-BNzT71C4.js} +1 -1
  30. package/dist/{chunk-V7JOEXUC-B6Qc5ABc.cjs → chunk-V7JOEXUC-BPE4_Rfd.cjs} +1 -1
  31. package/dist/{chunk-V7JOEXUC-OTS1fN7j.js → chunk-V7JOEXUC-DG6RRlOY.js} +5 -5
  32. package/dist/{chunk-VR4S4FIN-DlneMFEg.cjs → chunk-VR4S4FIN-C-Pbv_Mm.cjs} +1 -1
  33. package/dist/{chunk-VR4S4FIN-D4tY80kq.js → chunk-VR4S4FIN-CLtgFgby.js} +1 -1
  34. package/dist/{chunk-XXDRQBXY-CvhBfnFQ.cjs → chunk-XXDRQBXY-B0bOz96Q.cjs} +1 -1
  35. package/dist/{chunk-XXDRQBXY-58rTAwvh.js → chunk-XXDRQBXY-DEXdwwNg.js} +1 -1
  36. package/dist/{classDiagram-v2-EOCWNBFH-hcuKRiyp.js → classDiagram-OUVF2IWQ-B9uAd2dg.js} +2 -2
  37. package/dist/{classDiagram-OUVF2IWQ-C0S2HAJU.cjs → classDiagram-OUVF2IWQ-DMqQXVMf.cjs} +1 -1
  38. package/dist/{classDiagram-OUVF2IWQ-hcuKRiyp.js → classDiagram-v2-EOCWNBFH-B9uAd2dg.js} +2 -2
  39. package/dist/{classDiagram-v2-EOCWNBFH-C0S2HAJU.cjs → classDiagram-v2-EOCWNBFH-DMqQXVMf.cjs} +1 -1
  40. package/dist/components/MermaidDiagram.d.ts +1 -0
  41. package/dist/components/mdastNodes/CodeNode.d.ts +2 -1
  42. package/dist/{cose-bilkent-JH36ORCC-BwltbHKG.js → cose-bilkent-JH36ORCC-DVB8IdFe.js} +1 -1
  43. package/dist/{cose-bilkent-JH36ORCC-DVZVn03H.cjs → cose-bilkent-JH36ORCC-DxpO_Qhk.cjs} +1 -1
  44. package/dist/{cynefinDiagram-TSTJHNR4-ogTeIoNY.js → cynefinDiagram-TSTJHNR4-C-iEKX8r.js} +2 -2
  45. package/dist/{cynefinDiagram-TSTJHNR4-DYCBxaEi.cjs → cynefinDiagram-TSTJHNR4-Dvc8nHOe.cjs} +1 -1
  46. package/dist/{dagre-VKFMJZFB-BfNdgMHQ.js → dagre-VKFMJZFB-CI1hyGqk.js} +2 -2
  47. package/dist/{dagre-VKFMJZFB-DJW9o9XX.cjs → dagre-VKFMJZFB-DqU8jG6A.cjs} +1 -1
  48. package/dist/{diagram-FQU43EPY-BRpNVpgn.cjs → diagram-FQU43EPY-DQHw46B-.cjs} +1 -1
  49. package/dist/{diagram-FQU43EPY-CJf3yD8h.js → diagram-FQU43EPY-iMIQEr1Q.js} +2 -2
  50. package/dist/{diagram-G47NLZAW-5rZfUeWV.cjs → diagram-G47NLZAW-Dxkn-83c.cjs} +1 -1
  51. package/dist/{diagram-G47NLZAW-D0-6oupP.js → diagram-G47NLZAW-L7A0K5es.js} +3 -3
  52. package/dist/{diagram-NH7WQ7WH-BwrWWWZJ.js → diagram-NH7WQ7WH-8BnG6h8J.js} +2 -2
  53. package/dist/{diagram-NH7WQ7WH-g7m8p5fK.cjs → diagram-NH7WQ7WH-CBMFD5SB.cjs} +1 -1
  54. package/dist/{diagram-OA4YK3LP-BBqA1m8s.js → diagram-OA4YK3LP-C24uGaef.js} +3 -3
  55. package/dist/{diagram-OA4YK3LP-BxP8KUna.cjs → diagram-OA4YK3LP-DrD1SsZM.cjs} +1 -1
  56. package/dist/{diagram-WEI45ONY-DgJyq1w0.cjs → diagram-WEI45ONY-BYN2qTiw.cjs} +1 -1
  57. package/dist/{diagram-WEI45ONY-CMexm2GN.js → diagram-WEI45ONY-kBWsy9sQ.js} +2 -2
  58. package/dist/{ebnfDiagram-CCIWWBDH-sfiWOXCW.cjs → ebnfDiagram-CCIWWBDH-C7whdHrV.cjs} +1 -1
  59. package/dist/{ebnfDiagram-CCIWWBDH-DvLr_8nV.js → ebnfDiagram-CCIWWBDH-DRfaz75o.js} +3 -3
  60. package/dist/{erDiagram-Q63AITRT-B11THykZ.cjs → erDiagram-Q63AITRT-Cbh7ns6U.cjs} +1 -1
  61. package/dist/{erDiagram-Q63AITRT-D6U6Ng3Y.js → erDiagram-Q63AITRT-CvcOag5w.js} +4 -4
  62. package/dist/extractHeadings-By3kC3b_.cjs +311 -0
  63. package/dist/{extractHeadings-CdLPwHlC.js → extractHeadings-Dz8gnhsx.js} +4632 -4620
  64. package/dist/flowDiagram-23GEKE2U-C5ygxVuP.js +7 -0
  65. package/dist/flowDiagram-23GEKE2U-DSpM0zzA.cjs +1 -0
  66. package/dist/{ganttDiagram-NO4QXBWP-CGCdgj0K.js → ganttDiagram-NO4QXBWP-Ccrw6Vga.js} +2 -2
  67. package/dist/{ganttDiagram-NO4QXBWP-BLlXK3zo.cjs → ganttDiagram-NO4QXBWP-YWoWQpTa.cjs} +1 -1
  68. package/dist/gen/markdown/v1/markdown_pb.d.ts +1 -0
  69. package/dist/{gitGraphDiagram-IHSO6WYX-Bib3c0C6.js → gitGraphDiagram-IHSO6WYX-C-mHT-ew.js} +3 -3
  70. package/dist/{gitGraphDiagram-IHSO6WYX-BHOyibqH.cjs → gitGraphDiagram-IHSO6WYX-nKm0aLrL.cjs} +1 -1
  71. package/dist/index.cjs +1 -1
  72. package/dist/index.client.cjs +1 -1
  73. package/dist/index.client.js +1 -1
  74. package/dist/index.js +1 -1
  75. package/dist/index.server.cjs +1 -1
  76. package/dist/index.server.js +59 -38
  77. package/dist/{infoDiagram-FWYZ7A6U-BcDp6g1Y.cjs → infoDiagram-FWYZ7A6U-B6uUqDCC.cjs} +1 -1
  78. package/dist/{infoDiagram-FWYZ7A6U-BUqDBIaP.js → infoDiagram-FWYZ7A6U-HBcwdQ6Z.js} +1 -1
  79. package/dist/{ishikawaDiagram-FXEZZL3T-CcPh4nuP.js → ishikawaDiagram-FXEZZL3T-CcSYEsTJ.js} +1 -1
  80. package/dist/{ishikawaDiagram-FXEZZL3T-C3QHQ1ia.cjs → ishikawaDiagram-FXEZZL3T-D9WZm1OZ.cjs} +1 -1
  81. package/dist/{journeyDiagram-5HDEW3XC-B17v98Wb.cjs → journeyDiagram-5HDEW3XC-BC3ajweK.cjs} +1 -1
  82. package/dist/{journeyDiagram-5HDEW3XC-MdxndgF1.js → journeyDiagram-5HDEW3XC-PJm-8Gz8.js} +4 -4
  83. package/dist/{kanban-definition-HUTT4EX6-JhfZ6Qik.js → kanban-definition-HUTT4EX6-42_dEzBV.js} +2 -2
  84. package/dist/{kanban-definition-HUTT4EX6-BApVXeVQ.cjs → kanban-definition-HUTT4EX6-BR-C1joQ.cjs} +1 -1
  85. package/dist/{linear-dbOUbGpD.js → linear-B7J7VKh9.js} +1 -1
  86. package/dist/{linear-CIVwb13z.cjs → linear-CoCezkp4.cjs} +1 -1
  87. package/dist/{mindmap-definition-LN4V7U3C-BUbo0u-Y.cjs → mindmap-definition-LN4V7U3C-BO555Yeu.cjs} +1 -1
  88. package/dist/{mindmap-definition-LN4V7U3C-gNTBga2z.js → mindmap-definition-LN4V7U3C-e4fXdr28.js} +3 -3
  89. package/dist/{pegDiagram-2B236MQR-DZiQVxu1.cjs → pegDiagram-2B236MQR-CqN17IwE.cjs} +1 -1
  90. package/dist/{pegDiagram-2B236MQR-BqjpbNkG.js → pegDiagram-2B236MQR-nN-jUv5o.js} +3 -3
  91. package/dist/{pieDiagram-ENE6RG2P-D2nxDVFV.cjs → pieDiagram-ENE6RG2P-D_EIGKcE.cjs} +1 -1
  92. package/dist/{pieDiagram-ENE6RG2P-C1Gr48CK.js → pieDiagram-ENE6RG2P-EvhF_8o2.js} +3 -3
  93. package/dist/{quadrantDiagram-ABIIQ3AL-DuD9ZdUQ.js → quadrantDiagram-ABIIQ3AL-2gTiccyy.js} +2 -2
  94. package/dist/{quadrantDiagram-ABIIQ3AL-C855tL3K.cjs → quadrantDiagram-ABIIQ3AL-HNTFSQzi.cjs} +1 -1
  95. package/dist/{railroadDiagram-RFXS5EU6-BZsnhaQd.cjs → railroadDiagram-RFXS5EU6-CRuA7qqW.cjs} +1 -1
  96. package/dist/{railroadDiagram-RFXS5EU6-xx1d3Md8.js → railroadDiagram-RFXS5EU6-CYAI9-bK.js} +3 -3
  97. package/dist/remarkProcessor.server.d.ts +1 -0
  98. package/dist/{requirementDiagram-TGXJPOKE-CCu1UYFH.js → requirementDiagram-TGXJPOKE-BZc_cLKC.js} +3 -3
  99. package/dist/{requirementDiagram-TGXJPOKE-D_NbFRkb.cjs → requirementDiagram-TGXJPOKE-DesNyieJ.cjs} +1 -1
  100. package/dist/{sankeyDiagram-HTMAVEWB-QGzXzczJ.js → sankeyDiagram-HTMAVEWB-B1QsmzsN.js} +1 -1
  101. package/dist/{sankeyDiagram-HTMAVEWB-Dn2Ta-XX.cjs → sankeyDiagram-HTMAVEWB-wLwqusl2.cjs} +1 -1
  102. package/dist/{sequenceDiagram-DBY2YBRQ-BA3Oc4pz.cjs → sequenceDiagram-DBY2YBRQ-D3ciEWOE.cjs} +1 -1
  103. package/dist/{sequenceDiagram-DBY2YBRQ-CjnUnaw9.js → sequenceDiagram-DBY2YBRQ-OTeHr40Q.js} +3 -3
  104. package/dist/{sizeCapture-X5ZJPWSS-nb9uU-BE.js → sizeCapture-X5ZJPWSS-BhcQlLlw.js} +1 -1
  105. package/dist/{sizeCapture-X5ZJPWSS-BPQhVBe0.cjs → sizeCapture-X5ZJPWSS-LlzRMz8i.cjs} +1 -1
  106. package/dist/source-lines.cjs +1 -0
  107. package/dist/source-lines.d.ts +6 -0
  108. package/dist/source-lines.js +11 -0
  109. package/dist/{stateDiagram-2N3HPSRC-DSqLqSY5.cjs → stateDiagram-2N3HPSRC-D0q856z6.cjs} +1 -1
  110. package/dist/{stateDiagram-2N3HPSRC-Byg3E1AA.js → stateDiagram-2N3HPSRC-DjLE1--n.js} +2 -2
  111. package/dist/{stateDiagram-v2-6OUMAXLB-VRhXyf-C.cjs → stateDiagram-v2-6OUMAXLB-DJHUGWBX.cjs} +1 -1
  112. package/dist/{stateDiagram-v2-6OUMAXLB-hKcuYy9t.js → stateDiagram-v2-6OUMAXLB-DKU0HsD1.js} +2 -2
  113. package/dist/{swimlanes-5IMT3BWC-CVnOKNcb.cjs → swimlanes-5IMT3BWC-DC6qS8iI.cjs} +1 -1
  114. package/dist/{swimlanes-5IMT3BWC-DyIDdThc.js → swimlanes-5IMT3BWC-cxcj_GGS.js} +3 -3
  115. package/dist/{swimlanesDiagram-G3AALYLV-BF1ofRjP.js → swimlanesDiagram-G3AALYLV-B95OToWo.js} +2 -2
  116. package/dist/{swimlanesDiagram-G3AALYLV-C3U5wLlX.cjs → swimlanesDiagram-G3AALYLV-Dv76fKaH.cjs} +1 -1
  117. package/dist/{timeline-definition-FHXFAJF6-DBmE_qU3.js → timeline-definition-FHXFAJF6-P-5kO0xQ.js} +2 -2
  118. package/dist/{timeline-definition-FHXFAJF6-KUETCXLT.cjs → timeline-definition-FHXFAJF6-wD6O9DDR.cjs} +1 -1
  119. package/dist/{vennDiagram-L72KCM5P-DkSV3dIE.cjs → vennDiagram-L72KCM5P-BXHvaRtm.cjs} +1 -1
  120. package/dist/{vennDiagram-L72KCM5P-C6j4k5X-.js → vennDiagram-L72KCM5P-BwinGtNb.js} +1 -1
  121. package/dist/{wardleyDiagram-EHGQE667-uWMTMxL-.cjs → wardleyDiagram-EHGQE667-BDgwIQTf.cjs} +1 -1
  122. package/dist/{wardleyDiagram-EHGQE667-BaG6Cf_u.js → wardleyDiagram-EHGQE667-BeYbREE2.js} +2 -2
  123. package/dist/{xychartDiagram-FW5EYKEG-BPl5BnMB.js → xychartDiagram-FW5EYKEG-BXjx9Zgc.js} +2 -2
  124. package/dist/{xychartDiagram-FW5EYKEG-QAFE-xqg.cjs → xychartDiagram-FW5EYKEG-DLCCDPGO.cjs} +1 -1
  125. package/package.json +13 -7
  126. package/dist/extractHeadings-DRUBnhbi.cjs +0 -311
  127. package/dist/flowDiagram-23GEKE2U-CDscoQ9F.cjs +0 -1
  128. package/dist/flowDiagram-23GEKE2U-CLibi_u4.js +0 -7
package/README.md CHANGED
@@ -131,6 +131,7 @@ const parseResult = await parseMarkdown(
131
131
  maxHtmlBytes: 4 * 1024 * 1024, // required; the largest HTML in bytes
132
132
  resolveImports: false, // expand <!-- @import "path" --> (default false)
133
133
  validateExistence: true, // probe local images and doc links (data-asset-exists / data-doc-exists; default true)
134
+ includeSourceLines: false, // annotate each block with data-source-lines="<first>-<last>" (default false)
134
135
  signal: controller.signal, // cancels the conversion in the service too
135
136
  timeoutMs: 10_000, // the conversion's deadline
136
137
  enableSubscript: false, // Disable subscript (leaves ~2~ as plain text)
@@ -149,6 +150,7 @@ const parseResult = await parseMarkdown(
149
150
  | `maxHtmlBytes` | ✅ | The largest HTML in bytes, a positive integer up to `MAX_HTML_BYTES_LIMIT`. The service stops while it renders and the call rejects with `MarkdownResourceExhaustedError`; the response the call accepts is bounded by twice this plus 64 KiB. |
150
151
  | `resolveImports` | | Expand `<!-- @import "path" -->` directives (default `false`: a directive stays an HTML comment and nothing is read). Only Markdown (`.md`) targets the deny rules admit are read, nested imports included; a refused target rejects the call with `permission_denied`. |
151
152
  | `validateExistence` | | Probe local targets (default `true`): a local storage image also gets `data-asset-exists` (`"true"` or `"false"`) and a local doc link `data-doc-exists` (`"true"` or `"false"`). Cloud targets are never probed, and `data-asset-src` is written for every admitted storage image either way. |
153
+ | `includeSourceLines` | | Annotate every rendered block with `data-source-lines="<first>-<last>"`, the 1-based lines of `markdownText` it came from, both inclusive (default `false`; see "Source lines" below). |
152
154
  | `signal` | | Cancels the call; the service stops converting. |
153
155
  | `timeoutMs` | | The conversion's deadline in milliseconds (a positive integer); the service stops at it or at `MARKDOWN_CONVERT_TIMEOUT`, whichever comes first. |
154
156
  | `enable*` | | Switch the syntax extensions and HTML plugins (each enabled unless `false`). The text plugins leave `summary` text (a `:::details` title included) as written. |
@@ -169,6 +171,25 @@ An image destination is a URL decoded once: `![](a%2541.png)` names the file `a%
169
171
 
170
172
  `MarkdownRenderer` shows an image without a `src` (or with `data-asset-exists="false"`) as a placeholder naming its `data-asset-src`, so HTML rendered before the host wrote the URLs shows which files are missing instead of blank space.
171
173
 
174
+ ### Source lines
175
+
176
+ With `includeSourceLines`, every rendered block carries `data-source-lines="<first>-<last>"`: the 1-based lines of `markdownText` it came from, both inclusive, so an editor can open the source at the block a reader points at. With `resolveImports`, the lines count the text with every import expanded.
177
+
178
+ - A leaf block counts its own lines (a fenced code block from its opening fence, which holds the info string); a container (a list, an item, a blockquote, a table, an alert, a Zenn container, a definition list, the footnotes) spans its blocks. A setext heading counts its text, not its underline; an alert, its blocks, not the `[!NOTE]` line.
179
+ - A thematic break and a raw HTML block carry none (the converter never wraps an author's HTML).
180
+ - The HTML with source lines is the HTML without them plus the attribute alone.
181
+ - The attribute comes only from the converter: a `data-source-lines` written in raw HTML or a heading's `{…}` attributes is removed whether or not the option is on.
182
+ - The viewer keeps the attribute only in the converter's shape, and moves the attribute of a `pre` it replaces (a highlighted code block, a Mermaid diagram) onto the replacement's root.
183
+
184
+ `@aiquants/markdown/source-lines` holds the contract without React or any package, for host sanitizers and editors: `SOURCE_LINES_ATTRIBUTE` (`"data-source-lines"`), the type `SourceLines` (`{ first, last }`) and `parseSourceLines(value)`, which returns `null` for any value the converter could not have written.
185
+
186
+ ```ts
187
+ import { parseSourceLines, SOURCE_LINES_ATTRIBUTE } from "@aiquants/markdown/source-lines"
188
+
189
+ const block = target.closest(`[${SOURCE_LINES_ATTRIBUTE}]`)
190
+ const lines = parseSourceLines(block?.getAttribute(SOURCE_LINES_ATTRIBUTE))
191
+ ```
192
+
172
193
  ## Viewer, embeds and links
173
194
 
174
195
  ### Stylesheets
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./chunk-MOJQB5TN-AAMW2q8N.cjs"),u=require("./chunk-JWPE2WC7-Cvt_ToFU.cjs"),n=require("./extractHeadings-DRUBnhbi.cjs"),i=require("./cynefin-VYW2F7L2-MpAliYy9.cjs");var p=i.createRailroadAbnfServices().RailroadAbnf.parser.LangiumParser,o=n.__name(e=>{const r=e.alternatives.map(c);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),c=n.__name(e=>{const r=e.elements.map(d);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),f=n.__name(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),d=n.__name(e=>{const r=b(e.primary);if(!e.repeat)return r;const{min:t,max:s}=f(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),b=n.__name(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return o(e.element);case"AbnfOptionalGroup":return{type:"optional",element:o(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),g=n.__name(e=>({name:e.name,definition:o(e.definition)}),"transformRule"),v=n.__name(e=>{u.populateCommonDb(e,a.db),e.title&&a.db.setTitle(e.title),e.rules.map(r=>a.db.addRule(g(r)))},"populateDb"),y={parse:n.__name(e=>{a.db.clear(),n.log.debug("[ABNF Parser] Starting Langium parse");const r=p.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new i.MermaidParseError(r);const t=r.value;n.log.debug("[ABNF Parser] Parsed rules:",t.rules.length),v(t),n.log.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a.db}},_={parser:y,db:a.db,renderer:a.renderer,styles:a.getStyles};exports.diagram=_;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./chunk-MOJQB5TN-DPs_chEk.cjs"),u=require("./chunk-JWPE2WC7-BGdnK7yg.cjs"),n=require("./extractHeadings-By3kC3b_.cjs"),i=require("./cynefin-VYW2F7L2-MpAliYy9.cjs");var p=i.createRailroadAbnfServices().RailroadAbnf.parser.LangiumParser,o=n.__name(e=>{const r=e.alternatives.map(c);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),c=n.__name(e=>{const r=e.elements.map(d);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),f=n.__name(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),d=n.__name(e=>{const r=b(e.primary);if(!e.repeat)return r;const{min:t,max:s}=f(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),b=n.__name(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return o(e.element);case"AbnfOptionalGroup":return{type:"optional",element:o(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),g=n.__name(e=>({name:e.name,definition:o(e.definition)}),"transformRule"),v=n.__name(e=>{u.populateCommonDb(e,a.db),e.title&&a.db.setTitle(e.title),e.rules.map(r=>a.db.addRule(g(r)))},"populateDb"),y={parse:n.__name(e=>{a.db.clear(),n.log.debug("[ABNF Parser] Starting Langium parse");const r=p.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new i.MermaidParseError(r);const t=r.value;n.log.debug("[ABNF Parser] Parsed rules:",t.rules.length),v(t),n.log.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a.db}},_={parser:y,db:a.db,renderer:a.renderer,styles:a.getStyles};exports.diagram=_;
@@ -1,6 +1,6 @@
1
- import { g as p, r as u, d as a } from "./chunk-MOJQB5TN-aTSDPliR.js";
2
- import { p as f } from "./chunk-JWPE2WC7-DUndc3Wb.js";
3
- import { _ as n, Q as o } from "./extractHeadings-CdLPwHlC.js";
1
+ import { g as p, r as u, d as a } from "./chunk-MOJQB5TN-B-H_fDpi.js";
2
+ import { p as f } from "./chunk-JWPE2WC7-njgGfGvE.js";
3
+ import { _ as n, Q as o } from "./extractHeadings-Dz8gnhsx.js";
4
4
  import { M as c, b as d } from "./cynefin-VYW2F7L2-Bkk-F_Js.js";
5
5
  var v = d().RailroadAbnf.parser.LangiumParser, i = /* @__PURE__ */ n((e) => {
6
6
  const r = e.alternatives.map(g);
@@ -1 +1 @@
1
- "use strict";const n=require("./extractHeadings-DRUBnhbi.cjs");function $(o){return o.innerRadius}function b(o){return o.outerRadius}function k(o){return o.startAngle}function _(o){return o.endAngle}function nn(o){return o&&o.padAngle}function en(o,x,D,P,h,v,S,s){var E=D-o,r=P-x,e=S-h,p=s-v,i=p*E-e*r;if(!(i*i<n.epsilon))return i=(e*(x-v)-p*(o-h))/i,[o+i*E,x+i*r]}function M(o,x,D,P,h,v,S){var s=o-D,E=x-P,r=(S?v:-v)/n.sqrt(s*s+E*E),e=r*E,p=-r*s,i=o+e,u=x+p,c=D+e,f=P+p,j=(i+c)/2,l=(u+f)/2,y=c-i,g=f-u,A=y*y+g*g,R=h-v,T=i*f-c*u,H=(g<0?-1:1)*n.sqrt(n.max(0,R*R*A-T*T)),I=(T*g-y*H)/A,O=(-T*y-g*H)/A,q=(T*g+y*H)/A,d=(-T*y+g*H)/A,m=I-j,a=O-l,t=q-j,z=d-l;return m*m+a*a>t*t+z*z&&(I=q,O=d),{cx:I,cy:O,x01:-e,y01:-p,x11:I*(h/R-1),y11:O*(h/R-1)}}function an(){var o=$,x=b,D=n.constant(0),P=null,h=k,v=_,S=nn,s=null,E=n.withPath(r);function r(){var e,p,i=+o.apply(this,arguments),u=+x.apply(this,arguments),c=h.apply(this,arguments)-n.halfPi,f=v.apply(this,arguments)-n.halfPi,j=n.abs(f-c),l=f>c;if(s||(s=e=E()),u<i&&(p=u,u=i,i=p),!(u>n.epsilon))s.moveTo(0,0);else if(j>n.tau-n.epsilon)s.moveTo(u*n.cos(c),u*n.sin(c)),s.arc(0,0,u,c,f,!l),i>n.epsilon&&(s.moveTo(i*n.cos(f),i*n.sin(f)),s.arc(0,0,i,f,c,l));else{var y=c,g=f,A=c,R=f,T=j,H=j,I=S.apply(this,arguments)/2,O=I>n.epsilon&&(P?+P.apply(this,arguments):n.sqrt(i*i+u*u)),q=n.min(n.abs(u-i)/2,+D.apply(this,arguments)),d=q,m=q,a,t;if(O>n.epsilon){var z=n.asin(O/i*n.sin(I)),F=n.asin(O/u*n.sin(I));(T-=z*2)>n.epsilon?(z*=l?1:-1,A+=z,R-=z):(T=0,A=R=(c+f)/2),(H-=F*2)>n.epsilon?(F*=l?1:-1,y+=F,g-=F):(H=0,y=g=(c+f)/2)}var B=u*n.cos(y),C=u*n.sin(y),G=i*n.cos(R),J=i*n.sin(R);if(q>n.epsilon){var K=u*n.cos(g),L=u*n.sin(g),N=i*n.cos(A),Q=i*n.sin(A),w;if(j<n.pi)if(w=en(B,C,N,Q,K,L,G,J)){var U=B-w[0],V=C-w[1],W=K-w[0],X=L-w[1],Y=1/n.sin(n.acos((U*W+V*X)/(n.sqrt(U*U+V*V)*n.sqrt(W*W+X*X)))/2),Z=n.sqrt(w[0]*w[0]+w[1]*w[1]);d=n.min(q,(i-Z)/(Y-1)),m=n.min(q,(u-Z)/(Y+1))}else d=m=0}H>n.epsilon?m>n.epsilon?(a=M(N,Q,B,C,u,m,l),t=M(K,L,G,J,u,m,l),s.moveTo(a.cx+a.x01,a.cy+a.y01),m<q?s.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(t.y01,t.x01),!l):(s.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),s.arc(0,0,u,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(t.cy+t.y11,t.cx+t.x11),!l),s.arc(t.cx,t.cy,m,n.atan2(t.y11,t.x11),n.atan2(t.y01,t.x01),!l))):(s.moveTo(B,C),s.arc(0,0,u,y,g,!l)):s.moveTo(B,C),!(i>n.epsilon)||!(T>n.epsilon)?s.lineTo(G,J):d>n.epsilon?(a=M(G,J,K,L,i,-d,l),t=M(B,C,N,Q,i,-d,l),s.lineTo(a.cx+a.x01,a.cy+a.y01),d<q?s.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(t.y01,t.x01),!l):(s.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),s.arc(0,0,i,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(t.cy+t.y11,t.cx+t.x11),l),s.arc(t.cx,t.cy,d,n.atan2(t.y11,t.x11),n.atan2(t.y01,t.x01),!l))):s.arc(0,0,i,R,A,l)}if(s.closePath(),e)return s=null,e+""||null}return r.centroid=function(){var e=(+o.apply(this,arguments)+ +x.apply(this,arguments))/2,p=(+h.apply(this,arguments)+ +v.apply(this,arguments))/2-n.pi/2;return[n.cos(p)*e,n.sin(p)*e]},r.innerRadius=function(e){return arguments.length?(o=typeof e=="function"?e:n.constant(+e),r):o},r.outerRadius=function(e){return arguments.length?(x=typeof e=="function"?e:n.constant(+e),r):x},r.cornerRadius=function(e){return arguments.length?(D=typeof e=="function"?e:n.constant(+e),r):D},r.padRadius=function(e){return arguments.length?(P=e==null?null:typeof e=="function"?e:n.constant(+e),r):P},r.startAngle=function(e){return arguments.length?(h=typeof e=="function"?e:n.constant(+e),r):h},r.endAngle=function(e){return arguments.length?(v=typeof e=="function"?e:n.constant(+e),r):v},r.padAngle=function(e){return arguments.length?(S=typeof e=="function"?e:n.constant(+e),r):S},r.context=function(e){return arguments.length?(s=e??null,r):s},r}exports.d3arc=an;
1
+ "use strict";const n=require("./extractHeadings-By3kC3b_.cjs");function $(o){return o.innerRadius}function b(o){return o.outerRadius}function k(o){return o.startAngle}function _(o){return o.endAngle}function nn(o){return o&&o.padAngle}function en(o,x,D,P,h,v,S,s){var E=D-o,r=P-x,e=S-h,p=s-v,i=p*E-e*r;if(!(i*i<n.epsilon))return i=(e*(x-v)-p*(o-h))/i,[o+i*E,x+i*r]}function M(o,x,D,P,h,v,S){var s=o-D,E=x-P,r=(S?v:-v)/n.sqrt(s*s+E*E),e=r*E,p=-r*s,i=o+e,u=x+p,c=D+e,f=P+p,j=(i+c)/2,l=(u+f)/2,y=c-i,g=f-u,A=y*y+g*g,R=h-v,T=i*f-c*u,H=(g<0?-1:1)*n.sqrt(n.max(0,R*R*A-T*T)),I=(T*g-y*H)/A,O=(-T*y-g*H)/A,q=(T*g+y*H)/A,d=(-T*y+g*H)/A,m=I-j,a=O-l,t=q-j,z=d-l;return m*m+a*a>t*t+z*z&&(I=q,O=d),{cx:I,cy:O,x01:-e,y01:-p,x11:I*(h/R-1),y11:O*(h/R-1)}}function an(){var o=$,x=b,D=n.constant(0),P=null,h=k,v=_,S=nn,s=null,E=n.withPath(r);function r(){var e,p,i=+o.apply(this,arguments),u=+x.apply(this,arguments),c=h.apply(this,arguments)-n.halfPi,f=v.apply(this,arguments)-n.halfPi,j=n.abs(f-c),l=f>c;if(s||(s=e=E()),u<i&&(p=u,u=i,i=p),!(u>n.epsilon))s.moveTo(0,0);else if(j>n.tau-n.epsilon)s.moveTo(u*n.cos(c),u*n.sin(c)),s.arc(0,0,u,c,f,!l),i>n.epsilon&&(s.moveTo(i*n.cos(f),i*n.sin(f)),s.arc(0,0,i,f,c,l));else{var y=c,g=f,A=c,R=f,T=j,H=j,I=S.apply(this,arguments)/2,O=I>n.epsilon&&(P?+P.apply(this,arguments):n.sqrt(i*i+u*u)),q=n.min(n.abs(u-i)/2,+D.apply(this,arguments)),d=q,m=q,a,t;if(O>n.epsilon){var z=n.asin(O/i*n.sin(I)),F=n.asin(O/u*n.sin(I));(T-=z*2)>n.epsilon?(z*=l?1:-1,A+=z,R-=z):(T=0,A=R=(c+f)/2),(H-=F*2)>n.epsilon?(F*=l?1:-1,y+=F,g-=F):(H=0,y=g=(c+f)/2)}var B=u*n.cos(y),C=u*n.sin(y),G=i*n.cos(R),J=i*n.sin(R);if(q>n.epsilon){var K=u*n.cos(g),L=u*n.sin(g),N=i*n.cos(A),Q=i*n.sin(A),w;if(j<n.pi)if(w=en(B,C,N,Q,K,L,G,J)){var U=B-w[0],V=C-w[1],W=K-w[0],X=L-w[1],Y=1/n.sin(n.acos((U*W+V*X)/(n.sqrt(U*U+V*V)*n.sqrt(W*W+X*X)))/2),Z=n.sqrt(w[0]*w[0]+w[1]*w[1]);d=n.min(q,(i-Z)/(Y-1)),m=n.min(q,(u-Z)/(Y+1))}else d=m=0}H>n.epsilon?m>n.epsilon?(a=M(N,Q,B,C,u,m,l),t=M(K,L,G,J,u,m,l),s.moveTo(a.cx+a.x01,a.cy+a.y01),m<q?s.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(t.y01,t.x01),!l):(s.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),s.arc(0,0,u,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(t.cy+t.y11,t.cx+t.x11),!l),s.arc(t.cx,t.cy,m,n.atan2(t.y11,t.x11),n.atan2(t.y01,t.x01),!l))):(s.moveTo(B,C),s.arc(0,0,u,y,g,!l)):s.moveTo(B,C),!(i>n.epsilon)||!(T>n.epsilon)?s.lineTo(G,J):d>n.epsilon?(a=M(G,J,K,L,i,-d,l),t=M(B,C,N,Q,i,-d,l),s.lineTo(a.cx+a.x01,a.cy+a.y01),d<q?s.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(t.y01,t.x01),!l):(s.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),s.arc(0,0,i,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(t.cy+t.y11,t.cx+t.x11),l),s.arc(t.cx,t.cy,d,n.atan2(t.y11,t.x11),n.atan2(t.y01,t.x01),!l))):s.arc(0,0,i,R,A,l)}if(s.closePath(),e)return s=null,e+""||null}return r.centroid=function(){var e=(+o.apply(this,arguments)+ +x.apply(this,arguments))/2,p=(+h.apply(this,arguments)+ +v.apply(this,arguments))/2-n.pi/2;return[n.cos(p)*e,n.sin(p)*e]},r.innerRadius=function(e){return arguments.length?(o=typeof e=="function"?e:n.constant(+e),r):o},r.outerRadius=function(e){return arguments.length?(x=typeof e=="function"?e:n.constant(+e),r):x},r.cornerRadius=function(e){return arguments.length?(D=typeof e=="function"?e:n.constant(+e),r):D},r.padRadius=function(e){return arguments.length?(P=e==null?null:typeof e=="function"?e:n.constant(+e),r):P},r.startAngle=function(e){return arguments.length?(h=typeof e=="function"?e:n.constant(+e),r):h},r.endAngle=function(e){return arguments.length?(v=typeof e=="function"?e:n.constant(+e),r):v},r.padAngle=function(e){return arguments.length?(S=typeof e=="function"?e:n.constant(+e),r):S},r.context=function(e){return arguments.length?(s=e??null,r):s},r}exports.d3arc=an;
@@ -1,4 +1,4 @@
1
- import { aD as ln, aE as an, aF as y, aG as tn, aH as N, aI as D, aJ as _, aK as un, aL as rn, aM as j, aN as o, aO as J, aP as sn, aQ as on, aR as fn } from "./extractHeadings-CdLPwHlC.js";
1
+ import { aD as ln, aE as an, aF as y, aG as tn, aH as N, aI as D, aJ as _, aK as un, aL as rn, aM as j, aN as o, aO as J, aP as sn, aQ as on, aR as fn } from "./extractHeadings-Dz8gnhsx.js";
2
2
  function cn(l) {
3
3
  return l.innerRadius;
4
4
  }