@tiangong-lca/pcr 0.3.1 → 0.4.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 (1282) hide show
  1. package/README.md +8 -4
  2. package/node_modules/@types/debug/LICENSE +21 -0
  3. package/node_modules/@types/debug/README.md +69 -0
  4. package/node_modules/@types/debug/index.d.ts +50 -0
  5. package/node_modules/@types/debug/package.json +58 -0
  6. package/node_modules/@types/mdast/LICENSE +21 -0
  7. package/node_modules/@types/mdast/README.md +15 -0
  8. package/node_modules/@types/mdast/index.d.ts +1123 -0
  9. package/node_modules/@types/mdast/package.json +47 -0
  10. package/node_modules/@types/ms/LICENSE +21 -0
  11. package/node_modules/@types/ms/README.md +82 -0
  12. package/node_modules/@types/ms/index.d.ts +63 -0
  13. package/node_modules/@types/ms/package.json +26 -0
  14. package/node_modules/@types/unist/LICENSE +21 -0
  15. package/node_modules/@types/unist/README.md +15 -0
  16. package/node_modules/@types/unist/index.d.ts +119 -0
  17. package/node_modules/@types/unist/package.json +60 -0
  18. package/node_modules/bail/index.d.ts +10 -0
  19. package/node_modules/bail/index.js +12 -0
  20. package/node_modules/bail/license +22 -0
  21. package/node_modules/bail/package.json +73 -0
  22. package/node_modules/bail/readme.md +147 -0
  23. package/node_modules/ccount/index.d.ts +11 -0
  24. package/node_modules/ccount/index.js +27 -0
  25. package/node_modules/ccount/license +22 -0
  26. package/node_modules/ccount/package.json +71 -0
  27. package/node_modules/ccount/readme.md +149 -0
  28. package/node_modules/character-entities/index.d.ts +6 -0
  29. package/node_modules/character-entities/index.js +2132 -0
  30. package/node_modules/character-entities/license +22 -0
  31. package/node_modules/character-entities/package.json +78 -0
  32. package/node_modules/character-entities/readme.md +152 -0
  33. package/node_modules/debug/LICENSE +20 -0
  34. package/node_modules/debug/README.md +481 -0
  35. package/node_modules/debug/package.json +64 -0
  36. package/node_modules/debug/src/browser.js +272 -0
  37. package/node_modules/debug/src/common.js +292 -0
  38. package/node_modules/debug/src/index.js +10 -0
  39. package/node_modules/debug/src/node.js +263 -0
  40. package/node_modules/decode-named-character-reference/index.d.ts +13 -0
  41. package/node_modules/decode-named-character-reference/index.d.ts.map +1 -0
  42. package/node_modules/decode-named-character-reference/index.dom.d.ts +6 -0
  43. package/node_modules/decode-named-character-reference/index.dom.d.ts.map +1 -0
  44. package/node_modules/decode-named-character-reference/index.dom.js +32 -0
  45. package/node_modules/decode-named-character-reference/index.js +19 -0
  46. package/node_modules/decode-named-character-reference/license +22 -0
  47. package/node_modules/decode-named-character-reference/package.json +90 -0
  48. package/node_modules/decode-named-character-reference/readme.md +136 -0
  49. package/node_modules/dequal/dist/index.js +86 -0
  50. package/node_modules/dequal/dist/index.min.js +1 -0
  51. package/node_modules/dequal/dist/index.mjs +84 -0
  52. package/node_modules/dequal/index.d.ts +1 -0
  53. package/node_modules/dequal/license +21 -0
  54. package/node_modules/dequal/lite/index.d.ts +1 -0
  55. package/node_modules/dequal/lite/index.js +31 -0
  56. package/node_modules/dequal/lite/index.min.js +1 -0
  57. package/node_modules/dequal/lite/index.mjs +29 -0
  58. package/node_modules/dequal/package.json +57 -0
  59. package/node_modules/dequal/readme.md +112 -0
  60. package/node_modules/devlop/lib/default.js +9 -0
  61. package/node_modules/devlop/lib/development.d.ts +84 -0
  62. package/node_modules/devlop/lib/development.js +238 -0
  63. package/node_modules/devlop/license +22 -0
  64. package/node_modules/devlop/package.json +80 -0
  65. package/node_modules/devlop/readme.md +360 -0
  66. package/node_modules/escape-string-regexp/index.d.ts +16 -0
  67. package/node_modules/escape-string-regexp/index.js +11 -0
  68. package/node_modules/escape-string-regexp/license +9 -0
  69. package/node_modules/escape-string-regexp/package.json +40 -0
  70. package/node_modules/escape-string-regexp/readme.md +34 -0
  71. package/node_modules/extend/.editorconfig +20 -0
  72. package/node_modules/extend/.eslintrc +17 -0
  73. package/node_modules/extend/.jscs.json +175 -0
  74. package/node_modules/extend/.travis.yml +230 -0
  75. package/node_modules/extend/CHANGELOG.md +83 -0
  76. package/node_modules/extend/LICENSE +23 -0
  77. package/node_modules/extend/README.md +81 -0
  78. package/node_modules/extend/component.json +32 -0
  79. package/node_modules/extend/index.js +117 -0
  80. package/node_modules/extend/package.json +42 -0
  81. package/node_modules/is-plain-obj/index.d.ts +35 -0
  82. package/node_modules/is-plain-obj/index.js +8 -0
  83. package/node_modules/is-plain-obj/license +9 -0
  84. package/node_modules/is-plain-obj/package.json +41 -0
  85. package/node_modules/is-plain-obj/readme.md +58 -0
  86. package/node_modules/longest-streak/index.d.ts +11 -0
  87. package/node_modules/longest-streak/index.js +36 -0
  88. package/node_modules/longest-streak/license +22 -0
  89. package/node_modules/longest-streak/package.json +73 -0
  90. package/node_modules/longest-streak/readme.md +150 -0
  91. package/node_modules/markdown-table/index.d.ts +171 -0
  92. package/node_modules/markdown-table/index.d.ts.map +1 -0
  93. package/node_modules/markdown-table/index.js +393 -0
  94. package/node_modules/markdown-table/license +22 -0
  95. package/node_modules/markdown-table/package.json +77 -0
  96. package/node_modules/markdown-table/readme.md +344 -0
  97. package/node_modules/mdast-util-find-and-replace/index.d.ts +9 -0
  98. package/node_modules/mdast-util-find-and-replace/index.d.ts.map +1 -0
  99. package/node_modules/mdast-util-find-and-replace/index.js +11 -0
  100. package/node_modules/mdast-util-find-and-replace/lib/index.d.ts +79 -0
  101. package/node_modules/mdast-util-find-and-replace/lib/index.d.ts.map +1 -0
  102. package/node_modules/mdast-util-find-and-replace/lib/index.js +261 -0
  103. package/node_modules/mdast-util-find-and-replace/license +22 -0
  104. package/node_modules/mdast-util-find-and-replace/package.json +85 -0
  105. package/node_modules/mdast-util-find-and-replace/readme.md +368 -0
  106. package/node_modules/mdast-util-from-markdown/dev/index.d.ts +23 -0
  107. package/node_modules/mdast-util-from-markdown/dev/index.js +2 -0
  108. package/node_modules/mdast-util-from-markdown/dev/lib/index.d.ts +53 -0
  109. package/node_modules/mdast-util-from-markdown/dev/lib/index.d.ts.map +1 -0
  110. package/node_modules/mdast-util-from-markdown/dev/lib/index.js +1348 -0
  111. package/node_modules/mdast-util-from-markdown/dev/lib/types.d.ts +295 -0
  112. package/node_modules/mdast-util-from-markdown/dev/lib/types.js +2 -0
  113. package/node_modules/mdast-util-from-markdown/index.d.ts +23 -0
  114. package/node_modules/mdast-util-from-markdown/index.js +2 -0
  115. package/node_modules/mdast-util-from-markdown/lib/index.d.ts +53 -0
  116. package/node_modules/mdast-util-from-markdown/lib/index.d.ts.map +1 -0
  117. package/node_modules/mdast-util-from-markdown/lib/index.js +1177 -0
  118. package/node_modules/mdast-util-from-markdown/lib/types.d.ts +295 -0
  119. package/node_modules/mdast-util-from-markdown/lib/types.js +2 -0
  120. package/node_modules/mdast-util-from-markdown/license +22 -0
  121. package/node_modules/mdast-util-from-markdown/package.json +99 -0
  122. package/node_modules/mdast-util-from-markdown/readme.md +535 -0
  123. package/node_modules/mdast-util-gfm/index.d.ts +12 -0
  124. package/node_modules/mdast-util-gfm/index.js +2 -0
  125. package/node_modules/mdast-util-gfm/lib/index.d.ts +24 -0
  126. package/node_modules/mdast-util-gfm/lib/index.d.ts.map +1 -0
  127. package/node_modules/mdast-util-gfm/lib/index.js +63 -0
  128. package/node_modules/mdast-util-gfm/license +22 -0
  129. package/node_modules/mdast-util-gfm/package.json +125 -0
  130. package/node_modules/mdast-util-gfm/readme.md +497 -0
  131. package/node_modules/mdast-util-gfm-autolink-literal/index.d.ts +1 -0
  132. package/node_modules/mdast-util-gfm-autolink-literal/index.js +4 -0
  133. package/node_modules/mdast-util-gfm-autolink-literal/lib/index.d.ts +18 -0
  134. package/node_modules/mdast-util-gfm-autolink-literal/lib/index.js +280 -0
  135. package/node_modules/mdast-util-gfm-autolink-literal/license +22 -0
  136. package/node_modules/mdast-util-gfm-autolink-literal/package.json +106 -0
  137. package/node_modules/mdast-util-gfm-autolink-literal/readme.md +334 -0
  138. package/node_modules/mdast-util-gfm-footnote/index.d.ts +34 -0
  139. package/node_modules/mdast-util-gfm-footnote/index.js +2 -0
  140. package/node_modules/mdast-util-gfm-footnote/lib/index.d.ts +22 -0
  141. package/node_modules/mdast-util-gfm-footnote/lib/index.d.ts.map +1 -0
  142. package/node_modules/mdast-util-gfm-footnote/lib/index.js +212 -0
  143. package/node_modules/mdast-util-gfm-footnote/license +22 -0
  144. package/node_modules/mdast-util-gfm-footnote/package.json +111 -0
  145. package/node_modules/mdast-util-gfm-footnote/readme.md +494 -0
  146. package/node_modules/mdast-util-gfm-strikethrough/index.d.ts +19 -0
  147. package/node_modules/mdast-util-gfm-strikethrough/index.js +5 -0
  148. package/node_modules/mdast-util-gfm-strikethrough/lib/index.d.ts +19 -0
  149. package/node_modules/mdast-util-gfm-strikethrough/lib/index.d.ts.map +1 -0
  150. package/node_modules/mdast-util-gfm-strikethrough/lib/index.js +133 -0
  151. package/node_modules/mdast-util-gfm-strikethrough/license +22 -0
  152. package/node_modules/mdast-util-gfm-strikethrough/package.json +84 -0
  153. package/node_modules/mdast-util-gfm-strikethrough/readme.md +350 -0
  154. package/node_modules/mdast-util-gfm-table/index.d.ts +54 -0
  155. package/node_modules/mdast-util-gfm-table/index.js +2 -0
  156. package/node_modules/mdast-util-gfm-table/lib/index.d.ts +51 -0
  157. package/node_modules/mdast-util-gfm-table/lib/index.js +300 -0
  158. package/node_modules/mdast-util-gfm-table/license +22 -0
  159. package/node_modules/mdast-util-gfm-table/package.json +101 -0
  160. package/node_modules/mdast-util-gfm-table/readme.md +605 -0
  161. package/node_modules/mdast-util-gfm-task-list-item/index.d.ts +4 -0
  162. package/node_modules/mdast-util-gfm-task-list-item/index.js +4 -0
  163. package/node_modules/mdast-util-gfm-task-list-item/lib/index.d.ts +23 -0
  164. package/node_modules/mdast-util-gfm-task-list-item/lib/index.js +141 -0
  165. package/node_modules/mdast-util-gfm-task-list-item/license +22 -0
  166. package/node_modules/mdast-util-gfm-task-list-item/package.json +90 -0
  167. package/node_modules/mdast-util-gfm-task-list-item/readme.md +366 -0
  168. package/node_modules/mdast-util-phrasing/index.d.ts +1 -0
  169. package/node_modules/mdast-util-phrasing/index.js +1 -0
  170. package/node_modules/mdast-util-phrasing/lib/index.d.ts +3 -0
  171. package/node_modules/mdast-util-phrasing/lib/index.js +45 -0
  172. package/node_modules/mdast-util-phrasing/license +23 -0
  173. package/node_modules/mdast-util-phrasing/package.json +78 -0
  174. package/node_modules/mdast-util-phrasing/readme.md +200 -0
  175. package/node_modules/mdast-util-to-markdown/index.d.ts +18 -0
  176. package/node_modules/mdast-util-to-markdown/index.js +3 -0
  177. package/node_modules/mdast-util-to-markdown/lib/configure.d.ts +14 -0
  178. package/node_modules/mdast-util-to-markdown/lib/configure.d.ts.map +1 -0
  179. package/node_modules/mdast-util-to-markdown/lib/configure.js +98 -0
  180. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.d.ts +24 -0
  181. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.d.ts.map +1 -0
  182. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.js +40 -0
  183. package/node_modules/mdast-util-to-markdown/lib/handle/break.d.ts +20 -0
  184. package/node_modules/mdast-util-to-markdown/lib/handle/break.d.ts.map +1 -0
  185. package/node_modules/mdast-util-to-markdown/lib/handle/break.js +41 -0
  186. package/node_modules/mdast-util-to-markdown/lib/handle/code.d.ts +20 -0
  187. package/node_modules/mdast-util-to-markdown/lib/handle/code.d.ts.map +1 -0
  188. package/node_modules/mdast-util-to-markdown/lib/handle/code.js +86 -0
  189. package/node_modules/mdast-util-to-markdown/lib/handle/definition.d.ts +20 -0
  190. package/node_modules/mdast-util-to-markdown/lib/handle/definition.d.ts.map +1 -0
  191. package/node_modules/mdast-util-to-markdown/lib/handle/definition.js +83 -0
  192. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.d.ts +52 -0
  193. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.d.ts.map +1 -0
  194. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.js +67 -0
  195. package/node_modules/mdast-util-to-markdown/lib/handle/heading.d.ts +20 -0
  196. package/node_modules/mdast-util-to-markdown/lib/handle/heading.d.ts.map +1 -0
  197. package/node_modules/mdast-util-to-markdown/lib/handle/heading.js +84 -0
  198. package/node_modules/mdast-util-to-markdown/lib/handle/html.d.ts +22 -0
  199. package/node_modules/mdast-util-to-markdown/lib/handle/html.d.ts.map +1 -0
  200. package/node_modules/mdast-util-to-markdown/lib/handle/html.js +27 -0
  201. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.d.ts +31 -0
  202. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.d.ts.map +1 -0
  203. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.js +78 -0
  204. package/node_modules/mdast-util-to-markdown/lib/handle/image.d.ts +31 -0
  205. package/node_modules/mdast-util-to-markdown/lib/handle/image.d.ts.map +1 -0
  206. package/node_modules/mdast-util-to-markdown/lib/handle/image.js +92 -0
  207. package/node_modules/mdast-util-to-markdown/lib/handle/index.d.ts +42 -0
  208. package/node_modules/mdast-util-to-markdown/lib/handle/index.d.ts.map +1 -0
  209. package/node_modules/mdast-util-to-markdown/lib/handle/index.js +45 -0
  210. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.d.ts +28 -0
  211. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.d.ts.map +1 -0
  212. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.js +86 -0
  213. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.d.ts +31 -0
  214. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.d.ts.map +1 -0
  215. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.js +78 -0
  216. package/node_modules/mdast-util-to-markdown/lib/handle/link.d.ts +37 -0
  217. package/node_modules/mdast-util-to-markdown/lib/handle/link.d.ts.map +1 -0
  218. package/node_modules/mdast-util-to-markdown/lib/handle/link.js +129 -0
  219. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.d.ts +20 -0
  220. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.d.ts.map +1 -0
  221. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.js +73 -0
  222. package/node_modules/mdast-util-to-markdown/lib/handle/list.d.ts +20 -0
  223. package/node_modules/mdast-util-to-markdown/lib/handle/list.d.ts.map +1 -0
  224. package/node_modules/mdast-util-to-markdown/lib/handle/list.js +107 -0
  225. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.d.ts +24 -0
  226. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.d.ts.map +1 -0
  227. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.js +27 -0
  228. package/node_modules/mdast-util-to-markdown/lib/handle/root.d.ts +20 -0
  229. package/node_modules/mdast-util-to-markdown/lib/handle/root.d.ts.map +1 -0
  230. package/node_modules/mdast-util-to-markdown/lib/handle/root.js +34 -0
  231. package/node_modules/mdast-util-to-markdown/lib/handle/strong.d.ts +52 -0
  232. package/node_modules/mdast-util-to-markdown/lib/handle/strong.d.ts.map +1 -0
  233. package/node_modules/mdast-util-to-markdown/lib/handle/strong.js +67 -0
  234. package/node_modules/mdast-util-to-markdown/lib/handle/text.d.ts +24 -0
  235. package/node_modules/mdast-util-to-markdown/lib/handle/text.d.ts.map +1 -0
  236. package/node_modules/mdast-util-to-markdown/lib/handle/text.js +22 -0
  237. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.d.ts +17 -0
  238. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.d.ts.map +1 -0
  239. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.js +27 -0
  240. package/node_modules/mdast-util-to-markdown/lib/index.d.ts +14 -0
  241. package/node_modules/mdast-util-to-markdown/lib/index.d.ts.map +1 -0
  242. package/node_modules/mdast-util-to-markdown/lib/index.js +213 -0
  243. package/node_modules/mdast-util-to-markdown/lib/join.d.ts +4 -0
  244. package/node_modules/mdast-util-to-markdown/lib/join.d.ts.map +1 -0
  245. package/node_modules/mdast-util-to-markdown/lib/join.js +56 -0
  246. package/node_modules/mdast-util-to-markdown/lib/types.d.ts +985 -0
  247. package/node_modules/mdast-util-to-markdown/lib/types.js +2 -0
  248. package/node_modules/mdast-util-to-markdown/lib/unsafe.d.ts +4 -0
  249. package/node_modules/mdast-util-to-markdown/lib/unsafe.d.ts.map +1 -0
  250. package/node_modules/mdast-util-to-markdown/lib/unsafe.js +160 -0
  251. package/node_modules/mdast-util-to-markdown/lib/util/association.d.ts +2 -0
  252. package/node_modules/mdast-util-to-markdown/lib/util/association.d.ts.map +1 -0
  253. package/node_modules/mdast-util-to-markdown/lib/util/association.js +33 -0
  254. package/node_modules/mdast-util-to-markdown/lib/util/character.d.ts +23 -0
  255. package/node_modules/mdast-util-to-markdown/lib/util/character.d.ts.map +1 -0
  256. package/node_modules/mdast-util-to-markdown/lib/util/character.js +32 -0
  257. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.d.ts +15 -0
  258. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.d.ts.map +1 -0
  259. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.js +25 -0
  260. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.d.ts +12 -0
  261. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.d.ts.map +1 -0
  262. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.js +42 -0
  263. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.d.ts +15 -0
  264. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.d.ts.map +1 -0
  265. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.js +25 -0
  266. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.d.ts +15 -0
  267. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.d.ts.map +1 -0
  268. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.js +25 -0
  269. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.d.ts +15 -0
  270. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.d.ts.map +1 -0
  271. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.js +25 -0
  272. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.d.ts +15 -0
  273. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.d.ts.map +1 -0
  274. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.js +25 -0
  275. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.d.ts +15 -0
  276. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.d.ts.map +1 -0
  277. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.js +25 -0
  278. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.d.ts +15 -0
  279. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.d.ts.map +1 -0
  280. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.js +25 -0
  281. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.d.ts +15 -0
  282. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.d.ts.map +1 -0
  283. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.js +25 -0
  284. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.d.ts +15 -0
  285. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.d.ts.map +1 -0
  286. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.js +25 -0
  287. package/node_modules/mdast-util-to-markdown/lib/util/compile-pattern.d.ts +2 -0
  288. package/node_modules/mdast-util-to-markdown/lib/util/compile-pattern.d.ts.map +1 -0
  289. package/node_modules/mdast-util-to-markdown/lib/util/compile-pattern.js +26 -0
  290. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.d.ts +21 -0
  291. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.d.ts.map +1 -0
  292. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.js +93 -0
  293. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.d.ts +110 -0
  294. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.d.ts.map +1 -0
  295. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.js +704 -0
  296. package/node_modules/mdast-util-to-markdown/lib/util/encode-character-reference.d.ts +10 -0
  297. package/node_modules/mdast-util-to-markdown/lib/util/encode-character-reference.d.ts.map +1 -0
  298. package/node_modules/mdast-util-to-markdown/lib/util/encode-character-reference.js +11 -0
  299. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.d.ts +33 -0
  300. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.d.ts.map +1 -0
  301. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.js +82 -0
  302. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.d.ts +18 -0
  303. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.d.ts.map +1 -0
  304. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.js +27 -0
  305. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.d.ts +14 -0
  306. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.d.ts.map +1 -0
  307. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.js +39 -0
  308. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.d.ts +14 -0
  309. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.d.ts.map +1 -0
  310. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.js +39 -0
  311. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.d.ts +31 -0
  312. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.d.ts.map +1 -0
  313. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.js +63 -0
  314. package/node_modules/mdast-util-to-markdown/lib/util/indent-lines.d.ts +2 -0
  315. package/node_modules/mdast-util-to-markdown/lib/util/indent-lines.d.ts.map +1 -0
  316. package/node_modules/mdast-util-to-markdown/lib/util/indent-lines.js +40 -0
  317. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.d.ts +17 -0
  318. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.d.ts.map +1 -0
  319. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.js +52 -0
  320. package/node_modules/mdast-util-to-markdown/lib/util/safe.d.ts +29 -0
  321. package/node_modules/mdast-util-to-markdown/lib/util/safe.d.ts.map +1 -0
  322. package/node_modules/mdast-util-to-markdown/lib/util/safe.js +238 -0
  323. package/node_modules/mdast-util-to-markdown/lib/util/track.d.ts +2 -0
  324. package/node_modules/mdast-util-to-markdown/lib/util/track.d.ts.map +1 -0
  325. package/node_modules/mdast-util-to-markdown/lib/util/track.js +55 -0
  326. package/node_modules/mdast-util-to-markdown/license +22 -0
  327. package/node_modules/mdast-util-to-markdown/package.json +88 -0
  328. package/node_modules/mdast-util-to-markdown/readme.md +805 -0
  329. package/node_modules/mdast-util-to-string/index.d.ts +2 -0
  330. package/node_modules/mdast-util-to-string/index.js +5 -0
  331. package/node_modules/mdast-util-to-string/lib/index.d.ts +31 -0
  332. package/node_modules/mdast-util-to-string/lib/index.js +108 -0
  333. package/node_modules/mdast-util-to-string/license +22 -0
  334. package/node_modules/mdast-util-to-string/package.json +78 -0
  335. package/node_modules/mdast-util-to-string/readme.md +218 -0
  336. package/node_modules/micromark/dev/index.d.ts +82 -0
  337. package/node_modules/micromark/dev/index.d.ts.map +1 -0
  338. package/node_modules/micromark/dev/index.js +68 -0
  339. package/node_modules/micromark/dev/lib/compile.d.ts +16 -0
  340. package/node_modules/micromark/dev/lib/compile.d.ts.map +1 -0
  341. package/node_modules/micromark/dev/lib/compile.js +1162 -0
  342. package/node_modules/micromark/dev/lib/constructs.d.ts +73 -0
  343. package/node_modules/micromark/dev/lib/constructs.d.ts.map +1 -0
  344. package/node_modules/micromark/dev/lib/constructs.js +101 -0
  345. package/node_modules/micromark/dev/lib/create-tokenizer.d.ts +46 -0
  346. package/node_modules/micromark/dev/lib/create-tokenizer.d.ts.map +1 -0
  347. package/node_modules/micromark/dev/lib/create-tokenizer.js +718 -0
  348. package/node_modules/micromark/dev/lib/initialize/content.d.ts +4 -0
  349. package/node_modules/micromark/dev/lib/initialize/content.d.ts.map +1 -0
  350. package/node_modules/micromark/dev/lib/initialize/content.js +99 -0
  351. package/node_modules/micromark/dev/lib/initialize/document.d.ts +10 -0
  352. package/node_modules/micromark/dev/lib/initialize/document.d.ts.map +1 -0
  353. package/node_modules/micromark/dev/lib/initialize/document.js +449 -0
  354. package/node_modules/micromark/dev/lib/initialize/flow.d.ts +4 -0
  355. package/node_modules/micromark/dev/lib/initialize/flow.d.ts.map +1 -0
  356. package/node_modules/micromark/dev/lib/initialize/flow.js +86 -0
  357. package/node_modules/micromark/dev/lib/initialize/text.d.ts +8 -0
  358. package/node_modules/micromark/dev/lib/initialize/text.d.ts.map +1 -0
  359. package/node_modules/micromark/dev/lib/initialize/text.js +248 -0
  360. package/node_modules/micromark/dev/lib/parse.d.ts +10 -0
  361. package/node_modules/micromark/dev/lib/parse.d.ts.map +1 -0
  362. package/node_modules/micromark/dev/lib/parse.js +58 -0
  363. package/node_modules/micromark/dev/lib/postprocess.d.ts +9 -0
  364. package/node_modules/micromark/dev/lib/postprocess.d.ts.map +1 -0
  365. package/node_modules/micromark/dev/lib/postprocess.js +19 -0
  366. package/node_modules/micromark/dev/lib/preprocess.d.ts +13 -0
  367. package/node_modules/micromark/dev/lib/preprocess.d.ts.map +1 -0
  368. package/node_modules/micromark/dev/lib/preprocess.js +139 -0
  369. package/node_modules/micromark/dev/stream.d.ts +35 -0
  370. package/node_modules/micromark/dev/stream.d.ts.map +1 -0
  371. package/node_modules/micromark/dev/stream.js +270 -0
  372. package/node_modules/micromark/index.d.ts +82 -0
  373. package/node_modules/micromark/index.d.ts.map +1 -0
  374. package/node_modules/micromark/index.js +60 -0
  375. package/node_modules/micromark/lib/compile.d.ts +16 -0
  376. package/node_modules/micromark/lib/compile.d.ts.map +1 -0
  377. package/node_modules/micromark/lib/compile.js +1068 -0
  378. package/node_modules/micromark/lib/constructs.d.ts +73 -0
  379. package/node_modules/micromark/lib/constructs.d.ts.map +1 -0
  380. package/node_modules/micromark/lib/constructs.js +85 -0
  381. package/node_modules/micromark/lib/create-tokenizer.d.ts +46 -0
  382. package/node_modules/micromark/lib/create-tokenizer.d.ts.map +1 -0
  383. package/node_modules/micromark/lib/create-tokenizer.js +613 -0
  384. package/node_modules/micromark/lib/initialize/content.d.ts +4 -0
  385. package/node_modules/micromark/lib/initialize/content.d.ts.map +1 -0
  386. package/node_modules/micromark/lib/initialize/content.js +79 -0
  387. package/node_modules/micromark/lib/initialize/document.d.ts +10 -0
  388. package/node_modules/micromark/lib/initialize/document.d.ts.map +1 -0
  389. package/node_modules/micromark/lib/initialize/document.js +370 -0
  390. package/node_modules/micromark/lib/initialize/flow.d.ts +4 -0
  391. package/node_modules/micromark/lib/initialize/flow.d.ts.map +1 -0
  392. package/node_modules/micromark/lib/initialize/flow.js +58 -0
  393. package/node_modules/micromark/lib/initialize/text.d.ts +8 -0
  394. package/node_modules/micromark/lib/initialize/text.d.ts.map +1 -0
  395. package/node_modules/micromark/lib/initialize/text.js +216 -0
  396. package/node_modules/micromark/lib/parse.d.ts +10 -0
  397. package/node_modules/micromark/lib/parse.d.ts.map +1 -0
  398. package/node_modules/micromark/lib/parse.js +56 -0
  399. package/node_modules/micromark/lib/postprocess.d.ts +9 -0
  400. package/node_modules/micromark/lib/postprocess.d.ts.map +1 -0
  401. package/node_modules/micromark/lib/postprocess.js +18 -0
  402. package/node_modules/micromark/lib/preprocess.d.ts +13 -0
  403. package/node_modules/micromark/lib/preprocess.d.ts.map +1 -0
  404. package/node_modules/micromark/lib/preprocess.js +112 -0
  405. package/node_modules/micromark/license +22 -0
  406. package/node_modules/micromark/package.json +87 -0
  407. package/node_modules/micromark/readme.md +488 -0
  408. package/node_modules/micromark/stream.d.ts +35 -0
  409. package/node_modules/micromark/stream.d.ts.map +1 -0
  410. package/node_modules/micromark/stream.js +256 -0
  411. package/node_modules/micromark-core-commonmark/dev/index.d.ts +23 -0
  412. package/node_modules/micromark-core-commonmark/dev/index.d.ts.map +1 -0
  413. package/node_modules/micromark-core-commonmark/dev/index.js +22 -0
  414. package/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts +4 -0
  415. package/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts.map +1 -0
  416. package/node_modules/micromark-core-commonmark/dev/lib/attention.js +294 -0
  417. package/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts +4 -0
  418. package/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts.map +1 -0
  419. package/node_modules/micromark-core-commonmark/dev/lib/autolink.js +269 -0
  420. package/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts +4 -0
  421. package/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts.map +1 -0
  422. package/node_modules/micromark-core-commonmark/dev/lib/blank-line.js +62 -0
  423. package/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts +4 -0
  424. package/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts.map +1 -0
  425. package/node_modules/micromark-core-commonmark/dev/lib/block-quote.js +162 -0
  426. package/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts +4 -0
  427. package/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts.map +1 -0
  428. package/node_modules/micromark-core-commonmark/dev/lib/character-escape.js +69 -0
  429. package/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts +4 -0
  430. package/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts.map +1 -0
  431. package/node_modules/micromark-core-commonmark/dev/lib/character-reference.js +166 -0
  432. package/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts +4 -0
  433. package/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts.map +1 -0
  434. package/node_modules/micromark-core-commonmark/dev/lib/code-fenced.js +472 -0
  435. package/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts +4 -0
  436. package/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts.map +1 -0
  437. package/node_modules/micromark-core-commonmark/dev/lib/code-indented.js +178 -0
  438. package/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts +4 -0
  439. package/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts.map +1 -0
  440. package/node_modules/micromark-core-commonmark/dev/lib/code-text.js +257 -0
  441. package/node_modules/micromark-core-commonmark/dev/lib/content.d.ts +7 -0
  442. package/node_modules/micromark-core-commonmark/dev/lib/content.d.ts.map +1 -0
  443. package/node_modules/micromark-core-commonmark/dev/lib/content.js +185 -0
  444. package/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts +4 -0
  445. package/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts.map +1 -0
  446. package/node_modules/micromark-core-commonmark/dev/lib/definition.js +295 -0
  447. package/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts +4 -0
  448. package/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts.map +1 -0
  449. package/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.js +65 -0
  450. package/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts +4 -0
  451. package/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts.map +1 -0
  452. package/node_modules/micromark-core-commonmark/dev/lib/heading-atx.js +229 -0
  453. package/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts +4 -0
  454. package/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts.map +1 -0
  455. package/node_modules/micromark-core-commonmark/dev/lib/html-flow.js +938 -0
  456. package/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts +4 -0
  457. package/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts.map +1 -0
  458. package/node_modules/micromark-core-commonmark/dev/lib/html-text.js +783 -0
  459. package/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts +4 -0
  460. package/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts.map +1 -0
  461. package/node_modules/micromark-core-commonmark/dev/lib/label-end.js +658 -0
  462. package/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts +4 -0
  463. package/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts.map +1 -0
  464. package/node_modules/micromark-core-commonmark/dev/lib/label-start-image.js +119 -0
  465. package/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts +4 -0
  466. package/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts.map +1 -0
  467. package/node_modules/micromark-core-commonmark/dev/lib/label-start-link.js +71 -0
  468. package/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts +4 -0
  469. package/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts.map +1 -0
  470. package/node_modules/micromark-core-commonmark/dev/lib/line-ending.js +34 -0
  471. package/node_modules/micromark-core-commonmark/dev/lib/list.d.ts +4 -0
  472. package/node_modules/micromark-core-commonmark/dev/lib/list.d.ts.map +1 -0
  473. package/node_modules/micromark-core-commonmark/dev/lib/list.js +306 -0
  474. package/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts +4 -0
  475. package/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts.map +1 -0
  476. package/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.js +67 -0
  477. package/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts +4 -0
  478. package/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts.map +1 -0
  479. package/node_modules/micromark-core-commonmark/dev/lib/setext-underline.js +213 -0
  480. package/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts +4 -0
  481. package/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts.map +1 -0
  482. package/node_modules/micromark-core-commonmark/dev/lib/thematic-break.js +120 -0
  483. package/node_modules/micromark-core-commonmark/index.d.ts +23 -0
  484. package/node_modules/micromark-core-commonmark/index.d.ts.map +1 -0
  485. package/node_modules/micromark-core-commonmark/index.js +22 -0
  486. package/node_modules/micromark-core-commonmark/lib/attention.d.ts +4 -0
  487. package/node_modules/micromark-core-commonmark/lib/attention.d.ts.map +1 -0
  488. package/node_modules/micromark-core-commonmark/lib/attention.js +231 -0
  489. package/node_modules/micromark-core-commonmark/lib/autolink.d.ts +4 -0
  490. package/node_modules/micromark-core-commonmark/lib/autolink.d.ts.map +1 -0
  491. package/node_modules/micromark-core-commonmark/lib/autolink.js +233 -0
  492. package/node_modules/micromark-core-commonmark/lib/blank-line.d.ts +4 -0
  493. package/node_modules/micromark-core-commonmark/lib/blank-line.d.ts.map +1 -0
  494. package/node_modules/micromark-core-commonmark/lib/blank-line.js +61 -0
  495. package/node_modules/micromark-core-commonmark/lib/block-quote.d.ts +4 -0
  496. package/node_modules/micromark-core-commonmark/lib/block-quote.d.ts.map +1 -0
  497. package/node_modules/micromark-core-commonmark/lib/block-quote.js +143 -0
  498. package/node_modules/micromark-core-commonmark/lib/character-escape.d.ts +4 -0
  499. package/node_modules/micromark-core-commonmark/lib/character-escape.d.ts.map +1 -0
  500. package/node_modules/micromark-core-commonmark/lib/character-escape.js +64 -0
  501. package/node_modules/micromark-core-commonmark/lib/character-reference.d.ts +4 -0
  502. package/node_modules/micromark-core-commonmark/lib/character-reference.d.ts.map +1 -0
  503. package/node_modules/micromark-core-commonmark/lib/character-reference.js +149 -0
  504. package/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts +4 -0
  505. package/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts.map +1 -0
  506. package/node_modules/micromark-core-commonmark/lib/code-fenced.js +422 -0
  507. package/node_modules/micromark-core-commonmark/lib/code-indented.d.ts +4 -0
  508. package/node_modules/micromark-core-commonmark/lib/code-indented.d.ts.map +1 -0
  509. package/node_modules/micromark-core-commonmark/lib/code-indented.js +159 -0
  510. package/node_modules/micromark-core-commonmark/lib/code-text.d.ts +4 -0
  511. package/node_modules/micromark-core-commonmark/lib/code-text.d.ts.map +1 -0
  512. package/node_modules/micromark-core-commonmark/lib/code-text.js +225 -0
  513. package/node_modules/micromark-core-commonmark/lib/content.d.ts +7 -0
  514. package/node_modules/micromark-core-commonmark/lib/content.d.ts.map +1 -0
  515. package/node_modules/micromark-core-commonmark/lib/content.js +163 -0
  516. package/node_modules/micromark-core-commonmark/lib/definition.d.ts +4 -0
  517. package/node_modules/micromark-core-commonmark/lib/definition.d.ts.map +1 -0
  518. package/node_modules/micromark-core-commonmark/lib/definition.js +254 -0
  519. package/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts +4 -0
  520. package/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts.map +1 -0
  521. package/node_modules/micromark-core-commonmark/lib/hard-break-escape.js +60 -0
  522. package/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts +4 -0
  523. package/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts.map +1 -0
  524. package/node_modules/micromark-core-commonmark/lib/heading-atx.js +191 -0
  525. package/node_modules/micromark-core-commonmark/lib/html-flow.d.ts +4 -0
  526. package/node_modules/micromark-core-commonmark/lib/html-flow.d.ts.map +1 -0
  527. package/node_modules/micromark-core-commonmark/lib/html-flow.js +827 -0
  528. package/node_modules/micromark-core-commonmark/lib/html-text.d.ts +4 -0
  529. package/node_modules/micromark-core-commonmark/lib/html-text.d.ts.map +1 -0
  530. package/node_modules/micromark-core-commonmark/lib/html-text.js +678 -0
  531. package/node_modules/micromark-core-commonmark/lib/label-end.d.ts +4 -0
  532. package/node_modules/micromark-core-commonmark/lib/label-end.d.ts.map +1 -0
  533. package/node_modules/micromark-core-commonmark/lib/label-end.js +561 -0
  534. package/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts +4 -0
  535. package/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts.map +1 -0
  536. package/node_modules/micromark-core-commonmark/lib/label-start-image.js +110 -0
  537. package/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts +4 -0
  538. package/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts.map +1 -0
  539. package/node_modules/micromark-core-commonmark/lib/label-start-link.js +63 -0
  540. package/node_modules/micromark-core-commonmark/lib/line-ending.d.ts +4 -0
  541. package/node_modules/micromark-core-commonmark/lib/line-ending.d.ts.map +1 -0
  542. package/node_modules/micromark-core-commonmark/lib/line-ending.js +33 -0
  543. package/node_modules/micromark-core-commonmark/lib/list.d.ts +4 -0
  544. package/node_modules/micromark-core-commonmark/lib/list.d.ts.map +1 -0
  545. package/node_modules/micromark-core-commonmark/lib/list.js +213 -0
  546. package/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts +4 -0
  547. package/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts.map +1 -0
  548. package/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.js +61 -0
  549. package/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts +4 -0
  550. package/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts.map +1 -0
  551. package/node_modules/micromark-core-commonmark/lib/setext-underline.js +187 -0
  552. package/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts +4 -0
  553. package/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts.map +1 -0
  554. package/node_modules/micromark-core-commonmark/lib/thematic-break.js +102 -0
  555. package/node_modules/micromark-core-commonmark/license +22 -0
  556. package/node_modules/micromark-core-commonmark/package.json +62 -0
  557. package/node_modules/micromark-core-commonmark/readme.md +171 -0
  558. package/node_modules/micromark-extension-gfm/index.d.ts +28 -0
  559. package/node_modules/micromark-extension-gfm/index.js +69 -0
  560. package/node_modules/micromark-extension-gfm/license +22 -0
  561. package/node_modules/micromark-extension-gfm/package.json +107 -0
  562. package/node_modules/micromark-extension-gfm/readme.md +433 -0
  563. package/node_modules/micromark-extension-gfm-autolink-literal/dev/index.d.ts +24 -0
  564. package/node_modules/micromark-extension-gfm-autolink-literal/dev/index.js +2 -0
  565. package/node_modules/micromark-extension-gfm-autolink-literal/dev/lib/html.d.ts +10 -0
  566. package/node_modules/micromark-extension-gfm-autolink-literal/dev/lib/html.js +56 -0
  567. package/node_modules/micromark-extension-gfm-autolink-literal/dev/lib/syntax.d.ts +10 -0
  568. package/node_modules/micromark-extension-gfm-autolink-literal/dev/lib/syntax.js +983 -0
  569. package/node_modules/micromark-extension-gfm-autolink-literal/index.d.ts +24 -0
  570. package/node_modules/micromark-extension-gfm-autolink-literal/index.js +2 -0
  571. package/node_modules/micromark-extension-gfm-autolink-literal/lib/html.d.ts +10 -0
  572. package/node_modules/micromark-extension-gfm-autolink-literal/lib/html.js +60 -0
  573. package/node_modules/micromark-extension-gfm-autolink-literal/lib/syntax.d.ts +10 -0
  574. package/node_modules/micromark-extension-gfm-autolink-literal/lib/syntax.js +854 -0
  575. package/node_modules/micromark-extension-gfm-autolink-literal/license +22 -0
  576. package/node_modules/micromark-extension-gfm-autolink-literal/package.json +116 -0
  577. package/node_modules/micromark-extension-gfm-autolink-literal/readme.md +422 -0
  578. package/node_modules/micromark-extension-gfm-footnote/dev/index.d.ts +164 -0
  579. package/node_modules/micromark-extension-gfm-footnote/dev/index.js +3 -0
  580. package/node_modules/micromark-extension-gfm-footnote/dev/lib/html.d.ts +25 -0
  581. package/node_modules/micromark-extension-gfm-footnote/dev/lib/html.js +226 -0
  582. package/node_modules/micromark-extension-gfm-footnote/dev/lib/syntax.d.ts +9 -0
  583. package/node_modules/micromark-extension-gfm-footnote/dev/lib/syntax.js +558 -0
  584. package/node_modules/micromark-extension-gfm-footnote/index.d.ts +164 -0
  585. package/node_modules/micromark-extension-gfm-footnote/index.js +3 -0
  586. package/node_modules/micromark-extension-gfm-footnote/lib/html.d.ts +25 -0
  587. package/node_modules/micromark-extension-gfm-footnote/lib/html.js +154 -0
  588. package/node_modules/micromark-extension-gfm-footnote/lib/syntax.d.ts +9 -0
  589. package/node_modules/micromark-extension-gfm-footnote/lib/syntax.js +485 -0
  590. package/node_modules/micromark-extension-gfm-footnote/license +22 -0
  591. package/node_modules/micromark-extension-gfm-footnote/package.json +132 -0
  592. package/node_modules/micromark-extension-gfm-footnote/readme.md +656 -0
  593. package/node_modules/micromark-extension-gfm-strikethrough/dev/index.d.ts +30 -0
  594. package/node_modules/micromark-extension-gfm-strikethrough/dev/index.js +3 -0
  595. package/node_modules/micromark-extension-gfm-strikethrough/dev/lib/html.d.ts +13 -0
  596. package/node_modules/micromark-extension-gfm-strikethrough/dev/lib/html.js +26 -0
  597. package/node_modules/micromark-extension-gfm-strikethrough/dev/lib/syntax.d.ts +12 -0
  598. package/node_modules/micromark-extension-gfm-strikethrough/dev/lib/syntax.js +183 -0
  599. package/node_modules/micromark-extension-gfm-strikethrough/index.d.ts +24 -0
  600. package/node_modules/micromark-extension-gfm-strikethrough/index.js +3 -0
  601. package/node_modules/micromark-extension-gfm-strikethrough/lib/html.d.ts +13 -0
  602. package/node_modules/micromark-extension-gfm-strikethrough/lib/html.js +26 -0
  603. package/node_modules/micromark-extension-gfm-strikethrough/lib/syntax.d.ts +12 -0
  604. package/node_modules/micromark-extension-gfm-strikethrough/lib/syntax.js +142 -0
  605. package/node_modules/micromark-extension-gfm-strikethrough/license +22 -0
  606. package/node_modules/micromark-extension-gfm-strikethrough/package.json +129 -0
  607. package/node_modules/micromark-extension-gfm-strikethrough/readme.md +304 -0
  608. package/node_modules/micromark-extension-gfm-table/dev/index.d.ts +55 -0
  609. package/node_modules/micromark-extension-gfm-table/dev/index.js +2 -0
  610. package/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts +51 -0
  611. package/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts.map +1 -0
  612. package/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.js +231 -0
  613. package/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts +11 -0
  614. package/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts.map +1 -0
  615. package/node_modules/micromark-extension-gfm-table/dev/lib/html.js +153 -0
  616. package/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts +14 -0
  617. package/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts.map +1 -0
  618. package/node_modules/micromark-extension-gfm-table/dev/lib/infer.js +64 -0
  619. package/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts +18 -0
  620. package/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts.map +1 -0
  621. package/node_modules/micromark-extension-gfm-table/dev/lib/syntax.js +964 -0
  622. package/node_modules/micromark-extension-gfm-table/index.d.ts +55 -0
  623. package/node_modules/micromark-extension-gfm-table/index.js +2 -0
  624. package/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts +51 -0
  625. package/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts.map +1 -0
  626. package/node_modules/micromark-extension-gfm-table/lib/edit-map.js +222 -0
  627. package/node_modules/micromark-extension-gfm-table/lib/html.d.ts +11 -0
  628. package/node_modules/micromark-extension-gfm-table/lib/html.d.ts.map +1 -0
  629. package/node_modules/micromark-extension-gfm-table/lib/html.js +135 -0
  630. package/node_modules/micromark-extension-gfm-table/lib/infer.d.ts +14 -0
  631. package/node_modules/micromark-extension-gfm-table/lib/infer.d.ts.map +1 -0
  632. package/node_modules/micromark-extension-gfm-table/lib/infer.js +52 -0
  633. package/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts +18 -0
  634. package/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts.map +1 -0
  635. package/node_modules/micromark-extension-gfm-table/lib/syntax.js +846 -0
  636. package/node_modules/micromark-extension-gfm-table/license +22 -0
  637. package/node_modules/micromark-extension-gfm-table/package.json +86 -0
  638. package/node_modules/micromark-extension-gfm-table/readme.md +515 -0
  639. package/node_modules/micromark-extension-gfm-tagfilter/index.d.ts +1 -0
  640. package/node_modules/micromark-extension-gfm-tagfilter/index.js +1 -0
  641. package/node_modules/micromark-extension-gfm-tagfilter/lib/index.d.ts +12 -0
  642. package/node_modules/micromark-extension-gfm-tagfilter/lib/index.js +51 -0
  643. package/node_modules/micromark-extension-gfm-tagfilter/license +22 -0
  644. package/node_modules/micromark-extension-gfm-tagfilter/package.json +82 -0
  645. package/node_modules/micromark-extension-gfm-tagfilter/readme.md +237 -0
  646. package/node_modules/micromark-extension-gfm-task-list-item/dev/index.d.ts +17 -0
  647. package/node_modules/micromark-extension-gfm-task-list-item/dev/index.js +2 -0
  648. package/node_modules/micromark-extension-gfm-task-list-item/dev/lib/html.d.ts +13 -0
  649. package/node_modules/micromark-extension-gfm-task-list-item/dev/lib/html.js +29 -0
  650. package/node_modules/micromark-extension-gfm-task-list-item/dev/lib/syntax.d.ts +10 -0
  651. package/node_modules/micromark-extension-gfm-task-list-item/dev/lib/syntax.js +166 -0
  652. package/node_modules/micromark-extension-gfm-task-list-item/index.d.ts +17 -0
  653. package/node_modules/micromark-extension-gfm-task-list-item/index.js +2 -0
  654. package/node_modules/micromark-extension-gfm-task-list-item/lib/html.d.ts +13 -0
  655. package/node_modules/micromark-extension-gfm-task-list-item/lib/html.js +29 -0
  656. package/node_modules/micromark-extension-gfm-task-list-item/lib/syntax.d.ts +10 -0
  657. package/node_modules/micromark-extension-gfm-task-list-item/lib/syntax.js +158 -0
  658. package/node_modules/micromark-extension-gfm-task-list-item/license +22 -0
  659. package/node_modules/micromark-extension-gfm-task-list-item/package.json +131 -0
  660. package/node_modules/micromark-extension-gfm-task-list-item/readme.md +305 -0
  661. package/node_modules/micromark-factory-destination/dev/index.d.ts +42 -0
  662. package/node_modules/micromark-factory-destination/dev/index.d.ts.map +1 -0
  663. package/node_modules/micromark-factory-destination/dev/index.js +255 -0
  664. package/node_modules/micromark-factory-destination/index.d.ts +42 -0
  665. package/node_modules/micromark-factory-destination/index.d.ts.map +1 -0
  666. package/node_modules/micromark-factory-destination/index.js +206 -0
  667. package/node_modules/micromark-factory-destination/license +22 -0
  668. package/node_modules/micromark-factory-destination/package.json +57 -0
  669. package/node_modules/micromark-factory-destination/readme.md +234 -0
  670. package/node_modules/micromark-factory-label/dev/index.d.ts +37 -0
  671. package/node_modules/micromark-factory-label/dev/index.d.ts.map +1 -0
  672. package/node_modules/micromark-factory-label/dev/index.js +172 -0
  673. package/node_modules/micromark-factory-label/index.d.ts +37 -0
  674. package/node_modules/micromark-factory-label/index.d.ts.map +1 -0
  675. package/node_modules/micromark-factory-label/index.js +148 -0
  676. package/node_modules/micromark-factory-label/license +22 -0
  677. package/node_modules/micromark-factory-label/package.json +60 -0
  678. package/node_modules/micromark-factory-label/readme.md +224 -0
  679. package/node_modules/micromark-factory-space/dev/index.d.ts +60 -0
  680. package/node_modules/micromark-factory-space/dev/index.d.ts.map +1 -0
  681. package/node_modules/micromark-factory-space/dev/index.js +122 -0
  682. package/node_modules/micromark-factory-space/index.d.ts +60 -0
  683. package/node_modules/micromark-factory-space/index.d.ts.map +1 -0
  684. package/node_modules/micromark-factory-space/index.js +116 -0
  685. package/node_modules/micromark-factory-space/license +22 -0
  686. package/node_modules/micromark-factory-space/package.json +46 -0
  687. package/node_modules/micromark-factory-space/readme.md +225 -0
  688. package/node_modules/micromark-factory-title/dev/index.d.ts +36 -0
  689. package/node_modules/micromark-factory-title/dev/index.d.ts.map +1 -0
  690. package/node_modules/micromark-factory-title/dev/index.js +169 -0
  691. package/node_modules/micromark-factory-title/index.d.ts +36 -0
  692. package/node_modules/micromark-factory-title/index.d.ts.map +1 -0
  693. package/node_modules/micromark-factory-title/index.js +158 -0
  694. package/node_modules/micromark-factory-title/license +22 -0
  695. package/node_modules/micromark-factory-title/package.json +58 -0
  696. package/node_modules/micromark-factory-title/readme.md +229 -0
  697. package/node_modules/micromark-factory-whitespace/dev/index.d.ts +22 -0
  698. package/node_modules/micromark-factory-whitespace/dev/index.d.ts.map +1 -0
  699. package/node_modules/micromark-factory-whitespace/dev/index.js +53 -0
  700. package/node_modules/micromark-factory-whitespace/index.d.ts +22 -0
  701. package/node_modules/micromark-factory-whitespace/index.d.ts.map +1 -0
  702. package/node_modules/micromark-factory-whitespace/index.js +44 -0
  703. package/node_modules/micromark-factory-whitespace/license +22 -0
  704. package/node_modules/micromark-factory-whitespace/package.json +57 -0
  705. package/node_modules/micromark-factory-whitespace/readme.md +205 -0
  706. package/node_modules/micromark-util-character/dev/index.d.ts +195 -0
  707. package/node_modules/micromark-util-character/dev/index.d.ts.map +1 -0
  708. package/node_modules/micromark-util-character/dev/index.js +252 -0
  709. package/node_modules/micromark-util-character/index.d.ts +195 -0
  710. package/node_modules/micromark-util-character/index.d.ts.map +1 -0
  711. package/node_modules/micromark-util-character/index.js +246 -0
  712. package/node_modules/micromark-util-character/license +22 -0
  713. package/node_modules/micromark-util-character/package.json +57 -0
  714. package/node_modules/micromark-util-character/readme.md +446 -0
  715. package/node_modules/micromark-util-chunked/dev/index.d.ts +41 -0
  716. package/node_modules/micromark-util-chunked/dev/index.d.ts.map +1 -0
  717. package/node_modules/micromark-util-chunked/dev/index.js +89 -0
  718. package/node_modules/micromark-util-chunked/index.d.ts +41 -0
  719. package/node_modules/micromark-util-chunked/index.d.ts.map +1 -0
  720. package/node_modules/micromark-util-chunked/index.js +81 -0
  721. package/node_modules/micromark-util-chunked/license +22 -0
  722. package/node_modules/micromark-util-chunked/package.json +57 -0
  723. package/node_modules/micromark-util-chunked/readme.md +219 -0
  724. package/node_modules/micromark-util-classify-character/dev/index.d.ts +18 -0
  725. package/node_modules/micromark-util-classify-character/dev/index.d.ts.map +1 -0
  726. package/node_modules/micromark-util-classify-character/dev/index.js +38 -0
  727. package/node_modules/micromark-util-classify-character/index.d.ts +18 -0
  728. package/node_modules/micromark-util-classify-character/index.d.ts.map +1 -0
  729. package/node_modules/micromark-util-classify-character/index.js +27 -0
  730. package/node_modules/micromark-util-classify-character/license +22 -0
  731. package/node_modules/micromark-util-classify-character/package.json +59 -0
  732. package/node_modules/micromark-util-classify-character/readme.md +205 -0
  733. package/node_modules/micromark-util-combine-extensions/index.d.ts +22 -0
  734. package/node_modules/micromark-util-combine-extensions/index.d.ts.map +1 -0
  735. package/node_modules/micromark-util-combine-extensions/index.js +143 -0
  736. package/node_modules/micromark-util-combine-extensions/license +22 -0
  737. package/node_modules/micromark-util-combine-extensions/package.json +52 -0
  738. package/node_modules/micromark-util-combine-extensions/readme.md +201 -0
  739. package/node_modules/micromark-util-decode-numeric-character-reference/dev/index.d.ts +16 -0
  740. package/node_modules/micromark-util-decode-numeric-character-reference/dev/index.d.ts.map +1 -0
  741. package/node_modules/micromark-util-decode-numeric-character-reference/dev/index.js +42 -0
  742. package/node_modules/micromark-util-decode-numeric-character-reference/index.d.ts +16 -0
  743. package/node_modules/micromark-util-decode-numeric-character-reference/index.d.ts.map +1 -0
  744. package/node_modules/micromark-util-decode-numeric-character-reference/index.js +32 -0
  745. package/node_modules/micromark-util-decode-numeric-character-reference/license +22 -0
  746. package/node_modules/micromark-util-decode-numeric-character-reference/package.json +59 -0
  747. package/node_modules/micromark-util-decode-numeric-character-reference/readme.md +184 -0
  748. package/node_modules/micromark-util-decode-string/dev/index.d.ts +14 -0
  749. package/node_modules/micromark-util-decode-string/dev/index.d.ts.map +1 -0
  750. package/node_modules/micromark-util-decode-string/dev/index.js +53 -0
  751. package/node_modules/micromark-util-decode-string/index.d.ts +14 -0
  752. package/node_modules/micromark-util-decode-string/index.d.ts.map +1 -0
  753. package/node_modules/micromark-util-decode-string/index.js +45 -0
  754. package/node_modules/micromark-util-decode-string/license +22 -0
  755. package/node_modules/micromark-util-decode-string/package.json +63 -0
  756. package/node_modules/micromark-util-decode-string/readme.md +179 -0
  757. package/node_modules/micromark-util-edit-map/dev/index.d.ts +78 -0
  758. package/node_modules/micromark-util-edit-map/dev/index.d.ts.map +1 -0
  759. package/node_modules/micromark-util-edit-map/dev/index.js +237 -0
  760. package/node_modules/micromark-util-edit-map/index.d.ts +78 -0
  761. package/node_modules/micromark-util-edit-map/index.d.ts.map +1 -0
  762. package/node_modules/micromark-util-edit-map/index.js +225 -0
  763. package/node_modules/micromark-util-edit-map/license +22 -0
  764. package/node_modules/micromark-util-edit-map/package.json +48 -0
  765. package/node_modules/micromark-util-edit-map/readme.md +234 -0
  766. package/node_modules/micromark-util-encode/index.d.ts +14 -0
  767. package/node_modules/micromark-util-encode/index.d.ts.map +1 -0
  768. package/node_modules/micromark-util-encode/index.js +33 -0
  769. package/node_modules/micromark-util-encode/license +22 -0
  770. package/node_modules/micromark-util-encode/package.json +47 -0
  771. package/node_modules/micromark-util-encode/readme.md +176 -0
  772. package/node_modules/micromark-util-html-tag-name/index.d.ts +30 -0
  773. package/node_modules/micromark-util-html-tag-name/index.d.ts.map +1 -0
  774. package/node_modules/micromark-util-html-tag-name/index.js +93 -0
  775. package/node_modules/micromark-util-html-tag-name/license +22 -0
  776. package/node_modules/micromark-util-html-tag-name/package.json +47 -0
  777. package/node_modules/micromark-util-html-tag-name/readme.md +193 -0
  778. package/node_modules/micromark-util-normalize-identifier/dev/index.d.ts +21 -0
  779. package/node_modules/micromark-util-normalize-identifier/dev/index.d.ts.map +1 -0
  780. package/node_modules/micromark-util-normalize-identifier/dev/index.js +38 -0
  781. package/node_modules/micromark-util-normalize-identifier/index.d.ts +21 -0
  782. package/node_modules/micromark-util-normalize-identifier/index.d.ts.map +1 -0
  783. package/node_modules/micromark-util-normalize-identifier/index.js +33 -0
  784. package/node_modules/micromark-util-normalize-identifier/license +22 -0
  785. package/node_modules/micromark-util-normalize-identifier/package.json +58 -0
  786. package/node_modules/micromark-util-normalize-identifier/readme.md +187 -0
  787. package/node_modules/micromark-util-resolve-all/index.d.ts +22 -0
  788. package/node_modules/micromark-util-resolve-all/index.d.ts.map +1 -0
  789. package/node_modules/micromark-util-resolve-all/index.js +32 -0
  790. package/node_modules/micromark-util-resolve-all/license +22 -0
  791. package/node_modules/micromark-util-resolve-all/package.json +48 -0
  792. package/node_modules/micromark-util-resolve-all/readme.md +238 -0
  793. package/node_modules/micromark-util-sanitize-uri/dev/index.d.ts +36 -0
  794. package/node_modules/micromark-util-sanitize-uri/dev/index.d.ts.map +1 -0
  795. package/node_modules/micromark-util-sanitize-uri/dev/index.js +124 -0
  796. package/node_modules/micromark-util-sanitize-uri/index.d.ts +36 -0
  797. package/node_modules/micromark-util-sanitize-uri/index.d.ts.map +1 -0
  798. package/node_modules/micromark-util-sanitize-uri/index.js +107 -0
  799. package/node_modules/micromark-util-sanitize-uri/license +22 -0
  800. package/node_modules/micromark-util-sanitize-uri/package.json +59 -0
  801. package/node_modules/micromark-util-sanitize-uri/readme.md +214 -0
  802. package/node_modules/micromark-util-subtokenize/dev/index.d.ts +12 -0
  803. package/node_modules/micromark-util-subtokenize/dev/index.d.ts.map +1 -0
  804. package/node_modules/micromark-util-subtokenize/dev/index.js +284 -0
  805. package/node_modules/micromark-util-subtokenize/dev/lib/splice-buffer.d.ts +161 -0
  806. package/node_modules/micromark-util-subtokenize/dev/lib/splice-buffer.d.ts.map +1 -0
  807. package/node_modules/micromark-util-subtokenize/dev/lib/splice-buffer.js +288 -0
  808. package/node_modules/micromark-util-subtokenize/index.d.ts +12 -0
  809. package/node_modules/micromark-util-subtokenize/index.d.ts.map +1 -0
  810. package/node_modules/micromark-util-subtokenize/index.js +228 -0
  811. package/node_modules/micromark-util-subtokenize/lib/splice-buffer.d.ts +161 -0
  812. package/node_modules/micromark-util-subtokenize/lib/splice-buffer.d.ts.map +1 -0
  813. package/node_modules/micromark-util-subtokenize/lib/splice-buffer.js +251 -0
  814. package/node_modules/micromark-util-subtokenize/license +22 -0
  815. package/node_modules/micromark-util-subtokenize/package.json +60 -0
  816. package/node_modules/micromark-util-subtokenize/readme.md +181 -0
  817. package/node_modules/micromark-util-symbol/lib/codes.d.ts +139 -0
  818. package/node_modules/micromark-util-symbol/lib/codes.d.ts.map +1 -0
  819. package/node_modules/micromark-util-symbol/lib/codes.js +158 -0
  820. package/node_modules/micromark-util-symbol/lib/constants.d.ts +37 -0
  821. package/node_modules/micromark-util-symbol/lib/constants.d.ts.map +1 -0
  822. package/node_modules/micromark-util-symbol/lib/constants.js +44 -0
  823. package/node_modules/micromark-util-symbol/lib/default.d.ts +5 -0
  824. package/node_modules/micromark-util-symbol/lib/default.d.ts.map +1 -0
  825. package/node_modules/micromark-util-symbol/lib/default.js +4 -0
  826. package/node_modules/micromark-util-symbol/lib/types.d.ts +106 -0
  827. package/node_modules/micromark-util-symbol/lib/types.d.ts.map +1 -0
  828. package/node_modules/micromark-util-symbol/lib/types.js +453 -0
  829. package/node_modules/micromark-util-symbol/lib/values.d.ts +102 -0
  830. package/node_modules/micromark-util-symbol/lib/values.d.ts.map +1 -0
  831. package/node_modules/micromark-util-symbol/lib/values.js +109 -0
  832. package/node_modules/micromark-util-symbol/license +22 -0
  833. package/node_modules/micromark-util-symbol/package.json +43 -0
  834. package/node_modules/micromark-util-symbol/readme.md +168 -0
  835. package/node_modules/micromark-util-types/index.d.ts +1315 -0
  836. package/node_modules/micromark-util-types/index.js +2 -0
  837. package/node_modules/micromark-util-types/license +22 -0
  838. package/node_modules/micromark-util-types/package.json +37 -0
  839. package/node_modules/micromark-util-types/readme.md +151 -0
  840. package/node_modules/ms/index.js +162 -0
  841. package/node_modules/ms/license.md +21 -0
  842. package/node_modules/ms/package.json +38 -0
  843. package/node_modules/ms/readme.md +59 -0
  844. package/node_modules/remark-gfm/index.d.ts +13 -0
  845. package/node_modules/remark-gfm/index.js +2 -0
  846. package/node_modules/remark-gfm/lib/index.d.ts +12 -0
  847. package/node_modules/remark-gfm/lib/index.d.ts.map +1 -0
  848. package/node_modules/remark-gfm/lib/index.js +41 -0
  849. package/node_modules/remark-gfm/license +22 -0
  850. package/node_modules/remark-gfm/package.json +125 -0
  851. package/node_modules/remark-gfm/readme.md +518 -0
  852. package/node_modules/remark-parse/index.d.ts +55 -0
  853. package/node_modules/remark-parse/index.js +2 -0
  854. package/node_modules/remark-parse/lib/index.d.ts +26 -0
  855. package/node_modules/remark-parse/lib/index.js +43 -0
  856. package/node_modules/remark-parse/license +21 -0
  857. package/node_modules/remark-parse/package.json +72 -0
  858. package/node_modules/remark-parse/readme.md +428 -0
  859. package/node_modules/remark-stringify/index.d.ts +41 -0
  860. package/node_modules/remark-stringify/index.js +2 -0
  861. package/node_modules/remark-stringify/lib/index.d.ts +26 -0
  862. package/node_modules/remark-stringify/lib/index.js +42 -0
  863. package/node_modules/remark-stringify/license +21 -0
  864. package/node_modules/remark-stringify/package.json +71 -0
  865. package/node_modules/remark-stringify/readme.md +407 -0
  866. package/node_modules/trough/index.d.ts +7 -0
  867. package/node_modules/trough/index.d.ts.map +1 -0
  868. package/node_modules/trough/index.js +9 -0
  869. package/node_modules/trough/lib/index.d.ts +105 -0
  870. package/node_modules/trough/lib/index.d.ts.map +1 -0
  871. package/node_modules/trough/lib/index.js +206 -0
  872. package/node_modules/trough/license +21 -0
  873. package/node_modules/trough/package.json +77 -0
  874. package/node_modules/trough/readme.md +494 -0
  875. package/node_modules/unified/index.d.ts +106 -0
  876. package/node_modules/unified/index.js +2 -0
  877. package/node_modules/unified/lib/callable-instance.d.ts +2 -0
  878. package/node_modules/unified/lib/callable-instance.d.ts.map +1 -0
  879. package/node_modules/unified/lib/callable-instance.js +44 -0
  880. package/node_modules/unified/lib/index.d.ts +1024 -0
  881. package/node_modules/unified/lib/index.d.ts.map +1 -0
  882. package/node_modules/unified/lib/index.js +1323 -0
  883. package/node_modules/unified/license +21 -0
  884. package/node_modules/unified/package.json +120 -0
  885. package/node_modules/unified/readme.md +1835 -0
  886. package/node_modules/unist-util-is/index.d.ts +5 -0
  887. package/node_modules/unist-util-is/index.d.ts.map +1 -0
  888. package/node_modules/unist-util-is/index.js +7 -0
  889. package/node_modules/unist-util-is/lib/index.d.ts +111 -0
  890. package/node_modules/unist-util-is/lib/index.d.ts.map +1 -0
  891. package/node_modules/unist-util-is/lib/index.js +296 -0
  892. package/node_modules/unist-util-is/license +22 -0
  893. package/node_modules/unist-util-is/package.json +103 -0
  894. package/node_modules/unist-util-is/readme.md +351 -0
  895. package/node_modules/unist-util-stringify-position/index.d.ts +1 -0
  896. package/node_modules/unist-util-stringify-position/index.js +1 -0
  897. package/node_modules/unist-util-stringify-position/lib/index.d.ts +61 -0
  898. package/node_modules/unist-util-stringify-position/lib/index.js +84 -0
  899. package/node_modules/unist-util-stringify-position/license +22 -0
  900. package/node_modules/unist-util-stringify-position/package.json +80 -0
  901. package/node_modules/unist-util-stringify-position/readme.md +206 -0
  902. package/node_modules/unist-util-visit/index.d.ts +9 -0
  903. package/node_modules/unist-util-visit/index.js +2 -0
  904. package/node_modules/unist-util-visit/lib/index.d.ts +195 -0
  905. package/node_modules/unist-util-visit/lib/index.d.ts.map +1 -0
  906. package/node_modules/unist-util-visit/lib/index.js +312 -0
  907. package/node_modules/unist-util-visit/license +22 -0
  908. package/node_modules/unist-util-visit/package.json +108 -0
  909. package/node_modules/unist-util-visit/readme.md +313 -0
  910. package/node_modules/unist-util-visit-parents/index.d.ts +14 -0
  911. package/node_modules/unist-util-visit-parents/index.js +2 -0
  912. package/node_modules/unist-util-visit-parents/lib/color.d.ts +6 -0
  913. package/node_modules/unist-util-visit-parents/lib/color.d.ts.map +1 -0
  914. package/node_modules/unist-util-visit-parents/lib/color.js +7 -0
  915. package/node_modules/unist-util-visit-parents/lib/color.node.d.ts +6 -0
  916. package/node_modules/unist-util-visit-parents/lib/color.node.d.ts.map +1 -0
  917. package/node_modules/unist-util-visit-parents/lib/color.node.js +7 -0
  918. package/node_modules/unist-util-visit-parents/lib/index.d.ts +219 -0
  919. package/node_modules/unist-util-visit-parents/lib/index.d.ts.map +1 -0
  920. package/node_modules/unist-util-visit-parents/lib/index.js +399 -0
  921. package/node_modules/unist-util-visit-parents/license +22 -0
  922. package/node_modules/unist-util-visit-parents/package.json +106 -0
  923. package/node_modules/unist-util-visit-parents/readme.md +388 -0
  924. package/node_modules/vfile/index.d.ts +153 -0
  925. package/node_modules/vfile/index.js +2 -0
  926. package/node_modules/vfile/lib/index.d.ts +1465 -0
  927. package/node_modules/vfile/lib/index.d.ts.map +1 -0
  928. package/node_modules/vfile/lib/index.js +643 -0
  929. package/node_modules/vfile/lib/minpath.browser.d.ts +47 -0
  930. package/node_modules/vfile/lib/minpath.browser.d.ts.map +1 -0
  931. package/node_modules/vfile/lib/minpath.browser.js +426 -0
  932. package/node_modules/vfile/lib/minpath.d.ts +2 -0
  933. package/node_modules/vfile/lib/minpath.d.ts.map +1 -0
  934. package/node_modules/vfile/lib/minpath.js +1 -0
  935. package/node_modules/vfile/lib/minproc.browser.d.ts +6 -0
  936. package/node_modules/vfile/lib/minproc.browser.d.ts.map +1 -0
  937. package/node_modules/vfile/lib/minproc.browser.js +8 -0
  938. package/node_modules/vfile/lib/minproc.d.ts +2 -0
  939. package/node_modules/vfile/lib/minproc.d.ts.map +1 -0
  940. package/node_modules/vfile/lib/minproc.js +1 -0
  941. package/node_modules/vfile/lib/minurl.browser.d.ts +9 -0
  942. package/node_modules/vfile/lib/minurl.browser.d.ts.map +1 -0
  943. package/node_modules/vfile/lib/minurl.browser.js +76 -0
  944. package/node_modules/vfile/lib/minurl.d.ts +3 -0
  945. package/node_modules/vfile/lib/minurl.d.ts.map +1 -0
  946. package/node_modules/vfile/lib/minurl.js +2 -0
  947. package/node_modules/vfile/lib/minurl.shared.d.ts +20 -0
  948. package/node_modules/vfile/lib/minurl.shared.d.ts.map +1 -0
  949. package/node_modules/vfile/lib/minurl.shared.js +31 -0
  950. package/node_modules/vfile/license +21 -0
  951. package/node_modules/vfile/package.json +134 -0
  952. package/node_modules/vfile/readme.md +785 -0
  953. package/node_modules/vfile-message/index.d.ts +2 -0
  954. package/node_modules/vfile-message/index.js +5 -0
  955. package/node_modules/vfile-message/lib/index.d.ts +508 -0
  956. package/node_modules/vfile-message/lib/index.js +314 -0
  957. package/node_modules/vfile-message/license +22 -0
  958. package/node_modules/vfile-message/package.json +80 -0
  959. package/node_modules/vfile-message/readme.md +252 -0
  960. package/node_modules/yaml/LICENSE +13 -0
  961. package/node_modules/yaml/README.md +172 -0
  962. package/node_modules/yaml/bin.mjs +11 -0
  963. package/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  964. package/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
  965. package/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
  966. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
  967. package/node_modules/yaml/browser/dist/compose/composer.js +219 -0
  968. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
  969. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  970. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
  971. package/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  972. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
  973. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +226 -0
  974. package/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
  975. package/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  976. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
  977. package/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  978. package/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
  979. package/node_modules/yaml/browser/dist/doc/Document.js +335 -0
  980. package/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
  981. package/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  982. package/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
  983. package/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  984. package/node_modules/yaml/browser/dist/errors.js +57 -0
  985. package/node_modules/yaml/browser/dist/index.js +17 -0
  986. package/node_modules/yaml/browser/dist/log.js +11 -0
  987. package/node_modules/yaml/browser/dist/nodes/Alias.js +118 -0
  988. package/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  989. package/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  990. package/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  991. package/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  992. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  993. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  994. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
  995. package/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  996. package/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  997. package/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  998. package/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  999. package/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  1000. package/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  1001. package/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
  1002. package/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  1003. package/node_modules/yaml/browser/dist/parse/parser.js +975 -0
  1004. package/node_modules/yaml/browser/dist/public-api.js +102 -0
  1005. package/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
  1006. package/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  1007. package/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  1008. package/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  1009. package/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  1010. package/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  1011. package/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  1012. package/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  1013. package/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  1014. package/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  1015. package/node_modules/yaml/browser/dist/schema/tags.js +96 -0
  1016. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
  1017. package/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  1018. package/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  1019. package/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  1020. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
  1021. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  1022. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  1023. package/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
  1024. package/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  1025. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  1026. package/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  1027. package/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
  1028. package/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
  1029. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  1030. package/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  1031. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
  1032. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  1033. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
  1034. package/node_modules/yaml/browser/dist/util.js +11 -0
  1035. package/node_modules/yaml/browser/dist/visit.js +233 -0
  1036. package/node_modules/yaml/browser/index.js +5 -0
  1037. package/node_modules/yaml/browser/package.json +3 -0
  1038. package/node_modules/yaml/dist/cli.d.ts +8 -0
  1039. package/node_modules/yaml/dist/cli.mjs +201 -0
  1040. package/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  1041. package/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  1042. package/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  1043. package/node_modules/yaml/dist/compose/compose-doc.js +45 -0
  1044. package/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
  1045. package/node_modules/yaml/dist/compose/compose-node.js +112 -0
  1046. package/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  1047. package/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
  1048. package/node_modules/yaml/dist/compose/composer.d.ts +63 -0
  1049. package/node_modules/yaml/dist/compose/composer.js +224 -0
  1050. package/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  1051. package/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
  1052. package/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  1053. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  1054. package/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  1055. package/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
  1056. package/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  1057. package/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  1058. package/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  1059. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
  1060. package/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  1061. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +228 -0
  1062. package/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  1063. package/node_modules/yaml/dist/compose/resolve-props.js +148 -0
  1064. package/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  1065. package/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  1066. package/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  1067. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
  1068. package/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  1069. package/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  1070. package/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  1071. package/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
  1072. package/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  1073. package/node_modules/yaml/dist/doc/Document.js +337 -0
  1074. package/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  1075. package/node_modules/yaml/dist/doc/anchors.js +76 -0
  1076. package/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  1077. package/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  1078. package/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  1079. package/node_modules/yaml/dist/doc/createNode.js +90 -0
  1080. package/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  1081. package/node_modules/yaml/dist/doc/directives.js +178 -0
  1082. package/node_modules/yaml/dist/errors.d.ts +21 -0
  1083. package/node_modules/yaml/dist/errors.js +62 -0
  1084. package/node_modules/yaml/dist/index.d.ts +25 -0
  1085. package/node_modules/yaml/dist/index.js +50 -0
  1086. package/node_modules/yaml/dist/log.d.ts +3 -0
  1087. package/node_modules/yaml/dist/log.js +19 -0
  1088. package/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
  1089. package/node_modules/yaml/dist/nodes/Alias.js +120 -0
  1090. package/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  1091. package/node_modules/yaml/dist/nodes/Collection.js +151 -0
  1092. package/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
  1093. package/node_modules/yaml/dist/nodes/Node.js +40 -0
  1094. package/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
  1095. package/node_modules/yaml/dist/nodes/Pair.js +39 -0
  1096. package/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
  1097. package/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  1098. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  1099. package/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  1100. package/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  1101. package/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  1102. package/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  1103. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
  1104. package/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  1105. package/node_modules/yaml/dist/nodes/identity.js +53 -0
  1106. package/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
  1107. package/node_modules/yaml/dist/nodes/toJS.js +39 -0
  1108. package/node_modules/yaml/dist/options.d.ts +350 -0
  1109. package/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  1110. package/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  1111. package/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  1112. package/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  1113. package/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  1114. package/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  1115. package/node_modules/yaml/dist/parse/cst.d.ts +109 -0
  1116. package/node_modules/yaml/dist/parse/cst.js +112 -0
  1117. package/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  1118. package/node_modules/yaml/dist/parse/lexer.js +723 -0
  1119. package/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  1120. package/node_modules/yaml/dist/parse/line-counter.js +41 -0
  1121. package/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  1122. package/node_modules/yaml/dist/parse/parser.js +980 -0
  1123. package/node_modules/yaml/dist/public-api.d.ts +44 -0
  1124. package/node_modules/yaml/dist/public-api.js +107 -0
  1125. package/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
  1126. package/node_modules/yaml/dist/schema/Schema.js +39 -0
  1127. package/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  1128. package/node_modules/yaml/dist/schema/common/map.js +19 -0
  1129. package/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  1130. package/node_modules/yaml/dist/schema/common/null.js +17 -0
  1131. package/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  1132. package/node_modules/yaml/dist/schema/common/seq.js +19 -0
  1133. package/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  1134. package/node_modules/yaml/dist/schema/common/string.js +16 -0
  1135. package/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  1136. package/node_modules/yaml/dist/schema/core/bool.js +21 -0
  1137. package/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  1138. package/node_modules/yaml/dist/schema/core/float.js +47 -0
  1139. package/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  1140. package/node_modules/yaml/dist/schema/core/int.js +42 -0
  1141. package/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  1142. package/node_modules/yaml/dist/schema/core/schema.js +25 -0
  1143. package/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  1144. package/node_modules/yaml/dist/schema/json/schema.js +64 -0
  1145. package/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  1146. package/node_modules/yaml/dist/schema/tags.d.ts +48 -0
  1147. package/node_modules/yaml/dist/schema/tags.js +99 -0
  1148. package/node_modules/yaml/dist/schema/types.d.ts +92 -0
  1149. package/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  1150. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
  1151. package/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  1152. package/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  1153. package/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  1154. package/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  1155. package/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  1156. package/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  1157. package/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
  1158. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
  1159. package/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
  1160. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  1161. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  1162. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  1163. package/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  1164. package/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
  1165. package/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  1166. package/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  1167. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  1168. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  1169. package/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  1170. package/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  1171. package/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  1172. package/node_modules/yaml/dist/stringify/stringify.js +132 -0
  1173. package/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  1174. package/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
  1175. package/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  1176. package/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  1177. package/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  1178. package/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  1179. package/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  1180. package/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
  1181. package/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  1182. package/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  1183. package/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  1184. package/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
  1185. package/node_modules/yaml/dist/test-events.d.ts +4 -0
  1186. package/node_modules/yaml/dist/test-events.js +134 -0
  1187. package/node_modules/yaml/dist/util.d.ts +16 -0
  1188. package/node_modules/yaml/dist/util.js +28 -0
  1189. package/node_modules/yaml/dist/visit.d.ts +102 -0
  1190. package/node_modules/yaml/dist/visit.js +236 -0
  1191. package/node_modules/yaml/package.json +97 -0
  1192. package/node_modules/yaml/util.js +2 -0
  1193. package/node_modules/zwitch/index.d.ts +67 -0
  1194. package/node_modules/zwitch/index.js +118 -0
  1195. package/node_modules/zwitch/license +22 -0
  1196. package/node_modules/zwitch/package.json +72 -0
  1197. package/node_modules/zwitch/readme.md +226 -0
  1198. package/package.json +13 -5
  1199. package/packages/pcr-core/schemas/guidance-batch-request.schema.json +12 -0
  1200. package/packages/pcr-core/schemas/guidance-output.schema.json +236 -28
  1201. package/packages/pcr-core/schemas/structured-projection.schema.json +576 -80
  1202. package/packages/pcr-core/src/classification-coverage.js +664 -0
  1203. package/packages/pcr-core/src/classification-coverage.js.map +1 -0
  1204. package/packages/pcr-core/src/compiler/guidance-context.js +135 -0
  1205. package/packages/pcr-core/src/compiler/guidance-context.js.map +1 -0
  1206. package/packages/pcr-core/src/compiler/guidance-envelope.js +78 -0
  1207. package/packages/pcr-core/src/compiler/guidance-envelope.js.map +1 -0
  1208. package/packages/pcr-core/src/compiler/normative-integrity.js +67 -0
  1209. package/packages/pcr-core/src/compiler/normative-integrity.js.map +1 -0
  1210. package/packages/pcr-core/src/compiler/normative-projection.js +276 -0
  1211. package/packages/pcr-core/src/compiler/normative-projection.js.map +1 -0
  1212. package/packages/pcr-core/src/compiler/source-context.js +231 -0
  1213. package/packages/pcr-core/src/compiler/source-context.js.map +1 -0
  1214. package/packages/pcr-core/src/consumption-calculation.js +61 -0
  1215. package/packages/pcr-core/src/consumption-calculation.js.map +1 -0
  1216. package/packages/pcr-core/src/consumption-data.js +99 -0
  1217. package/packages/pcr-core/src/consumption-data.js.map +1 -0
  1218. package/packages/pcr-core/src/consumption-guidance.js +107 -0
  1219. package/packages/pcr-core/src/consumption-guidance.js.map +1 -0
  1220. package/packages/pcr-core/src/consumption-review.js +103 -0
  1221. package/packages/pcr-core/src/consumption-review.js.map +1 -0
  1222. package/packages/pcr-core/src/contracts.js +163 -0
  1223. package/packages/pcr-core/src/contracts.js.map +1 -0
  1224. package/packages/pcr-core/src/generated/controlled-vocabulary.js +39 -0
  1225. package/packages/pcr-core/src/generated/controlled-vocabulary.js.map +1 -0
  1226. package/packages/pcr-core/src/index.js +1824 -0
  1227. package/packages/pcr-core/src/index.js.map +1 -0
  1228. package/packages/pcr-core/src/languages.js +85 -0
  1229. package/packages/pcr-core/src/languages.js.map +1 -0
  1230. package/packages/pcr-core/src/offline-library.js +302 -0
  1231. package/packages/pcr-core/src/offline-library.js.map +1 -0
  1232. package/packages/pcr-core/src/output-semantics.js +122 -0
  1233. package/packages/pcr-core/src/output-semantics.js.map +1 -0
  1234. package/packages/pcr-core/src/pcr-id-aliases.js +898 -0
  1235. package/packages/pcr-core/src/pcr-id-aliases.js.map +1 -0
  1236. package/packages/pcr-core/src/projection-completeness.js +172 -0
  1237. package/packages/pcr-core/src/projection-completeness.js.map +1 -0
  1238. package/packages/pcr-core/src/projection-integrity.js +177 -0
  1239. package/packages/pcr-core/src/projection-integrity.js.map +1 -0
  1240. package/packages/pcr-core/src/read-context.js +421 -0
  1241. package/packages/pcr-core/src/read-context.js.map +1 -0
  1242. package/packages/pcr-core/src/read-session.js +150 -0
  1243. package/packages/pcr-core/src/read-session.js.map +1 -0
  1244. package/packages/pcr-core/src/schema-validation.js +136 -0
  1245. package/packages/pcr-core/src/schema-validation.js.map +1 -0
  1246. package/packages/pcr-core/src/source-context.js +18 -0
  1247. package/packages/pcr-core/src/source-context.js.map +1 -0
  1248. package/packages/pcr-core/src/tidas-inspection.js +201 -0
  1249. package/packages/pcr-core/src/tidas-inspection.js.map +1 -0
  1250. package/packages/pcr-core/src/types.js +12 -0
  1251. package/packages/pcr-core/src/types.js.map +1 -0
  1252. package/packages/pcr-core/src/vocabulary.js +47 -0
  1253. package/packages/pcr-core/src/vocabulary.js.map +1 -0
  1254. package/packages/pcr-core/src/yaml-lite.js +267 -0
  1255. package/packages/pcr-core/src/yaml-lite.js.map +1 -0
  1256. package/packages/tiangong-pcr-cli/bin/tiangong-pcr.js +11 -0
  1257. package/packages/tiangong-pcr-cli/bin/tiangong-pcr.js.map +1 -0
  1258. package/packages/tiangong-pcr-cli/src/commands.js +1662 -0
  1259. package/packages/tiangong-pcr-cli/src/commands.js.map +1 -0
  1260. package/product-release.json +4 -4
  1261. package/skills/tiangong-pcr/SKILL.md +9 -2
  1262. package/packages/pcr-core/src/classification-coverage.mjs +0 -732
  1263. package/packages/pcr-core/src/consumption-calculation.mjs +0 -53
  1264. package/packages/pcr-core/src/consumption-data.mjs +0 -88
  1265. package/packages/pcr-core/src/consumption-guidance.mjs +0 -62
  1266. package/packages/pcr-core/src/consumption-review.mjs +0 -83
  1267. package/packages/pcr-core/src/contracts.mjs +0 -195
  1268. package/packages/pcr-core/src/generated/controlled-vocabulary.mjs +0 -41
  1269. package/packages/pcr-core/src/index.mjs +0 -2101
  1270. package/packages/pcr-core/src/languages.mjs +0 -86
  1271. package/packages/pcr-core/src/offline-library.mjs +0 -121
  1272. package/packages/pcr-core/src/output-semantics.mjs +0 -228
  1273. package/packages/pcr-core/src/pcr-id-aliases.mjs +0 -949
  1274. package/packages/pcr-core/src/projection-completeness.mjs +0 -284
  1275. package/packages/pcr-core/src/projection-integrity.mjs +0 -208
  1276. package/packages/pcr-core/src/read-context.mjs +0 -505
  1277. package/packages/pcr-core/src/schema-validation.mjs +0 -142
  1278. package/packages/pcr-core/src/source-context.mjs +0 -13
  1279. package/packages/pcr-core/src/tidas-inspection.mjs +0 -177
  1280. package/packages/pcr-core/src/yaml-lite.mjs +0 -261
  1281. package/packages/tiangong-pcr-cli/bin/tiangong-pcr.mjs +0 -12
  1282. package/packages/tiangong-pcr-cli/src/commands.mjs +0 -1691
