@burdenoff/microfe-store 2026.720.3 → 2026.720.4

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 (276) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +20 -0
  2. package/dist/components/MarkdownEditor.js +5 -5
  3. package/dist/components/MarkdownEditor.js.map +1 -1
  4. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.js +63 -0
  5. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.js.map +1 -0
  6. package/dist/node_modules/@ungap/structured-clone/esm/index.js +8 -0
  7. package/dist/node_modules/@ungap/structured-clone/esm/index.js.map +1 -0
  8. package/dist/node_modules/@ungap/structured-clone/esm/serialize.js +93 -0
  9. package/dist/node_modules/@ungap/structured-clone/esm/serialize.js.map +1 -0
  10. package/dist/node_modules/bail/index.js +8 -0
  11. package/dist/node_modules/bail/index.js.map +1 -0
  12. package/dist/node_modules/comma-separated-tokens/index.js +9 -0
  13. package/dist/node_modules/comma-separated-tokens/index.js.map +1 -0
  14. package/dist/node_modules/decode-named-character-reference/index.dom.js +12 -0
  15. package/dist/node_modules/decode-named-character-reference/index.dom.js.map +1 -0
  16. package/dist/node_modules/devlop/lib/default.js +7 -0
  17. package/dist/node_modules/devlop/lib/default.js.map +1 -0
  18. package/dist/node_modules/estree-util-is-identifier-name/lib/index.js +9 -0
  19. package/dist/node_modules/estree-util-is-identifier-name/lib/index.js.map +1 -0
  20. package/dist/node_modules/extend/index.js +42 -0
  21. package/dist/node_modules/extend/index.js.map +1 -0
  22. package/dist/node_modules/hast-util-to-jsx-runtime/lib/index.js +255 -0
  23. package/dist/node_modules/hast-util-to-jsx-runtime/lib/index.js.map +1 -0
  24. package/dist/node_modules/hast-util-whitespace/lib/index.js +12 -0
  25. package/dist/node_modules/hast-util-whitespace/lib/index.js.map +1 -0
  26. package/dist/node_modules/html-url-attributes/lib/index.js +38 -0
  27. package/dist/node_modules/html-url-attributes/lib/index.js.map +1 -0
  28. package/dist/node_modules/inline-style-parser/cjs/index.js +92 -0
  29. package/dist/node_modules/inline-style-parser/cjs/index.js.map +1 -0
  30. package/dist/node_modules/is-plain-obj/index.js +10 -0
  31. package/dist/node_modules/is-plain-obj/index.js.map +1 -0
  32. package/dist/node_modules/mdast-util-from-markdown/lib/index.js +559 -0
  33. package/dist/node_modules/mdast-util-from-markdown/lib/index.js.map +1 -0
  34. package/dist/node_modules/mdast-util-to-hast/lib/footer.js +105 -0
  35. package/dist/node_modules/mdast-util-to-hast/lib/footer.js.map +1 -0
  36. package/dist/node_modules/mdast-util-to-hast/lib/handlers/blockquote.js +14 -0
  37. package/dist/node_modules/mdast-util-to-hast/lib/handlers/blockquote.js.map +1 -0
  38. package/dist/node_modules/mdast-util-to-hast/lib/handlers/break.js +17 -0
  39. package/dist/node_modules/mdast-util-to-hast/lib/handlers/break.js.map +1 -0
  40. package/dist/node_modules/mdast-util-to-hast/lib/handlers/code.js +24 -0
  41. package/dist/node_modules/mdast-util-to-hast/lib/handlers/code.js.map +1 -0
  42. package/dist/node_modules/mdast-util-to-hast/lib/handlers/delete.js +14 -0
  43. package/dist/node_modules/mdast-util-to-hast/lib/handlers/delete.js.map +1 -0
  44. package/dist/node_modules/mdast-util-to-hast/lib/handlers/emphasis.js +14 -0
  45. package/dist/node_modules/mdast-util-to-hast/lib/handlers/emphasis.js.map +1 -0
  46. package/dist/node_modules/mdast-util-to-hast/lib/handlers/footnote-reference.js +32 -0
  47. package/dist/node_modules/mdast-util-to-hast/lib/handlers/footnote-reference.js.map +1 -0
  48. package/dist/node_modules/mdast-util-to-hast/lib/handlers/heading.js +14 -0
  49. package/dist/node_modules/mdast-util-to-hast/lib/handlers/heading.js.map +1 -0
  50. package/dist/node_modules/mdast-util-to-hast/lib/handlers/html.js +14 -0
  51. package/dist/node_modules/mdast-util-to-hast/lib/handlers/html.js.map +1 -0
  52. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image-reference.js +23 -0
  53. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image-reference.js.map +1 -0
  54. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image.js +17 -0
  55. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image.js.map +1 -0
  56. package/dist/node_modules/mdast-util-to-hast/lib/handlers/index.js +58 -0
  57. package/dist/node_modules/mdast-util-to-hast/lib/handlers/index.js.map +1 -0
  58. package/dist/node_modules/mdast-util-to-hast/lib/handlers/inline-code.js +19 -0
  59. package/dist/node_modules/mdast-util-to-hast/lib/handlers/inline-code.js.map +1 -0
  60. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link-reference.js +20 -0
  61. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link-reference.js.map +1 -0
  62. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link.js +17 -0
  63. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link.js.map +1 -0
  64. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list-item.js +61 -0
  65. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list-item.js.map +1 -0
  66. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list.js +22 -0
  67. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list.js.map +1 -0
  68. package/dist/node_modules/mdast-util-to-hast/lib/handlers/paragraph.js +14 -0
  69. package/dist/node_modules/mdast-util-to-hast/lib/handlers/paragraph.js.map +1 -0
  70. package/dist/node_modules/mdast-util-to-hast/lib/handlers/root.js +12 -0
  71. package/dist/node_modules/mdast-util-to-hast/lib/handlers/root.js.map +1 -0
  72. package/dist/node_modules/mdast-util-to-hast/lib/handlers/strong.js +14 -0
  73. package/dist/node_modules/mdast-util-to-hast/lib/handlers/strong.js.map +1 -0
  74. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-cell.js +14 -0
  75. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-cell.js.map +1 -0
  76. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-row.js +26 -0
  77. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-row.js.map +1 -0
  78. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table.js +37 -0
  79. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table.js.map +1 -0
  80. package/dist/node_modules/mdast-util-to-hast/lib/handlers/text.js +13 -0
  81. package/dist/node_modules/mdast-util-to-hast/lib/handlers/text.js.map +1 -0
  82. package/dist/node_modules/mdast-util-to-hast/lib/handlers/thematic-break.js +14 -0
  83. package/dist/node_modules/mdast-util-to-hast/lib/handlers/thematic-break.js.map +1 -0
  84. package/dist/node_modules/mdast-util-to-hast/lib/index.js +21 -0
  85. package/dist/node_modules/mdast-util-to-hast/lib/index.js.map +1 -0
  86. package/dist/node_modules/mdast-util-to-hast/lib/revert.js +22 -0
  87. package/dist/node_modules/mdast-util-to-hast/lib/revert.js.map +1 -0
  88. package/dist/node_modules/mdast-util-to-hast/lib/state.js +110 -0
  89. package/dist/node_modules/mdast-util-to-hast/lib/state.js.map +1 -0
  90. package/dist/node_modules/mdast-util-to-string/lib/index.js +26 -0
  91. package/dist/node_modules/mdast-util-to-string/lib/index.js.map +1 -0
  92. package/dist/node_modules/micromark/lib/constructs.js +82 -0
  93. package/dist/node_modules/micromark/lib/constructs.js.map +1 -0
  94. package/dist/node_modules/micromark/lib/create-tokenizer.js +179 -0
  95. package/dist/node_modules/micromark/lib/create-tokenizer.js.map +1 -0
  96. package/dist/node_modules/micromark/lib/initialize/content.js +36 -0
  97. package/dist/node_modules/micromark/lib/initialize/content.js.map +1 -0
  98. package/dist/node_modules/micromark/lib/initialize/document.js +104 -0
  99. package/dist/node_modules/micromark/lib/initialize/document.js.map +1 -0
  100. package/dist/node_modules/micromark/lib/initialize/flow.js +27 -0
  101. package/dist/node_modules/micromark/lib/initialize/flow.js.map +1 -0
  102. package/dist/node_modules/micromark/lib/initialize/text.js +88 -0
  103. package/dist/node_modules/micromark/lib/initialize/text.js.map +1 -0
  104. package/dist/node_modules/micromark/lib/parse.js +31 -0
  105. package/dist/node_modules/micromark/lib/parse.js.map +1 -0
  106. package/dist/node_modules/micromark/lib/postprocess.js +10 -0
  107. package/dist/node_modules/micromark/lib/postprocess.js.map +1 -0
  108. package/dist/node_modules/micromark/lib/preprocess.js +34 -0
  109. package/dist/node_modules/micromark/lib/preprocess.js.map +1 -0
  110. package/dist/node_modules/micromark-core-commonmark/lib/attention.js +116 -0
  111. package/dist/node_modules/micromark-core-commonmark/lib/attention.js.map +1 -0
  112. package/dist/node_modules/micromark-core-commonmark/lib/autolink.js +45 -0
  113. package/dist/node_modules/micromark-core-commonmark/lib/autolink.js.map +1 -0
  114. package/dist/node_modules/micromark-core-commonmark/lib/blank-line.js +20 -0
  115. package/dist/node_modules/micromark-core-commonmark/lib/blank-line.js.map +1 -0
  116. package/dist/node_modules/micromark-core-commonmark/lib/block-quote.js +40 -0
  117. package/dist/node_modules/micromark-core-commonmark/lib/block-quote.js.map +1 -0
  118. package/dist/node_modules/micromark-core-commonmark/lib/character-escape.js +19 -0
  119. package/dist/node_modules/micromark-core-commonmark/lib/character-escape.js.map +1 -0
  120. package/dist/node_modules/micromark-core-commonmark/lib/character-reference.js +31 -0
  121. package/dist/node_modules/micromark-core-commonmark/lib/character-reference.js.map +1 -0
  122. package/dist/node_modules/micromark-core-commonmark/lib/code-fenced.js +91 -0
  123. package/dist/node_modules/micromark-core-commonmark/lib/code-fenced.js.map +1 -0
  124. package/dist/node_modules/micromark-core-commonmark/lib/code-indented.js +45 -0
  125. package/dist/node_modules/micromark-core-commonmark/lib/code-indented.js.map +1 -0
  126. package/dist/node_modules/micromark-core-commonmark/lib/code-text.js +45 -0
  127. package/dist/node_modules/micromark-core-commonmark/lib/code-text.js.map +1 -0
  128. package/dist/node_modules/micromark-core-commonmark/lib/content.js +49 -0
  129. package/dist/node_modules/micromark-core-commonmark/lib/content.js.map +1 -0
  130. package/dist/node_modules/micromark-core-commonmark/lib/definition.js +62 -0
  131. package/dist/node_modules/micromark-core-commonmark/lib/definition.js.map +1 -0
  132. package/dist/node_modules/micromark-core-commonmark/lib/hard-break-escape.js +19 -0
  133. package/dist/node_modules/micromark-core-commonmark/lib/hard-break-escape.js.map +1 -0
  134. package/dist/node_modules/micromark-core-commonmark/lib/heading-atx.js +69 -0
  135. package/dist/node_modules/micromark-core-commonmark/lib/heading-atx.js.map +1 -0
  136. package/dist/node_modules/micromark-core-commonmark/lib/html-flow.js +143 -0
  137. package/dist/node_modules/micromark-core-commonmark/lib/html-flow.js.map +1 -0
  138. package/dist/node_modules/micromark-core-commonmark/lib/html-text.js +102 -0
  139. package/dist/node_modules/micromark-core-commonmark/lib/html-text.js.map +1 -0
  140. package/dist/node_modules/micromark-core-commonmark/lib/label-end.js +160 -0
  141. package/dist/node_modules/micromark-core-commonmark/lib/label-end.js.map +1 -0
  142. package/dist/node_modules/micromark-core-commonmark/lib/label-start-image.js +25 -0
  143. package/dist/node_modules/micromark-core-commonmark/lib/label-start-image.js.map +1 -0
  144. package/dist/node_modules/micromark-core-commonmark/lib/label-start-link.js +22 -0
  145. package/dist/node_modules/micromark-core-commonmark/lib/label-start-link.js.map +1 -0
  146. package/dist/node_modules/micromark-core-commonmark/lib/line-ending.js +16 -0
  147. package/dist/node_modules/micromark-core-commonmark/lib/line-ending.js.map +1 -0
  148. package/dist/node_modules/micromark-core-commonmark/lib/list.js +80 -0
  149. package/dist/node_modules/micromark-core-commonmark/lib/list.js.map +1 -0
  150. package/dist/node_modules/micromark-core-commonmark/lib/setext-underline.js +61 -0
  151. package/dist/node_modules/micromark-core-commonmark/lib/setext-underline.js.map +1 -0
  152. package/dist/node_modules/micromark-core-commonmark/lib/thematic-break.js +27 -0
  153. package/dist/node_modules/micromark-core-commonmark/lib/thematic-break.js.map +1 -0
  154. package/dist/node_modules/micromark-factory-destination/index.js +28 -0
  155. package/dist/node_modules/micromark-factory-destination/index.js.map +1 -0
  156. package/dist/node_modules/micromark-factory-label/index.js +22 -0
  157. package/dist/node_modules/micromark-factory-label/index.js.map +1 -0
  158. package/dist/node_modules/micromark-factory-space/index.js +16 -0
  159. package/dist/node_modules/micromark-factory-space/index.js.map +1 -0
  160. package/dist/node_modules/micromark-factory-title/index.js +26 -0
  161. package/dist/node_modules/micromark-factory-title/index.js.map +1 -0
  162. package/dist/node_modules/micromark-factory-whitespace/index.js +14 -0
  163. package/dist/node_modules/micromark-factory-whitespace/index.js.map +1 -0
  164. package/dist/node_modules/micromark-util-character/index.js +26 -0
  165. package/dist/node_modules/micromark-util-character/index.js.map +1 -0
  166. package/dist/node_modules/micromark-util-chunked/index.js +13 -0
  167. package/dist/node_modules/micromark-util-chunked/index.js.map +1 -0
  168. package/dist/node_modules/micromark-util-classify-character/index.js +10 -0
  169. package/dist/node_modules/micromark-util-classify-character/index.js.map +1 -0
  170. package/dist/node_modules/micromark-util-combine-extensions/index.js +28 -0
  171. package/dist/node_modules/micromark-util-combine-extensions/index.js.map +1 -0
  172. package/dist/node_modules/micromark-util-decode-numeric-character-reference/index.js +9 -0
  173. package/dist/node_modules/micromark-util-decode-numeric-character-reference/index.js.map +1 -0
  174. package/dist/node_modules/micromark-util-decode-string/index.js +19 -0
  175. package/dist/node_modules/micromark-util-decode-string/index.js.map +1 -0
  176. package/dist/node_modules/micromark-util-html-tag-name/index.js +11 -0
  177. package/dist/node_modules/micromark-util-html-tag-name/index.js.map +1 -0
  178. package/dist/node_modules/micromark-util-normalize-identifier/index.js +8 -0
  179. package/dist/node_modules/micromark-util-normalize-identifier/index.js.map +1 -0
  180. package/dist/node_modules/micromark-util-resolve-all/index.js +13 -0
  181. package/dist/node_modules/micromark-util-resolve-all/index.js.map +1 -0
  182. package/dist/node_modules/micromark-util-sanitize-uri/index.js +20 -0
  183. package/dist/node_modules/micromark-util-sanitize-uri/index.js.map +1 -0
  184. package/dist/node_modules/micromark-util-subtokenize/index.js +37 -0
  185. package/dist/node_modules/micromark-util-subtokenize/index.js.map +1 -0
  186. package/dist/node_modules/micromark-util-subtokenize/lib/splice-buffer.js +59 -0
  187. package/dist/node_modules/micromark-util-subtokenize/lib/splice-buffer.js.map +1 -0
  188. package/dist/node_modules/property-information/index.js +28 -0
  189. package/dist/node_modules/property-information/index.js.map +1 -0
  190. package/dist/node_modules/property-information/lib/aria.js +63 -0
  191. package/dist/node_modules/property-information/lib/aria.js.map +1 -0
  192. package/dist/node_modules/property-information/lib/find.js +33 -0
  193. package/dist/node_modules/property-information/lib/find.js.map +1 -0
  194. package/dist/node_modules/property-information/lib/hast-to-react.js +24 -0
  195. package/dist/node_modules/property-information/lib/hast-to-react.js.map +1 -0
  196. package/dist/node_modules/property-information/lib/html.js +328 -0
  197. package/dist/node_modules/property-information/lib/html.js.map +1 -0
  198. package/dist/node_modules/property-information/lib/normalize.js +8 -0
  199. package/dist/node_modules/property-information/lib/normalize.js.map +1 -0
  200. package/dist/node_modules/property-information/lib/svg.js +566 -0
  201. package/dist/node_modules/property-information/lib/svg.js.map +1 -0
  202. package/dist/node_modules/property-information/lib/util/case-insensitive-transform.js +9 -0
  203. package/dist/node_modules/property-information/lib/util/case-insensitive-transform.js.map +1 -0
  204. package/dist/node_modules/property-information/lib/util/case-sensitive-transform.js +8 -0
  205. package/dist/node_modules/property-information/lib/util/case-sensitive-transform.js.map +1 -0
  206. package/dist/node_modules/property-information/lib/util/create.js +16 -0
  207. package/dist/node_modules/property-information/lib/util/create.js.map +1 -0
  208. package/dist/node_modules/property-information/lib/util/defined-info.js +20 -0
  209. package/dist/node_modules/property-information/lib/util/defined-info.js.map +1 -0
  210. package/dist/node_modules/property-information/lib/util/info.js +11 -0
  211. package/dist/node_modules/property-information/lib/util/info.js.map +1 -0
  212. package/dist/node_modules/property-information/lib/util/merge.js +11 -0
  213. package/dist/node_modules/property-information/lib/util/merge.js.map +1 -0
  214. package/dist/node_modules/property-information/lib/util/schema.js +11 -0
  215. package/dist/node_modules/property-information/lib/util/schema.js.map +1 -0
  216. package/dist/node_modules/property-information/lib/util/types.js +18 -0
  217. package/dist/node_modules/property-information/lib/util/types.js.map +1 -0
  218. package/dist/node_modules/property-information/lib/xlink.js +21 -0
  219. package/dist/node_modules/property-information/lib/xlink.js.map +1 -0
  220. package/dist/node_modules/property-information/lib/xml.js +17 -0
  221. package/dist/node_modules/property-information/lib/xml.js.map +1 -0
  222. package/dist/node_modules/property-information/lib/xmlns.js +16 -0
  223. package/dist/node_modules/property-information/lib/xmlns.js.map +1 -0
  224. package/dist/node_modules/react-markdown/lib/index.js +142 -0
  225. package/dist/node_modules/react-markdown/lib/index.js.map +1 -0
  226. package/dist/node_modules/remark-parse/lib/index.js +18 -0
  227. package/dist/node_modules/remark-parse/lib/index.js.map +1 -0
  228. package/dist/node_modules/remark-rehype/lib/index.js +20 -0
  229. package/dist/node_modules/remark-rehype/lib/index.js.map +1 -0
  230. package/dist/node_modules/space-separated-tokens/index.js +8 -0
  231. package/dist/node_modules/space-separated-tokens/index.js.map +1 -0
  232. package/dist/node_modules/style-to-js/cjs/index.js +21 -0
  233. package/dist/node_modules/style-to-js/cjs/index.js.map +1 -0
  234. package/dist/node_modules/style-to-js/cjs/utilities.js +20 -0
  235. package/dist/node_modules/style-to-js/cjs/utilities.js.map +1 -0
  236. package/dist/node_modules/style-to-object/cjs/index.js +25 -0
  237. package/dist/node_modules/style-to-object/cjs/index.js.map +1 -0
  238. package/dist/node_modules/trim-lines/index.js +23 -0
  239. package/dist/node_modules/trim-lines/index.js.map +1 -0
  240. package/dist/node_modules/trough/lib/index.js +52 -0
  241. package/dist/node_modules/trough/lib/index.js.map +1 -0
  242. package/dist/node_modules/unified/lib/callable-instance.js +11 -0
  243. package/dist/node_modules/unified/lib/callable-instance.js.map +1 -0
  244. package/dist/node_modules/unified/lib/index.js +163 -0
  245. package/dist/node_modules/unified/lib/index.js.map +1 -0
  246. package/dist/node_modules/unist-util-is/lib/index.js +49 -0
  247. package/dist/node_modules/unist-util-is/lib/index.js.map +1 -0
  248. package/dist/node_modules/unist-util-position/lib/index.js +24 -0
  249. package/dist/node_modules/unist-util-position/lib/index.js.map +1 -0
  250. package/dist/node_modules/unist-util-stringify-position/lib/index.js +17 -0
  251. package/dist/node_modules/unist-util-stringify-position/lib/index.js.map +1 -0
  252. package/dist/node_modules/unist-util-visit/lib/index.js +14 -0
  253. package/dist/node_modules/unist-util-visit/lib/index.js.map +1 -0
  254. package/dist/node_modules/unist-util-visit-parents/lib/color.js +8 -0
  255. package/dist/node_modules/unist-util-visit-parents/lib/color.js.map +1 -0
  256. package/dist/node_modules/unist-util-visit-parents/lib/index.js +38 -0
  257. package/dist/node_modules/unist-util-visit-parents/lib/index.js.map +1 -0
  258. package/dist/node_modules/vfile/lib/index.js +91 -0
  259. package/dist/node_modules/vfile/lib/index.js.map +1 -0
  260. package/dist/node_modules/vfile/lib/minpath.browser.js +101 -0
  261. package/dist/node_modules/vfile/lib/minpath.browser.js.map +1 -0
  262. package/dist/node_modules/vfile/lib/minproc.browser.js +9 -0
  263. package/dist/node_modules/vfile/lib/minproc.browser.js.map +1 -0
  264. package/dist/node_modules/vfile/lib/minurl.browser.js +33 -0
  265. package/dist/node_modules/vfile/lib/minurl.browser.js.map +1 -0
  266. package/dist/node_modules/vfile/lib/minurl.shared.js +8 -0
  267. package/dist/node_modules/vfile/lib/minurl.shared.js.map +1 -0
  268. package/dist/node_modules/vfile-message/lib/index.js +26 -0
  269. package/dist/node_modules/vfile-message/lib/index.js.map +1 -0
  270. package/dist/pages/AdminSubmissionsQueuePage.js +174 -174
  271. package/dist/pages/AdminSubmissionsQueuePage.js.map +1 -1
  272. package/dist/pages/MarketplaceHomePage.js +472 -422
  273. package/dist/pages/MarketplaceHomePage.js.map +1 -1
  274. package/dist/pages/ProductDetailPage.js +16 -16
  275. package/dist/pages/ProductDetailPage.js.map +1 -1
  276. package/package.json +1 -1
