@jasonbelmonti/markdown-engine 0.1.0 → 2.0.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 (350) hide show
  1. package/CHANGELOG.md +53 -4
  2. package/README.md +138 -10
  3. package/SECURITY.md +5 -3
  4. package/dist/api/annotation-source-range.d.ts +7 -0
  5. package/dist/api/annotation-source-range.d.ts.map +1 -0
  6. package/dist/api/annotation-source-range.js +103 -0
  7. package/dist/api/annotation-source-range.js.map +1 -0
  8. package/dist/api/annotation-target-candidate.d.ts +10 -0
  9. package/dist/api/annotation-target-candidate.d.ts.map +1 -0
  10. package/dist/api/annotation-target-candidate.js +14 -0
  11. package/dist/api/annotation-target-candidate.js.map +1 -0
  12. package/dist/api/annotation-target-cloning.d.ts +5 -0
  13. package/dist/api/annotation-target-cloning.d.ts.map +1 -0
  14. package/dist/api/annotation-target-cloning.js +122 -0
  15. package/dist/api/annotation-target-cloning.js.map +1 -0
  16. package/dist/api/annotation-target-diagnostics.d.ts +8 -0
  17. package/dist/api/annotation-target-diagnostics.d.ts.map +1 -0
  18. package/dist/api/annotation-target-diagnostics.js +57 -0
  19. package/dist/api/annotation-target-diagnostics.js.map +1 -0
  20. package/dist/api/annotation-target-runtime.d.ts +30 -0
  21. package/dist/api/annotation-target-runtime.d.ts.map +1 -0
  22. package/dist/api/annotation-target-runtime.js +161 -0
  23. package/dist/api/annotation-target-runtime.js.map +1 -0
  24. package/dist/api/annotation-target-validation.d.ts +4 -0
  25. package/dist/api/annotation-target-validation.d.ts.map +1 -0
  26. package/dist/api/annotation-target-validation.js +147 -0
  27. package/dist/api/annotation-target-validation.js.map +1 -0
  28. package/dist/api/annotations.d.ts +4 -0
  29. package/dist/api/annotations.d.ts.map +1 -0
  30. package/dist/api/annotations.js +16 -0
  31. package/dist/api/annotations.js.map +1 -0
  32. package/dist/api/compatibility.d.ts +15 -0
  33. package/dist/api/compatibility.d.ts.map +1 -0
  34. package/dist/api/compatibility.js +57 -0
  35. package/dist/api/compatibility.js.map +1 -0
  36. package/dist/api/contracts.d.ts +4 -1
  37. package/dist/api/contracts.d.ts.map +1 -1
  38. package/dist/api/contracts.js +3 -0
  39. package/dist/api/contracts.js.map +1 -1
  40. package/dist/api/declarative-validation.d.ts +13 -0
  41. package/dist/api/declarative-validation.d.ts.map +1 -0
  42. package/dist/api/declarative-validation.js +63 -0
  43. package/dist/api/declarative-validation.js.map +1 -0
  44. package/dist/api/document-queries.d.ts +3 -0
  45. package/dist/api/document-queries.d.ts.map +1 -0
  46. package/dist/api/document-queries.js +160 -0
  47. package/dist/api/document-queries.js.map +1 -0
  48. package/dist/api/document.d.ts +179 -2
  49. package/dist/api/document.d.ts.map +1 -1
  50. package/dist/api/engine-node-attributes.d.ts +15 -0
  51. package/dist/api/engine-node-attributes.d.ts.map +1 -0
  52. package/dist/api/engine-node-attributes.js +99 -0
  53. package/dist/api/engine-node-attributes.js.map +1 -0
  54. package/dist/api/normalize.d.ts +2 -1
  55. package/dist/api/normalize.d.ts.map +1 -1
  56. package/dist/api/normalize.js +22 -1
  57. package/dist/api/normalize.js.map +1 -1
  58. package/dist/api/serialize.d.ts +5 -1
  59. package/dist/api/serialize.d.ts.map +1 -1
  60. package/dist/api/serialize.js +7 -14
  61. package/dist/api/serialize.js.map +1 -1
  62. package/dist/cli/args.d.ts +18 -0
  63. package/dist/cli/args.d.ts.map +1 -0
  64. package/dist/cli/args.js +109 -0
  65. package/dist/cli/args.js.map +1 -0
  66. package/dist/cli/declarative-validation.d.ts +18 -0
  67. package/dist/cli/declarative-validation.d.ts.map +1 -0
  68. package/dist/cli/declarative-validation.js +131 -0
  69. package/dist/cli/declarative-validation.js.map +1 -0
  70. package/dist/cli/document-version.d.ts +14 -0
  71. package/dist/cli/document-version.d.ts.map +1 -0
  72. package/dist/cli/document-version.js +32 -0
  73. package/dist/cli/document-version.js.map +1 -0
  74. package/dist/cli/files.d.ts +6 -0
  75. package/dist/cli/files.d.ts.map +1 -0
  76. package/dist/cli/files.js +33 -0
  77. package/dist/cli/files.js.map +1 -0
  78. package/dist/cli/index.d.ts +3 -0
  79. package/dist/cli/index.d.ts.map +1 -0
  80. package/dist/cli/index.js +9 -0
  81. package/dist/cli/index.js.map +1 -0
  82. package/dist/cli/normalize-markdown.d.ts +8 -0
  83. package/dist/cli/normalize-markdown.d.ts.map +1 -0
  84. package/dist/cli/normalize-markdown.js +10 -0
  85. package/dist/cli/normalize-markdown.js.map +1 -0
  86. package/dist/cli/run.d.ts +11 -0
  87. package/dist/cli/run.d.ts.map +1 -0
  88. package/dist/cli/run.js +52 -0
  89. package/dist/cli/run.js.map +1 -0
  90. package/dist/cli/validate-args.d.ts +18 -0
  91. package/dist/cli/validate-args.d.ts.map +1 -0
  92. package/dist/cli/validate-args.js +131 -0
  93. package/dist/cli/validate-args.js.map +1 -0
  94. package/dist/declarative-validation/assertions/context.d.ts +8 -0
  95. package/dist/declarative-validation/assertions/context.d.ts.map +1 -0
  96. package/dist/declarative-validation/assertions/context.js +2 -0
  97. package/dist/declarative-validation/assertions/context.js.map +1 -0
  98. package/dist/declarative-validation/assertions/diagnostics.d.ts +22 -0
  99. package/dist/declarative-validation/assertions/diagnostics.d.ts.map +1 -0
  100. package/dist/declarative-validation/assertions/diagnostics.js +71 -0
  101. package/dist/declarative-validation/assertions/diagnostics.js.map +1 -0
  102. package/dist/declarative-validation/assertions/document-text-offsets.d.ts +3 -0
  103. package/dist/declarative-validation/assertions/document-text-offsets.d.ts.map +1 -0
  104. package/dist/declarative-validation/assertions/document-text-offsets.js +32 -0
  105. package/dist/declarative-validation/assertions/document-text-offsets.js.map +1 -0
  106. package/dist/declarative-validation/assertions/evaluator.d.ts +5 -0
  107. package/dist/declarative-validation/assertions/evaluator.d.ts.map +1 -0
  108. package/dist/declarative-validation/assertions/evaluator.js +46 -0
  109. package/dist/declarative-validation/assertions/evaluator.js.map +1 -0
  110. package/dist/declarative-validation/assertions/exists.d.ts +4 -0
  111. package/dist/declarative-validation/assertions/exists.d.ts.map +1 -0
  112. package/dist/declarative-validation/assertions/exists.js +8 -0
  113. package/dist/declarative-validation/assertions/exists.js.map +1 -0
  114. package/dist/declarative-validation/assertions/frontmatter-required.d.ts +9 -0
  115. package/dist/declarative-validation/assertions/frontmatter-required.d.ts.map +1 -0
  116. package/dist/declarative-validation/assertions/frontmatter-required.js +15 -0
  117. package/dist/declarative-validation/assertions/frontmatter-required.js.map +1 -0
  118. package/dist/declarative-validation/assertions/id-targets.d.ts +29 -0
  119. package/dist/declarative-validation/assertions/id-targets.d.ts.map +1 -0
  120. package/dist/declarative-validation/assertions/id-targets.js +428 -0
  121. package/dist/declarative-validation/assertions/id-targets.js.map +1 -0
  122. package/dist/declarative-validation/assertions/id-tokens.d.ts +15 -0
  123. package/dist/declarative-validation/assertions/id-tokens.d.ts.map +1 -0
  124. package/dist/declarative-validation/assertions/id-tokens.js +27 -0
  125. package/dist/declarative-validation/assertions/id-tokens.js.map +1 -0
  126. package/dist/declarative-validation/assertions/ids.d.ts +9 -0
  127. package/dist/declarative-validation/assertions/ids.d.ts.map +1 -0
  128. package/dist/declarative-validation/assertions/ids.js +42 -0
  129. package/dist/declarative-validation/assertions/ids.js.map +1 -0
  130. package/dist/declarative-validation/assertions/index.d.ts +3 -0
  131. package/dist/declarative-validation/assertions/index.d.ts.map +1 -0
  132. package/dist/declarative-validation/assertions/index.js +3 -0
  133. package/dist/declarative-validation/assertions/index.js.map +1 -0
  134. package/dist/declarative-validation/assertions/literal-text.d.ts +2 -0
  135. package/dist/declarative-validation/assertions/literal-text.d.ts.map +1 -0
  136. package/dist/declarative-validation/assertions/literal-text.js +14 -0
  137. package/dist/declarative-validation/assertions/literal-text.js.map +1 -0
  138. package/dist/declarative-validation/assertions/normalized-source-ranges.d.ts +3 -0
  139. package/dist/declarative-validation/assertions/normalized-source-ranges.d.ts.map +1 -0
  140. package/dist/declarative-validation/assertions/normalized-source-ranges.js +105 -0
  141. package/dist/declarative-validation/assertions/normalized-source-ranges.js.map +1 -0
  142. package/dist/declarative-validation/assertions/ordering.d.ts +6 -0
  143. package/dist/declarative-validation/assertions/ordering.d.ts.map +1 -0
  144. package/dist/declarative-validation/assertions/ordering.js +71 -0
  145. package/dist/declarative-validation/assertions/ordering.js.map +1 -0
  146. package/dist/declarative-validation/assertions/references.d.ts +9 -0
  147. package/dist/declarative-validation/assertions/references.d.ts.map +1 -0
  148. package/dist/declarative-validation/assertions/references.js +354 -0
  149. package/dist/declarative-validation/assertions/references.js.map +1 -0
  150. package/dist/declarative-validation/assertions/sections-required.d.ts +9 -0
  151. package/dist/declarative-validation/assertions/sections-required.d.ts.map +1 -0
  152. package/dist/declarative-validation/assertions/sections-required.js +49 -0
  153. package/dist/declarative-validation/assertions/sections-required.js.map +1 -0
  154. package/dist/declarative-validation/assertions/table-columns-required.d.ts +9 -0
  155. package/dist/declarative-validation/assertions/table-columns-required.d.ts.map +1 -0
  156. package/dist/declarative-validation/assertions/table-columns-required.js +31 -0
  157. package/dist/declarative-validation/assertions/table-columns-required.js.map +1 -0
  158. package/dist/declarative-validation/assertions/text-length.d.ts +9 -0
  159. package/dist/declarative-validation/assertions/text-length.d.ts.map +1 -0
  160. package/dist/declarative-validation/assertions/text-length.js +40 -0
  161. package/dist/declarative-validation/assertions/text-length.js.map +1 -0
  162. package/dist/declarative-validation/assertions/text-occurrence-count.d.ts +9 -0
  163. package/dist/declarative-validation/assertions/text-occurrence-count.d.ts.map +1 -0
  164. package/dist/declarative-validation/assertions/text-occurrence-count.js +22 -0
  165. package/dist/declarative-validation/assertions/text-occurrence-count.js.map +1 -0
  166. package/dist/declarative-validation/assertions/text.d.ts +9 -0
  167. package/dist/declarative-validation/assertions/text.d.ts.map +1 -0
  168. package/dist/declarative-validation/assertions/text.js +32 -0
  169. package/dist/declarative-validation/assertions/text.js.map +1 -0
  170. package/dist/declarative-validation/compiler/assertion-builders.d.ts +6 -0
  171. package/dist/declarative-validation/compiler/assertion-builders.d.ts.map +1 -0
  172. package/dist/declarative-validation/compiler/assertion-builders.js +199 -0
  173. package/dist/declarative-validation/compiler/assertion-builders.js.map +1 -0
  174. package/dist/declarative-validation/compiler/assertion-shapes.d.ts +18 -0
  175. package/dist/declarative-validation/compiler/assertion-shapes.d.ts.map +1 -0
  176. package/dist/declarative-validation/compiler/assertion-shapes.js +129 -0
  177. package/dist/declarative-validation/compiler/assertion-shapes.js.map +1 -0
  178. package/dist/declarative-validation/compiler/assertions.d.ts +5 -0
  179. package/dist/declarative-validation/compiler/assertions.d.ts.map +1 -0
  180. package/dist/declarative-validation/compiler/assertions.js +25 -0
  181. package/dist/declarative-validation/compiler/assertions.js.map +1 -0
  182. package/dist/declarative-validation/compiler/compatibility.d.ts +4 -0
  183. package/dist/declarative-validation/compiler/compatibility.d.ts.map +1 -0
  184. package/dist/declarative-validation/compiler/compatibility.js +28 -0
  185. package/dist/declarative-validation/compiler/compatibility.js.map +1 -0
  186. package/dist/declarative-validation/compiler/diagnostics.d.ts +3 -0
  187. package/dist/declarative-validation/compiler/diagnostics.d.ts.map +1 -0
  188. package/dist/declarative-validation/compiler/diagnostics.js +9 -0
  189. package/dist/declarative-validation/compiler/diagnostics.js.map +1 -0
  190. package/dist/declarative-validation/compiler/index.d.ts +5 -0
  191. package/dist/declarative-validation/compiler/index.d.ts.map +1 -0
  192. package/dist/declarative-validation/compiler/index.js +164 -0
  193. package/dist/declarative-validation/compiler/index.js.map +1 -0
  194. package/dist/declarative-validation/compiler/plan.d.ts +58 -0
  195. package/dist/declarative-validation/compiler/plan.d.ts.map +1 -0
  196. package/dist/declarative-validation/compiler/plan.js +2 -0
  197. package/dist/declarative-validation/compiler/plan.js.map +1 -0
  198. package/dist/declarative-validation/diagnostics/index.d.ts +7 -0
  199. package/dist/declarative-validation/diagnostics/index.d.ts.map +1 -0
  200. package/dist/declarative-validation/diagnostics/index.js +2 -0
  201. package/dist/declarative-validation/diagnostics/index.js.map +1 -0
  202. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.d.ts +11 -0
  203. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.d.ts.map +1 -0
  204. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.js +45 -0
  205. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.js.map +1 -0
  206. package/dist/declarative-validation/evidence/index.d.ts +14 -0
  207. package/dist/declarative-validation/evidence/index.d.ts.map +1 -0
  208. package/dist/declarative-validation/evidence/index.js +38 -0
  209. package/dist/declarative-validation/evidence/index.js.map +1 -0
  210. package/dist/declarative-validation/profile/assertion-schema.d.ts +4 -0
  211. package/dist/declarative-validation/profile/assertion-schema.d.ts.map +1 -0
  212. package/dist/declarative-validation/profile/assertion-schema.js +285 -0
  213. package/dist/declarative-validation/profile/assertion-schema.js.map +1 -0
  214. package/dist/declarative-validation/profile/data-closure.d.ts +6 -0
  215. package/dist/declarative-validation/profile/data-closure.d.ts.map +1 -0
  216. package/dist/declarative-validation/profile/data-closure.js +167 -0
  217. package/dist/declarative-validation/profile/data-closure.js.map +1 -0
  218. package/dist/declarative-validation/profile/direct-profile-diagnostics.d.ts +5 -0
  219. package/dist/declarative-validation/profile/direct-profile-diagnostics.d.ts.map +1 -0
  220. package/dist/declarative-validation/profile/direct-profile-diagnostics.js +73 -0
  221. package/dist/declarative-validation/profile/direct-profile-diagnostics.js.map +1 -0
  222. package/dist/declarative-validation/profile/index.d.ts +113 -0
  223. package/dist/declarative-validation/profile/index.d.ts.map +1 -0
  224. package/dist/declarative-validation/profile/index.js +2 -0
  225. package/dist/declarative-validation/profile/index.js.map +1 -0
  226. package/dist/declarative-validation/profile/materialization.d.ts +9 -0
  227. package/dist/declarative-validation/profile/materialization.d.ts.map +1 -0
  228. package/dist/declarative-validation/profile/materialization.js +109 -0
  229. package/dist/declarative-validation/profile/materialization.js.map +1 -0
  230. package/dist/declarative-validation/profile/parse.d.ts +3 -0
  231. package/dist/declarative-validation/profile/parse.d.ts.map +1 -0
  232. package/dist/declarative-validation/profile/parse.js +89 -0
  233. package/dist/declarative-validation/profile/parse.js.map +1 -0
  234. package/dist/declarative-validation/profile/schema-values.d.ts +14 -0
  235. package/dist/declarative-validation/profile/schema-values.d.ts.map +1 -0
  236. package/dist/declarative-validation/profile/schema-values.js +81 -0
  237. package/dist/declarative-validation/profile/schema-values.js.map +1 -0
  238. package/dist/declarative-validation/profile/schema.d.ts +9 -0
  239. package/dist/declarative-validation/profile/schema.d.ts.map +1 -0
  240. package/dist/declarative-validation/profile/schema.js +98 -0
  241. package/dist/declarative-validation/profile/schema.js.map +1 -0
  242. package/dist/declarative-validation/profile/selector-schema.d.ts +4 -0
  243. package/dist/declarative-validation/profile/selector-schema.d.ts.map +1 -0
  244. package/dist/declarative-validation/profile/selector-schema.js +145 -0
  245. package/dist/declarative-validation/profile/selector-schema.js.map +1 -0
  246. package/dist/declarative-validation/results/index.d.ts +26 -0
  247. package/dist/declarative-validation/results/index.d.ts.map +1 -0
  248. package/dist/declarative-validation/results/index.js +2 -0
  249. package/dist/declarative-validation/results/index.js.map +1 -0
  250. package/dist/declarative-validation/selectors/index.d.ts +57 -0
  251. package/dist/declarative-validation/selectors/index.d.ts.map +1 -0
  252. package/dist/declarative-validation/selectors/index.js +149 -0
  253. package/dist/declarative-validation/selectors/index.js.map +1 -0
  254. package/dist/declarative-validation/selectors/source.d.ts +8 -0
  255. package/dist/declarative-validation/selectors/source.d.ts.map +1 -0
  256. package/dist/declarative-validation/selectors/source.js +57 -0
  257. package/dist/declarative-validation/selectors/source.js.map +1 -0
  258. package/dist/declarative-validation/selectors/table-targets.d.ts +13 -0
  259. package/dist/declarative-validation/selectors/table-targets.d.ts.map +1 -0
  260. package/dist/declarative-validation/selectors/table-targets.js +106 -0
  261. package/dist/declarative-validation/selectors/table-targets.js.map +1 -0
  262. package/dist/declarative-validation/selectors/table-text.d.ts +4 -0
  263. package/dist/declarative-validation/selectors/table-text.d.ts.map +1 -0
  264. package/dist/declarative-validation/selectors/table-text.js +16 -0
  265. package/dist/declarative-validation/selectors/table-text.js.map +1 -0
  266. package/dist/internal/document-node-walk.d.ts +10 -0
  267. package/dist/internal/document-node-walk.d.ts.map +1 -0
  268. package/dist/internal/document-node-walk.js +36 -0
  269. package/dist/internal/document-node-walk.js.map +1 -0
  270. package/dist/internal/stable-json.d.ts +3 -0
  271. package/dist/internal/stable-json.d.ts.map +1 -0
  272. package/dist/internal/stable-json.js +17 -0
  273. package/dist/internal/stable-json.js.map +1 -0
  274. package/dist/ir/document-derived-views.d.ts +4 -0
  275. package/dist/ir/document-derived-views.d.ts.map +1 -0
  276. package/dist/ir/document-derived-views.js +27 -0
  277. package/dist/ir/document-derived-views.js.map +1 -0
  278. package/dist/ir/document-link-reference-views.d.ts +3 -0
  279. package/dist/ir/document-link-reference-views.d.ts.map +1 -0
  280. package/dist/ir/document-link-reference-views.js +150 -0
  281. package/dist/ir/document-link-reference-views.js.map +1 -0
  282. package/dist/ir/document-link-views.d.ts +3 -0
  283. package/dist/ir/document-link-views.d.ts.map +1 -0
  284. package/dist/ir/document-link-views.js +23 -0
  285. package/dist/ir/document-link-views.js.map +1 -0
  286. package/dist/ir/document-list-views.d.ts +3 -0
  287. package/dist/ir/document-list-views.d.ts.map +1 -0
  288. package/dist/ir/document-list-views.js +39 -0
  289. package/dist/ir/document-list-views.js.map +1 -0
  290. package/dist/ir/document-sections.d.ts +3 -0
  291. package/dist/ir/document-sections.d.ts.map +1 -0
  292. package/dist/ir/document-sections.js +55 -0
  293. package/dist/ir/document-sections.js.map +1 -0
  294. package/dist/ir/document-table-views.d.ts +3 -0
  295. package/dist/ir/document-table-views.d.ts.map +1 -0
  296. package/dist/ir/document-table-views.js +31 -0
  297. package/dist/ir/document-table-views.js.map +1 -0
  298. package/dist/ir/document-targets.d.ts +10 -0
  299. package/dist/ir/document-targets.d.ts.map +1 -0
  300. package/dist/ir/document-targets.js +44 -0
  301. package/dist/ir/document-targets.js.map +1 -0
  302. package/dist/ir/document-text-spans.d.ts +3 -0
  303. package/dist/ir/document-text-spans.d.ts.map +1 -0
  304. package/dist/ir/document-text-spans.js +18 -0
  305. package/dist/ir/document-text-spans.js.map +1 -0
  306. package/dist/ir/document.d.ts +2 -3
  307. package/dist/ir/document.d.ts.map +1 -1
  308. package/dist/ir/document.js +12 -8
  309. package/dist/ir/document.js.map +1 -1
  310. package/dist/ir/index.d.ts +1 -0
  311. package/dist/ir/index.d.ts.map +1 -1
  312. package/dist/ir/normalization-input.d.ts +12 -0
  313. package/dist/ir/normalization-input.d.ts.map +1 -0
  314. package/dist/ir/normalization-input.js +2 -0
  315. package/dist/ir/normalization-input.js.map +1 -0
  316. package/dist/ir/source-ranges.d.ts +8 -0
  317. package/dist/ir/source-ranges.d.ts.map +1 -0
  318. package/dist/ir/source-ranges.js +21 -0
  319. package/dist/ir/source-ranges.js.map +1 -0
  320. package/dist/rules/code-fence-languages.d.ts.map +1 -1
  321. package/dist/rules/code-fence-languages.js +4 -6
  322. package/dist/rules/code-fence-languages.js.map +1 -1
  323. package/dist/rules/document-query.d.ts +0 -2
  324. package/dist/rules/document-query.d.ts.map +1 -1
  325. package/dist/rules/document-query.js +1 -17
  326. package/dist/rules/document-query.js.map +1 -1
  327. package/dist/rules/index.d.ts +2 -6
  328. package/dist/rules/index.d.ts.map +1 -1
  329. package/dist/rules/index.js +3 -37
  330. package/dist/rules/index.js.map +1 -1
  331. package/dist/rules/links-allowed-schemes.d.ts.map +1 -1
  332. package/dist/rules/links-allowed-schemes.js +3 -2
  333. package/dist/rules/links-allowed-schemes.js.map +1 -1
  334. package/dist/rules/registry.d.ts +12 -0
  335. package/dist/rules/registry.d.ts.map +1 -0
  336. package/dist/rules/registry.js +61 -0
  337. package/dist/rules/registry.js.map +1 -0
  338. package/docs/contracts/api.md +661 -0
  339. package/docs/contracts/declarative-validation.md +559 -0
  340. package/docs/contracts/frontmatter.md +122 -0
  341. package/fixtures/declarative-validation/examples/operational-spec/fail.md +32 -0
  342. package/fixtures/declarative-validation/examples/operational-spec/pass.md +34 -0
  343. package/fixtures/declarative-validation/examples/operational-spec/profile.yaml +131 -0
  344. package/fixtures/declarative-validation/examples/release-checklist/fail.md +22 -0
  345. package/fixtures/declarative-validation/examples/release-checklist/pass.md +22 -0
  346. package/fixtures/declarative-validation/examples/release-checklist/profile.yaml +96 -0
  347. package/fixtures/declarative-validation/examples/requirements-traceability/fail.md +27 -0
  348. package/fixtures/declarative-validation/examples/requirements-traceability/pass.md +27 -0
  349. package/fixtures/declarative-validation/examples/requirements-traceability/profile.yaml +119 -0
  350. package/package.json +37 -4