@@ -0,0 +1,276 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { compileMarkdownSourceDocument, contextForSpan, sectionForSpan, } from './source-context.js';
3
+ /** Errors retain both offending authored positions; identifiers are unique only
4
+ * within their legacy family, and fallback identities belong to this snapshot. */
5
+ export class NormativeProjectionError extends Error {
6
+ code;
7
+ family;
8
+ rule_id;
9
+ source_spans;
10
+ constructor(code, family, ruleId, spans) {
11
+ const locations = spans.map(span => `${span.start.line}:${span.start.column}`).join(' and ');
12
+ super(`${code}: ${family} rule ${JSON.stringify(ruleId)} at ${locations}; author distinct non-empty explicit rule IDs.`);
13
+ this.name = 'NormativeProjectionError';
14
+ this.code = code;
15
+ this.family = family;
16
+ this.rule_id = ruleId;
17
+ this.source_spans = spans;
18
+ }
19
+ }
20
+ function stripInlineCode(value) {
21
+ return value.replace(/`([^`]+)`/gu, '$1').trim();
22
+ }
23
+ function display(value) {
24
+ return stripInlineCode(value).replace(/\s+/gu, ' ').trim();
25
+ }
26
+ function normalizeId(value) {
27
+ return value.normalize('NFKD').replace(/[\u0300-\u036f]/gu, '').toLowerCase()
28
+ .replace(/&/gu, ' and ').replace(/[^a-z0-9]+/gu, '_').replace(/^_+|_+$/gu, '');
29
+ }
30
+ function normalizeHeader(value) {
31
+ const raw = stripInlineCode(value).toLowerCase();
32
+ const localized = {
33
+ '规则编号': 'rule_id', '适用对象': 'applies_to', '适用于': 'applies_to',
34
+ '规则': 'rule', '要求': 'rule', '来源': 'source_ids',
35
+ };
36
+ return localized[raw] ?? raw.replace(/[^a-z0-9]+/gu, '_').replace(/^_+|_+$/gu, '');
37
+ }
38
+ function sourceIds(value) {
39
+ const codes = value.match(/`([^`]+)`/gu) ?? [];
40
+ return codes.length > 0 ? codes.map(code => code.slice(1, -1).trim()).filter(Boolean)
41
+ : stripInlineCode(value).split(/[,;]/u).map(entry => entry.trim()).filter(Boolean);
42
+ }
43
+ function headingText(node) {
44
+ if ('value' in node)
45
+ return node.value;
46
+ if ('children' in node)
47
+ return node.children.map(headingText).join('');
48
+ return '';
49
+ }
50
+ function sectionFamily(title) {
51
+ const name = title.toLowerCase();
52
+ // Preserve legacy section-classification precedence where titles overlap.
53
+ if (['product category identity', '产品类别识别', 'reference flow', 'functional unit', '参考流', '功能单位'].some(alias => name.includes(alias)))
54
+ return null;
55
+ if (['system boundary', '系统边界', 'cut-off rules', 'cutoff rules', '截断规则'].some(alias => name.includes(alias)))
56
+ return 'system_boundary';
57
+ if (['allocation', '分配'].some(alias => name.includes(alias)))
58
+ return 'allocation';
59
+ if (['validation rules', '验证规则', '校验规则'].some(alias => name.includes(alias)))
60
+ return 'validation';
61
+ return null;
62
+ }
63
+ const familyOptions = {
64
+ system_boundary: { appliesTo: 'foreground_system_boundary', pointer: '/system_boundary/rules' },
65
+ allocation: { appliesTo: 'foreground_burden_allocation', pointer: '/allocation_rules' },
66
+ validation: { appliesTo: 'foreground_dataset_conformance', pointer: '/validation_rules' },
67
+ };
68
+ /** Project only the three reviewed legacy families. Source association is structural:
69
+ * whole actual H2 sections remain exact, including preambles and following notes.
70
+ * Exact ancestor preambles remain separately bound without copying unrelated
71
+ * sections; extraction and identity remain scoped to the original H2.
72
+ * The flattened display strings make no assertion of scientific applicability. */
73
+ export function compileNormativeProjection(markdown) {
74
+ const { index, tree } = compileMarkdownSourceDocument(markdown);
75
+ const source = index.source;
76
+ const arrays = { system_boundary: [], allocation: [], validation: [] };
77
+ const authoredIds = {
78
+ system_boundary: new Map(), allocation: new Map(), validation: new Map(),
79
+ };
80
+ const pending = [];
81
+ const units = [];
82
+ const bindings = [];
83
+ const diagnostics = [];
84
+ const diagnosticKeys = new Set();
85
+ let active = null;
86
+ let ancestorHeading = null;
87
+ let hasAncestorPreamble = false;
88
+ let ancestorHasH2 = false;
89
+ let hasDocumentPreamble = false;
90
+ let documentHasScopeHeading = false;
91
+ let documentPreamble = null;
92
+ let ancestorPreamble = null;
93
+ function selection(node) {
94
+ const startOffset = node.position?.start.offset;
95
+ const endOffset = node.position?.end.offset;
96
+ if (startOffset === undefined || endOffset === undefined)
97
+ throw new Error('Markdown parser omitted a normative source position');
98
+ return { startOffset, endOffset };
99
+ }
100
+ function raw(node) {
101
+ const span = selection(node);
102
+ return source.slice(span.startOffset, span.endOffset);
103
+ }
104
+ function span(node) {
105
+ return contextForSpan(index, selection(node)).selected.span;
106
+ }
107
+ function preamble(startOffset, endOffset) {
108
+ const selected = contextForSpan(index, { startOffset, endOffset }).selected;
109
+ return { span: selected.span, markdown: selected.text };
110
+ }
111
+ function diagnose(unit, node, code, message) {
112
+ const sourceSpan = span(node);
113
+ const key = `${code}:${sourceSpan.start.offset}:${sourceSpan.end.offset}`;
114
+ if (diagnosticKeys.has(key))
115
+ return;
116
+ diagnosticKeys.add(key);
117
+ diagnostics.push({ code, message, unit_id: unit.unit_id, source_span: sourceSpan });
118
+ }
119
+ function add(unit, node, rule, explicit = '', appliesTo = '', sources = []) {
120
+ if (!rule)
121
+ return;
122
+ const family = unit.family;
123
+ const sourceSpan = span(node);
124
+ const explicitId = normalizeId(explicit);
125
+ if (explicit.trim() && !explicitId)
126
+ throw new NormativeProjectionError('INVALID_EXPLICIT_RULE_ID', family, explicit, [sourceSpan]);
127
+ if (explicitId) {
128
+ const previous = authoredIds[family].get(explicitId);
129
+ if (previous)
130
+ throw new NormativeProjectionError('DUPLICATE_NORMATIVE_RULE_ID', family, explicitId, [previous, sourceSpan]);
131
+ authoredIds[family].set(explicitId, sourceSpan);
132
+ }
133
+ pending.push({ unit, node, rule, explicitId, appliesTo, sources, sourceSpan });
134
+ const local = contextForSpan(index, selection(node));
135
+ for (const diagnostic of local.diagnostics) {
136
+ if (diagnostic.code === 'AMBIGUOUS_PROSE_ATTACHMENT')
137
+ diagnose(unit, node, diagnostic.code, diagnostic.message);
138
+ }
139
+ }
140
+ function flattenItem(unit, node) {
141
+ if (node.type === 'paragraph')
142
+ return [raw(node)];
143
+ if (node.type === 'list' || node.type === 'listItem')
144
+ return node.children.flatMap(child => flattenItem(unit, child));
145
+ diagnose(unit, node, 'UNSUPPORTED_NORMATIVE_BLOCK', `Unsupported ${node.type} inside a rule item is retained in its complete H2 source; its content is not inferred as a flat rule.`);
146
+ return [];
147
+ }
148
+ function cellText(cell) {
149
+ const first = cell.children[0];
150
+ const last = cell.children.at(-1);
151
+ if (!first || !last)
152
+ return '';
153
+ return source.slice(selection(first).startOffset, selection(last).endOffset);
154
+ }
155
+ function projectTable(unit, node) {
156
+ const header = node.children[0];
157
+ const headers = new Map(header?.children.map((cell, position) => [normalizeHeader(cellText(cell)), position]) ?? []);
158
+ if (!headers.has('rule') && !headers.has('requirement')) {
159
+ diagnose(unit, node, 'NON_RULE_TABLE', 'Table has no rule or requirement column; complete H2 source retained without inferring normative rows.');
160
+ return;
161
+ }
162
+ for (const row of node.children.slice(1)) {
163
+ function cell(names) {
164
+ for (const name of names) {
165
+ const position = headers.get(name);
166
+ if (position !== undefined) {
167
+ const value = row.children[position];
168
+ return value ? cellText(value).trim() : '';
169
+ }
170
+ }
171
+ return '';
172
+ }
173
+ const rule = stripInlineCode(cell(['rule', 'requirement']));
174
+ if (!rule) {
175
+ diagnose(unit, row, 'UNSUPPORTED_NORMATIVE_BLOCK', 'Empty normative rule cell is retained in complete H2 source without creating a flat rule.');
176
+ continue;
177
+ }
178
+ add(unit, row, rule, cell(['rule_id', 'requirement_id', 'id']), stripInlineCode(cell(['applies_to', 'scope'])), sourceIds(cell(['source_ids', 'sources'])));
179
+ }
180
+ }
181
+ for (let position = 0; position < tree.children.length; position += 1) {
182
+ const node = tree.children[position];
183
+ if (!node)
184
+ continue;
185
+ if (node.type === 'heading' && node.depth <= 2) {
186
+ if (!documentHasScopeHeading && hasDocumentPreamble) {
187
+ documentPreamble = preamble(0, selection(node).startOffset);
188
+ }
189
+ documentHasScopeHeading = true;
190
+ active = null;
191
+ if (node.depth === 1) {
192
+ ancestorHeading = node;
193
+ hasAncestorPreamble = false;
194
+ ancestorHasH2 = false;
195
+ ancestorPreamble = null;
196
+ continue;
197
+ }
198
+ if (!ancestorHasH2 && ancestorHeading && hasAncestorPreamble) {
199
+ ancestorPreamble = preamble(selection(ancestorHeading).startOffset, selection(node).startOffset);
200
+ }
201
+ ancestorHasH2 = true;
202
+ const family = sectionFamily(headingText(node));
203
+ if (!family)
204
+ continue;
205
+ const selected = selection(node);
206
+ const h2Section = sectionForSpan(index, selected, 2);
207
+ const ancestorContext = [documentPreamble, ancestorPreamble].filter((entry) => entry !== null);
208
+ active = { unit_id: `normative_${h2Section.span.start.offset}`, family, span: h2Section.span,
209
+ markdown: h2Section.text, headings: contextForSpan(index, selected).headings,
210
+ ancestor_context: ancestorContext };
211
+ units.push(active);
212
+ if (ancestorContext.length > 0) {
213
+ diagnose(active, node, 'AMBIGUOUS_PROSE_ATTACHMENT', 'Ancestor preamble may govern this family; exact structural ancestor source retained separately without inferring applicability. Rule extraction remains scoped to this H2.');
214
+ }
215
+ continue;
216
+ }
217
+ // Keep the first ancestor preamble in scope across all sibling H2 sections.
218
+ // Later H2 body blocks cannot become a preamble for the next family.
219
+ // Document preambles also survive sibling H1 boundaries; initial source
220
+ // blocks are retained conservatively rather than classified as irrelevant.
221
+ if (!documentHasScopeHeading && node.type !== 'heading')
222
+ hasDocumentPreamble = true;
223
+ if (!ancestorHasH2 && node.type !== 'heading')
224
+ hasAncestorPreamble = true;
225
+ if (!active)
226
+ continue;
227
+ if (node.type === 'heading')
228
+ continue;
229
+ if (node.type === 'paragraph') {
230
+ const next = tree.children[position + 1];
231
+ const introduces = /[::]$/u.test(raw(node).trim()) && (next?.type === 'list' || next?.type === 'table');
232
+ if (!introduces)
233
+ add(active, node, display(raw(node)));
234
+ }
235
+ else if (node.type === 'list') {
236
+ for (const item of node.children)
237
+ add(active, item, display(flattenItem(active, item).join(' ')));
238
+ }
239
+ else if (node.type === 'table')
240
+ projectTable(active, node);
241
+ else
242
+ diagnose(active, node, 'UNSUPPORTED_NORMATIVE_BLOCK', `Unsupported ${node.type} is retained in complete H2 source; no flat normative rule is inferred.`);
243
+ }
244
+ // Reserve every authored identity before allocating snapshot-local IDs. This
245
+ // preserves explicit IDs regardless of whether their table precedes the prose.
246
+ const assignedIds = {
247
+ system_boundary: new Set(authoredIds.system_boundary.keys()),
248
+ allocation: new Set(authoredIds.allocation.keys()),
249
+ validation: new Set(authoredIds.validation.keys()),
250
+ };
251
+ for (const entry of pending) {
252
+ const { unit, node, rule, explicitId, appliesTo, sources, sourceSpan } = entry;
253
+ const family = unit.family;
254
+ const output = arrays[family];
255
+ const candidate = `${family}_rule_${output.length + 1}`;
256
+ let ruleId = explicitId || candidate;
257
+ if (!explicitId && assignedIds[family].has(ruleId)) {
258
+ ruleId = `${candidate}_snapshot`;
259
+ let suffix = 2;
260
+ while (assignedIds[family].has(ruleId)) {
261
+ ruleId = `${candidate}_snapshot_${suffix}`;
262
+ suffix += 1;
263
+ }
264
+ diagnose(unit, node, 'SNAPSHOT_RULE_ID_DISAMBIGUATED', `Snapshot-local candidate ${JSON.stringify(candidate)} was disambiguated to ${JSON.stringify(ruleId)}; authored explicit ID ${JSON.stringify(candidate)} and all other authored explicit IDs remain unchanged.`);
265
+ }
266
+ assignedIds[family].add(ruleId);
267
+ bindings.push({ pointer: `${familyOptions[family].pointer}/${output.length}`, rule_id: ruleId,
268
+ identity_kind: explicitId ? 'explicit' : 'snapshot_local', unit_id: unit.unit_id, source_span: sourceSpan });
269
+ output.push({ rule_id: ruleId, applies_to: appliesTo || familyOptions[family].appliesTo, rule, source_ids: sources });
270
+ }
271
+ return { systemBoundaryRules: arrays.system_boundary, allocationRules: arrays.allocation,
272
+ validationRules: arrays.validation, context: { normalization: index.normalization,
273
+ source_sha256: `sha256:${createHash('sha256').update(source, 'utf8').digest('hex')}`,
274
+ identity_scope: 'projection_snapshot', units, bindings, diagnostics } };
275
+ }
276
+ //# sourceMappingURL=normative-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normative-projection.js","sourceRoot":"pcr://source/","sources":["packages/pcr-core/src/compiler/normative-projection.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from 'node:crypto';\nimport type { Nodes, Table, TableCell } from 'mdast';\nimport {\n compileMarkdownSourceDocument, contextForSpan, sectionForSpan,\n type SourceHeading, type SourceSpan,\n} from './source-context.ts';\n\nexport type NormativeFamily = 'system_boundary' | 'allocation' | 'validation';\nexport interface NormativeRule {\n rule_id: string;\n applies_to: string;\n rule: string;\n source_ids: string[];\n}\nexport interface NormativeAncestorContext {\n readonly span: SourceSpan;\n readonly markdown: string;\n}\nexport interface NormativeUnit {\n readonly unit_id: string;\n readonly family: NormativeFamily;\n readonly span: SourceSpan;\n readonly markdown: string;\n readonly headings: readonly SourceHeading[];\n /** Exact document/H1 preambles in outer-to-inner structural order. Their\n * semantic applicability is not inferred; H2 source remains separately bounded. */\n readonly ancestor_context: readonly NormativeAncestorContext[];\n}\nexport interface NormativeBinding {\n readonly pointer: string;\n readonly rule_id: string;\n readonly identity_kind: 'explicit' | 'snapshot_local';\n readonly unit_id: string;\n readonly source_span: SourceSpan;\n}\nexport interface NormativeDiagnostic {\n readonly code: 'UNSUPPORTED_NORMATIVE_BLOCK' | 'NON_RULE_TABLE' | 'AMBIGUOUS_PROSE_ATTACHMENT' | 'SNAPSHOT_RULE_ID_DISAMBIGUATED';\n readonly message: string;\n readonly unit_id: string;\n readonly source_span: SourceSpan;\n}\nexport interface NormativeProjectionContext {\n readonly normalization: 'utf8-lf-v1';\n readonly source_sha256: string;\n readonly identity_scope: 'projection_snapshot';\n readonly units: readonly NormativeUnit[];\n readonly bindings: readonly NormativeBinding[];\n readonly diagnostics: readonly NormativeDiagnostic[];\n}\nexport interface NormativeProjection {\n readonly systemBoundaryRules: NormativeRule[];\n readonly allocationRules: NormativeRule[];\n readonly validationRules: NormativeRule[];\n readonly context: NormativeProjectionContext;\n}\n\n/** Errors retain both offending authored positions; identifiers are unique only\n * within their legacy family, and fallback identities belong to this snapshot. */\nexport class NormativeProjectionError extends Error {\n readonly code: 'DUPLICATE_NORMATIVE_RULE_ID' | 'INVALID_EXPLICIT_RULE_ID';\n readonly family: NormativeFamily;\n readonly rule_id: string;\n readonly source_spans: readonly SourceSpan[];\n constructor(code: NormativeProjectionError['code'], family: NormativeFamily, ruleId: string, spans: readonly SourceSpan[]) {\n const locations = spans.map(span => `${span.start.line}:${span.start.column}`).join(' and ');\n super(`${code}: ${family} rule ${JSON.stringify(ruleId)} at ${locations}; author distinct non-empty explicit rule IDs.`);\n this.name = 'NormativeProjectionError';\n this.code = code;\n this.family = family;\n this.rule_id = ruleId;\n this.source_spans = spans;\n }\n}\n\nfunction stripInlineCode(value: string): string {\n return value.replace(/`([^`]+)`/gu, '$1').trim();\n}\nfunction display(value: string): string {\n return stripInlineCode(value).replace(/\\s+/gu, ' ').trim();\n}\nfunction normalizeId(value: string): string {\n return value.normalize('NFKD').replace(/[\\u0300-\\u036f]/gu, '').toLowerCase()\n .replace(/&/gu, ' and ').replace(/[^a-z0-9]+/gu, '_').replace(/^_+|_+$/gu, '');\n}\nfunction normalizeHeader(value: string): string {\n const raw = stripInlineCode(value).toLowerCase();\n const localized: Readonly<Record<string, string>> = {\n '规则编号': 'rule_id', '适用对象': 'applies_to', '适用于': 'applies_to',\n '规则': 'rule', '要求': 'rule', '来源': 'source_ids',\n };\n return localized[raw] ?? raw.replace(/[^a-z0-9]+/gu, '_').replace(/^_+|_+$/gu, '');\n}\nfunction sourceIds(value: string): string[] {\n const codes = value.match(/`([^`]+)`/gu) ?? [];\n return codes.length > 0 ? codes.map(code => code.slice(1, -1).trim()).filter(Boolean)\n : stripInlineCode(value).split(/[,;]/u).map(entry => entry.trim()).filter(Boolean);\n}\nfunction headingText(node: Nodes): string {\n if ('value' in node) return node.value;\n if ('children' in node) return node.children.map(headingText).join('');\n return '';\n}\nfunction sectionFamily(title: string): NormativeFamily | null {\n const name = title.toLowerCase();\n // Preserve legacy section-classification precedence where titles overlap.\n if (['product category identity', '产品类别识别', 'reference flow', 'functional unit', '参考流', '功能单位'].some(alias => name.includes(alias))) return null;\n if (['system boundary', '系统边界', 'cut-off rules', 'cutoff rules', '截断规则'].some(alias => name.includes(alias))) return 'system_boundary';\n if (['allocation', '分配'].some(alias => name.includes(alias))) return 'allocation';\n if (['validation rules', '验证规则', '校验规则'].some(alias => name.includes(alias))) return 'validation';\n return null;\n}\nconst familyOptions = {\n system_boundary: { appliesTo: 'foreground_system_boundary', pointer: '/system_boundary/rules' },\n allocation: { appliesTo: 'foreground_burden_allocation', pointer: '/allocation_rules' },\n validation: { appliesTo: 'foreground_dataset_conformance', pointer: '/validation_rules' },\n} satisfies Record<NormativeFamily, { appliesTo: string; pointer: string }>;\n\n/** Project only the three reviewed legacy families. Source association is structural:\n * whole actual H2 sections remain exact, including preambles and following notes.\n * Exact ancestor preambles remain separately bound without copying unrelated\n * sections; extraction and identity remain scoped to the original H2.\n * The flattened display strings make no assertion of scientific applicability. */\nexport function compileNormativeProjection(markdown: string): NormativeProjection {\n const { index, tree } = compileMarkdownSourceDocument(markdown);\n const source = index.source;\n const arrays: Record<NormativeFamily, NormativeRule[]> = { system_boundary: [], allocation: [], validation: [] };\n const authoredIds: Record<NormativeFamily, Map<string, SourceSpan>> = {\n system_boundary: new Map(), allocation: new Map(), validation: new Map(),\n };\n const pending: { unit: NormativeUnit; node: Nodes; rule: string; explicitId: string; appliesTo: string; sources: string[]; sourceSpan: SourceSpan }[] = [];\n const units: NormativeUnit[] = [];\n const bindings: NormativeBinding[] = [];\n const diagnostics: NormativeDiagnostic[] = [];\n const diagnosticKeys = new Set<string>();\n let active: NormativeUnit | null = null;\n let ancestorHeading: Nodes | null = null;\n let hasAncestorPreamble = false;\n let ancestorHasH2 = false;\n let hasDocumentPreamble = false;\n let documentHasScopeHeading = false;\n let documentPreamble: NormativeAncestorContext | null = null;\n let ancestorPreamble: NormativeAncestorContext | null = null;\n\n function selection(node: Nodes): { startOffset: number; endOffset: number } {\n const startOffset = node.position?.start.offset;\n const endOffset = node.position?.end.offset;\n if (startOffset === undefined || endOffset === undefined) throw new Error('Markdown parser omitted a normative source position');\n return { startOffset, endOffset };\n }\n function raw(node: Nodes): string {\n const span = selection(node);\n return source.slice(span.startOffset, span.endOffset);\n }\n function span(node: Nodes): SourceSpan {\n return contextForSpan(index, selection(node)).selected.span;\n }\n function preamble(startOffset: number, endOffset: number): NormativeAncestorContext {\n const selected = contextForSpan(index, { startOffset, endOffset }).selected;\n return { span: selected.span, markdown: selected.text };\n }\n function diagnose(unit: NormativeUnit, node: Nodes, code: NormativeDiagnostic['code'], message: string): void {\n const sourceSpan = span(node);\n const key = `${code}:${sourceSpan.start.offset}:${sourceSpan.end.offset}`;\n if (diagnosticKeys.has(key)) return;\n diagnosticKeys.add(key);\n diagnostics.push({ code, message, unit_id: unit.unit_id, source_span: sourceSpan });\n }\n function add(unit: NormativeUnit, node: Nodes, rule: string, explicit = '', appliesTo = '', sources: string[] = []): void {\n if (!rule) return;\n const family = unit.family;\n const sourceSpan = span(node);\n const explicitId = normalizeId(explicit);\n if (explicit.trim() && !explicitId) throw new NormativeProjectionError('INVALID_EXPLICIT_RULE_ID', family, explicit, [sourceSpan]);\n if (explicitId) {\n const previous = authoredIds[family].get(explicitId);\n if (previous) throw new NormativeProjectionError('DUPLICATE_NORMATIVE_RULE_ID', family, explicitId, [previous, sourceSpan]);\n authoredIds[family].set(explicitId, sourceSpan);\n }\n pending.push({ unit, node, rule, explicitId, appliesTo, sources, sourceSpan });\n const local = contextForSpan(index, selection(node));\n for (const diagnostic of local.diagnostics) {\n if (diagnostic.code === 'AMBIGUOUS_PROSE_ATTACHMENT') diagnose(unit, node, diagnostic.code, diagnostic.message);\n }\n }\n function flattenItem(unit: NormativeUnit, node: Nodes): string[] {\n if (node.type === 'paragraph') return [raw(node)];\n if (node.type === 'list' || node.type === 'listItem') return node.children.flatMap(child => flattenItem(unit, child));\n diagnose(unit, node, 'UNSUPPORTED_NORMATIVE_BLOCK', `Unsupported ${node.type} inside a rule item is retained in its complete H2 source; its content is not inferred as a flat rule.`);\n return [];\n }\n function cellText(cell: TableCell): string {\n const first = cell.children[0];\n const last = cell.children.at(-1);\n if (!first || !last) return '';\n return source.slice(selection(first).startOffset, selection(last).endOffset);\n }\n function projectTable(unit: NormativeUnit, node: Table): void {\n const header = node.children[0];\n const headers = new Map(header?.children.map((cell, position) => [normalizeHeader(cellText(cell)), position]) ?? []);\n if (!headers.has('rule') && !headers.has('requirement')) {\n diagnose(unit, node, 'NON_RULE_TABLE', 'Table has no rule or requirement column; complete H2 source retained without inferring normative rows.');\n return;\n }\n for (const row of node.children.slice(1)) {\n function cell(names: readonly string[]): string {\n for (const name of names) {\n const position = headers.get(name);\n if (position !== undefined) {\n const value = row.children[position];\n return value ? cellText(value).trim() : '';\n }\n }\n return '';\n }\n const rule = stripInlineCode(cell(['rule', 'requirement']));\n if (!rule) {\n diagnose(unit, row, 'UNSUPPORTED_NORMATIVE_BLOCK', 'Empty normative rule cell is retained in complete H2 source without creating a flat rule.');\n continue;\n }\n add(unit, row, rule, cell(['rule_id', 'requirement_id', 'id']), stripInlineCode(cell(['applies_to', 'scope'])), sourceIds(cell(['source_ids', 'sources'])));\n }\n }\n for (let position = 0; position < tree.children.length; position += 1) {\n const node = tree.children[position];\n if (!node) continue;\n if (node.type === 'heading' && node.depth <= 2) {\n if (!documentHasScopeHeading && hasDocumentPreamble) {\n documentPreamble = preamble(0, selection(node).startOffset);\n }\n documentHasScopeHeading = true;\n active = null;\n if (node.depth === 1) {\n ancestorHeading = node;\n hasAncestorPreamble = false;\n ancestorHasH2 = false;\n ancestorPreamble = null;\n continue;\n }\n if (!ancestorHasH2 && ancestorHeading && hasAncestorPreamble) {\n ancestorPreamble = preamble(selection(ancestorHeading).startOffset, selection(node).startOffset);\n }\n ancestorHasH2 = true;\n const family = sectionFamily(headingText(node));\n if (!family) continue;\n const selected = selection(node);\n const h2Section = sectionForSpan(index, selected, 2);\n const ancestorContext = [documentPreamble, ancestorPreamble].filter((entry): entry is NormativeAncestorContext => entry !== null);\n active = { unit_id: `normative_${h2Section.span.start.offset}`, family, span: h2Section.span,\n markdown: h2Section.text, headings: contextForSpan(index, selected).headings,\n ancestor_context: ancestorContext };\n units.push(active);\n if (ancestorContext.length > 0) {\n diagnose(active, node, 'AMBIGUOUS_PROSE_ATTACHMENT',\n 'Ancestor preamble may govern this family; exact structural ancestor source retained separately without inferring applicability. Rule extraction remains scoped to this H2.');\n }\n continue;\n }\n // Keep the first ancestor preamble in scope across all sibling H2 sections.\n // Later H2 body blocks cannot become a preamble for the next family.\n // Document preambles also survive sibling H1 boundaries; initial source\n // blocks are retained conservatively rather than classified as irrelevant.\n if (!documentHasScopeHeading && node.type !== 'heading') hasDocumentPreamble = true;\n if (!ancestorHasH2 && node.type !== 'heading') hasAncestorPreamble = true;\n if (!active) continue;\n if (node.type === 'heading') continue;\n if (node.type === 'paragraph') {\n const next = tree.children[position + 1];\n const introduces = /[::]$/u.test(raw(node).trim()) && (next?.type === 'list' || next?.type === 'table');\n if (!introduces) add(active, node, display(raw(node)));\n } else if (node.type === 'list') {\n for (const item of node.children) add(active, item, display(flattenItem(active, item).join(' ')));\n } else if (node.type === 'table') projectTable(active, node);\n else diagnose(active, node, 'UNSUPPORTED_NORMATIVE_BLOCK', `Unsupported ${node.type} is retained in complete H2 source; no flat normative rule is inferred.`);\n }\n // Reserve every authored identity before allocating snapshot-local IDs. This\n // preserves explicit IDs regardless of whether their table precedes the prose.\n const assignedIds: Record<NormativeFamily, Set<string>> = {\n system_boundary: new Set(authoredIds.system_boundary.keys()),\n allocation: new Set(authoredIds.allocation.keys()),\n validation: new Set(authoredIds.validation.keys()),\n };\n for (const entry of pending) {\n const { unit, node, rule, explicitId, appliesTo, sources, sourceSpan } = entry;\n const family = unit.family;\n const output = arrays[family];\n const candidate = `${family}_rule_${output.length + 1}`;\n let ruleId = explicitId || candidate;\n if (!explicitId && assignedIds[family].has(ruleId)) {\n ruleId = `${candidate}_snapshot`;\n let suffix = 2;\n while (assignedIds[family].has(ruleId)) {\n ruleId = `${candidate}_snapshot_${suffix}`;\n suffix += 1;\n }\n diagnose(unit, node, 'SNAPSHOT_RULE_ID_DISAMBIGUATED',\n `Snapshot-local candidate ${JSON.stringify(candidate)} was disambiguated to ${JSON.stringify(ruleId)}; authored explicit ID ${JSON.stringify(candidate)} and all other authored explicit IDs remain unchanged.`);\n }\n assignedIds[family].add(ruleId);\n bindings.push({ pointer: `${familyOptions[family].pointer}/${output.length}`, rule_id: ruleId,\n identity_kind: explicitId ? 'explicit' : 'snapshot_local', unit_id: unit.unit_id, source_span: sourceSpan });\n output.push({ rule_id: ruleId, applies_to: appliesTo || familyOptions[family].appliesTo, rule, source_ids: sources });\n }\n return { systemBoundaryRules: arrays.system_boundary, allocationRules: arrays.allocation,\n validationRules: arrays.validation, context: { normalization: index.normalization,\n source_sha256: `sha256:${createHash('sha256').update(source, 'utf8').digest('hex')}`,\n identity_scope: 'projection_snapshot', units, bindings, diagnostics } };\n}\n"]}
@@ -0,0 +1,231 @@
1
+ import { unified } from 'unified';
2
+ import remarkParse from 'remark-parse';
3
+ import remarkGfm from 'remark-gfm';
4
+ const MAX_SOURCE_CODE_UNITS = 8_000_000;
5
+ const MAX_NODES = 250_000;
6
+ const MAX_DEPTH = 256;
7
+ /** Pure parse/index operation. Resource bounds fail explicitly, never truncate. */
8
+ export function compileMarkdownSourceContext(input) {
9
+ return compileMarkdownSourceDocument(input).index;
10
+ }
11
+ /** One newly parsed, operation-owned source and AST. Production compilers call
12
+ * this factory from canonical text; no caller-supplied tree can bypass parsing or
13
+ * source/AST resource bounds. The document is neither cached nor shared across
14
+ * operations. Existing index-only callers retain their original public shape. */
15
+ export function compileMarkdownSourceDocument(input) {
16
+ const source = input.replace(/^\uFEFF/, '').replace(/\r\n?/g, '\n');
17
+ if (source.length > MAX_SOURCE_CODE_UNITS)
18
+ throw new RangeError('Markdown exceeds source-context source limit');
19
+ const tree = unified().use(remarkParse).use(remarkGfm).parse(source);
20
+ const lineStarts = [0];
21
+ for (let offset = 0; offset < source.length; offset += 1) {
22
+ if (source[offset] === '\n')
23
+ lineStarts.push(offset + 1);
24
+ }
25
+ let count = 0;
26
+ function indexNode(node, parent, depth) {
27
+ count += 1;
28
+ if (count > MAX_NODES || depth > MAX_DEPTH)
29
+ throw new RangeError('Markdown exceeds source-context AST limit');
30
+ const start = node.position?.start.offset;
31
+ const end = node.position?.end.offset;
32
+ if (start === undefined || end === undefined)
33
+ throw new Error('Markdown parser omitted a source position');
34
+ const entry = { node, start, end, parent, children: [] };
35
+ if ('children' in node) {
36
+ for (const child of node.children)
37
+ entry.children.push(indexNode(child, entry, depth + 1));
38
+ }
39
+ return entry;
40
+ }
41
+ const root = indexNode(tree, null, 0);
42
+ function point(offset) {
43
+ let low = 0;
44
+ let high = lineStarts.length;
45
+ while (low + 1 < high) {
46
+ const middle = Math.floor((low + high) / 2);
47
+ const value = lineStarts[middle];
48
+ if (value !== undefined && value <= offset)
49
+ low = middle;
50
+ else
51
+ high = middle;
52
+ }
53
+ // The dense local index begins at zero; binary search keeps low in range.
54
+ return { offset, line: low + 1, column: offset - lineStarts[low] + 1 };
55
+ }
56
+ function block(start, end, kind) {
57
+ return { kind, span: { start: point(start), end: point(end) }, text: source.slice(start, end) };
58
+ }
59
+ function entryBlock(entry) {
60
+ return block(entry.start, entry.end, entry.node.type);
61
+ }
62
+ function headingContext(start) {
63
+ const headings = [];
64
+ for (const entry of root.children) {
65
+ if (entry.start > start)
66
+ break;
67
+ if (entry.node.type === 'heading') {
68
+ while (headings.length > 0 && headings[headings.length - 1].depth >= entry.node.depth)
69
+ headings.pop();
70
+ headings.push({ ...entryBlock(entry), depth: entry.node.depth });
71
+ }
72
+ }
73
+ return headings;
74
+ }
75
+ function section(start, end, depth) {
76
+ if (depth !== undefined && (!Number.isInteger(depth) || depth < 1 || depth > 6)) {
77
+ throw new RangeError('Source section depth must be an integer from 1 to 6');
78
+ }
79
+ const headings = headingContext(start);
80
+ const current = depth === undefined ? headings.at(-1) : headings.find(heading => heading.depth === depth);
81
+ if (depth !== undefined && !current) {
82
+ throw new RangeError('Requested heading depth does not enclose the source selection');
83
+ }
84
+ let sectionStart = current?.span.start.offset ?? 0;
85
+ let sectionEnd = source.length;
86
+ for (const entry of root.children) {
87
+ if (entry.start > start && entry.node.type === 'heading' && (!current || entry.node.depth <= current.depth)) {
88
+ sectionEnd = entry.start;
89
+ break;
90
+ }
91
+ }
92
+ // A selection spanning sections cannot be assigned to either one safely.
93
+ if (end > sectionEnd) {
94
+ if (depth !== undefined)
95
+ throw new RangeError('Source selection crosses the requested heading scope');
96
+ sectionStart = 0;
97
+ sectionEnd = source.length;
98
+ }
99
+ return block(sectionStart, sectionEnd, 'section');
100
+ }
101
+ function offsets(selection) {
102
+ let start;
103
+ let end;
104
+ if ('startLine' in selection) {
105
+ const { startLine, endLine } = selection;
106
+ if (!Number.isInteger(startLine) || !Number.isInteger(endLine) || startLine < 1 || endLine < startLine || endLine > lineStarts.length) {
107
+ throw new RangeError('Source line selection is outside normalized Markdown');
108
+ }
109
+ // The integer bounds above establish this dense local array entry.
110
+ start = lineStarts[startLine - 1];
111
+ const next = lineStarts[endLine];
112
+ end = next === undefined ? source.length : next - 1;
113
+ }
114
+ else {
115
+ start = selection.startOffset;
116
+ end = selection.endOffset;
117
+ }
118
+ if (!Number.isInteger(start) || !Number.isInteger(end) || start < 0 || end <= start || end > source.length) {
119
+ throw new RangeError('Source offset selection must be a non-empty normalized Markdown span');
120
+ }
121
+ return { start, end };
122
+ }
123
+ function introBefore(entry) {
124
+ const siblings = entry.parent?.children ?? [];
125
+ let position = siblings.indexOf(entry) - 1;
126
+ const introductions = [];
127
+ while (position >= 0) {
128
+ const previous = siblings[position];
129
+ if (!previous || previous.node.type !== 'paragraph')
130
+ break;
131
+ introductions.unshift(previous);
132
+ position -= 1;
133
+ }
134
+ return introductions;
135
+ }
136
+ function group(entry) {
137
+ if (entry.node.type !== 'list' && entry.node.type !== 'table')
138
+ throw new Error('Expected a Markdown group');
139
+ const isTable = entry.node.type === 'table';
140
+ return {
141
+ kind: isTable ? 'table' : 'list',
142
+ source: entryBlock(entry),
143
+ ordered: entry.node.type === 'list' ? Boolean(entry.node.ordered) : null,
144
+ items: entry.children.map(entryBlock),
145
+ headers: isTable ? entry.children.slice(0, 1).map(entryBlock) : [],
146
+ };
147
+ }
148
+ function query(selection) {
149
+ const { start, end } = offsets(selection);
150
+ const selected = block(start, end, 'selection');
151
+ // Ignore surrounding layout only for node association, never for output.
152
+ let matchStart = start;
153
+ let matchEnd = end;
154
+ while (matchStart < matchEnd && /\s/u.test(source[matchStart] ?? ''))
155
+ matchStart += 1;
156
+ while (matchEnd > matchStart && /\s/u.test(source[matchEnd - 1] ?? ''))
157
+ matchEnd -= 1;
158
+ const path = [];
159
+ let cursor = root;
160
+ while (matchStart < matchEnd) {
161
+ const child = cursor.children.find(entry => entry.start <= matchStart && entry.end >= matchEnd);
162
+ if (!child)
163
+ break;
164
+ path.push(child);
165
+ cursor = child;
166
+ }
167
+ const top = path[0];
168
+ const headings = headingContext(matchStart);
169
+ const enclosingItems = path.filter(entry => entry.node.type === 'listItem').map(entryBlock);
170
+ const containers = path.filter(entry => entry.node.type === 'list' || entry.node.type === 'table');
171
+ let primary = containers[0] ?? top;
172
+ let introductions = primary ? introBefore(primary) : [];
173
+ // Selecting introductory prose exposes its following group, too.
174
+ if (primary?.node.type === 'paragraph') {
175
+ const siblings = primary.parent?.children ?? [];
176
+ let nextPosition = siblings.indexOf(primary) + 1;
177
+ while (siblings[nextPosition]?.node.type === 'paragraph')
178
+ nextPosition += 1;
179
+ const next = siblings[nextPosition];
180
+ if (next && (next.node.type === 'list' || next.node.type === 'table')) {
181
+ primary = next;
182
+ introductions = introBefore(primary);
183
+ containers.push(primary);
184
+ }
185
+ else
186
+ introductions = [];
187
+ }
188
+ const completeSelected = [...path].reverse().find(entry => entry.node.type === 'listItem' || entry.node.type === 'tableRow') ?? top;
189
+ const groups = containers.map(group);
190
+ let unit = primary ? entryBlock(primary) : section(start, end);
191
+ const diagnostics = [];
192
+ function uncertain(code, message) {
193
+ unit = section(start, end);
194
+ diagnostics.push({ code, message, span: selected.span });
195
+ }
196
+ if (!top) {
197
+ const overlapsBlock = root.children.some(entry => entry.start < matchEnd && entry.end > matchStart);
198
+ uncertain(overlapsBlock ? 'SPAN_CROSSES_BLOCKS' : 'NO_SOURCE_BLOCK', 'Selection cannot be assigned to one source block; complete relevant section retained.');
199
+ }
200
+ else if (top.node.type === 'heading' || (top.node.type !== 'paragraph' && top.node.type !== 'list' && top.node.type !== 'table' && top.node.type !== 'code' && top.node.type !== 'thematicBreak')) {
201
+ uncertain('UNSUPPORTED_CONTAINER', 'Container scope is not established by this compiler; complete relevant section retained.');
202
+ }
203
+ else if (primary && (primary.node.type === 'list' || primary.node.type === 'table')) {
204
+ const lastIntro = introductions.at(-1);
205
+ if (lastIntro) {
206
+ unit = block(introductions[0]?.start ?? primary.start, primary.end, primary.node.type === 'list' ? 'list_group' : 'table_group');
207
+ if (!/[::]$/u.test(source.slice(lastIntro.start, lastIntro.end).trimEnd())) {
208
+ uncertain('AMBIGUOUS_PROSE_ATTACHMENT', 'Preceding prose may govern this group but Markdown does not establish its scope; complete relevant section retained.');
209
+ }
210
+ }
211
+ }
212
+ return {
213
+ unit, section: section(start, end), selected, selectedBlock: completeSelected ? entryBlock(completeSelected) : null,
214
+ headings, introductions: introductions.map(entryBlock), enclosingItems, groups,
215
+ attribution: diagnostics.length === 0 ? 'structural' : 'uncertain', diagnostics,
216
+ };
217
+ }
218
+ function sectionQuery(selection, depth) {
219
+ const { start, end } = offsets(selection);
220
+ return section(start, end, depth);
221
+ }
222
+ return { tree, index: { source, normalization: 'utf8-lf-v1', contextForSpan: query, sectionForSpan: sectionQuery } };
223
+ }
224
+ export function contextForSpan(index, selection) {
225
+ return index.contextForSpan(selection);
226
+ }
227
+ /** Read a complete enclosing section without copying ancestor text into the index. */
228
+ export function sectionForSpan(index, selection, depth) {
229
+ return index.sectionForSpan(selection, depth);
230
+ }
231
+ //# sourceMappingURL=source-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-context.js","sourceRoot":"pcr://source/","sources":["packages/pcr-core/src/compiler/source-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,SAAS,MAAM,YAAY,CAAC;AA2EnC,MAAM,qBAAqB,GAAG,SAAS,CAAC;AACxC,MAAM,SAAS,GAAG,OAAO,CAAC;AAC1B,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,mFAAmF;AACnF,MAAM,UAAU,4BAA4B,CAAC,KAAa;IACxD,OAAO,6BAA6B,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AACpD,CAAC;AAED;;;iFAGiF;AACjF,MAAM,UAAU,6BAA6B,CAAC,KAAa;IAIzD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACpE,IAAI,MAAM,CAAC,MAAM,GAAG,qBAAqB;QAAE,MAAM,IAAI,UAAU,CAAC,8CAA8C,CAAC,CAAC;IAChH,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;IACvB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;QACzD,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI;YAAE,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,SAAS,SAAS,CAAC,IAAW,EAAE,MAAoB,EAAE,KAAa;QACjE,KAAK,IAAI,CAAC,CAAC;QACX,IAAI,KAAK,GAAG,SAAS,IAAI,KAAK,GAAG,SAAS;YAAE,MAAM,IAAI,UAAU,CAAC,2CAA2C,CAAC,CAAC;QAC9G,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;QACtC,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3G,MAAM,KAAK,GAAU,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAChE,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ;gBAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtC,SAAS,KAAK,CAAC,MAAc;QAC3B,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC;QAC7B,OAAO,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,IAAI,MAAM;gBAAE,GAAG,GAAG,MAAM,CAAC;;gBACpD,IAAI,GAAG,MAAM,CAAC;QACrB,CAAC;QACD,0EAA0E;QAC1E,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,CAAE,GAAG,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,SAAS,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,IAAY;QACrD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IAClG,CAAC;IACD,SAAS,UAAU,CAAC,KAAY;QAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IACD,SAAS,cAAc,CAAC,KAAa;QACnC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK;gBAAE,MAAM;YAC/B,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK;oBAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACvG,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,SAAS,OAAO,CAAC,KAAa,EAAE,GAAW,EAAE,KAAc;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YAChF,MAAM,IAAI,UAAU,CAAC,qDAAqD,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAC1G,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,UAAU,CAAC,+DAA+D,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,YAAY,GAAG,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;QACnD,IAAI,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5G,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;gBACzB,MAAM;YACR,CAAC;QACH,CAAC;QACD,yEAAyE;QACzE,IAAI,GAAG,GAAG,UAAU,EAAE,CAAC;YACrB,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,IAAI,UAAU,CAAC,sDAAsD,CAAC,CAAC;YACtG,YAAY,GAAG,CAAC,CAAC;YACjB,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,CAAC;QACD,OAAO,KAAK,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC;IACD,SAAS,OAAO,CAAC,SAA0B;QACzC,IAAI,KAAa,CAAC;QAClB,IAAI,GAAW,CAAC;QAChB,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,OAAO,GAAG,SAAS,IAAI,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtI,MAAM,IAAI,UAAU,CAAC,sDAAsD,CAAC,CAAC;YAC/E,CAAC;YACD,mEAAmE;YACnE,KAAK,GAAG,UAAU,CAAC,SAAS,GAAG,CAAC,CAAE,CAAC;YACnC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACjC,GAAG,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC;YAC9B,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3G,MAAM,IAAI,UAAU,CAAC,sEAAsE,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IACxB,CAAC;IACD,SAAS,WAAW,CAAC,KAAY;QAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC;QAC9C,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAY,EAAE,CAAC;QAClC,OAAO,QAAQ,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW;gBAAE,MAAM;YAC3D,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAChC,QAAQ,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,SAAS,KAAK,CAAC,KAAY;QACzB,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC5G,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;QAC5C,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;YAChC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC;YACzB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YACxE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;SACnE,CAAC;IACJ,CAAC;IACD,SAAS,KAAK,CAAC,SAA0B;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChD,yEAAyE;QACzE,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,QAAQ,GAAG,GAAG,CAAC;QACnB,OAAO,UAAU,GAAG,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAAE,UAAU,IAAI,CAAC,CAAC;QACtF,OAAO,QAAQ,GAAG,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAAE,QAAQ,IAAI,CAAC,CAAC;QACtF,MAAM,IAAI,GAAY,EAAE,CAAC;QACzB,IAAI,MAAM,GAAU,IAAI,CAAC;QACzB,OAAO,UAAU,GAAG,QAAQ,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;YAChG,IAAI,CAAC,KAAK;gBAAE,MAAM;YAClB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjB,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5F,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACnG,IAAI,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;QACnC,IAAI,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,iEAAiE;QACjE,IAAI,OAAO,EAAE,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC;YAChD,IAAI,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjD,OAAO,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,WAAW;gBAAE,YAAY,IAAI,CAAC,CAAC;YAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;gBACtE,OAAO,GAAG,IAAI,CAAC;gBACf,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBACrC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;;gBAAM,aAAa,GAAG,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,GAAG,CAAC;QACpI,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,SAAS,SAAS,CAAC,IAA+B,EAAE,OAAe;YACjE,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,IAAI,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC;YACpG,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,iBAAiB,EAAE,uFAAuF,CAAC,CAAC;QAChK,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC;YACpM,SAAS,CAAC,uBAAuB,EAAE,0FAA0F,CAAC,CAAC;QACjI,CAAC;aAAM,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;YACtF,MAAM,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;oBAC3E,SAAS,CAAC,4BAA4B,EAAE,sHAAsH,CAAC,CAAC;gBAClK,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO;YACL,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI;YACnH,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,cAAc,EAAE,MAAM;YAC9E,WAAW,EAAE,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW;SAChF,CAAC;IACJ,CAAC;IACD,SAAS,YAAY,CAAC,SAA0B,EAAE,KAAc;QAC9D,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,CAAC;AACvH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAiC,EAAE,SAA0B;IAC1F,OAAO,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,cAAc,CAAC,KAAiC,EAAE,SAA0B,EAAE,KAAc;IAC1G,OAAO,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC","sourcesContent":["import { unified } from 'unified';\nimport remarkParse from 'remark-parse';\nimport remarkGfm from 'remark-gfm';\nimport type { Nodes, Root } from 'mdast';\n\n/** All locations refer to BOM-free, LF-normalized source. Offsets are zero-based\n * UTF-16 code units, start inclusive/end exclusive; lines/columns are one-based.\n * No scientific applicability, action, predicate or stable identity is inferred. */\nexport interface SourcePoint {\n readonly offset: number;\n readonly line: number;\n readonly column: number;\n}\nexport interface SourceSpan {\n readonly start: SourcePoint;\n readonly end: SourcePoint;\n}\nexport interface SourceBlock {\n readonly kind: string;\n readonly span: SourceSpan;\n readonly text: string;\n}\nexport interface SourceHeading extends SourceBlock {\n readonly depth: number;\n}\nexport type SourceSelection =\n | { readonly startLine: number; readonly endLine: number }\n | { readonly startOffset: number; readonly endOffset: number };\nexport interface StructuralGroup {\n readonly kind: 'list' | 'table';\n readonly source: SourceBlock;\n readonly ordered: boolean | null;\n /** Authored order, complete item subtrees or complete table rows. */\n readonly items: readonly SourceBlock[];\n readonly headers: readonly SourceBlock[];\n}\nexport interface ContextDiagnostic {\n readonly code: 'AMBIGUOUS_PROSE_ATTACHMENT' | 'UNSUPPORTED_CONTAINER' | 'SPAN_CROSSES_BLOCKS' | 'NO_SOURCE_BLOCK';\n readonly message: string;\n readonly span: SourceSpan;\n}\nexport interface NormativeSourceContext {\n readonly unit: SourceBlock;\n /** Complete enclosing section retains surrounding prose whose semantic relationship\n * cannot be established by Markdown. Structural attribution is not a claim of\n * scientific completeness or applicability of the isolated unit. */\n readonly section: SourceBlock;\n /** Exact caller-selected source, including indentation. */\n readonly selected: SourceBlock;\n /** Complete selected list item / table row / block, never a cell fragment. */\n readonly selectedBlock: SourceBlock | null;\n readonly headings: readonly SourceHeading[];\n readonly introductions: readonly SourceBlock[];\n /** Outer-to-inner complete item subtrees, including the selected item. */\n readonly enclosingItems: readonly SourceBlock[];\n readonly groups: readonly StructuralGroup[];\n readonly attribution: 'structural' | 'uncertain';\n readonly diagnostics: readonly ContextDiagnostic[];\n}\nexport interface MarkdownSourceContextIndex {\n readonly source: string;\n readonly normalization: 'utf8-lf-v1';\n readonly contextForSpan: (selection: SourceSelection) => NormativeSourceContext;\n /** Exact enclosing heading scope at the requested depth, or the nearest section\n * when omitted. This retains ancestor preambles without serializing every\n * ancestor section into every rule context. Depth is structural, not semantic.\n * Missing depths or selections crossing that requested scope fail explicitly. */\n readonly sectionForSpan: (selection: SourceSelection, depth?: number) => SourceBlock;\n}\n\ninterface Entry {\n readonly node: Nodes;\n readonly start: number;\n readonly end: number;\n readonly parent: Entry | null;\n readonly children: Entry[];\n}\nconst MAX_SOURCE_CODE_UNITS = 8_000_000;\nconst MAX_NODES = 250_000;\nconst MAX_DEPTH = 256;\n\n/** Pure parse/index operation. Resource bounds fail explicitly, never truncate. */\nexport function compileMarkdownSourceContext(input: string): MarkdownSourceContextIndex {\n return compileMarkdownSourceDocument(input).index;\n}\n\n/** One newly parsed, operation-owned source and AST. Production compilers call\n * this factory from canonical text; no caller-supplied tree can bypass parsing or\n * source/AST resource bounds. The document is neither cached nor shared across\n * operations. Existing index-only callers retain their original public shape. */\nexport function compileMarkdownSourceDocument(input: string): {\n readonly tree: Root;\n readonly index: MarkdownSourceContextIndex;\n} {\n const source = input.replace(/^\\uFEFF/, '').replace(/\\r\\n?/g, '\\n');\n if (source.length > MAX_SOURCE_CODE_UNITS) throw new RangeError('Markdown exceeds source-context source limit');\n const tree = unified().use(remarkParse).use(remarkGfm).parse(source);\n const lineStarts = [0];\n for (let offset = 0; offset < source.length; offset += 1) {\n if (source[offset] === '\\n') lineStarts.push(offset + 1);\n }\n let count = 0;\n function indexNode(node: Nodes, parent: Entry | null, depth: number): Entry {\n count += 1;\n if (count > MAX_NODES || depth > MAX_DEPTH) throw new RangeError('Markdown exceeds source-context AST limit');\n const start = node.position?.start.offset;\n const end = node.position?.end.offset;\n if (start === undefined || end === undefined) throw new Error('Markdown parser omitted a source position');\n const entry: Entry = { node, start, end, parent, children: [] };\n if ('children' in node) {\n for (const child of node.children) entry.children.push(indexNode(child, entry, depth + 1));\n }\n return entry;\n }\n const root = indexNode(tree, null, 0);\n function point(offset: number): SourcePoint {\n let low = 0;\n let high = lineStarts.length;\n while (low + 1 < high) {\n const middle = Math.floor((low + high) / 2);\n const value = lineStarts[middle];\n if (value !== undefined && value <= offset) low = middle;\n else high = middle;\n }\n // The dense local index begins at zero; binary search keeps low in range.\n return { offset, line: low + 1, column: offset - lineStarts[low]! + 1 };\n }\n function block(start: number, end: number, kind: string): SourceBlock {\n return { kind, span: { start: point(start), end: point(end) }, text: source.slice(start, end) };\n }\n function entryBlock(entry: Entry): SourceBlock {\n return block(entry.start, entry.end, entry.node.type);\n }\n function headingContext(start: number): SourceHeading[] {\n const headings: SourceHeading[] = [];\n for (const entry of root.children) {\n if (entry.start > start) break;\n if (entry.node.type === 'heading') {\n while (headings.length > 0 && headings[headings.length - 1]!.depth >= entry.node.depth) headings.pop();\n headings.push({ ...entryBlock(entry), depth: entry.node.depth });\n }\n }\n return headings;\n }\n function section(start: number, end: number, depth?: number): SourceBlock {\n if (depth !== undefined && (!Number.isInteger(depth) || depth < 1 || depth > 6)) {\n throw new RangeError('Source section depth must be an integer from 1 to 6');\n }\n const headings = headingContext(start);\n const current = depth === undefined ? headings.at(-1) : headings.find(heading => heading.depth === depth);\n if (depth !== undefined && !current) {\n throw new RangeError('Requested heading depth does not enclose the source selection');\n }\n let sectionStart = current?.span.start.offset ?? 0;\n let sectionEnd = source.length;\n for (const entry of root.children) {\n if (entry.start > start && entry.node.type === 'heading' && (!current || entry.node.depth <= current.depth)) {\n sectionEnd = entry.start;\n break;\n }\n }\n // A selection spanning sections cannot be assigned to either one safely.\n if (end > sectionEnd) {\n if (depth !== undefined) throw new RangeError('Source selection crosses the requested heading scope');\n sectionStart = 0;\n sectionEnd = source.length;\n }\n return block(sectionStart, sectionEnd, 'section');\n }\n function offsets(selection: SourceSelection): { start: number; end: number } {\n let start: number;\n let end: number;\n if ('startLine' in selection) {\n const { startLine, endLine } = selection;\n if (!Number.isInteger(startLine) || !Number.isInteger(endLine) || startLine < 1 || endLine < startLine || endLine > lineStarts.length) {\n throw new RangeError('Source line selection is outside normalized Markdown');\n }\n // The integer bounds above establish this dense local array entry.\n start = lineStarts[startLine - 1]!;\n const next = lineStarts[endLine];\n end = next === undefined ? source.length : next - 1;\n } else {\n start = selection.startOffset;\n end = selection.endOffset;\n }\n if (!Number.isInteger(start) || !Number.isInteger(end) || start < 0 || end <= start || end > source.length) {\n throw new RangeError('Source offset selection must be a non-empty normalized Markdown span');\n }\n return { start, end };\n }\n function introBefore(entry: Entry): Entry[] {\n const siblings = entry.parent?.children ?? [];\n let position = siblings.indexOf(entry) - 1;\n const introductions: Entry[] = [];\n while (position >= 0) {\n const previous = siblings[position];\n if (!previous || previous.node.type !== 'paragraph') break;\n introductions.unshift(previous);\n position -= 1;\n }\n return introductions;\n }\n function group(entry: Entry): StructuralGroup {\n if (entry.node.type !== 'list' && entry.node.type !== 'table') throw new Error('Expected a Markdown group');\n const isTable = entry.node.type === 'table';\n return {\n kind: isTable ? 'table' : 'list',\n source: entryBlock(entry),\n ordered: entry.node.type === 'list' ? Boolean(entry.node.ordered) : null,\n items: entry.children.map(entryBlock),\n headers: isTable ? entry.children.slice(0, 1).map(entryBlock) : [],\n };\n }\n function query(selection: SourceSelection): NormativeSourceContext {\n const { start, end } = offsets(selection);\n const selected = block(start, end, 'selection');\n // Ignore surrounding layout only for node association, never for output.\n let matchStart = start;\n let matchEnd = end;\n while (matchStart < matchEnd && /\\s/u.test(source[matchStart] ?? '')) matchStart += 1;\n while (matchEnd > matchStart && /\\s/u.test(source[matchEnd - 1] ?? '')) matchEnd -= 1;\n const path: Entry[] = [];\n let cursor: Entry = root;\n while (matchStart < matchEnd) {\n const child = cursor.children.find(entry => entry.start <= matchStart && entry.end >= matchEnd);\n if (!child) break;\n path.push(child);\n cursor = child;\n }\n const top = path[0];\n const headings = headingContext(matchStart);\n const enclosingItems = path.filter(entry => entry.node.type === 'listItem').map(entryBlock);\n const containers = path.filter(entry => entry.node.type === 'list' || entry.node.type === 'table');\n let primary = containers[0] ?? top;\n let introductions = primary ? introBefore(primary) : [];\n // Selecting introductory prose exposes its following group, too.\n if (primary?.node.type === 'paragraph') {\n const siblings = primary.parent?.children ?? [];\n let nextPosition = siblings.indexOf(primary) + 1;\n while (siblings[nextPosition]?.node.type === 'paragraph') nextPosition += 1;\n const next = siblings[nextPosition];\n if (next && (next.node.type === 'list' || next.node.type === 'table')) {\n primary = next;\n introductions = introBefore(primary);\n containers.push(primary);\n } else introductions = [];\n }\n const completeSelected = [...path].reverse().find(entry => entry.node.type === 'listItem' || entry.node.type === 'tableRow') ?? top;\n const groups = containers.map(group);\n let unit = primary ? entryBlock(primary) : section(start, end);\n const diagnostics: ContextDiagnostic[] = [];\n function uncertain(code: ContextDiagnostic['code'], message: string): void {\n unit = section(start, end);\n diagnostics.push({ code, message, span: selected.span });\n }\n if (!top) {\n const overlapsBlock = root.children.some(entry => entry.start < matchEnd && entry.end > matchStart);\n uncertain(overlapsBlock ? 'SPAN_CROSSES_BLOCKS' : 'NO_SOURCE_BLOCK', 'Selection cannot be assigned to one source block; complete relevant section retained.');\n } else if (top.node.type === 'heading' || (top.node.type !== 'paragraph' && top.node.type !== 'list' && top.node.type !== 'table' && top.node.type !== 'code' && top.node.type !== 'thematicBreak')) {\n uncertain('UNSUPPORTED_CONTAINER', 'Container scope is not established by this compiler; complete relevant section retained.');\n } else if (primary && (primary.node.type === 'list' || primary.node.type === 'table')) {\n const lastIntro = introductions.at(-1);\n if (lastIntro) {\n unit = block(introductions[0]?.start ?? primary.start, primary.end, primary.node.type === 'list' ? 'list_group' : 'table_group');\n if (!/[::]$/u.test(source.slice(lastIntro.start, lastIntro.end).trimEnd())) {\n uncertain('AMBIGUOUS_PROSE_ATTACHMENT', 'Preceding prose may govern this group but Markdown does not establish its scope; complete relevant section retained.');\n }\n }\n }\n return {\n unit, section: section(start, end), selected, selectedBlock: completeSelected ? entryBlock(completeSelected) : null,\n headings, introductions: introductions.map(entryBlock), enclosingItems, groups,\n attribution: diagnostics.length === 0 ? 'structural' : 'uncertain', diagnostics,\n };\n }\n function sectionQuery(selection: SourceSelection, depth?: number): SourceBlock {\n const { start, end } = offsets(selection);\n return section(start, end, depth);\n }\n return { tree, index: { source, normalization: 'utf8-lf-v1', contextForSpan: query, sectionForSpan: sectionQuery } };\n}\n\nexport function contextForSpan(index: MarkdownSourceContextIndex, selection: SourceSelection): NormativeSourceContext {\n return index.contextForSpan(selection);\n}\n\n/** Read a complete enclosing section without copying ancestor text into the index. */\nexport function sectionForSpan(index: MarkdownSourceContextIndex, selection: SourceSelection, depth?: number): SourceBlock {\n return index.sectionForSpan(selection, depth);\n}\n"]}