@@ -0,0 +1,559 @@
1
+ import { stringifyPosition as e } from "../../unist-util-stringify-position/lib/index.js";
2
+ import { toString as t } from "../../mdast-util-to-string/lib/index.js";
3
+ import { decodeNamedCharacterReference as n } from "../../decode-named-character-reference/index.dom.js";
4
+ import { decodeNumericCharacterReference as r } from "../../micromark-util-decode-numeric-character-reference/index.js";
5
+ import { normalizeIdentifier as i } from "../../micromark-util-normalize-identifier/index.js";
6
+ import { parse as a } from "../../micromark/lib/parse.js";
7
+ import { postprocess as o } from "../../micromark/lib/postprocess.js";
8
+ import { preprocess as s } from "../../micromark/lib/preprocess.js";
9
+ import { decodeString as c } from "../../micromark-util-decode-string/index.js";
10
+ //#region node_modules/mdast-util-from-markdown/lib/index.js
11
+ var l = {}.hasOwnProperty;
12
+ function u(e, t, n) {
13
+ return t && typeof t == "object" && (n = t, t = void 0), d(n)(o(a(n).document().write(s()(e, t, !0))));
14
+ }
15
+ function d(a) {
16
+ let o = {
17
+ transforms: [],
18
+ canContainEols: [
19
+ "emphasis",
20
+ "fragment",
21
+ "heading",
22
+ "paragraph",
23
+ "strong"
24
+ ],
25
+ enter: {
26
+ autolink: m(Z),
27
+ autolinkProtocol: D,
28
+ autolinkEmail: D,
29
+ atxHeading: m(J),
30
+ blockQuote: m(le),
31
+ characterEscape: D,
32
+ characterReference: D,
33
+ codeFenced: m(q),
34
+ codeFencedFenceInfo: g,
35
+ codeFencedFenceMeta: g,
36
+ codeIndented: m(q, g),
37
+ codeText: m(ue, g),
38
+ codeTextData: D,
39
+ data: D,
40
+ codeFlowValue: D,
41
+ definition: m(de),
42
+ definitionDestinationString: g,
43
+ definitionLabelString: g,
44
+ definitionTitleString: g,
45
+ emphasis: m(fe),
46
+ hardBreakEscape: m(Y),
47
+ hardBreakTrailing: m(Y),
48
+ htmlFlow: m(X, g),
49
+ htmlFlowData: D,
50
+ htmlText: m(X, g),
51
+ htmlTextData: D,
52
+ image: m(pe),
53
+ label: g,
54
+ link: m(Z),
55
+ listItem: m(me),
56
+ listItemValue: S,
57
+ listOrdered: m(Q, x),
58
+ listUnordered: m(Q),
59
+ paragraph: m(he),
60
+ reference: V,
61
+ referenceString: g,
62
+ resourceDestinationString: g,
63
+ resourceTitleString: g,
64
+ setextHeading: m(J),
65
+ strong: m(ge),
66
+ thematicBreak: m(_e)
67
+ },
68
+ exit: {
69
+ atxHeading: v(),
70
+ atxHeadingSequence: C,
71
+ autolink: v(),
72
+ autolinkEmail: ce,
73
+ autolinkProtocol: K,
74
+ blockQuote: v(),
75
+ characterEscapeValue: O,
76
+ characterReferenceMarkerHexadecimal: U,
77
+ characterReferenceMarkerNumeric: U,
78
+ characterReferenceValue: W,
79
+ characterReference: G,
80
+ codeFenced: v(re),
81
+ codeFencedFence: ne,
82
+ codeFencedFenceInfo: ee,
83
+ codeFencedFenceMeta: te,
84
+ codeFlowValue: O,
85
+ codeIndented: v(ie),
86
+ codeText: v(N),
87
+ codeTextData: O,
88
+ data: O,
89
+ definition: v(),
90
+ definitionDestinationString: se,
91
+ definitionLabelString: ae,
92
+ definitionTitleString: oe,
93
+ emphasis: v(),
94
+ hardBreakEscape: v(A),
95
+ hardBreakTrailing: v(A),
96
+ htmlFlow: v(j),
97
+ htmlFlowData: O,
98
+ htmlText: v(M),
99
+ htmlTextData: O,
100
+ image: v(F),
101
+ label: L,
102
+ labelText: I,
103
+ lineEnding: k,
104
+ link: v(P),
105
+ listItem: v(),
106
+ listOrdered: v(),
107
+ listUnordered: v(),
108
+ paragraph: v(),
109
+ referenceString: H,
110
+ resourceDestinationString: R,
111
+ resourceTitleString: z,
112
+ resource: B,
113
+ setextHeading: v(E),
114
+ setextHeadingLineSequence: T,
115
+ setextHeadingText: w,
116
+ strong: v(),
117
+ thematicBreak: v()
118
+ }
119
+ };
120
+ p(o, (a || {}).mdastExtensions || []);
121
+ let s = {};
122
+ return u;
123
+ function u(e) {
124
+ let t = {
125
+ type: "root",
126
+ children: []
127
+ }, n = {
128
+ stack: [t],
129
+ tokenStack: [],
130
+ config: o,
131
+ enter: _,
132
+ exit: y,
133
+ buffer: g,
134
+ resume: b,
135
+ data: s
136
+ }, r = [], i = -1;
137
+ for (; ++i < e.length;) (e[i][1].type === "listOrdered" || e[i][1].type === "listUnordered") && (e[i][0] === "enter" ? r.push(i) : i = d(e, r.pop(), i));
138
+ for (i = -1; ++i < e.length;) {
139
+ let t = o[e[i][0]];
140
+ l.call(t, e[i][1].type) && t[e[i][1].type].call(Object.assign({ sliceSerialize: e[i][2].sliceSerialize }, n), e[i][1]);
141
+ }
142
+ if (n.tokenStack.length > 0) {
143
+ let e = n.tokenStack[n.tokenStack.length - 1];
144
+ (e[1] || h).call(n, void 0, e[0]);
145
+ }
146
+ for (t.position = {
147
+ start: f(e.length > 0 ? e[0][1].start : {
148
+ line: 1,
149
+ column: 1,
150
+ offset: 0
151
+ }),
152
+ end: f(e.length > 0 ? e[e.length - 2][1].end : {
153
+ line: 1,
154
+ column: 1,
155
+ offset: 0
156
+ })
157
+ }, i = -1; ++i < o.transforms.length;) t = o.transforms[i](t) || t;
158
+ return t;
159
+ }
160
+ function d(e, t, n) {
161
+ let r = t - 1, i = -1, a = !1, o, s, c, l;
162
+ for (; ++r <= n;) {
163
+ let t = e[r];
164
+ switch (t[1].type) {
165
+ case "listUnordered":
166
+ case "listOrdered":
167
+ case "blockQuote":
168
+ t[0] === "enter" ? i++ : i--, l = void 0;
169
+ break;
170
+ case "lineEndingBlank":
171
+ t[0] === "enter" && (o && !l && !i && !c && (c = r), l = void 0);
172
+ break;
173
+ case "linePrefix":
174
+ case "listItemValue":
175
+ case "listItemMarker":
176
+ case "listItemPrefix":
177
+ case "listItemPrefixWhitespace": break;
178
+ default: l = void 0;
179
+ }
180
+ if (!i && t[0] === "enter" && t[1].type === "listItemPrefix" || i === -1 && t[0] === "exit" && (t[1].type === "listUnordered" || t[1].type === "listOrdered")) {
181
+ if (o) {
182
+ let i = r;
183
+ for (s = void 0; i--;) {
184
+ let t = e[i];
185
+ if (t[1].type === "lineEnding" || t[1].type === "lineEndingBlank") {
186
+ if (t[0] === "exit") continue;
187
+ s && (e[s][1].type = "lineEndingBlank", a = !0), t[1].type = "lineEnding", s = i;
188
+ } else if (!(t[1].type === "linePrefix" || t[1].type === "blockQuotePrefix" || t[1].type === "blockQuotePrefixWhitespace" || t[1].type === "blockQuoteMarker" || t[1].type === "listItemIndent")) break;
189
+ }
190
+ c && (!s || c < s) && (o._spread = !0), o.end = Object.assign({}, s ? e[s][1].start : t[1].end), e.splice(s || r, 0, [
191
+ "exit",
192
+ o,
193
+ t[2]
194
+ ]), r++, n++;
195
+ }
196
+ if (t[1].type === "listItemPrefix") {
197
+ let i = {
198
+ type: "listItem",
199
+ _spread: !1,
200
+ start: Object.assign({}, t[1].start),
201
+ end: void 0
202
+ };
203
+ o = i, e.splice(r, 0, [
204
+ "enter",
205
+ i,
206
+ t[2]
207
+ ]), r++, n++, c = void 0, l = !0;
208
+ }
209
+ }
210
+ }
211
+ return e[t][1]._spread = a, n;
212
+ }
213
+ function m(e, t) {
214
+ return n;
215
+ function n(n) {
216
+ _.call(this, e(n), n), t && t.call(this, n);
217
+ }
218
+ }
219
+ function g() {
220
+ this.stack.push({
221
+ type: "fragment",
222
+ children: []
223
+ });
224
+ }
225
+ function _(e, t, n) {
226
+ this.stack[this.stack.length - 1].children.push(e), this.stack.push(e), this.tokenStack.push([t, n || void 0]), e.position = {
227
+ start: f(t.start),
228
+ end: void 0
229
+ };
230
+ }
231
+ function v(e) {
232
+ return t;
233
+ function t(t) {
234
+ e && e.call(this, t), y.call(this, t);
235
+ }
236
+ }
237
+ function y(t, n) {
238
+ let r = this.stack.pop(), i = this.tokenStack.pop();
239
+ if (i) i[0].type !== t.type && (n ? n.call(this, t, i[0]) : (i[1] || h).call(this, t, i[0]));
240
+ else throw Error("Cannot close `" + t.type + "` (" + e({
241
+ start: t.start,
242
+ end: t.end
243
+ }) + "): it’s not open");
244
+ r.position.end = f(t.end);
245
+ }
246
+ function b() {
247
+ return t(this.stack.pop());
248
+ }
249
+ function x() {
250
+ this.data.expectingFirstListItemValue = !0;
251
+ }
252
+ function S(e) {
253
+ if (this.data.expectingFirstListItemValue) {
254
+ let t = this.stack[this.stack.length - 2];
255
+ t.start = Number.parseInt(this.sliceSerialize(e), 10), this.data.expectingFirstListItemValue = void 0;
256
+ }
257
+ }
258
+ function ee() {
259
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
260
+ t.lang = e;
261
+ }
262
+ function te() {
263
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
264
+ t.meta = e;
265
+ }
266
+ function ne() {
267
+ this.data.flowCodeInside || (this.buffer(), this.data.flowCodeInside = !0);
268
+ }
269
+ function re() {
270
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
271
+ t.value = e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""), this.data.flowCodeInside = void 0;
272
+ }
273
+ function ie() {
274
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
275
+ t.value = e.replace(/(\r?\n|\r)$/g, "");
276
+ }
277
+ function ae(e) {
278
+ let t = this.resume(), n = this.stack[this.stack.length - 1];
279
+ n.label = t, n.identifier = i(this.sliceSerialize(e)).toLowerCase();
280
+ }
281
+ function oe() {
282
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
283
+ t.title = e;
284
+ }
285
+ function se() {
286
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
287
+ t.url = e;
288
+ }
289
+ function C(e) {
290
+ let t = this.stack[this.stack.length - 1];
291
+ t.depth ||= this.sliceSerialize(e).length;
292
+ }
293
+ function w() {
294
+ this.data.setextHeadingSlurpLineEnding = !0;
295
+ }
296
+ function T(e) {
297
+ let t = this.stack[this.stack.length - 1];
298
+ t.depth = this.sliceSerialize(e).codePointAt(0) === 61 ? 1 : 2;
299
+ }
300
+ function E() {
301
+ this.data.setextHeadingSlurpLineEnding = void 0;
302
+ }
303
+ function D(e) {
304
+ let t = this.stack[this.stack.length - 1].children, n = t[t.length - 1];
305
+ (!n || n.type !== "text") && (n = $(), n.position = {
306
+ start: f(e.start),
307
+ end: void 0
308
+ }, t.push(n)), this.stack.push(n);
309
+ }
310
+ function O(e) {
311
+ let t = this.stack.pop();
312
+ t.value += this.sliceSerialize(e), t.position.end = f(e.end);
313
+ }
314
+ function k(e) {
315
+ let t = this.stack[this.stack.length - 1];
316
+ if (this.data.atHardBreak) {
317
+ let n = t.children[t.children.length - 1];
318
+ n.position.end = f(e.end), this.data.atHardBreak = void 0;
319
+ return;
320
+ }
321
+ !this.data.setextHeadingSlurpLineEnding && o.canContainEols.includes(t.type) && (D.call(this, e), O.call(this, e));
322
+ }
323
+ function A() {
324
+ this.data.atHardBreak = !0;
325
+ }
326
+ function j() {
327
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
328
+ t.value = e;
329
+ }
330
+ function M() {
331
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
332
+ t.value = e;
333
+ }
334
+ function N() {
335
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
336
+ t.value = e;
337
+ }
338
+ function P() {
339
+ let e = this.stack[this.stack.length - 1];
340
+ if (this.data.inReference) {
341
+ let t = this.data.referenceType || "shortcut";
342
+ e.type += "Reference", e.referenceType = t, delete e.url, delete e.title;
343
+ } else delete e.identifier, delete e.label;
344
+ this.data.referenceType = void 0;
345
+ }
346
+ function F() {
347
+ let e = this.stack[this.stack.length - 1];
348
+ if (this.data.inReference) {
349
+ let t = this.data.referenceType || "shortcut";
350
+ e.type += "Reference", e.referenceType = t, delete e.url, delete e.title;
351
+ } else delete e.identifier, delete e.label;
352
+ this.data.referenceType = void 0;
353
+ }
354
+ function I(e) {
355
+ let t = this.sliceSerialize(e), n = this.stack[this.stack.length - 2];
356
+ n.label = c(t), n.identifier = i(t).toLowerCase();
357
+ }
358
+ function L() {
359
+ let e = this.stack[this.stack.length - 1], t = this.resume(), n = this.stack[this.stack.length - 1];
360
+ this.data.inReference = !0, n.type === "link" ? n.children = e.children : n.alt = t;
361
+ }
362
+ function R() {
363
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
364
+ t.url = e;
365
+ }
366
+ function z() {
367
+ let e = this.resume(), t = this.stack[this.stack.length - 1];
368
+ t.title = e;
369
+ }
370
+ function B() {
371
+ this.data.inReference = void 0;
372
+ }
373
+ function V() {
374
+ this.data.referenceType = "collapsed";
375
+ }
376
+ function H(e) {
377
+ let t = this.resume(), n = this.stack[this.stack.length - 1];
378
+ n.label = t, n.identifier = i(this.sliceSerialize(e)).toLowerCase(), this.data.referenceType = "full";
379
+ }
380
+ function U(e) {
381
+ this.data.characterReferenceType = e.type;
382
+ }
383
+ function W(e) {
384
+ let t = this.sliceSerialize(e), i = this.data.characterReferenceType, a;
385
+ i ? (a = r(t, i === "characterReferenceMarkerNumeric" ? 10 : 16), this.data.characterReferenceType = void 0) : a = n(t);
386
+ let o = this.stack[this.stack.length - 1];
387
+ o.value += a;
388
+ }
389
+ function G(e) {
390
+ let t = this.stack.pop();
391
+ t.position.end = f(e.end);
392
+ }
393
+ function K(e) {
394
+ O.call(this, e);
395
+ let t = this.stack[this.stack.length - 1];
396
+ t.url = this.sliceSerialize(e);
397
+ }
398
+ function ce(e) {
399
+ O.call(this, e);
400
+ let t = this.stack[this.stack.length - 1];
401
+ t.url = "mailto:" + this.sliceSerialize(e);
402
+ }
403
+ function le() {
404
+ return {
405
+ type: "blockquote",
406
+ children: []
407
+ };
408
+ }
409
+ function q() {
410
+ return {
411
+ type: "code",
412
+ lang: null,
413
+ meta: null,
414
+ value: ""
415
+ };
416
+ }
417
+ function ue() {
418
+ return {
419
+ type: "inlineCode",
420
+ value: ""
421
+ };
422
+ }
423
+ function de() {
424
+ return {
425
+ type: "definition",
426
+ identifier: "",
427
+ label: null,
428
+ title: null,
429
+ url: ""
430
+ };
431
+ }
432
+ function fe() {
433
+ return {
434
+ type: "emphasis",
435
+ children: []
436
+ };
437
+ }
438
+ function J() {
439
+ return {
440
+ type: "heading",
441
+ depth: 0,
442
+ children: []
443
+ };
444
+ }
445
+ function Y() {
446
+ return { type: "break" };
447
+ }
448
+ function X() {
449
+ return {
450
+ type: "html",
451
+ value: ""
452
+ };
453
+ }
454
+ function pe() {
455
+ return {
456
+ type: "image",
457
+ title: null,
458
+ url: "",
459
+ alt: null
460
+ };
461
+ }
462
+ function Z() {
463
+ return {
464
+ type: "link",
465
+ title: null,
466
+ url: "",
467
+ children: []
468
+ };
469
+ }
470
+ function Q(e) {
471
+ return {
472
+ type: "list",
473
+ ordered: e.type === "listOrdered",
474
+ start: null,
475
+ spread: e._spread,
476
+ children: []
477
+ };
478
+ }
479
+ function me(e) {
480
+ return {
481
+ type: "listItem",
482
+ spread: e._spread,
483
+ checked: null,
484
+ children: []
485
+ };
486
+ }
487
+ function he() {
488
+ return {
489
+ type: "paragraph",
490
+ children: []
491
+ };
492
+ }
493
+ function ge() {
494
+ return {
495
+ type: "strong",
496
+ children: []
497
+ };
498
+ }
499
+ function $() {
500
+ return {
501
+ type: "text",
502
+ value: ""
503
+ };
504
+ }
505
+ function _e() {
506
+ return { type: "thematicBreak" };
507
+ }
508
+ }
509
+ function f(e) {
510
+ return {
511
+ line: e.line,
512
+ column: e.column,
513
+ offset: e.offset
514
+ };
515
+ }
516
+ function p(e, t) {
517
+ let n = -1;
518
+ for (; ++n < t.length;) {
519
+ let r = t[n];
520
+ Array.isArray(r) ? p(e, r) : m(e, r);
521
+ }
522
+ }
523
+ function m(e, t) {
524
+ let n;
525
+ for (n in t) if (l.call(t, n)) switch (n) {
526
+ case "canContainEols": {
527
+ let r = t[n];
528
+ r && e[n].push(...r);
529
+ break;
530
+ }
531
+ case "transforms": {
532
+ let r = t[n];
533
+ r && e[n].push(...r);
534
+ break;
535
+ }
536
+ case "enter":
537
+ case "exit": {
538
+ let r = t[n];
539
+ r && Object.assign(e[n], r);
540
+ break;
541
+ }
542
+ }
543
+ }
544
+ function h(t, n) {
545
+ throw Error(t ? "Cannot close `" + t.type + "` (" + e({
546
+ start: t.start,
547
+ end: t.end
548
+ }) + "): a different token (`" + n.type + "`, " + e({
549
+ start: n.start,
550
+ end: n.end
551
+ }) + ") is open" : "Cannot close document, a token (`" + n.type + "`, " + e({
552
+ start: n.start,
553
+ end: n.end
554
+ }) + ") is still open");
555
+ }
556
+ //#endregion
557
+ export { u as fromMarkdown };
558
+
559
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../node_modules/mdast-util-from-markdown/lib/index.js"],"sourcesContent":["/**\n * @import {\n * Break,\n * Blockquote,\n * Code,\n * Definition,\n * Emphasis,\n * Heading,\n * Html,\n * Image,\n * InlineCode,\n * Link,\n * ListItem,\n * List,\n * Nodes,\n * Paragraph,\n * PhrasingContent,\n * ReferenceType,\n * Root,\n * Strong,\n * Text,\n * ThematicBreak\n * } from 'mdast'\n * @import {\n * Encoding,\n * Event,\n * Token,\n * Value\n * } from 'micromark-util-types'\n * @import {Point} from 'unist'\n * @import {\n * CompileContext,\n * CompileData,\n * Config,\n * Extension,\n * Handle,\n * OnEnterError,\n * Options\n * } from './types.js'\n */\n\nimport { toString } from 'mdast-util-to-string';\nimport { parse, postprocess, preprocess } from 'micromark';\nimport { decodeNumericCharacterReference } from 'micromark-util-decode-numeric-character-reference';\nimport { decodeString } from 'micromark-util-decode-string';\nimport { normalizeIdentifier } from 'micromark-util-normalize-identifier';\nimport { decodeNamedCharacterReference } from 'decode-named-character-reference';\nimport { stringifyPosition } from 'unist-util-stringify-position';\nconst own = {}.hasOwnProperty;\n\n/**\n * Turn markdown into a syntax tree.\n *\n * @overload\n * @param {Value} value\n * @param {Encoding | null | undefined} [encoding]\n * @param {Options | null | undefined} [options]\n * @returns {Root}\n *\n * @overload\n * @param {Value} value\n * @param {Options | null | undefined} [options]\n * @returns {Root}\n *\n * @param {Value} value\n * Markdown to parse.\n * @param {Encoding | Options | null | undefined} [encoding]\n * Character encoding for when `value` is `Buffer`.\n * @param {Options | null | undefined} [options]\n * Configuration.\n * @returns {Root}\n * mdast tree.\n */\nexport function fromMarkdown(value, encoding, options) {\n if (encoding && typeof encoding === 'object') {\n options = encoding;\n encoding = undefined;\n }\n return compiler(options)(postprocess(parse(options).document().write(preprocess()(value, encoding, true))));\n}\n\n/**\n * Note this compiler only understand complete buffering, not streaming.\n *\n * @param {Options | null | undefined} [options]\n */\nfunction compiler(options) {\n /** @type {Config} */\n const config = {\n transforms: [],\n canContainEols: ['emphasis', 'fragment', 'heading', 'paragraph', 'strong'],\n enter: {\n autolink: opener(link),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading),\n blockQuote: opener(blockQuote),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis),\n hardBreakEscape: opener(hardBreak),\n hardBreakTrailing: opener(hardBreak),\n htmlFlow: opener(html, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html, buffer),\n htmlTextData: onenterdata,\n image: opener(image),\n label: buffer,\n link: opener(link),\n listItem: opener(listItem),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list, onenterlistordered),\n listUnordered: opener(list),\n paragraph: opener(paragraph),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading),\n strong: opener(strong),\n thematicBreak: opener(thematicBreak)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n characterReference: onexitcharacterreference,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n };\n configure(config, (options || {}).mdastExtensions || []);\n\n /** @type {CompileData} */\n const data = {};\n return compile;\n\n /**\n * Turn micromark events into an mdast tree.\n *\n * @param {Array<Event>} events\n * Events.\n * @returns {Root}\n * mdast tree.\n */\n function compile(events) {\n /** @type {Root} */\n let tree = {\n type: 'root',\n children: []\n };\n /** @type {Omit<CompileContext, 'sliceSerialize'>} */\n const context = {\n stack: [tree],\n tokenStack: [],\n config,\n enter,\n exit,\n buffer,\n resume,\n data\n };\n /** @type {Array<number>} */\n const listStack = [];\n let index = -1;\n while (++index < events.length) {\n // We preprocess lists to add `listItem` tokens, and to infer whether\n // items the list itself are spread out.\n if (events[index][1].type === \"listOrdered\" || events[index][1].type === \"listUnordered\") {\n if (events[index][0] === 'enter') {\n listStack.push(index);\n } else {\n const tail = listStack.pop();\n index = prepareList(events, tail, index);\n }\n }\n }\n index = -1;\n while (++index < events.length) {\n const handler = config[events[index][0]];\n if (own.call(handler, events[index][1].type)) {\n handler[events[index][1].type].call(Object.assign({\n sliceSerialize: events[index][2].sliceSerialize\n }, context), events[index][1]);\n }\n }\n\n // Handle tokens still being open.\n if (context.tokenStack.length > 0) {\n const tail = context.tokenStack[context.tokenStack.length - 1];\n const handler = tail[1] || defaultOnError;\n handler.call(context, undefined, tail[0]);\n }\n\n // Figure out `root` position.\n tree.position = {\n start: point(events.length > 0 ? events[0][1].start : {\n line: 1,\n column: 1,\n offset: 0\n }),\n end: point(events.length > 0 ? events[events.length - 2][1].end : {\n line: 1,\n column: 1,\n offset: 0\n })\n };\n\n // Call transforms.\n index = -1;\n while (++index < config.transforms.length) {\n tree = config.transforms[index](tree) || tree;\n }\n return tree;\n }\n\n /**\n * @param {Array<Event>} events\n * @param {number} start\n * @param {number} length\n * @returns {number}\n */\n function prepareList(events, start, length) {\n let index = start - 1;\n let containerBalance = -1;\n let listSpread = false;\n /** @type {Token | undefined} */\n let listItem;\n /** @type {number | undefined} */\n let lineIndex;\n /** @type {number | undefined} */\n let firstBlankLineIndex;\n /** @type {boolean | undefined} */\n let atMarker;\n while (++index <= length) {\n const event = events[index];\n switch (event[1].type) {\n case \"listUnordered\":\n case \"listOrdered\":\n case \"blockQuote\":\n {\n if (event[0] === 'enter') {\n containerBalance++;\n } else {\n containerBalance--;\n }\n atMarker = undefined;\n break;\n }\n case \"lineEndingBlank\":\n {\n if (event[0] === 'enter') {\n if (listItem && !atMarker && !containerBalance && !firstBlankLineIndex) {\n firstBlankLineIndex = index;\n }\n atMarker = undefined;\n }\n break;\n }\n case \"linePrefix\":\n case \"listItemValue\":\n case \"listItemMarker\":\n case \"listItemPrefix\":\n case \"listItemPrefixWhitespace\":\n {\n // Empty.\n\n break;\n }\n default:\n {\n atMarker = undefined;\n }\n }\n if (!containerBalance && event[0] === 'enter' && event[1].type === \"listItemPrefix\" || containerBalance === -1 && event[0] === 'exit' && (event[1].type === \"listUnordered\" || event[1].type === \"listOrdered\")) {\n if (listItem) {\n let tailIndex = index;\n lineIndex = undefined;\n while (tailIndex--) {\n const tailEvent = events[tailIndex];\n if (tailEvent[1].type === \"lineEnding\" || tailEvent[1].type === \"lineEndingBlank\") {\n if (tailEvent[0] === 'exit') continue;\n if (lineIndex) {\n events[lineIndex][1].type = \"lineEndingBlank\";\n listSpread = true;\n }\n tailEvent[1].type = \"lineEnding\";\n lineIndex = tailIndex;\n } else if (tailEvent[1].type === \"linePrefix\" || tailEvent[1].type === \"blockQuotePrefix\" || tailEvent[1].type === \"blockQuotePrefixWhitespace\" || tailEvent[1].type === \"blockQuoteMarker\" || tailEvent[1].type === \"listItemIndent\") {\n // Empty\n } else {\n break;\n }\n }\n if (firstBlankLineIndex && (!lineIndex || firstBlankLineIndex < lineIndex)) {\n listItem._spread = true;\n }\n\n // Fix position.\n listItem.end = Object.assign({}, lineIndex ? events[lineIndex][1].start : event[1].end);\n events.splice(lineIndex || index, 0, ['exit', listItem, event[2]]);\n index++;\n length++;\n }\n\n // Create a new list item.\n if (event[1].type === \"listItemPrefix\") {\n /** @type {Token} */\n const item = {\n type: 'listItem',\n _spread: false,\n start: Object.assign({}, event[1].start),\n // @ts-expect-error: we’ll add `end` in a second.\n end: undefined\n };\n listItem = item;\n events.splice(index, 0, ['enter', item, event[2]]);\n index++;\n length++;\n firstBlankLineIndex = undefined;\n atMarker = true;\n }\n }\n }\n events[start][1]._spread = listSpread;\n return length;\n }\n\n /**\n * Create an opener handle.\n *\n * @param {(token: Token) => Nodes} create\n * Create a node.\n * @param {Handle | undefined} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function opener(create, and) {\n return open;\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {undefined}\n */\n function open(token) {\n enter.call(this, create(token), token);\n if (and) and.call(this, token);\n }\n }\n\n /**\n * @type {CompileContext['buffer']}\n */\n function buffer() {\n this.stack.push({\n type: 'fragment',\n children: []\n });\n }\n\n /**\n * @type {CompileContext['enter']}\n */\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1];\n /** @type {Array<Nodes>} */\n const siblings = parent.children;\n siblings.push(node);\n this.stack.push(node);\n this.tokenStack.push([token, errorHandler || undefined]);\n node.position = {\n start: point(token.start),\n // @ts-expect-error: `end` will be patched later.\n end: undefined\n };\n }\n\n /**\n * Create a closer handle.\n *\n * @param {Handle | undefined} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function closer(and) {\n return close;\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {undefined}\n */\n function close(token) {\n if (and) and.call(this, token);\n exit.call(this, token);\n }\n }\n\n /**\n * @type {CompileContext['exit']}\n */\n function exit(token, onExitError) {\n const node = this.stack.pop();\n const open = this.tokenStack.pop();\n if (!open) {\n throw new Error('Cannot close `' + token.type + '` (' + stringifyPosition({\n start: token.start,\n end: token.end\n }) + '): it’s not open');\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0]);\n } else {\n const handler = open[1] || defaultOnError;\n handler.call(this, token, open[0]);\n }\n }\n node.position.end = point(token.end);\n }\n\n /**\n * @type {CompileContext['resume']}\n */\n function resume() {\n return toString(this.stack.pop());\n }\n\n //\n // Handlers.\n //\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistordered() {\n this.data.expectingFirstListItemValue = true;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistitemvalue(token) {\n if (this.data.expectingFirstListItemValue) {\n const ancestor = this.stack[this.stack.length - 2];\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10);\n this.data.expectingFirstListItemValue = undefined;\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfenceinfo() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.lang = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfencemeta() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.meta = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfence() {\n // Exit if this is the closing fence.\n if (this.data.flowCodeInside) return;\n this.buffer();\n this.data.flowCodeInside = true;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefenced() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, '');\n this.data.flowCodeInside = undefined;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodeindented() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data.replace(/(\\r?\\n|\\r)$/g, '');\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitionlabelstring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.label = label;\n node.identifier = normalizeIdentifier(this.sliceSerialize(token)).toLowerCase();\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiontitlestring() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiondestinationstring() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1];\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length;\n node.depth = depth;\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadingtext() {\n this.data.setextHeadingSlurpLineEnding = true;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1];\n node.depth = this.sliceSerialize(token).codePointAt(0) === 61 ? 1 : 2;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheading() {\n this.data.setextHeadingSlurpLineEnding = undefined;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterdata(token) {\n const node = this.stack[this.stack.length - 1];\n /** @type {Array<Nodes>} */\n const siblings = node.children;\n let tail = siblings[siblings.length - 1];\n if (!tail || tail.type !== 'text') {\n // Add a new text node.\n tail = text();\n tail.position = {\n start: point(token.start),\n // @ts-expect-error: we’ll add `end` later.\n end: undefined\n };\n siblings.push(tail);\n }\n this.stack.push(tail);\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitdata(token) {\n const tail = this.stack.pop();\n tail.value += this.sliceSerialize(token);\n tail.position.end = point(token.end);\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1];\n // If we’re at a hard break, include the line ending in there.\n if (this.data.atHardBreak) {\n const tail = context.children[context.children.length - 1];\n tail.position.end = point(token.end);\n this.data.atHardBreak = undefined;\n return;\n }\n if (!this.data.setextHeadingSlurpLineEnding && config.canContainEols.includes(context.type)) {\n onenterdata.call(this, token);\n onexitdata.call(this, token);\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithardbreak() {\n this.data.atHardBreak = true;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmlflow() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmltext() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcodetext() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlink() {\n const node = this.stack[this.stack.length - 1];\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n\n // To do: clean.\n if (this.data.inReference) {\n /** @type {ReferenceType} */\n const referenceType = this.data.referenceType || 'shortcut';\n node.type += 'Reference';\n // @ts-expect-error: mutate.\n node.referenceType = referenceType;\n // @ts-expect-error: mutate.\n delete node.url;\n delete node.title;\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier;\n // @ts-expect-error: mutate.\n delete node.label;\n }\n this.data.referenceType = undefined;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitimage() {\n const node = this.stack[this.stack.length - 1];\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n\n // To do: clean.\n if (this.data.inReference) {\n /** @type {ReferenceType} */\n const referenceType = this.data.referenceType || 'shortcut';\n node.type += 'Reference';\n // @ts-expect-error: mutate.\n node.referenceType = referenceType;\n // @ts-expect-error: mutate.\n delete node.url;\n delete node.title;\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier;\n // @ts-expect-error: mutate.\n delete node.label;\n }\n this.data.referenceType = undefined;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabeltext(token) {\n const string = this.sliceSerialize(token);\n const ancestor = this.stack[this.stack.length - 2];\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n ancestor.label = decodeString(string);\n // @ts-expect-error: same as above.\n ancestor.identifier = normalizeIdentifier(string).toLowerCase();\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1];\n const value = this.resume();\n const node = this.stack[this.stack.length - 1];\n // Assume a reference.\n this.data.inReference = true;\n if (node.type === 'link') {\n /** @type {Array<PhrasingContent>} */\n const children = fragment.children;\n node.children = children;\n } else {\n node.alt = value;\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcedestinationstring() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcetitlestring() {\n const data = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresource() {\n this.data.inReference = undefined;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterreference() {\n this.data.referenceType = 'collapsed';\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitreferencestring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n node.label = label;\n // @ts-expect-error: same as above.\n node.identifier = normalizeIdentifier(this.sliceSerialize(token)).toLowerCase();\n this.data.referenceType = 'full';\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcharacterreferencemarker(token) {\n this.data.characterReferenceType = token.type;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcharacterreferencevalue(token) {\n const data = this.sliceSerialize(token);\n const type = this.data.characterReferenceType;\n /** @type {string} */\n let value;\n if (type) {\n value = decodeNumericCharacterReference(data, type === \"characterReferenceMarkerNumeric\" ? 10 : 16);\n this.data.characterReferenceType = undefined;\n } else {\n const result = decodeNamedCharacterReference(data);\n value = result;\n }\n const tail = this.stack[this.stack.length - 1];\n tail.value += value;\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcharacterreference(token) {\n const tail = this.stack.pop();\n tail.position.end = point(token.end);\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = this.sliceSerialize(token);\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkemail(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = 'mailto:' + this.sliceSerialize(token);\n }\n\n //\n // Creaters.\n //\n\n /** @returns {Blockquote} */\n function blockQuote() {\n return {\n type: 'blockquote',\n children: []\n };\n }\n\n /** @returns {Code} */\n function codeFlow() {\n return {\n type: 'code',\n lang: null,\n meta: null,\n value: ''\n };\n }\n\n /** @returns {InlineCode} */\n function codeText() {\n return {\n type: 'inlineCode',\n value: ''\n };\n }\n\n /** @returns {Definition} */\n function definition() {\n return {\n type: 'definition',\n identifier: '',\n label: null,\n title: null,\n url: ''\n };\n }\n\n /** @returns {Emphasis} */\n function emphasis() {\n return {\n type: 'emphasis',\n children: []\n };\n }\n\n /** @returns {Heading} */\n function heading() {\n return {\n type: 'heading',\n // @ts-expect-error `depth` will be set later.\n depth: 0,\n children: []\n };\n }\n\n /** @returns {Break} */\n function hardBreak() {\n return {\n type: 'break'\n };\n }\n\n /** @returns {Html} */\n function html() {\n return {\n type: 'html',\n value: ''\n };\n }\n\n /** @returns {Image} */\n function image() {\n return {\n type: 'image',\n title: null,\n url: '',\n alt: null\n };\n }\n\n /** @returns {Link} */\n function link() {\n return {\n type: 'link',\n title: null,\n url: '',\n children: []\n };\n }\n\n /**\n * @param {Token} token\n * @returns {List}\n */\n function list(token) {\n return {\n type: 'list',\n ordered: token.type === 'listOrdered',\n start: null,\n spread: token._spread,\n children: []\n };\n }\n\n /**\n * @param {Token} token\n * @returns {ListItem}\n */\n function listItem(token) {\n return {\n type: 'listItem',\n spread: token._spread,\n checked: null,\n children: []\n };\n }\n\n /** @returns {Paragraph} */\n function paragraph() {\n return {\n type: 'paragraph',\n children: []\n };\n }\n\n /** @returns {Strong} */\n function strong() {\n return {\n type: 'strong',\n children: []\n };\n }\n\n /** @returns {Text} */\n function text() {\n return {\n type: 'text',\n value: ''\n };\n }\n\n /** @returns {ThematicBreak} */\n function thematicBreak() {\n return {\n type: 'thematicBreak'\n };\n }\n}\n\n/**\n * Copy a point-like value.\n *\n * @param {Point} d\n * Point-like value.\n * @returns {Point}\n * unist point.\n */\nfunction point(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n };\n}\n\n/**\n * @param {Config} combined\n * @param {Array<Array<Extension> | Extension>} extensions\n * @returns {undefined}\n */\nfunction configure(combined, extensions) {\n let index = -1;\n while (++index < extensions.length) {\n const value = extensions[index];\n if (Array.isArray(value)) {\n configure(combined, value);\n } else {\n extension(combined, value);\n }\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Extension} extension\n * @returns {undefined}\n */\nfunction extension(combined, extension) {\n /** @type {keyof Extension} */\n let key;\n for (key in extension) {\n if (own.call(extension, key)) {\n switch (key) {\n case 'canContainEols':\n {\n const right = extension[key];\n if (right) {\n combined[key].push(...right);\n }\n break;\n }\n case 'transforms':\n {\n const right = extension[key];\n if (right) {\n combined[key].push(...right);\n }\n break;\n }\n case 'enter':\n case 'exit':\n {\n const right = extension[key];\n if (right) {\n Object.assign(combined[key], right);\n }\n break;\n }\n // No default\n }\n }\n }\n}\n\n/** @type {OnEnterError} */\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error('Cannot close `' + left.type + '` (' + stringifyPosition({\n start: left.start,\n end: left.end\n }) + '): a different token (`' + right.type + '`, ' + stringifyPosition({\n start: right.start,\n end: right.end\n }) + ') is open');\n } else {\n throw new Error('Cannot close document, a token (`' + right.type + '`, ' + stringifyPosition({\n start: right.start,\n end: right.end\n }) + ') is still open');\n }\n}"],"x_google_ignoreList":[0],"mappings":"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"}