@@ -0,0 +1,160 @@
1
+ import { flattenNodes } from "../internal/document-node-walk.js";
2
+ export const documentQueries = {
3
+ nodes,
4
+ sections,
5
+ textSpans,
6
+ tables,
7
+ lists,
8
+ links,
9
+ linkReferences,
10
+ targetCategory,
11
+ resolveTarget,
12
+ sourceSlice,
13
+ };
14
+ function nodes(document, query = {}) {
15
+ return flattenNodes(document.children).filter((node) => {
16
+ if (query.type !== undefined && node.type !== query.type) {
17
+ return false;
18
+ }
19
+ return query.targetId === undefined || node.target?.id === query.targetId;
20
+ });
21
+ }
22
+ function sections(document, query = {}) {
23
+ return (document.sections ?? []).filter((section) => {
24
+ if (query.targetId !== undefined && section.target.id !== query.targetId) {
25
+ return false;
26
+ }
27
+ if (query.headingTargetId !== undefined &&
28
+ section.headingTarget.id !== query.headingTargetId) {
29
+ return false;
30
+ }
31
+ if (query.parentSectionTargetId !== undefined &&
32
+ section.parentSection?.id !== query.parentSectionTargetId) {
33
+ return false;
34
+ }
35
+ if (query.title !== undefined && section.title !== query.title) {
36
+ return false;
37
+ }
38
+ return query.depth === undefined || section.depth === query.depth;
39
+ });
40
+ }
41
+ function textSpans(document, query = {}) {
42
+ return (document.textSpans ?? []).filter((span) => {
43
+ if (query.targetId !== undefined && span.target.id !== query.targetId) {
44
+ return false;
45
+ }
46
+ if (query.nodeType !== undefined && span.target.nodeType !== query.nodeType) {
47
+ return false;
48
+ }
49
+ if (query.text !== undefined && span.text !== query.text) {
50
+ return false;
51
+ }
52
+ return (query.textIncludes === undefined ||
53
+ span.text.includes(query.textIncludes));
54
+ });
55
+ }
56
+ function tables(document, query = {}) {
57
+ return (document.tables ?? []).filter((table) => query.targetId === undefined || table.target.id === query.targetId);
58
+ }
59
+ function lists(document, query = {}) {
60
+ return (document.lists ?? []).filter((list) => {
61
+ if (query.targetId !== undefined && list.target.id !== query.targetId) {
62
+ return false;
63
+ }
64
+ if (query.ordered !== undefined && list.ordered !== query.ordered) {
65
+ return false;
66
+ }
67
+ return (query.depth === undefined ||
68
+ list.items.some((item) => item.depth === query.depth));
69
+ });
70
+ }
71
+ function links(document, query = {}) {
72
+ return (document.links ?? []).filter((link) => {
73
+ if (query.targetId !== undefined && link.target.id !== query.targetId) {
74
+ return false;
75
+ }
76
+ if (query.url !== undefined && link.url !== query.url) {
77
+ return false;
78
+ }
79
+ return query.text === undefined || link.text === query.text;
80
+ });
81
+ }
82
+ function linkReferences(document, query = {}) {
83
+ return (document.linkReferences ?? []).filter((reference) => {
84
+ if (query.targetId !== undefined && reference.target.id !== query.targetId) {
85
+ return false;
86
+ }
87
+ if (query.kind !== undefined && reference.kind !== query.kind) {
88
+ return false;
89
+ }
90
+ if (query.url !== undefined && reference.url !== query.url) {
91
+ return false;
92
+ }
93
+ if (query.text !== undefined && reference.text !== query.text) {
94
+ return false;
95
+ }
96
+ if (query.alt !== undefined && reference.alt !== query.alt) {
97
+ return false;
98
+ }
99
+ if (query.label !== undefined && reference.label !== query.label) {
100
+ return false;
101
+ }
102
+ if (query.identifier !== undefined &&
103
+ reference.identifier !== query.identifier) {
104
+ return false;
105
+ }
106
+ if (query.referenceType !== undefined &&
107
+ reference.referenceType !== query.referenceType) {
108
+ return false;
109
+ }
110
+ return (query.definitionTargetId === undefined ||
111
+ reference.definitionTarget?.id === query.definitionTargetId);
112
+ });
113
+ }
114
+ function sourceSlice(document, target) {
115
+ const resolution = resolveTarget(document, target);
116
+ return resolution?.category === "document" ? undefined : resolution?.sourceSlice;
117
+ }
118
+ function targetCategory(document, target) {
119
+ return resolveTarget(document, target)?.category;
120
+ }
121
+ function resolveTarget(document, target) {
122
+ if (target.kind !== "node") {
123
+ return undefined;
124
+ }
125
+ if (document.target?.id === target.id) {
126
+ return {
127
+ category: "document",
128
+ target: document.target,
129
+ };
130
+ }
131
+ const section = (document.sections ?? []).find((section) => section.target.id === target.id);
132
+ if (section !== undefined) {
133
+ return {
134
+ category: "section",
135
+ target: section.target,
136
+ section,
137
+ ...sourceSliceProperty(sourceSliceForNodeTarget(document, section.headingTarget)),
138
+ };
139
+ }
140
+ const node = nodeByTargetId(document, target.id);
141
+ if (node === undefined || node.target === undefined) {
142
+ return undefined;
143
+ }
144
+ return {
145
+ category: "node",
146
+ target: node.target,
147
+ node,
148
+ ...sourceSliceProperty(node.source),
149
+ };
150
+ }
151
+ function nodeByTargetId(document, targetId) {
152
+ return flattenNodes(document.children).find((node) => node.target?.id === targetId);
153
+ }
154
+ function sourceSliceForNodeTarget(document, target) {
155
+ return nodeByTargetId(document, target.id)?.source;
156
+ }
157
+ function sourceSliceProperty(sourceSlice) {
158
+ return sourceSlice === undefined ? {} : { sourceSlice };
159
+ }
160
+ //# sourceMappingURL=document-queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-queries.js","sourceRoot":"","sources":["../../src/api/document-queries.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,194 @@
1
- import type { SourceRange } from "./diagnostics.js";
1
+ import type { MarkdownDiagnostic, SourceRange } from "./diagnostics.js";
2
+ export type EngineDocumentVersion = "0.0.0" | "1.0.0";
3
+ export type EngineNodeTargetKind = "node";
4
+ export interface EngineNodeTarget {
5
+ kind: EngineNodeTargetKind;
6
+ id: string;
7
+ path?: readonly number[];
8
+ nodeType?: string;
9
+ sourceRange?: SourceRange;
10
+ }
11
+ export interface EngineSourceSlice {
12
+ range: SourceRange;
13
+ text: string;
14
+ }
2
15
  export interface EngineNode {
3
16
  type: string;
4
17
  text?: string;
5
18
  attributes?: Record<string, unknown>;
19
+ target?: EngineNodeTarget;
6
20
  sourceRange?: SourceRange;
21
+ source?: EngineSourceSlice;
7
22
  children?: EngineNode[];
8
23
  }
