@alexlit/lint-kit 216.1.0 → 217.0.1

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 (436) hide show
  1. package/README.md +2 -2
  2. package/package.json +1 -1
  3. package/packages/config-eslint/README.md +10 -0
  4. package/packages/config-eslint/package.json +9 -8
  5. package/packages/config-eslint/plugins/tailwindcss.js +1 -0
  6. package/packages/config-eslint/plugins/vue.js +2 -0
  7. package/packages/config-markdownlint/package.json +2 -2
  8. package/packages/config-prettier/package.json +2 -2
  9. package/packages/config-prettier/plugins/tailwindcss.js +1 -0
  10. package/packages/config-stylelint/package.json +3 -3
  11. package/packages/config-markdownlint/node_modules/ansi-regex/index.d.ts +0 -33
  12. package/packages/config-markdownlint/node_modules/ansi-regex/index.js +0 -15
  13. package/packages/config-markdownlint/node_modules/ansi-regex/license +0 -9
  14. package/packages/config-markdownlint/node_modules/ansi-regex/package.json +0 -61
  15. package/packages/config-markdownlint/node_modules/ansi-regex/readme.md +0 -66
  16. package/packages/config-markdownlint/node_modules/markdownlint/CHANGELOG.md +0 -553
  17. package/packages/config-markdownlint/node_modules/markdownlint/CONTRIBUTING.md +0 -77
  18. package/packages/config-markdownlint/node_modules/markdownlint/LICENSE +0 -21
  19. package/packages/config-markdownlint/node_modules/markdownlint/README.md +0 -1112
  20. package/packages/config-markdownlint/node_modules/markdownlint/doc/CustomRules.md +0 -196
  21. package/packages/config-markdownlint/node_modules/markdownlint/doc/Prettier.md +0 -27
  22. package/packages/config-markdownlint/node_modules/markdownlint/doc/ReleaseProcess.md +0 -20
  23. package/packages/config-markdownlint/node_modules/markdownlint/doc/Rules.md +0 -2909
  24. package/packages/config-markdownlint/node_modules/markdownlint/doc/md001.md +0 -51
  25. package/packages/config-markdownlint/node_modules/markdownlint/doc/md003.md +0 -59
  26. package/packages/config-markdownlint/node_modules/markdownlint/doc/md004.md +0 -50
  27. package/packages/config-markdownlint/node_modules/markdownlint/doc/md005.md +0 -53
  28. package/packages/config-markdownlint/node_modules/markdownlint/doc/md007.md +0 -52
  29. package/packages/config-markdownlint/node_modules/markdownlint/doc/md009.md +0 -50
  30. package/packages/config-markdownlint/node_modules/markdownlint/doc/md010.md +0 -61
  31. package/packages/config-markdownlint/node_modules/markdownlint/doc/md011.md +0 -30
  32. package/packages/config-markdownlint/node_modules/markdownlint/doc/md012.md +0 -38
  33. package/packages/config-markdownlint/node_modules/markdownlint/doc/md013.md +0 -58
  34. package/packages/config-markdownlint/node_modules/markdownlint/doc/md014.md +0 -54
  35. package/packages/config-markdownlint/node_modules/markdownlint/doc/md018.md +0 -27
  36. package/packages/config-markdownlint/node_modules/markdownlint/doc/md019.md +0 -28
  37. package/packages/config-markdownlint/node_modules/markdownlint/doc/md020.md +0 -29
  38. package/packages/config-markdownlint/node_modules/markdownlint/doc/md021.md +0 -31
  39. package/packages/config-markdownlint/node_modules/markdownlint/doc/md022.md +0 -67
  40. package/packages/config-markdownlint/node_modules/markdownlint/doc/md023.md +0 -33
  41. package/packages/config-markdownlint/node_modules/markdownlint/doc/md024.md +0 -44
  42. package/packages/config-markdownlint/node_modules/markdownlint/doc/md025.md +0 -49
  43. package/packages/config-markdownlint/node_modules/markdownlint/doc/md026.md +0 -40
  44. package/packages/config-markdownlint/node_modules/markdownlint/doc/md027.md +0 -32
  45. package/packages/config-markdownlint/node_modules/markdownlint/doc/md028.md +0 -44
  46. package/packages/config-markdownlint/node_modules/markdownlint/doc/md029.md +0 -110
  47. package/packages/config-markdownlint/node_modules/markdownlint/doc/md030.md +0 -82
  48. package/packages/config-markdownlint/node_modules/markdownlint/doc/md031.md +0 -50
  49. package/packages/config-markdownlint/node_modules/markdownlint/doc/md032.md +0 -55
  50. package/packages/config-markdownlint/node_modules/markdownlint/doc/md033.md +0 -33
  51. package/packages/config-markdownlint/node_modules/markdownlint/doc/md034.md +0 -55
  52. package/packages/config-markdownlint/node_modules/markdownlint/doc/md035.md +0 -44
  53. package/packages/config-markdownlint/node_modules/markdownlint/doc/md036.md +0 -45
  54. package/packages/config-markdownlint/node_modules/markdownlint/doc/md037.md +0 -37
  55. package/packages/config-markdownlint/node_modules/markdownlint/doc/md038.md +0 -52
  56. package/packages/config-markdownlint/node_modules/markdownlint/doc/md039.md +0 -21
  57. package/packages/config-markdownlint/node_modules/markdownlint/doc/md040.md +0 -52
  58. package/packages/config-markdownlint/node_modules/markdownlint/doc/md041.md +0 -64
  59. package/packages/config-markdownlint/node_modules/markdownlint/doc/md042.md +0 -38
  60. package/packages/config-markdownlint/node_modules/markdownlint/doc/md043.md +0 -125
  61. package/packages/config-markdownlint/node_modules/markdownlint/doc/md044.md +0 -45
  62. package/packages/config-markdownlint/node_modules/markdownlint/doc/md045.md +0 -48
  63. package/packages/config-markdownlint/node_modules/markdownlint/doc/md046.md +0 -40
  64. package/packages/config-markdownlint/node_modules/markdownlint/doc/md047.md +0 -34
  65. package/packages/config-markdownlint/node_modules/markdownlint/doc/md048.md +0 -42
  66. package/packages/config-markdownlint/node_modules/markdownlint/doc/md049.md +0 -36
  67. package/packages/config-markdownlint/node_modules/markdownlint/doc/md050.md +0 -35
  68. package/packages/config-markdownlint/node_modules/markdownlint/doc/md051.md +0 -117
  69. package/packages/config-markdownlint/node_modules/markdownlint/doc/md052.md +0 -52
  70. package/packages/config-markdownlint/node_modules/markdownlint/doc/md053.md +0 -38
  71. package/packages/config-markdownlint/node_modules/markdownlint/doc/md054.md +0 -100
  72. package/packages/config-markdownlint/node_modules/markdownlint/doc/md055.md +0 -58
  73. package/packages/config-markdownlint/node_modules/markdownlint/doc/md056.md +0 -37
  74. package/packages/config-markdownlint/node_modules/markdownlint/doc/md058.md +0 -48
  75. package/packages/config-markdownlint/node_modules/markdownlint/doc/md059.md +0 -33
  76. package/packages/config-markdownlint/node_modules/markdownlint/doc/md060.md +0 -131
  77. package/packages/config-markdownlint/node_modules/markdownlint/helpers/LICENSE +0 -21
  78. package/packages/config-markdownlint/node_modules/markdownlint/helpers/README.md +0 -29
  79. package/packages/config-markdownlint/node_modules/markdownlint/helpers/helpers.cjs +0 -711
  80. package/packages/config-markdownlint/node_modules/markdownlint/helpers/micromark-helpers.cjs +0 -328
  81. package/packages/config-markdownlint/node_modules/markdownlint/helpers/package.json +0 -22
  82. package/packages/config-markdownlint/node_modules/markdownlint/helpers/shared.cjs +0 -16
  83. package/packages/config-markdownlint/node_modules/markdownlint/lib/cache.mjs +0 -81
  84. package/packages/config-markdownlint/node_modules/markdownlint/lib/configuration-strict.d.ts +0 -2429
  85. package/packages/config-markdownlint/node_modules/markdownlint/lib/configuration.d.ts +0 -8
  86. package/packages/config-markdownlint/node_modules/markdownlint/lib/constants.mjs +0 -14
  87. package/packages/config-markdownlint/node_modules/markdownlint/lib/defer-require.cjs +0 -19
  88. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-async.d.mts +0 -1
  89. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-async.mjs +0 -3
  90. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-promise.d.mts +0 -1
  91. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-promise.mjs +0 -3
  92. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-sync.d.mts +0 -1
  93. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-sync.mjs +0 -3
  94. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports.d.mts +0 -58
  95. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports.mjs +0 -33
  96. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownit.cjs +0 -178
  97. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.d.mts +0 -757
  98. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.mjs +0 -1588
  99. package/packages/config-markdownlint/node_modules/markdownlint/lib/md001.mjs +0 -32
  100. package/packages/config-markdownlint/node_modules/markdownlint/lib/md003.mjs +0 -47
  101. package/packages/config-markdownlint/node_modules/markdownlint/lib/md004.mjs +0 -73
  102. package/packages/config-markdownlint/node_modules/markdownlint/lib/md005.mjs +0 -69
  103. package/packages/config-markdownlint/node_modules/markdownlint/lib/md007.mjs +0 -84
  104. package/packages/config-markdownlint/node_modules/markdownlint/lib/md009.mjs +0 -95
  105. package/packages/config-markdownlint/node_modules/markdownlint/lib/md010.mjs +0 -78
  106. package/packages/config-markdownlint/node_modules/markdownlint/lib/md011.mjs +0 -59
  107. package/packages/config-markdownlint/node_modules/markdownlint/lib/md012.mjs +0 -40
  108. package/packages/config-markdownlint/node_modules/markdownlint/lib/md013.mjs +0 -95
  109. package/packages/config-markdownlint/node_modules/markdownlint/lib/md014.mjs +0 -47
  110. package/packages/config-markdownlint/node_modules/markdownlint/lib/md018.mjs +0 -43
  111. package/packages/config-markdownlint/node_modules/markdownlint/lib/md019-md021.mjs +0 -78
  112. package/packages/config-markdownlint/node_modules/markdownlint/lib/md020.mjs +0 -68
  113. package/packages/config-markdownlint/node_modules/markdownlint/lib/md022.mjs +0 -103
  114. package/packages/config-markdownlint/node_modules/markdownlint/lib/md023.mjs +0 -37
  115. package/packages/config-markdownlint/node_modules/markdownlint/lib/md024.mjs +0 -45
  116. package/packages/config-markdownlint/node_modules/markdownlint/lib/md025.mjs +0 -45
  117. package/packages/config-markdownlint/node_modules/markdownlint/lib/md026.mjs +0 -46
  118. package/packages/config-markdownlint/node_modules/markdownlint/lib/md027.mjs +0 -50
  119. package/packages/config-markdownlint/node_modules/markdownlint/lib/md028.mjs +0 -38
  120. package/packages/config-markdownlint/node_modules/markdownlint/lib/md029.mjs +0 -95
  121. package/packages/config-markdownlint/node_modules/markdownlint/lib/md030.mjs +0 -57
  122. package/packages/config-markdownlint/node_modules/markdownlint/lib/md031.mjs +0 -61
  123. package/packages/config-markdownlint/node_modules/markdownlint/lib/md032.mjs +0 -79
  124. package/packages/config-markdownlint/node_modules/markdownlint/lib/md033.mjs +0 -46
  125. package/packages/config-markdownlint/node_modules/markdownlint/lib/md034.mjs +0 -92
  126. package/packages/config-markdownlint/node_modules/markdownlint/lib/md035.mjs +0 -23
  127. package/packages/config-markdownlint/node_modules/markdownlint/lib/md036.mjs +0 -55
  128. package/packages/config-markdownlint/node_modules/markdownlint/lib/md037.mjs +0 -93
  129. package/packages/config-markdownlint/node_modules/markdownlint/lib/md038.mjs +0 -73
  130. package/packages/config-markdownlint/node_modules/markdownlint/lib/md039.mjs +0 -63
  131. package/packages/config-markdownlint/node_modules/markdownlint/lib/md040.mjs +0 -32
  132. package/packages/config-markdownlint/node_modules/markdownlint/lib/md041.mjs +0 -71
  133. package/packages/config-markdownlint/node_modules/markdownlint/lib/md042.mjs +0 -58
  134. package/packages/config-markdownlint/node_modules/markdownlint/lib/md043.mjs +0 -126
  135. package/packages/config-markdownlint/node_modules/markdownlint/lib/md044.mjs +0 -110
  136. package/packages/config-markdownlint/node_modules/markdownlint/lib/md045.mjs +0 -61
  137. package/packages/config-markdownlint/node_modules/markdownlint/lib/md046.mjs +0 -31
  138. package/packages/config-markdownlint/node_modules/markdownlint/lib/md047.mjs +0 -28
  139. package/packages/config-markdownlint/node_modules/markdownlint/lib/md048.mjs +0 -45
  140. package/packages/config-markdownlint/node_modules/markdownlint/lib/md049-md050.mjs +0 -115
  141. package/packages/config-markdownlint/node_modules/markdownlint/lib/md051.mjs +0 -173
  142. package/packages/config-markdownlint/node_modules/markdownlint/lib/md052.mjs +0 -40
  143. package/packages/config-markdownlint/node_modules/markdownlint/lib/md053.mjs +0 -60
  144. package/packages/config-markdownlint/node_modules/markdownlint/lib/md054.mjs +0 -122
  145. package/packages/config-markdownlint/node_modules/markdownlint/lib/md055.mjs +0 -82
  146. package/packages/config-markdownlint/node_modules/markdownlint/lib/md056.mjs +0 -50
  147. package/packages/config-markdownlint/node_modules/markdownlint/lib/md058.mjs +0 -57
  148. package/packages/config-markdownlint/node_modules/markdownlint/lib/md059.mjs +0 -71
  149. package/packages/config-markdownlint/node_modules/markdownlint/lib/md060.mjs +0 -229
  150. package/packages/config-markdownlint/node_modules/markdownlint/lib/micromark-parse.mjs +0 -338
  151. package/packages/config-markdownlint/node_modules/markdownlint/lib/micromark-types.d.mts +0 -11
  152. package/packages/config-markdownlint/node_modules/markdownlint/lib/node-imports-browser.mjs +0 -22
  153. package/packages/config-markdownlint/node_modules/markdownlint/lib/node-imports-node.mjs +0 -11
  154. package/packages/config-markdownlint/node_modules/markdownlint/lib/parse-configuration.mjs +0 -47
  155. package/packages/config-markdownlint/node_modules/markdownlint/lib/resolve-module.cjs +0 -53
  156. package/packages/config-markdownlint/node_modules/markdownlint/lib/resolve-module.d.cts +0 -39
  157. package/packages/config-markdownlint/node_modules/markdownlint/lib/rules.mjs +0 -122
  158. package/packages/config-markdownlint/node_modules/markdownlint/lib/types.d.mts +0 -13
  159. package/packages/config-markdownlint/node_modules/markdownlint/package.json +0 -119
  160. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.jsonc +0 -349
  161. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.yaml +0 -310
  162. package/packages/config-markdownlint/node_modules/markdownlint/schema/ValidatingConfiguration.md +0 -26
  163. package/packages/config-markdownlint/node_modules/markdownlint/schema/markdownlint-config-schema-strict.json +0 -5146
  164. package/packages/config-markdownlint/node_modules/markdownlint/schema/markdownlint-config-schema.json +0 -5151
  165. package/packages/config-markdownlint/node_modules/markdownlint/style/all.json +0 -5
  166. package/packages/config-markdownlint/node_modules/markdownlint/style/cirosantilli.json +0 -22
  167. package/packages/config-markdownlint/node_modules/markdownlint/style/prettier.json +0 -27
  168. package/packages/config-markdownlint/node_modules/markdownlint/style/relaxed.json +0 -12
  169. package/packages/config-markdownlint/node_modules/micromark/dev/index.d.ts +0 -82
  170. package/packages/config-markdownlint/node_modules/micromark/dev/index.d.ts.map +0 -1
  171. package/packages/config-markdownlint/node_modules/micromark/dev/index.js +0 -68
  172. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.d.ts +0 -16
  173. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.d.ts.map +0 -1
  174. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.js +0 -1162
  175. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.d.ts +0 -73
  176. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.d.ts.map +0 -1
  177. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.js +0 -101
  178. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.d.ts +0 -46
  179. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.d.ts.map +0 -1
  180. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.js +0 -718
  181. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.d.ts +0 -4
  182. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.d.ts.map +0 -1
  183. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.js +0 -99
  184. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.d.ts +0 -10
  185. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.d.ts.map +0 -1
  186. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.js +0 -449
  187. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.d.ts +0 -4
  188. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.d.ts.map +0 -1
  189. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.js +0 -86
  190. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.d.ts +0 -8
  191. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.d.ts.map +0 -1
  192. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.js +0 -248
  193. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.d.ts +0 -10
  194. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.d.ts.map +0 -1
  195. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.js +0 -58
  196. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.d.ts +0 -9
  197. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.d.ts.map +0 -1
  198. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.js +0 -19
  199. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.d.ts +0 -13
  200. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.d.ts.map +0 -1
  201. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.js +0 -139
  202. package/packages/config-markdownlint/node_modules/micromark/dev/stream.d.ts +0 -35
  203. package/packages/config-markdownlint/node_modules/micromark/dev/stream.d.ts.map +0 -1
  204. package/packages/config-markdownlint/node_modules/micromark/dev/stream.js +0 -270
  205. package/packages/config-markdownlint/node_modules/micromark/index.d.ts +0 -82
  206. package/packages/config-markdownlint/node_modules/micromark/index.d.ts.map +0 -1
  207. package/packages/config-markdownlint/node_modules/micromark/index.js +0 -60
  208. package/packages/config-markdownlint/node_modules/micromark/lib/compile.d.ts +0 -16
  209. package/packages/config-markdownlint/node_modules/micromark/lib/compile.d.ts.map +0 -1
  210. package/packages/config-markdownlint/node_modules/micromark/lib/compile.js +0 -1068
  211. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.d.ts +0 -73
  212. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.d.ts.map +0 -1
  213. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.js +0 -85
  214. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.d.ts +0 -46
  215. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.d.ts.map +0 -1
  216. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.js +0 -613
  217. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.d.ts +0 -4
  218. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.d.ts.map +0 -1
  219. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.js +0 -79
  220. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.d.ts +0 -10
  221. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.d.ts.map +0 -1
  222. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.js +0 -370
  223. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.d.ts +0 -4
  224. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.d.ts.map +0 -1
  225. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.js +0 -58
  226. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.d.ts +0 -8
  227. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.d.ts.map +0 -1
  228. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.js +0 -216
  229. package/packages/config-markdownlint/node_modules/micromark/lib/parse.d.ts +0 -10
  230. package/packages/config-markdownlint/node_modules/micromark/lib/parse.d.ts.map +0 -1
  231. package/packages/config-markdownlint/node_modules/micromark/lib/parse.js +0 -56
  232. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.d.ts +0 -9
  233. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.d.ts.map +0 -1
  234. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.js +0 -18
  235. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.d.ts +0 -13
  236. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.d.ts.map +0 -1
  237. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.js +0 -112
  238. package/packages/config-markdownlint/node_modules/micromark/license +0 -22
  239. package/packages/config-markdownlint/node_modules/micromark/package.json +0 -87
  240. package/packages/config-markdownlint/node_modules/micromark/readme.md +0 -488
  241. package/packages/config-markdownlint/node_modules/micromark/stream.d.ts +0 -35
  242. package/packages/config-markdownlint/node_modules/micromark/stream.d.ts.map +0 -1
  243. package/packages/config-markdownlint/node_modules/micromark/stream.js +0 -256
  244. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.d.ts +0 -23
  245. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.d.ts.map +0 -1
  246. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.js +0 -22
  247. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts +0 -4
  248. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts.map +0 -1
  249. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.js +0 -294
  250. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts +0 -4
  251. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts.map +0 -1
  252. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.js +0 -269
  253. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts +0 -4
  254. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts.map +0 -1
  255. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.js +0 -62
  256. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts +0 -4
  257. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts.map +0 -1
  258. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.js +0 -162
  259. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts +0 -4
  260. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts.map +0 -1
  261. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.js +0 -69
  262. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts +0 -4
  263. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts.map +0 -1
  264. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.js +0 -166
  265. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts +0 -4
  266. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts.map +0 -1
  267. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.js +0 -472
  268. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts +0 -4
  269. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts.map +0 -1
  270. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.js +0 -178
  271. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts +0 -4
  272. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts.map +0 -1
  273. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.js +0 -257
  274. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.d.ts +0 -7
  275. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.d.ts.map +0 -1
  276. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.js +0 -185
  277. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts +0 -4
  278. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts.map +0 -1
  279. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.js +0 -295
  280. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts +0 -4
  281. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts.map +0 -1
  282. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.js +0 -65
  283. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts +0 -4
  284. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts.map +0 -1
  285. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.js +0 -229
  286. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts +0 -4
  287. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts.map +0 -1
  288. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.js +0 -938
  289. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts +0 -4
  290. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts.map +0 -1
  291. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.js +0 -783
  292. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts +0 -4
  293. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts.map +0 -1
  294. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.js +0 -658
  295. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts +0 -4
  296. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts.map +0 -1
  297. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.js +0 -119
  298. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts +0 -4
  299. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts.map +0 -1
  300. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.js +0 -71
  301. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts +0 -4
  302. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts.map +0 -1
  303. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.js +0 -34
  304. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.d.ts +0 -4
  305. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.d.ts.map +0 -1
  306. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.js +0 -306
  307. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts +0 -4
  308. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts.map +0 -1
  309. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.js +0 -67
  310. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts +0 -4
  311. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts.map +0 -1
  312. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.js +0 -213
  313. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts +0 -4
  314. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts.map +0 -1
  315. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.js +0 -120
  316. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.d.ts +0 -23
  317. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.d.ts.map +0 -1
  318. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.js +0 -22
  319. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.d.ts +0 -4
  320. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.d.ts.map +0 -1
  321. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.js +0 -231
  322. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.d.ts +0 -4
  323. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.d.ts.map +0 -1
  324. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.js +0 -233
  325. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.d.ts +0 -4
  326. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.d.ts.map +0 -1
  327. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.js +0 -61
  328. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.d.ts +0 -4
  329. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.d.ts.map +0 -1
  330. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.js +0 -143
  331. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.d.ts +0 -4
  332. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.d.ts.map +0 -1
  333. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.js +0 -64
  334. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.d.ts +0 -4
  335. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.d.ts.map +0 -1
  336. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.js +0 -149
  337. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts +0 -4
  338. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts.map +0 -1
  339. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.js +0 -422
  340. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.d.ts +0 -4
  341. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.d.ts.map +0 -1
  342. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.js +0 -159
  343. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.d.ts +0 -4
  344. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.d.ts.map +0 -1
  345. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.js +0 -225
  346. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.d.ts +0 -7
  347. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.d.ts.map +0 -1
  348. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.js +0 -163
  349. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.d.ts +0 -4
  350. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.d.ts.map +0 -1
  351. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.js +0 -254
  352. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts +0 -4
  353. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts.map +0 -1
  354. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.js +0 -60
  355. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts +0 -4
  356. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts.map +0 -1
  357. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.js +0 -191
  358. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.d.ts +0 -4
  359. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.d.ts.map +0 -1
  360. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.js +0 -827
  361. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.d.ts +0 -4
  362. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.d.ts.map +0 -1
  363. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.js +0 -678
  364. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.d.ts +0 -4
  365. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.d.ts.map +0 -1
  366. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.js +0 -561
  367. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts +0 -4
  368. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts.map +0 -1
  369. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.js +0 -110
  370. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts +0 -4
  371. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts.map +0 -1
  372. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.js +0 -63
  373. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.d.ts +0 -4
  374. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.d.ts.map +0 -1
  375. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.js +0 -33
  376. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.d.ts +0 -4
  377. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.d.ts.map +0 -1
  378. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.js +0 -213
  379. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts +0 -4
  380. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts.map +0 -1
  381. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.js +0 -61
  382. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts +0 -4
  383. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts.map +0 -1
  384. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.js +0 -187
  385. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts +0 -4
  386. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts.map +0 -1
  387. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.js +0 -102
  388. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/license +0 -22
  389. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/package.json +0 -62
  390. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/readme.md +0 -171
  391. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/index.d.ts +0 -55
  392. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/index.js +0 -2
  393. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts +0 -51
  394. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts.map +0 -1
  395. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.js +0 -231
  396. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts +0 -11
  397. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts.map +0 -1
  398. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.js +0 -153
  399. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts +0 -14
  400. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts.map +0 -1
  401. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.js +0 -64
  402. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts +0 -18
  403. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts.map +0 -1
  404. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.js +0 -964
  405. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/index.d.ts +0 -55
  406. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/index.js +0 -2
  407. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts +0 -51
  408. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts.map +0 -1
  409. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.js +0 -222
  410. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.d.ts +0 -11
  411. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.d.ts.map +0 -1
  412. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.js +0 -135
  413. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.d.ts +0 -14
  414. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.d.ts.map +0 -1
  415. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.js +0 -52
  416. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts +0 -18
  417. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts.map +0 -1
  418. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.js +0 -846
  419. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/license +0 -22
  420. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/package.json +0 -86
  421. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/readme.md +0 -515
  422. package/packages/config-markdownlint/node_modules/micromark-util-types/index.d.ts +0 -1315
  423. package/packages/config-markdownlint/node_modules/micromark-util-types/index.js +0 -2
  424. package/packages/config-markdownlint/node_modules/micromark-util-types/license +0 -22
  425. package/packages/config-markdownlint/node_modules/micromark-util-types/package.json +0 -37
  426. package/packages/config-markdownlint/node_modules/micromark-util-types/readme.md +0 -151
  427. package/packages/config-markdownlint/node_modules/string-width/index.d.ts +0 -39
  428. package/packages/config-markdownlint/node_modules/string-width/index.js +0 -203
  429. package/packages/config-markdownlint/node_modules/string-width/license +0 -9
  430. package/packages/config-markdownlint/node_modules/string-width/package.json +0 -65
  431. package/packages/config-markdownlint/node_modules/string-width/readme.md +0 -66
  432. package/packages/config-markdownlint/node_modules/strip-ansi/index.d.ts +0 -15
  433. package/packages/config-markdownlint/node_modules/strip-ansi/index.js +0 -19
  434. package/packages/config-markdownlint/node_modules/strip-ansi/license +0 -9
  435. package/packages/config-markdownlint/node_modules/strip-ansi/package.json +0 -59
  436. package/packages/config-markdownlint/node_modules/strip-ansi/readme.md +0 -37