24
+ export interface EngineSection {
25
+ target: EngineNodeTarget;
26
+ headingTarget: EngineNodeTarget;
27
+ parentSection?: EngineNodeTarget;
28
+ depth: number;
29
+ title: string;
30
+ bodyTargets: readonly EngineNodeTarget[];
31
+ childSections: readonly EngineNodeTarget[];
32
+ }
33
+ export interface EngineTextSpan {
34
+ target: EngineNodeTarget;
35
+ text: string;
36
+ sourceRange?: SourceRange;
37
+ }
38
+ export interface EngineTableCell {
39
+ target: EngineNodeTarget;
40
+ text: string;
41
+ rowIndex: number;
42
+ columnIndex: number;
43
+ header: boolean;
44
+ sourceRange?: SourceRange;
45
+ }
46
+ export interface EngineTable {
47
+ target: EngineNodeTarget;
48
+ cells: readonly EngineTableCell[];
49
+ }
50
+ export interface EngineListItem {
51
+ target: EngineNodeTarget;
52
+ itemIndex: number;
53
+ depth: number;
54
+ checked?: boolean;
55
+ sourceRange?: SourceRange;
56
+ }
57
+ export interface EngineList {
58
+ target: EngineNodeTarget;
59
+ ordered: boolean;
60
+ start?: number;
61
+ items: readonly EngineListItem[];
62
+ }
63
+ export interface EngineLink {
64
+ target: EngineNodeTarget;
65
+ url: string;
66
+ text: string;
67
+ title?: string;
68
+ sourceRange?: SourceRange;
69
+ }
70
+ export type EngineLinkReferenceKind = "definition" | "image" | "imageReference" | "link" | "linkReference";
71
+ export interface EngineLinkReference {
72
+ target: EngineNodeTarget;
73
+ kind: EngineLinkReferenceKind;
74
+ url?: string;
75
+ title?: string;
76
+ text?: string;
77
+ alt?: string;
78
+ label?: string;
79
+ identifier?: string;
80
+ referenceType?: string;
81
+ definitionTarget?: EngineNodeTarget;
82
+ sourceRange?: SourceRange;
83
+ }
84
+ export type EngineAnnotationTarget = {
85
+ kind: "node";
86
+ nodeTarget: EngineNodeTarget;
87
+ } | {
88
+ kind: "source";
89
+ sourceRange: SourceRange;
90
+ };
91
+ export interface EngineAnnotation<TPayload = unknown> {
92
+ id: string;
93
+ target: EngineAnnotationTarget;
94
+ payload: TPayload;
95
+ }
96
+ export interface EngineCompatibilityGate {
97
+ mode: "default" | "legacy-0.1";
98
+ reason?: string;
99
+ }
100
+ export interface EngineTargetDiagnostic extends MarkdownDiagnostic {
101
+ target?: unknown;
102
+ }
9
103
  export interface EngineDocument {
10
104
  kind: "markdown-document";
11
- version: "0.0.0";
105
+ version: EngineDocumentVersion;
12
106
  path?: string;
13
107
  frontmatter?: unknown;
108
+ target?: EngineNodeTarget;
14
109
  children: EngineNode[];
15
110
  sourceRange?: SourceRange;
111
+ sections?: readonly EngineSection[];
112
+ textSpans?: readonly EngineTextSpan[];
113
+ tables?: readonly EngineTable[];
114
+ lists?: readonly EngineList[];
115
+ links?: readonly EngineLink[];
116
+ linkReferences?: readonly EngineLinkReference[];
117
+ annotations?: readonly EngineAnnotation[];
118
+ compatibility?: EngineCompatibilityGate;
119
+ }
120
+ export interface EngineNodeQuery {
121
+ type?: string;
122
+ targetId?: string;
123
+ }
124
+ export interface EngineSectionQuery {
125
+ targetId?: string;
126
+ headingTargetId?: string;
127
+ parentSectionTargetId?: string;
128
+ title?: string;
129
+ depth?: number;
130
+ }
131
+ export interface EngineTextSpanQuery {
132
+ targetId?: string;
133
+ nodeType?: string;
134
+ text?: string;
135
+ textIncludes?: string;
136
+ }
137
+ export interface EngineTableQuery {
138
+ targetId?: string;
139
+ }
140
+ export interface EngineListQuery {
141
+ targetId?: string;
142
+ depth?: number;
143
+ ordered?: boolean;
144
+ }
145
+ export interface EngineLinkQuery {
146
+ targetId?: string;
147
+ url?: string;
148
+ text?: string;
149
+ }
150
+ export interface EngineLinkReferenceQuery {
151
+ targetId?: string;
152
+ kind?: EngineLinkReferenceKind;
153
+ url?: string;
154
+ text?: string;
155
+ alt?: string;
156
+ label?: string;
157
+ identifier?: string;
158
+ referenceType?: string;
159
+ definitionTargetId?: string;
160
+ }
161
+ export type EngineTargetCategory = "document" | "node" | "section";
162
+ export type EngineTargetResolution = {
163
+ category: "document";
164
+ target: EngineNodeTarget;
165
+ } | {
166
+ category: "node";
167
+ target: EngineNodeTarget;
168
+ node: EngineNode;
169
+ sourceSlice?: EngineSourceSlice;
170
+ } | {
171
+ category: "section";
172
+ target: EngineNodeTarget;
173
+ section: EngineSection;
174
+ sourceSlice?: EngineSourceSlice;
175
+ };
176
+ export interface EngineDocumentQueries {
177
+ nodes(document: EngineDocument, query?: EngineNodeQuery): readonly EngineNode[];
178
+ sections(document: EngineDocument, query?: EngineSectionQuery): readonly EngineSection[];
179
+ textSpans(document: EngineDocument, query?: EngineTextSpanQuery): readonly EngineTextSpan[];
180
+ tables(document: EngineDocument, query?: EngineTableQuery): readonly EngineTable[];
181
+ lists(document: EngineDocument, query?: EngineListQuery): readonly EngineList[];
182
+ links(document: EngineDocument, query?: EngineLinkQuery): readonly EngineLink[];
183
+ linkReferences(document: EngineDocument, query?: EngineLinkReferenceQuery): readonly EngineLinkReference[];
184
+ targetCategory(document: EngineDocument, target: EngineNodeTarget): EngineTargetCategory | undefined;
185
+ resolveTarget(document: EngineDocument, target: EngineNodeTarget): EngineTargetResolution | undefined;
186
+ sourceSlice(document: EngineDocument, target: EngineNodeTarget): EngineSourceSlice | undefined;
187
+ }
188
+ export interface AnnotationValidationResult {
189
+ valid: boolean;
190
+ annotations: readonly EngineAnnotation[];
191
+ diagnostics: readonly EngineTargetDiagnostic[];
16
192
  }
193
+ export type SerializableEngineResult = EngineDocument | AnnotationValidationResult;
17
194
  //# sourceMappingURL=document.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/api/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B"}
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/api/document.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { EngineNode } from "./document.js";
2
+ export type EngineCodeBlockKind = "fenced" | "indented";
3
+ export type EngineTableAlignment = "left" | "right" | "center" | null;
4
+ export declare function headingDepth(node: EngineNode): number | undefined;
5
+ export declare function linkUrl(node: EngineNode): string | undefined;
6
+ export declare function linkTitle(node: EngineNode): string | undefined;
7
+ export declare function codeBlockKind(node: EngineNode): EngineCodeBlockKind | undefined;
8
+ export declare function isFencedCodeBlock(node: EngineNode): boolean;
9
+ export declare function codeLanguage(node: EngineNode): string | undefined;
10
+ export declare function listOrdered(node: EngineNode): boolean | undefined;
11
+ export declare function isOrderedList(node: EngineNode): boolean;
12
+ export declare function listStart(node: EngineNode): number | undefined;
13
+ export declare function listItemChecked(node: EngineNode): boolean | undefined;
14
+ export declare function tableAlignments(node: EngineNode): readonly EngineTableAlignment[] | undefined;
15
+ //# sourceMappingURL=engine-node-attributes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-node-attributes.d.ts","sourceRoot":"","sources":["../../src/api/engine-node-attributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,UAAU,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEtE,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAMjE;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAM5D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAM9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS,CAQ/E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAE3D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAMjE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAMjE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEvD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAM9D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAMrE;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,UAAU,GACf,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAsB7C"}
@@ -0,0 +1,99 @@
1
+ export function headingDepth(node) {
2
+ if (node.type !== "heading") {
3
+ return undefined;
4
+ }
5
+ return numberAttribute(node, "depth");
6
+ }
7
+ export function linkUrl(node) {
8
+ if (!hasLinkAttributes(node)) {
9
+ return undefined;
10
+ }
11
+ return stringAttribute(node, "url");
12
+ }
13
+ export function linkTitle(node) {
14
+ if (!hasLinkAttributes(node)) {
15
+ return undefined;
16
+ }
17
+ return stringAttribute(node, "title");
18
+ }
19
+ export function codeBlockKind(node) {
20
+ if (node.type !== "code") {
21
+ return undefined;
22
+ }
23
+ const kind = stringAttribute(node, "kind");
24
+ return isCodeBlockKind(kind) ? kind : undefined;
25
+ }
26
+ export function isFencedCodeBlock(node) {
27
+ return codeBlockKind(node) === "fenced";
28
+ }
29
+ export function codeLanguage(node) {
30
+ if (node.type !== "code") {
31
+ return undefined;
32
+ }
33
+ return stringAttribute(node, "lang");
34
+ }
35
+ export function listOrdered(node) {
36
+ if (node.type !== "list") {
37
+ return undefined;
38
+ }
39
+ return booleanAttribute(node, "ordered");
40
+ }
41
+ export function isOrderedList(node) {
42
+ return listOrdered(node) === true;
43
+ }
44
+ export function listStart(node) {
45
+ if (node.type !== "list") {
46
+ return undefined;
47
+ }
48
+ return numberAttribute(node, "start");
49
+ }
50
+ export function listItemChecked(node) {
51
+ if (node.type !== "listItem") {
52
+ return undefined;
53
+ }
54
+ return booleanAttribute(node, "checked");
55
+ }
56
+ export function tableAlignments(node) {
57
+ if (node.type !== "table") {
58
+ return undefined;
59
+ }
60
+ const alignments = node.attributes?.align;
61
+ if (!Array.isArray(alignments)) {
62
+ return undefined;
63
+ }
64
+ const typedAlignments = [];
65
+ for (const alignment of alignments) {
66
+ if (!isTableAlignment(alignment)) {
67
+ return undefined;
68
+ }
69
+ typedAlignments.push(alignment);
70
+ }
71
+ return typedAlignments;
72
+ }
73
+ function hasLinkAttributes(node) {
74
+ return (node.type === "definition" ||
75
+ node.type === "image" ||
76
+ node.type === "link");
77
+ }
78
+ function stringAttribute(node, name) {
79
+ const value = node.attributes?.[name];
80
+ return typeof value === "string" ? value : undefined;
81
+ }
82
+ function numberAttribute(node, name) {
83
+ const value = node.attributes?.[name];
84
+ return typeof value === "number" ? value : undefined;
85
+ }
86
+ function booleanAttribute(node, name) {
87
+ const value = node.attributes?.[name];
88
+ return typeof value === "boolean" ? value : undefined;
89
+ }
90
+ function isCodeBlockKind(value) {
91
+ return value === "fenced" || value === "indented";
92
+ }
93
+ function isTableAlignment(value) {
94
+ return (value === "left" ||
95
+ value === "right" ||
96
+ value === "center" ||
97
+ value === null);
98
+ }
99
+ //# sourceMappingURL=engine-node-attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-node-attributes.js","sourceRoot":"","sources":["../../src/api/engine-node-attributes.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import type { MarkdownDiagnostic } from "./diagnostics.js";
2
- import type { EngineDocument } from "./document.js";
2
+ import type { EngineDocument, EngineDocumentVersion } from "./document.js";
3
3
  import type { ParsedMarkdown } from "./parse.js";