@@ -1,1068 +0,0 @@
1
- /**
2
- * While micromark is a lexer/tokenizer, the common case of going from markdown
3
- * to html is currently built in as this module, even though the parts can be
4
- * used separately to build ASTs, CSTs, or many other output formats.
5
- *
6
- * Having an HTML compiler built in is useful because it allows us to check for
7
- * compliancy to CommonMark, the de facto norm of markdown, specified in roughly
8
- * 600 input/output cases.
9
- *
10
- * This module has an interface that accepts lists of events instead of the
11
- * whole at once, however, because markdown can’t be truly streaming, we buffer
12
- * events before processing and outputting the final result.
13
- */
14
-
15
- /**
16
- * @import {
17
- * CompileContext,
18
- * CompileData,
19
- * CompileOptions,
20
- * Compile,
21
- * Definition,
22
- * Event,
23
- * Handle,
24
- * HtmlExtension,
25
- * LineEnding,
26
- * NormalizedHtmlExtension,
27
- * Token
28
- * } from 'micromark-util-types'
29
- */
30
-
31
- /**
32
- * @typedef Media
33
- * @property {boolean | undefined} [image]
34
- * @property {string | undefined} [labelId]
35
- * @property {string | undefined} [label]
36
- * @property {string | undefined} [referenceId]
37
- * @property {string | undefined} [destination]
38
- * @property {string | undefined} [title]
39
- */
40
-
41
- import { decodeNamedCharacterReference } from 'decode-named-character-reference';
42
- import { push } from 'micromark-util-chunked';
43
- import { combineHtmlExtensions } from 'micromark-util-combine-extensions';
44
- import { decodeNumericCharacterReference } from 'micromark-util-decode-numeric-character-reference';
45
- import { encode as _encode } from 'micromark-util-encode';
46
- import { normalizeIdentifier } from 'micromark-util-normalize-identifier';
47
- import { sanitizeUri } from 'micromark-util-sanitize-uri';
48
- const hasOwnProperty = {}.hasOwnProperty;
49
-
50
- /**
51
- * These two are allowlists of safe protocols for full URLs in respectively the
52
- * `href` (on `<a>`) and `src` (on `<img>`) attributes.
53
- * They are based on what is allowed on GitHub,
54
- * <https://github.com/syntax-tree/hast-util-sanitize/blob/9275b21/lib/github.json#L31>
55
- */
56
- const protocolHref = /^(https?|ircs?|mailto|xmpp)$/i;
57
- const protocolSource = /^https?$/i;
58
-
59
- /**
60
- * @param {CompileOptions | null | undefined} [options]
61
- * @returns {Compile}
62
- */
63
- export function compile(options) {
64
- const settings = options || {};
65
-
66
- /**
67
- * Tags is needed because according to markdown, links and emphasis and
68
- * whatnot can exist in images, however, as HTML doesn’t allow content in
69
- * images, the tags are ignored in the `alt` attribute, but the content
70
- * remains.
71
- *
72
- * @type {boolean | undefined}
73
- */
74
- let tags = true;
75
-
76
- /**
77
- * An object to track identifiers to media (URLs and titles) defined with
78
- * definitions.
79
- *
80
- * @type {Record<string, Definition>}
81
- */
82
- const definitions = {};
83
-
84
- /**
85
- * A lot of the handlers need to capture some of the output data, modify it
86
- * somehow, and then deal with it.
87
- * We do that by tracking a stack of buffers, that can be opened (with
88
- * `buffer`) and closed (with `resume`) to access them.
89
- *
90
- * @type {Array<Array<string>>}
91
- */
92
- const buffers = [[]];
93
-
94
- /**
95
- * As we can have links in images and the other way around, where the deepest
96
- * ones are closed first, we need to track which one we’re in.
97
- *
98
- * @type {Array<Media>}
99
- */
100
- const mediaStack = [];
101
-
102
- /**
103
- * Same as `mediaStack` for tightness, which is specific to lists.
104
- * We need to track if we’re currently in a tight or loose container.
105
- *
106
- * @type {Array<boolean>}
107
- */
108
- const tightStack = [];
109
-
110
- /** @type {HtmlExtension} */
111
- const defaultHandlers = {
112
- enter: {
113
- blockQuote: onenterblockquote,
114
- codeFenced: onentercodefenced,
115
- codeFencedFenceInfo: buffer,
116
- codeFencedFenceMeta: buffer,
117
- codeIndented: onentercodeindented,
118
- codeText: onentercodetext,
119
- content: onentercontent,
120
- definition: onenterdefinition,
121
- definitionDestinationString: onenterdefinitiondestinationstring,
122
- definitionLabelString: buffer,
123
- definitionTitleString: buffer,
124
- emphasis: onenteremphasis,
125
- htmlFlow: onenterhtmlflow,
126
- htmlText: onenterhtml,
127
- image: onenterimage,
128
- label: buffer,
129
- link: onenterlink,
130
- listItemMarker: onenterlistitemmarker,
131
- listItemValue: onenterlistitemvalue,
132
- listOrdered: onenterlistordered,
133
- listUnordered: onenterlistunordered,
134
- paragraph: onenterparagraph,
135
- reference: buffer,
136
- resource: onenterresource,
137
- resourceDestinationString: onenterresourcedestinationstring,
138
- resourceTitleString: buffer,
139
- setextHeading: onentersetextheading,
140
- strong: onenterstrong
141
- },
142
- exit: {
143
- atxHeading: onexitatxheading,
144
- atxHeadingSequence: onexitatxheadingsequence,
145
- autolinkEmail: onexitautolinkemail,
146
- autolinkProtocol: onexitautolinkprotocol,
147
- blockQuote: onexitblockquote,
148
- characterEscapeValue: onexitdata,
149
- characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,
150
- characterReferenceMarkerNumeric: onexitcharacterreferencemarker,
151
- characterReferenceValue: onexitcharacterreferencevalue,
152
- codeFenced: onexitflowcode,
153
- codeFencedFence: onexitcodefencedfence,
154
- codeFencedFenceInfo: onexitcodefencedfenceinfo,
155
- codeFencedFenceMeta: onresumedrop,
156
- codeFlowValue: onexitcodeflowvalue,
157
- codeIndented: onexitflowcode,
158
- codeText: onexitcodetext,
159
- codeTextData: onexitdata,
160
- data: onexitdata,
161
- definition: onexitdefinition,
162
- definitionDestinationString: onexitdefinitiondestinationstring,
163
- definitionLabelString: onexitdefinitionlabelstring,
164
- definitionTitleString: onexitdefinitiontitlestring,
165
- emphasis: onexitemphasis,
166
- hardBreakEscape: onexithardbreak,
167
- hardBreakTrailing: onexithardbreak,
168
- htmlFlow: onexithtml,
169
- htmlFlowData: onexitdata,
170
- htmlText: onexithtml,
171
- htmlTextData: onexitdata,
172
- image: onexitmedia,
173
- label: onexitlabel,
174
- labelText: onexitlabeltext,
175
- lineEnding: onexitlineending,
176
- link: onexitmedia,
177
- listOrdered: onexitlistordered,
178
- listUnordered: onexitlistunordered,
179
- paragraph: onexitparagraph,
180
- reference: onresumedrop,
181
- referenceString: onexitreferencestring,
182
- resource: onresumedrop,
183
- resourceDestinationString: onexitresourcedestinationstring,
184
- resourceTitleString: onexitresourcetitlestring,
185
- setextHeading: onexitsetextheading,
186
- setextHeadingLineSequence: onexitsetextheadinglinesequence,
187
- setextHeadingText: onexitsetextheadingtext,
188
- strong: onexitstrong,
189
- thematicBreak: onexitthematicbreak
190
- }
191
- };
192
-
193
- /**
194
- * Combine the HTML extensions with the default handlers.
195
- * An HTML extension is an object whose fields are either `enter` or `exit`
196
- * (reflecting whether a token is entered or exited).
197
- * The values at such objects are names of tokens mapping to handlers.
198
- * Handlers are called, respectively when a token is opener or closed, with
199
- * that token, and a context as `this`.
200
- */
201
- const handlers = /** @type {NormalizedHtmlExtension} */
202
- combineHtmlExtensions([defaultHandlers, ...(settings.htmlExtensions || [])]);
203
-
204
- /**
205
- * Handlers do often need to keep track of some state.
206
- * That state is provided here as a key-value store (an object).
207
- *
208
- * @type {CompileData}
209
- */
210
- const data = {
211
- definitions,
212
- tightStack
213
- };
214
-
215
- /**
216
- * The context for handlers references a couple of useful functions.
217
- * In handlers from extensions, those can be accessed at `this`.
218
- * For the handlers here, they can be accessed directly.
219
- *
220
- * @type {Omit<CompileContext, 'sliceSerialize'>}
221
- */
222
- const context = {
223
- buffer,
224
- encode,
225
- getData,
226
- lineEndingIfNeeded,
227
- options: settings,
228
- raw,
229
- resume,
230
- setData,
231
- tag
232
- };
233
-
234
- /**
235
- * Generally, micromark copies line endings (`'\r'`, `'\n'`, `'\r\n'`) in the
236
- * markdown document over to the compiled HTML.
237
- * In some cases, such as `> a`, CommonMark requires that extra line endings
238
- * are added: `<blockquote>\n<p>a</p>\n</blockquote>`.
239
- * This variable hold the default line ending when given (or `undefined`),
240
- * and in the latter case will be updated to the first found line ending if
241
- * there is one.
242
- */
243
- let lineEndingStyle = settings.defaultLineEnding;
244
-
245
- // Return the function that handles a slice of events.
246
- return compile;
247
-
248
- /**
249
- * Deal w/ a slice of events.
250
- * Return either the empty string if there’s nothing of note to return, or the
251
- * result when done.
252
- *
253
- * @param {ReadonlyArray<Event>} events
254
- * @returns {string}
255
- */
256
- function compile(events) {
257
- let index = -1;
258
- let start = 0;
259
- /** @type {Array<number>} */
260
- const listStack = [];
261
- // As definitions can come after references, we need to figure out the media
262
- // (urls and titles) defined by them before handling the references.
263
- // So, we do sort of what HTML does: put metadata at the start (in head), and
264
- // then put content after (`body`).
265
- /** @type {Array<Event>} */
266
- let head = [];
267
- /** @type {Array<Event>} */
268
- let body = [];
269
- while (++index < events.length) {
270
- // Figure out the line ending style used in the document.
271
- if (!lineEndingStyle && (events[index][1].type === "lineEnding" || events[index][1].type === "lineEndingBlank")) {
272
- lineEndingStyle = /** @type {LineEnding} */
273
- events[index][2].sliceSerialize(events[index][1]);
274
- }
275
-
276
- // Preprocess lists to infer whether the list is loose or not.
277
- if (events[index][1].type === "listOrdered" || events[index][1].type === "listUnordered") {
278
- if (events[index][0] === 'enter') {
279
- listStack.push(index);
280
- } else {
281
- prepareList(events.slice(listStack.pop(), index));
282
- }
283
- }
284
-
285
- // Move definitions to the front.
286
- if (events[index][1].type === "definition") {
287
- if (events[index][0] === 'enter') {
288
- body = push(body, events.slice(start, index));
289
- start = index;
290
- } else {
291
- head = push(head, events.slice(start, index + 1));
292
- start = index + 1;
293
- }
294
- }
295
- }
296
- head = push(head, body);
297
- head = push(head, events.slice(start));
298
- index = -1;
299
- const result = head;
300
-
301
- // Handle the start of the document, if defined.
302
- if (handlers.enter.null) {
303
- handlers.enter.null.call(context);
304
- }
305
-
306
- // Handle all events.
307
- while (++index < events.length) {
308
- const handles = handlers[result[index][0]];
309
- const kind = result[index][1].type;
310
- const handle = handles[kind];
311
- if (hasOwnProperty.call(handles, kind) && handle) {
312
- handle.call({
313
- sliceSerialize: result[index][2].sliceSerialize,
314
- ...context
315
- }, result[index][1]);
316
- }
317
- }
318
-
319
- // Handle the end of the document, if defined.
320
- if (handlers.exit.null) {
321
- handlers.exit.null.call(context);
322
- }
323
- return buffers[0].join('');
324
- }
325
-
326
- /**
327
- * Figure out whether lists are loose or not.
328
- *
329
- * @param {ReadonlyArray<Event>} slice
330
- * @returns {undefined}
331
- */
332
- function prepareList(slice) {
333
- const length = slice.length;
334
- let index = 0; // Skip open.
335
- let containerBalance = 0;
336
- let loose = false;
337
- /** @type {boolean | undefined} */
338
- let atMarker;
339
- while (++index < length) {
340
- const event = slice[index];
341
- if (event[1]._container) {
342
- atMarker = undefined;
343
- if (event[0] === 'enter') {
344
- containerBalance++;
345
- } else {
346
- containerBalance--;
347
- }
348
- } else {
349
- switch (event[1].type) {
350
- case "listItemPrefix":
351
- {
352
- if (event[0] === 'exit') {
353
- atMarker = true;
354
- }
355
- break;
356
- }
357
- case "linePrefix":
358
- {
359
- // Ignore
360
-
361
- break;
362
- }
363
- case "lineEndingBlank":
364
- {
365
- if (event[0] === 'enter' && !containerBalance) {
366
- if (atMarker) {
367
- atMarker = undefined;
368
- } else {
369
- loose = true;
370
- }
371
- }
372
- break;
373
- }
374
- default:
375
- {
376
- atMarker = undefined;
377
- }
378
- }
379
- }
380
- }
381
- slice[0][1]._loose = loose;
382
- }
383
-
384
- /**
385
- * @type {CompileContext['setData']}
386
- */
387
- function setData(key, value) {
388
- // @ts-expect-error: assume `value` is omitted (`undefined` is passed) only
389
- // if allowed.
390
- data[key] = value;
391
- }
392
-
393
- /**
394
- * @type {CompileContext['getData']}
395
- */
396
- function getData(key) {
397
- return data[key];
398
- }
399
-
400
- /** @type {CompileContext['buffer']} */
401
- function buffer() {
402
- buffers.push([]);
403
- }
404
-
405
- /** @type {CompileContext['resume']} */
406
- function resume() {
407
- const buf = buffers.pop();
408
- return buf.join('');
409
- }
410
-
411
- /** @type {CompileContext['tag']} */
412
- function tag(value) {
413
- if (!tags) {
414
- return;
415
- }
416
- setData('lastWasTag', true);
417
- buffers[buffers.length - 1].push(value);
418
- }
419
-
420
- /** @type {CompileContext['raw']} */
421
- function raw(value) {
422
- setData('lastWasTag');
423
- buffers[buffers.length - 1].push(value);
424
- }
425
-
426
- /**
427
- * Output an extra line ending.
428
- *
429
- * @returns {undefined}
430
- */
431
- function lineEnding() {
432
- raw(lineEndingStyle || '\n');
433
- }
434
-
435
- /** @type {CompileContext['lineEndingIfNeeded']} */
436
- function lineEndingIfNeeded() {
437
- const buffer = buffers[buffers.length - 1];
438
- const slice = buffer[buffer.length - 1];
439
- const previous = slice ? slice.charCodeAt(slice.length - 1) : null;
440
- if (previous === 10 || previous === 13 || previous === null) {
441
- return;
442
- }
443
- lineEnding();
444
- }
445
-
446
- /** @type {CompileContext['encode']} */
447
- function encode(value) {
448
- return getData('ignoreEncode') ? value : _encode(value);
449
- }
450
-
451
- //
452
- // Handlers.
453
- //
454
-
455
- /**
456
- * @returns {undefined}
457
- */
458
- function onresumedrop() {
459
- resume();
460
- }
461
-
462
- /**
463
- * @this {CompileContext}
464
- * @type {Handle}
465
- */
466
- function onenterlistordered(token) {
467
- tightStack.push(!token._loose);
468
- lineEndingIfNeeded();
469
- tag('<ol');
470
- setData('expectFirstItem', true);
471
- }
472
-
473
- /**
474
- * @this {CompileContext}
475
- * @type {Handle}
476
- */
477
- function onenterlistunordered(token) {
478
- tightStack.push(!token._loose);
479
- lineEndingIfNeeded();
480
- tag('<ul');
481
- setData('expectFirstItem', true);
482
- }
483
-
484
- /**
485
- * @this {CompileContext}
486
- * @type {Handle}
487
- */
488
- function onenterlistitemvalue(token) {
489
- if (getData('expectFirstItem')) {
490
- const value = Number.parseInt(this.sliceSerialize(token), 10);
491
- if (value !== 1) {
492
- tag(' start="' + encode(String(value)) + '"');
493
- }
494
- }
495
- }
496
-
497
- /**
498
- * @returns {undefined}
499
- */
500
- function onenterlistitemmarker() {
501
- if (getData('expectFirstItem')) {
502
- tag('>');
503
- } else {
504
- onexitlistitem();
505
- }
506
- lineEndingIfNeeded();
507
- tag('<li>');
508
- setData('expectFirstItem');
509
- // “Hack” to prevent a line ending from showing up if the item is empty.
510
- setData('lastWasTag');
511
- }
512
-
513
- /**
514
- * @returns {undefined}
515
- */
516
- function onexitlistordered() {
517
- onexitlistitem();
518
- tightStack.pop();
519
- lineEnding();
520
- tag('</ol>');
521
- }
522
-
523
- /**
524
- * @returns {undefined}
525
- */
526
- function onexitlistunordered() {
527
- onexitlistitem();
528
- tightStack.pop();
529
- lineEnding();
530
- tag('</ul>');
531
- }
532
-
533
- /**
534
- * @returns {undefined}
535
- */
536
- function onexitlistitem() {
537
- if (getData('lastWasTag') && !getData('slurpAllLineEndings')) {
538
- lineEndingIfNeeded();
539
- }
540
- tag('</li>');
541
- setData('slurpAllLineEndings');
542
- }
543
-
544
- /**
545
- * @this {CompileContext}
546
- * @type {Handle}
547
- */
548
- function onenterblockquote() {
549
- tightStack.push(false);
550
- lineEndingIfNeeded();
551
- tag('<blockquote>');
552
- }
553
-
554
- /**
555
- * @this {CompileContext}
556
- * @type {Handle}
557
- */
558
- function onexitblockquote() {
559
- tightStack.pop();
560
- lineEndingIfNeeded();
561
- tag('</blockquote>');
562
- setData('slurpAllLineEndings');
563
- }
564
-
565
- /**
566
- * @this {CompileContext}
567
- * @type {Handle}
568
- */
569
- function onenterparagraph() {
570
- if (!tightStack[tightStack.length - 1]) {
571
- lineEndingIfNeeded();
572
- tag('<p>');
573
- }
574
- setData('slurpAllLineEndings');
575
- }
576
-
577
- /**
578
- * @this {CompileContext}
579
- * @type {Handle}
580
- */
581
- function onexitparagraph() {
582
- if (tightStack[tightStack.length - 1]) {
583
- setData('slurpAllLineEndings', true);
584
- } else {
585
- tag('</p>');
586
- }
587
- }
588
-
589
- /**
590
- * @this {CompileContext}
591
- * @type {Handle}
592
- */
593
- function onentercodefenced() {
594
- lineEndingIfNeeded();
595
- tag('<pre><code');
596
- setData('fencesCount', 0);
597
- }
598
-
599
- /**
600
- * @this {CompileContext}
601
- * @type {Handle}
602
- */
603
- function onexitcodefencedfenceinfo() {
604
- const value = resume();
605
- tag(' class="language-' + value + '"');
606
- }
607
-
608
- /**
609
- * @this {CompileContext}
610
- * @type {Handle}
611
- */
612
- function onexitcodefencedfence() {
613
- const count = getData('fencesCount') || 0;
614
- if (!count) {
615
- tag('>');
616
- setData('slurpOneLineEnding', true);
617
- }
618
- setData('fencesCount', count + 1);
619
- }
620
-
621
- /**
622
- * @this {CompileContext}
623
- * @type {Handle}
624
- */
625
- function onentercodeindented() {
626
- lineEndingIfNeeded();
627
- tag('<pre><code>');
628
- }
629
-
630
- /**
631
- * @this {CompileContext}
632
- * @type {Handle}
633
- */
634
- function onexitflowcode() {
635
- const count = getData('fencesCount');
636
-
637
- // One special case is if we are inside a container, and the fenced code was
638
- // not closed (meaning it runs to the end).
639
- // In that case, the following line ending, is considered *outside* the
640
- // fenced code and block quote by micromark, but CM wants to treat that
641
- // ending as part of the code.
642
- if (count !== undefined && count < 2 && data.tightStack.length > 0 && !getData('lastWasTag')) {
643
- lineEnding();
644
- }
645
-
646
- // But in most cases, it’s simpler: when we’ve seen some data, emit an extra
647
- // line ending when needed.
648
- if (getData('flowCodeSeenData')) {
649
- lineEndingIfNeeded();
650
- }
651
- tag('</code></pre>');
652
- if (count !== undefined && count < 2) {
653
- lineEndingIfNeeded();
654
- }
655
- setData('flowCodeSeenData');
656
- setData('fencesCount');
657
- setData('slurpOneLineEnding');
658
- }
659
-
660
- /**
661
- * @this {CompileContext}
662
- * @type {Handle}
663
- */
664
- function onenterimage() {
665
- mediaStack.push({
666
- image: true
667
- });
668
- tags = undefined; // Disallow tags.
669
- }
670
-
671
- /**
672
- * @this {CompileContext}
673
- * @type {Handle}
674
- */
675
- function onenterlink() {
676
- mediaStack.push({});
677
- }
678
-
679
- /**
680
- * @this {CompileContext}
681
- * @type {Handle}
682
- */
683
- function onexitlabeltext(token) {
684
- mediaStack[mediaStack.length - 1].labelId = this.sliceSerialize(token);
685
- }
686
-
687
- /**
688
- * @this {CompileContext}
689
- * @type {Handle}
690
- */
691
- function onexitlabel() {
692
- mediaStack[mediaStack.length - 1].label = resume();
693
- }
694
-
695
- /**
696
- * @this {CompileContext}
697
- * @type {Handle}
698
- */
699
- function onexitreferencestring(token) {
700
- mediaStack[mediaStack.length - 1].referenceId = this.sliceSerialize(token);
701
- }
702
-
703
- /**
704
- * @this {CompileContext}
705
- * @type {Handle}
706
- */
707
- function onenterresource() {
708
- buffer(); // We can have line endings in the resource, ignore them.
709
- mediaStack[mediaStack.length - 1].destination = '';
710
- }
711
-
712
- /**
713
- * @this {CompileContext}
714
- * @type {Handle}
715
- */
716
- function onenterresourcedestinationstring() {
717
- buffer();
718
- // Ignore encoding the result, as we’ll first percent encode the url and
719
- // encode manually after.
720
- setData('ignoreEncode', true);
721
- }
722
-
723
- /**
724
- * @this {CompileContext}
725
- * @type {Handle}
726
- */
727
- function onexitresourcedestinationstring() {
728
- mediaStack[mediaStack.length - 1].destination = resume();
729
- setData('ignoreEncode');
730
- }
731
-
732
- /**
733
- * @this {CompileContext}
734
- * @type {Handle}
735
- */
736
- function onexitresourcetitlestring() {
737
- mediaStack[mediaStack.length - 1].title = resume();
738
- }
739
-
740
- /**
741
- * @this {CompileContext}
742
- * @type {Handle}
743
- */
744
- function onexitmedia() {
745
- let index = mediaStack.length - 1; // Skip current.
746
- const media = mediaStack[index];
747
- const id = media.referenceId || media.labelId;
748
- const context = media.destination === undefined ? definitions[normalizeIdentifier(id)] : media;
749
- tags = true;
750
- while (index--) {
751
- if (mediaStack[index].image) {
752
- tags = undefined;
753
- break;
754
- }
755
- }
756
- if (media.image) {
757
- tag('<img src="' + sanitizeUri(context.destination, settings.allowDangerousProtocol ? undefined : protocolSource) + '" alt="');
758
- raw(media.label);
759
- tag('"');
760
- } else {
761
- tag('<a href="' + sanitizeUri(context.destination, settings.allowDangerousProtocol ? undefined : protocolHref) + '"');
762
- }
763
- tag(context.title ? ' title="' + context.title + '"' : '');
764
- if (media.image) {
765
- tag(' />');
766
- } else {
767
- tag('>');
768
- raw(media.label);
769
- tag('</a>');
770
- }
771
- mediaStack.pop();
772
- }
773
-
774
- /**
775
- * @this {CompileContext}
776
- * @type {Handle}
777
- */
778
- function onenterdefinition() {
779
- buffer();
780
- mediaStack.push({});
781
- }
782
-
783
- /**
784
- * @this {CompileContext}
785
- * @type {Handle}
786
- */
787
- function onexitdefinitionlabelstring(token) {
788
- // Discard label, use the source content instead.
789
- resume();
790
- mediaStack[mediaStack.length - 1].labelId = this.sliceSerialize(token);
791
- }
792
-
793
- /**
794
- * @this {CompileContext}
795
- * @type {Handle}
796
- */
797
- function onenterdefinitiondestinationstring() {
798
- buffer();
799
- setData('ignoreEncode', true);
800
- }
801
-
802
- /**
803
- * @this {CompileContext}
804
- * @type {Handle}
805
- */
806
- function onexitdefinitiondestinationstring() {
807
- mediaStack[mediaStack.length - 1].destination = resume();
808
- setData('ignoreEncode');
809
- }
810
-
811
- /**
812
- * @this {CompileContext}
813
- * @type {Handle}
814
- */
815
- function onexitdefinitiontitlestring() {
816
- mediaStack[mediaStack.length - 1].title = resume();
817
- }
818
-
819
- /**
820
- * @this {CompileContext}
821
- * @type {Handle}
822
- */
823
- function onexitdefinition() {
824
- const media = mediaStack[mediaStack.length - 1];
825
- const id = normalizeIdentifier(media.labelId);
826
- resume();
827
- if (!hasOwnProperty.call(definitions, id)) {
828
- definitions[id] = mediaStack[mediaStack.length - 1];
829
- }
830
- mediaStack.pop();
831
- }
832
-
833
- /**
834
- * @this {CompileContext}
835
- * @type {Handle}
836
- */
837
- function onentercontent() {
838
- setData('slurpAllLineEndings', true);
839
- }
840
-
841
- /**
842
- * @this {CompileContext}
843
- * @type {Handle}
844
- */
845
- function onexitatxheadingsequence(token) {
846
- // Exit for further sequences.
847
- if (getData('headingRank')) {
848
- return;
849
- }
850
- setData('headingRank', this.sliceSerialize(token).length);
851
- lineEndingIfNeeded();
852
- tag('<h' + getData('headingRank') + '>');
853
- }
854
-
855
- /**
856
- * @this {CompileContext}
857
- * @type {Handle}
858
- */
859
- function onentersetextheading() {
860
- buffer();
861
- setData('slurpAllLineEndings');
862
- }
863
-
864
- /**
865
- * @this {CompileContext}
866
- * @type {Handle}
867
- */
868
- function onexitsetextheadingtext() {
869
- setData('slurpAllLineEndings', true);
870
- }
871
-
872
- /**
873
- * @this {CompileContext}
874
- * @type {Handle}
875
- */
876
- function onexitatxheading() {
877
- tag('</h' + getData('headingRank') + '>');
878
- setData('headingRank');
879
- }
880
-
881
- /**
882
- * @this {CompileContext}
883
- * @type {Handle}
884
- */
885
- function onexitsetextheadinglinesequence(token) {
886
- setData('headingRank', this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2);
887
- }
888
-
889
- /**
890
- * @this {CompileContext}
891
- * @type {Handle}
892
- */
893
- function onexitsetextheading() {
894
- const value = resume();
895
- lineEndingIfNeeded();
896
- tag('<h' + getData('headingRank') + '>');
897
- raw(value);
898
- tag('</h' + getData('headingRank') + '>');
899
- setData('slurpAllLineEndings');
900
- setData('headingRank');
901
- }
902
-
903
- /**
904
- * @this {CompileContext}
905
- * @type {Handle}
906
- */
907
- function onexitdata(token) {
908
- raw(encode(this.sliceSerialize(token)));
909
- }
910
-
911
- /**
912
- * @this {CompileContext}
913
- * @type {Handle}
914
- */
915
- function onexitlineending(token) {
916
- if (getData('slurpAllLineEndings')) {
917
- return;
918
- }
919
- if (getData('slurpOneLineEnding')) {
920
- setData('slurpOneLineEnding');
921
- return;
922
- }
923
- if (getData('inCodeText')) {
924
- raw(' ');
925
- return;
926
- }
927
- raw(encode(this.sliceSerialize(token)));
928
- }
929
-
930
- /**
931
- * @this {CompileContext}
932
- * @type {Handle}
933
- */
934
- function onexitcodeflowvalue(token) {
935
- raw(encode(this.sliceSerialize(token)));
936
- setData('flowCodeSeenData', true);
937
- }
938
-
939
- /**
940
- * @this {CompileContext}
941
- * @type {Handle}
942
- */
943
- function onexithardbreak() {
944
- tag('<br />');
945
- }
946
-
947
- /**
948
- * @returns {undefined}
949
- */
950
- function onenterhtmlflow() {
951
- lineEndingIfNeeded();
952
- onenterhtml();
953
- }
954
-
955
- /**
956
- * @returns {undefined}
957
- */
958
- function onexithtml() {
959
- setData('ignoreEncode');
960
- }
961
-
962
- /**
963
- * @returns {undefined}
964
- */
965
- function onenterhtml() {
966
- if (settings.allowDangerousHtml) {
967
- setData('ignoreEncode', true);
968
- }
969
- }
970
-
971
- /**
972
- * @returns {undefined}
973
- */
974
- function onenteremphasis() {
975
- tag('<em>');
976
- }
977
-
978
- /**
979
- * @returns {undefined}
980
- */
981
- function onenterstrong() {
982
- tag('<strong>');
983
- }
984
-
985
- /**
986
- * @returns {undefined}
987
- */
988
- function onentercodetext() {
989
- setData('inCodeText', true);
990
- tag('<code>');
991
- }
992
-
993
- /**
994
- * @returns {undefined}
995
- */
996
- function onexitcodetext() {
997
- setData('inCodeText');
998
- tag('</code>');
999
- }
1000
-
1001
- /**
1002
- * @returns {undefined}
1003
- */
1004
- function onexitemphasis() {
1005
- tag('</em>');
1006
- }
1007
-
1008
- /**
1009
- * @returns {undefined}
1010
- */
1011
- function onexitstrong() {
1012
- tag('</strong>');
1013
- }
1014
-
1015
- /**
1016
- * @returns {undefined}
1017
- */
1018
- function onexitthematicbreak() {
1019
- lineEndingIfNeeded();
1020
- tag('<hr />');
1021
- }
1022
-
1023
- /**
1024
- * @this {CompileContext}
1025
- * @param {Token} token
1026
- * @returns {undefined}
1027
- */
1028
- function onexitcharacterreferencemarker(token) {
1029
- setData('characterReferenceType', token.type);
1030
- }
1031
-
1032
- /**
1033
- * @this {CompileContext}
1034
- * @type {Handle}
1035
- */
1036
- function onexitcharacterreferencevalue(token) {
1037
- const value = this.sliceSerialize(token);
1038
- const decoded = getData('characterReferenceType') ? decodeNumericCharacterReference(value, getData('characterReferenceType') === "characterReferenceMarkerNumeric" ? 10 : 16) : decodeNamedCharacterReference(value);
1039
-
1040
- // `decodeNamedCharacterReference` can return `false` for invalid named
1041
- // character references,
1042
- // but everything we’ve tokenized is valid.
1043
- raw(encode(/** @type {string} */decoded));
1044
- setData('characterReferenceType');
1045
- }
1046
-
1047
- /**
1048
- * @this {CompileContext}
1049
- * @type {Handle}
1050
- */
1051
- function onexitautolinkprotocol(token) {
1052
- const uri = this.sliceSerialize(token);
1053
- tag('<a href="' + sanitizeUri(uri, settings.allowDangerousProtocol ? undefined : protocolHref) + '">');
1054
- raw(encode(uri));
1055
- tag('</a>');
1056
- }
1057
-
1058
- /**
1059
- * @this {CompileContext}
1060
- * @type {Handle}
1061
- */
1062
- function onexitautolinkemail(token) {
1063
- const uri = this.sliceSerialize(token);
1064
- tag('<a href="' + sanitizeUri('mailto:' + uri) + '">');
1065
- raw(encode(uri));
1066
- tag('</a>');
1067
- }
1068
- }