4
4
  export interface NormalizeOptions {
5
+ documentVersion?: EngineDocumentVersion;
5
6
  preserveSourceLocations?: boolean;
6
7
  }
7
8
  export interface NormalizeResult {
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../src/api/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAIjD,MAAM,WAAW,gBAAgB;IAC/B,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACnC;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,gBAAgB,KACvB,eAAe,CAAC;AAErB,eAAO,MAAM,SAAS,EAAE,iBAGtB,CAAC"}
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../src/api/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AASjD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACnC;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,gBAAgB,KACvB,eAAe,CAAC;AAErB,eAAO,MAAM,SAAS,EAAE,iBAMtB,CAAC"}
@@ -1,7 +1,28 @@
1
1
  import { cloneDiagnostics } from "../diagnostics/index.js";
2
+ import { hasOwnProperty } from "../internal/plain-record.js";
2
3
  import { normalizeParsedMarkdown } from "../ir/index.js";
3
4
  export const normalize = (parsed, options = {}) => ({
4
- document: normalizeParsedMarkdown(parsed, options),
5
+ document: normalizeParsedMarkdown(toNormalizationInput(parsed), toNormalizationOptions(options)),
5
6
  diagnostics: cloneDiagnostics(parsed.diagnostics),
6
7
  });
8
+ function toNormalizationInput(parsed) {
9
+ return {
10
+ markdown: parsed.markdown,
11
+ ...(parsed.path !== undefined ? { path: parsed.path } : {}),
12
+ ...(hasOwnProperty(parsed, "frontmatter")
13
+ ? { frontmatter: parsed.frontmatter }
14
+ : {}),
15
+ document: parsed.document,
16
+ };
17
+ }
18
+ function toNormalizationOptions(options) {
19
+ return {
20
+ ...(options.documentVersion !== undefined
21
+ ? { documentVersion: options.documentVersion }
22
+ : {}),
23
+ ...(options.preserveSourceLocations !== undefined
24
+ ? { preserveSourceLocations: options.preserveSourceLocations }
25
+ : {}),
26
+ };
27
+ }
7
28
  //# sourceMappingURL=normalize.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../src/api/normalize.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAgBzD,MAAM,CAAC,MAAM,SAAS,GAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,QAAQ,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC;IAClD,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;CAClD,CAAC,CAAC"}
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../src/api/normalize.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAqBzD,MAAM,CAAC,MAAM,SAAS,GAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,QAAQ,EAAE,uBAAuB,CAC/B,oBAAoB,CAAC,MAAM,CAAC,EAC5B,sBAAsB,CAAC,OAAO,CAAC,CAChC;IACD,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;CAClD,CAAC,CAAC;AAEH,SAAS,oBAAoB,CAAC,MAAsB;IAClD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC;YACvC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;YACrC,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAyB;IAEzB,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE;YAC9C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,uBAAuB,KAAK,SAAS;YAC/C,CAAC,CAAC,EAAE,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
@@ -1,9 +1,13 @@
1
+ import { type EngineCompatibilityMode } from "./compatibility.js";
2
+ import type { SerializableEngineResult } from "./document.js";
1
3
  import type { NormalizeResult } from "./normalize.js";
2
4
  import type { ParseResult } from "./parse.js";
3
5
  import type { ValidationResult } from "./validate.js";
4
- export type SerializableMarkdownEngineResult = ParseResult | NormalizeResult | ValidationResult;
6
+ export type SerializableMarkdownEngineResult = ParseResult | NormalizeResult | ValidationResult | SerializableEngineResult;
7
+ export { EngineCompatibilityError, type EngineCompatibilityMode, } from "./compatibility.js";
5
8
  export interface SerializeOptions {
6
9
  pretty?: boolean;
10
+ compatibilityMode?: EngineCompatibilityMode;
7
11
  }
8
12
  export type SerializeFunction = (result: SerializableMarkdownEngineResult, options?: SerializeOptions) => string;
9
13
  export declare const serialize: SerializeFunction;
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/api/serialize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtD,MAAM,MAAM,gCAAgC,GACxC,WAAW,GACX,eAAe,GACf,gBAAgB,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,MAAM,EAAE,gCAAgC,EACxC,OAAO,CAAC,EAAE,gBAAgB,KACvB,MAAM,CAAC;AAEZ,eAAO,MAAM,SAAS,EAAE,iBAQvB,CAAC"}
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/api/serialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtD,MAAM,MAAM,gCAAgC,GACxC,WAAW,GACX,eAAe,GACf,gBAAgB,GAChB,wBAAwB,CAAC;AAE7B,OAAO,EACL,wBAAwB,EACxB,KAAK,uBAAuB,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;CAC7C;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,MAAM,EAAE,gCAAgC,EACxC,OAAO,CAAC,EAAE,gBAAgB,KACvB,MAAM,CAAC;AAEZ,eAAO,MAAM,SAAS,EAAE,iBAYvB,CAAC"}
@@ -1,18 +1,11 @@
1
- import { isPlainRecord } from "../internal/plain-record.js";
1
+ import { assertCompatibleResultVersion, } from "./compatibility.js";
2
+ import { normalizeStableJsonValue } from "../internal/stable-json.js";
3
+ export { EngineCompatibilityError, } from "./compatibility.js";
2
4
  export const serialize = (result, options = {}) => {
3
- const serialized = JSON.stringify(normalizeSerializableValue(result), null, options.pretty === true ? 2 : 0);
5
+ if (options.compatibilityMode !== undefined) {
6
+ assertCompatibleResultVersion(result, options.compatibilityMode);
7
+ }
8
+ const serialized = JSON.stringify(normalizeStableJsonValue(result), null, options.pretty === true ? 2 : 0);
4
9
  return serialized ?? "null";
5
10
  };
6
- function normalizeSerializableValue(value) {
7
- if (Array.isArray(value)) {
8
- return value.map((item) => normalizeSerializableValue(item));
9
- }
10
- if (isPlainRecord(value)) {
11
- return Object.fromEntries(Object.keys(value)
12
- .filter((key) => value[key] !== undefined)
13
- .sort()
14
- .map((key) => [key, normalizeSerializableValue(value[key])]));
15
- }
16
- return value;
17
- }
18
11
  //# sourceMappingURL=serialize.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/api/serialize.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAgB5D,MAAM,CAAC,MAAM,SAAS,GAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE;IACnE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAC/B,0BAA0B,CAAC,MAAM,CAAC,EAClC,IAAI,EACJ,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAChC,CAAC;IAEF,OAAO,UAAU,IAAI,MAAM,CAAC;AAC9B,CAAC,CAAC;AAEF,SAAS,0BAA0B,CAAC,KAAc;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACf,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;aACzC,IAAI,EAAE;aACN,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,0BAA0B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/D,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/api/serialize.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,GAE9B,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAQtE,OAAO,EACL,wBAAwB,GAEzB,MAAM,oBAAoB,CAAC;AAY5B,MAAM,CAAC,MAAM,SAAS,GAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE;IACnE,IAAI,OAAO,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC5C,6BAA6B,CAAC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAC/B,wBAAwB,CAAC,MAAM,CAAC,EAChC,IAAI,EACJ,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAChC,CAAC;IAEF,OAAO,UAAU,IAAI,MAAM,CAAC;AAC9B,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { EngineDocumentVersion } from "../api/contracts.js";
2
+ import { type ValidateCliArgs } from "./validate-args.js";
3
+ export type CliArgsResult = {
4
+ kind: "normalize";
5
+ documentVersion: EngineDocumentVersion;
6
+ targetPath: string;
7
+ } | ValidateCliArgs | {
8
+ kind: "help";
9
+ usage: string;
10
+ } | {
11
+ kind: "error";
12
+ message: string;
13
+ usage: string;
14
+ };
15
+ export declare const normalizeCliUsage: string;
16
+ export declare const cliUsage: string;
17
+ export declare function parseCliArgs(args: string[]): CliArgsResult;
18
+ //# sourceMappingURL=args.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAOjE,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAC;AAY5B,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,eAAe,EAAE,qBAAqB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;CACpB,GACD,eAAe,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,eAAO,MAAM,iBAAiB,QAU7B,CAAC;AAEF,eAAO,MAAM,QAAQ,QACD,CAAC;AAErB,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,aAAa,CAM1D"}