@alexlit/lint-kit 214.0.0 → 214.1.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 (429) hide show
  1. package/package.json +1 -1
  2. package/packages/config-eslint/package.json +4 -4
  3. package/packages/config-markdownlint/node_modules/ansi-regex/index.d.ts +33 -0
  4. package/packages/config-markdownlint/node_modules/ansi-regex/index.js +15 -0
  5. package/packages/config-markdownlint/node_modules/ansi-regex/license +9 -0
  6. package/packages/config-markdownlint/node_modules/ansi-regex/package.json +61 -0
  7. package/packages/config-markdownlint/node_modules/ansi-regex/readme.md +66 -0
  8. package/packages/config-markdownlint/node_modules/markdownlint/CHANGELOG.md +553 -0
  9. package/packages/config-markdownlint/node_modules/markdownlint/CONTRIBUTING.md +77 -0
  10. package/packages/config-markdownlint/node_modules/markdownlint/LICENSE +21 -0
  11. package/packages/config-markdownlint/node_modules/markdownlint/README.md +1112 -0
  12. package/packages/config-markdownlint/node_modules/markdownlint/doc/CustomRules.md +196 -0
  13. package/packages/config-markdownlint/node_modules/markdownlint/doc/Prettier.md +27 -0
  14. package/packages/config-markdownlint/node_modules/markdownlint/doc/ReleaseProcess.md +20 -0
  15. package/packages/config-markdownlint/node_modules/markdownlint/doc/Rules.md +2909 -0
  16. package/packages/config-markdownlint/node_modules/markdownlint/doc/md001.md +51 -0
  17. package/packages/config-markdownlint/node_modules/markdownlint/doc/md003.md +59 -0
  18. package/packages/config-markdownlint/node_modules/markdownlint/doc/md004.md +50 -0
  19. package/packages/config-markdownlint/node_modules/markdownlint/doc/md005.md +53 -0
  20. package/packages/config-markdownlint/node_modules/markdownlint/doc/md007.md +52 -0
  21. package/packages/config-markdownlint/node_modules/markdownlint/doc/md009.md +50 -0
  22. package/packages/config-markdownlint/node_modules/markdownlint/doc/md010.md +61 -0
  23. package/packages/config-markdownlint/node_modules/markdownlint/doc/md011.md +30 -0
  24. package/packages/config-markdownlint/node_modules/markdownlint/doc/md012.md +38 -0
  25. package/packages/config-markdownlint/node_modules/markdownlint/doc/md013.md +58 -0
  26. package/packages/config-markdownlint/node_modules/markdownlint/doc/md014.md +54 -0
  27. package/packages/config-markdownlint/node_modules/markdownlint/doc/md018.md +27 -0
  28. package/packages/config-markdownlint/node_modules/markdownlint/doc/md019.md +28 -0
  29. package/packages/config-markdownlint/node_modules/markdownlint/doc/md020.md +29 -0
  30. package/packages/config-markdownlint/node_modules/markdownlint/doc/md021.md +31 -0
  31. package/packages/config-markdownlint/node_modules/markdownlint/doc/md022.md +67 -0
  32. package/packages/config-markdownlint/node_modules/markdownlint/doc/md023.md +33 -0
  33. package/packages/config-markdownlint/node_modules/markdownlint/doc/md024.md +44 -0
  34. package/packages/config-markdownlint/node_modules/markdownlint/doc/md025.md +49 -0
  35. package/packages/config-markdownlint/node_modules/markdownlint/doc/md026.md +40 -0
  36. package/packages/config-markdownlint/node_modules/markdownlint/doc/md027.md +32 -0
  37. package/packages/config-markdownlint/node_modules/markdownlint/doc/md028.md +44 -0
  38. package/packages/config-markdownlint/node_modules/markdownlint/doc/md029.md +110 -0
  39. package/packages/config-markdownlint/node_modules/markdownlint/doc/md030.md +82 -0
  40. package/packages/config-markdownlint/node_modules/markdownlint/doc/md031.md +50 -0
  41. package/packages/config-markdownlint/node_modules/markdownlint/doc/md032.md +55 -0
  42. package/packages/config-markdownlint/node_modules/markdownlint/doc/md033.md +33 -0
  43. package/packages/config-markdownlint/node_modules/markdownlint/doc/md034.md +55 -0
  44. package/packages/config-markdownlint/node_modules/markdownlint/doc/md035.md +44 -0
  45. package/packages/config-markdownlint/node_modules/markdownlint/doc/md036.md +45 -0
  46. package/packages/config-markdownlint/node_modules/markdownlint/doc/md037.md +37 -0
  47. package/packages/config-markdownlint/node_modules/markdownlint/doc/md038.md +52 -0
  48. package/packages/config-markdownlint/node_modules/markdownlint/doc/md039.md +21 -0
  49. package/packages/config-markdownlint/node_modules/markdownlint/doc/md040.md +52 -0
  50. package/packages/config-markdownlint/node_modules/markdownlint/doc/md041.md +64 -0
  51. package/packages/config-markdownlint/node_modules/markdownlint/doc/md042.md +38 -0
  52. package/packages/config-markdownlint/node_modules/markdownlint/doc/md043.md +125 -0
  53. package/packages/config-markdownlint/node_modules/markdownlint/doc/md044.md +45 -0
  54. package/packages/config-markdownlint/node_modules/markdownlint/doc/md045.md +48 -0
  55. package/packages/config-markdownlint/node_modules/markdownlint/doc/md046.md +40 -0
  56. package/packages/config-markdownlint/node_modules/markdownlint/doc/md047.md +34 -0
  57. package/packages/config-markdownlint/node_modules/markdownlint/doc/md048.md +42 -0
  58. package/packages/config-markdownlint/node_modules/markdownlint/doc/md049.md +36 -0
  59. package/packages/config-markdownlint/node_modules/markdownlint/doc/md050.md +35 -0
  60. package/packages/config-markdownlint/node_modules/markdownlint/doc/md051.md +117 -0
  61. package/packages/config-markdownlint/node_modules/markdownlint/doc/md052.md +52 -0
  62. package/packages/config-markdownlint/node_modules/markdownlint/doc/md053.md +38 -0
  63. package/packages/config-markdownlint/node_modules/markdownlint/doc/md054.md +100 -0
  64. package/packages/config-markdownlint/node_modules/markdownlint/doc/md055.md +58 -0
  65. package/packages/config-markdownlint/node_modules/markdownlint/doc/md056.md +37 -0
  66. package/packages/config-markdownlint/node_modules/markdownlint/doc/md058.md +48 -0
  67. package/packages/config-markdownlint/node_modules/markdownlint/doc/md059.md +33 -0
  68. package/packages/config-markdownlint/node_modules/markdownlint/doc/md060.md +131 -0
  69. package/packages/config-markdownlint/node_modules/markdownlint/helpers/LICENSE +21 -0
  70. package/packages/config-markdownlint/node_modules/markdownlint/helpers/README.md +29 -0
  71. package/packages/config-markdownlint/node_modules/markdownlint/helpers/helpers.cjs +711 -0
  72. package/packages/config-markdownlint/node_modules/markdownlint/helpers/micromark-helpers.cjs +328 -0
  73. package/packages/config-markdownlint/node_modules/markdownlint/helpers/package.json +22 -0
  74. package/packages/config-markdownlint/node_modules/markdownlint/helpers/shared.cjs +16 -0
  75. package/packages/config-markdownlint/node_modules/markdownlint/lib/cache.mjs +81 -0
  76. package/packages/config-markdownlint/node_modules/markdownlint/lib/configuration-strict.d.ts +2429 -0
  77. package/packages/config-markdownlint/node_modules/markdownlint/lib/configuration.d.ts +8 -0
  78. package/packages/config-markdownlint/node_modules/markdownlint/lib/constants.mjs +14 -0
  79. package/packages/config-markdownlint/node_modules/markdownlint/lib/defer-require.cjs +19 -0
  80. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-async.d.mts +1 -0
  81. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-async.mjs +3 -0
  82. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-promise.d.mts +1 -0
  83. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-promise.mjs +3 -0
  84. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-sync.d.mts +1 -0
  85. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports-sync.mjs +3 -0
  86. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports.d.mts +58 -0
  87. package/packages/config-markdownlint/node_modules/markdownlint/lib/exports.mjs +33 -0
  88. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownit.cjs +178 -0
  89. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.d.mts +757 -0
  90. package/packages/config-markdownlint/node_modules/markdownlint/lib/markdownlint.mjs +1588 -0
  91. package/packages/config-markdownlint/node_modules/markdownlint/lib/md001.mjs +32 -0
  92. package/packages/config-markdownlint/node_modules/markdownlint/lib/md003.mjs +47 -0
  93. package/packages/config-markdownlint/node_modules/markdownlint/lib/md004.mjs +73 -0
  94. package/packages/config-markdownlint/node_modules/markdownlint/lib/md005.mjs +69 -0
  95. package/packages/config-markdownlint/node_modules/markdownlint/lib/md007.mjs +84 -0
  96. package/packages/config-markdownlint/node_modules/markdownlint/lib/md009.mjs +95 -0
  97. package/packages/config-markdownlint/node_modules/markdownlint/lib/md010.mjs +78 -0
  98. package/packages/config-markdownlint/node_modules/markdownlint/lib/md011.mjs +59 -0
  99. package/packages/config-markdownlint/node_modules/markdownlint/lib/md012.mjs +40 -0
  100. package/packages/config-markdownlint/node_modules/markdownlint/lib/md013.mjs +95 -0
  101. package/packages/config-markdownlint/node_modules/markdownlint/lib/md014.mjs +47 -0
  102. package/packages/config-markdownlint/node_modules/markdownlint/lib/md018.mjs +43 -0
  103. package/packages/config-markdownlint/node_modules/markdownlint/lib/md019-md021.mjs +78 -0
  104. package/packages/config-markdownlint/node_modules/markdownlint/lib/md020.mjs +68 -0
  105. package/packages/config-markdownlint/node_modules/markdownlint/lib/md022.mjs +103 -0
  106. package/packages/config-markdownlint/node_modules/markdownlint/lib/md023.mjs +37 -0
  107. package/packages/config-markdownlint/node_modules/markdownlint/lib/md024.mjs +45 -0
  108. package/packages/config-markdownlint/node_modules/markdownlint/lib/md025.mjs +45 -0
  109. package/packages/config-markdownlint/node_modules/markdownlint/lib/md026.mjs +46 -0
  110. package/packages/config-markdownlint/node_modules/markdownlint/lib/md027.mjs +50 -0
  111. package/packages/config-markdownlint/node_modules/markdownlint/lib/md028.mjs +38 -0
  112. package/packages/config-markdownlint/node_modules/markdownlint/lib/md029.mjs +95 -0
  113. package/packages/config-markdownlint/node_modules/markdownlint/lib/md030.mjs +57 -0
  114. package/packages/config-markdownlint/node_modules/markdownlint/lib/md031.mjs +61 -0
  115. package/packages/config-markdownlint/node_modules/markdownlint/lib/md032.mjs +79 -0
  116. package/packages/config-markdownlint/node_modules/markdownlint/lib/md033.mjs +46 -0
  117. package/packages/config-markdownlint/node_modules/markdownlint/lib/md034.mjs +92 -0
  118. package/packages/config-markdownlint/node_modules/markdownlint/lib/md035.mjs +23 -0
  119. package/packages/config-markdownlint/node_modules/markdownlint/lib/md036.mjs +55 -0
  120. package/packages/config-markdownlint/node_modules/markdownlint/lib/md037.mjs +93 -0
  121. package/packages/config-markdownlint/node_modules/markdownlint/lib/md038.mjs +73 -0
  122. package/packages/config-markdownlint/node_modules/markdownlint/lib/md039.mjs +63 -0
  123. package/packages/config-markdownlint/node_modules/markdownlint/lib/md040.mjs +32 -0
  124. package/packages/config-markdownlint/node_modules/markdownlint/lib/md041.mjs +71 -0
  125. package/packages/config-markdownlint/node_modules/markdownlint/lib/md042.mjs +58 -0
  126. package/packages/config-markdownlint/node_modules/markdownlint/lib/md043.mjs +126 -0
  127. package/packages/config-markdownlint/node_modules/markdownlint/lib/md044.mjs +110 -0
  128. package/packages/config-markdownlint/node_modules/markdownlint/lib/md045.mjs +61 -0
  129. package/packages/config-markdownlint/node_modules/markdownlint/lib/md046.mjs +31 -0
  130. package/packages/config-markdownlint/node_modules/markdownlint/lib/md047.mjs +28 -0
  131. package/packages/config-markdownlint/node_modules/markdownlint/lib/md048.mjs +45 -0
  132. package/packages/config-markdownlint/node_modules/markdownlint/lib/md049-md050.mjs +115 -0
  133. package/packages/config-markdownlint/node_modules/markdownlint/lib/md051.mjs +173 -0
  134. package/packages/config-markdownlint/node_modules/markdownlint/lib/md052.mjs +40 -0
  135. package/packages/config-markdownlint/node_modules/markdownlint/lib/md053.mjs +60 -0
  136. package/packages/config-markdownlint/node_modules/markdownlint/lib/md054.mjs +122 -0
  137. package/packages/config-markdownlint/node_modules/markdownlint/lib/md055.mjs +82 -0
  138. package/packages/config-markdownlint/node_modules/markdownlint/lib/md056.mjs +50 -0
  139. package/packages/config-markdownlint/node_modules/markdownlint/lib/md058.mjs +57 -0
  140. package/packages/config-markdownlint/node_modules/markdownlint/lib/md059.mjs +71 -0
  141. package/packages/config-markdownlint/node_modules/markdownlint/lib/md060.mjs +229 -0
  142. package/packages/config-markdownlint/node_modules/markdownlint/lib/micromark-parse.mjs +338 -0
  143. package/packages/config-markdownlint/node_modules/markdownlint/lib/micromark-types.d.mts +11 -0
  144. package/packages/config-markdownlint/node_modules/markdownlint/lib/node-imports-browser.mjs +22 -0
  145. package/packages/config-markdownlint/node_modules/markdownlint/lib/node-imports-node.mjs +11 -0
  146. package/packages/config-markdownlint/node_modules/markdownlint/lib/parse-configuration.mjs +47 -0
  147. package/packages/config-markdownlint/node_modules/markdownlint/lib/resolve-module.cjs +53 -0
  148. package/packages/config-markdownlint/node_modules/markdownlint/lib/resolve-module.d.cts +39 -0
  149. package/packages/config-markdownlint/node_modules/markdownlint/lib/rules.mjs +122 -0
  150. package/packages/config-markdownlint/node_modules/markdownlint/lib/types.d.mts +13 -0
  151. package/packages/config-markdownlint/node_modules/markdownlint/package.json +119 -0
  152. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.jsonc +349 -0
  153. package/packages/config-markdownlint/node_modules/markdownlint/schema/.markdownlint.yaml +310 -0
  154. package/packages/config-markdownlint/node_modules/markdownlint/schema/ValidatingConfiguration.md +26 -0
  155. package/packages/config-markdownlint/node_modules/markdownlint/schema/markdownlint-config-schema-strict.json +5146 -0
  156. package/packages/config-markdownlint/node_modules/markdownlint/schema/markdownlint-config-schema.json +5151 -0
  157. package/packages/config-markdownlint/node_modules/markdownlint/style/all.json +5 -0
  158. package/packages/config-markdownlint/node_modules/markdownlint/style/cirosantilli.json +22 -0
  159. package/packages/config-markdownlint/node_modules/markdownlint/style/prettier.json +27 -0
  160. package/packages/config-markdownlint/node_modules/markdownlint/style/relaxed.json +12 -0
  161. package/packages/config-markdownlint/node_modules/micromark/dev/index.d.ts +82 -0
  162. package/packages/config-markdownlint/node_modules/micromark/dev/index.d.ts.map +1 -0
  163. package/packages/config-markdownlint/node_modules/micromark/dev/index.js +68 -0
  164. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.d.ts +16 -0
  165. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.d.ts.map +1 -0
  166. package/packages/config-markdownlint/node_modules/micromark/dev/lib/compile.js +1162 -0
  167. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.d.ts +73 -0
  168. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.d.ts.map +1 -0
  169. package/packages/config-markdownlint/node_modules/micromark/dev/lib/constructs.js +101 -0
  170. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.d.ts +46 -0
  171. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.d.ts.map +1 -0
  172. package/packages/config-markdownlint/node_modules/micromark/dev/lib/create-tokenizer.js +718 -0
  173. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.d.ts +4 -0
  174. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.d.ts.map +1 -0
  175. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/content.js +99 -0
  176. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.d.ts +10 -0
  177. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.d.ts.map +1 -0
  178. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/document.js +449 -0
  179. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.d.ts +4 -0
  180. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.d.ts.map +1 -0
  181. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/flow.js +86 -0
  182. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.d.ts +8 -0
  183. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.d.ts.map +1 -0
  184. package/packages/config-markdownlint/node_modules/micromark/dev/lib/initialize/text.js +248 -0
  185. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.d.ts +10 -0
  186. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.d.ts.map +1 -0
  187. package/packages/config-markdownlint/node_modules/micromark/dev/lib/parse.js +58 -0
  188. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.d.ts +9 -0
  189. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.d.ts.map +1 -0
  190. package/packages/config-markdownlint/node_modules/micromark/dev/lib/postprocess.js +19 -0
  191. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.d.ts +13 -0
  192. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.d.ts.map +1 -0
  193. package/packages/config-markdownlint/node_modules/micromark/dev/lib/preprocess.js +139 -0
  194. package/packages/config-markdownlint/node_modules/micromark/dev/stream.d.ts +35 -0
  195. package/packages/config-markdownlint/node_modules/micromark/dev/stream.d.ts.map +1 -0
  196. package/packages/config-markdownlint/node_modules/micromark/dev/stream.js +270 -0
  197. package/packages/config-markdownlint/node_modules/micromark/index.d.ts +82 -0
  198. package/packages/config-markdownlint/node_modules/micromark/index.d.ts.map +1 -0
  199. package/packages/config-markdownlint/node_modules/micromark/index.js +60 -0
  200. package/packages/config-markdownlint/node_modules/micromark/lib/compile.d.ts +16 -0
  201. package/packages/config-markdownlint/node_modules/micromark/lib/compile.d.ts.map +1 -0
  202. package/packages/config-markdownlint/node_modules/micromark/lib/compile.js +1068 -0
  203. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.d.ts +73 -0
  204. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.d.ts.map +1 -0
  205. package/packages/config-markdownlint/node_modules/micromark/lib/constructs.js +85 -0
  206. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.d.ts +46 -0
  207. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.d.ts.map +1 -0
  208. package/packages/config-markdownlint/node_modules/micromark/lib/create-tokenizer.js +613 -0
  209. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.d.ts +4 -0
  210. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.d.ts.map +1 -0
  211. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/content.js +79 -0
  212. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.d.ts +10 -0
  213. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.d.ts.map +1 -0
  214. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/document.js +370 -0
  215. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.d.ts +4 -0
  216. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.d.ts.map +1 -0
  217. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/flow.js +58 -0
  218. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.d.ts +8 -0
  219. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.d.ts.map +1 -0
  220. package/packages/config-markdownlint/node_modules/micromark/lib/initialize/text.js +216 -0
  221. package/packages/config-markdownlint/node_modules/micromark/lib/parse.d.ts +10 -0
  222. package/packages/config-markdownlint/node_modules/micromark/lib/parse.d.ts.map +1 -0
  223. package/packages/config-markdownlint/node_modules/micromark/lib/parse.js +56 -0
  224. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.d.ts +9 -0
  225. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.d.ts.map +1 -0
  226. package/packages/config-markdownlint/node_modules/micromark/lib/postprocess.js +18 -0
  227. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.d.ts +13 -0
  228. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.d.ts.map +1 -0
  229. package/packages/config-markdownlint/node_modules/micromark/lib/preprocess.js +112 -0
  230. package/packages/config-markdownlint/node_modules/micromark/license +22 -0
  231. package/packages/config-markdownlint/node_modules/micromark/package.json +87 -0
  232. package/packages/config-markdownlint/node_modules/micromark/readme.md +488 -0
  233. package/packages/config-markdownlint/node_modules/micromark/stream.d.ts +35 -0
  234. package/packages/config-markdownlint/node_modules/micromark/stream.d.ts.map +1 -0
  235. package/packages/config-markdownlint/node_modules/micromark/stream.js +256 -0
  236. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.d.ts +23 -0
  237. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.d.ts.map +1 -0
  238. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/index.js +22 -0
  239. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts +4 -0
  240. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.d.ts.map +1 -0
  241. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/attention.js +294 -0
  242. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts +4 -0
  243. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.d.ts.map +1 -0
  244. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/autolink.js +269 -0
  245. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts +4 -0
  246. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.d.ts.map +1 -0
  247. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/blank-line.js +62 -0
  248. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts +4 -0
  249. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.d.ts.map +1 -0
  250. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/block-quote.js +162 -0
  251. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts +4 -0
  252. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.d.ts.map +1 -0
  253. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-escape.js +69 -0
  254. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts +4 -0
  255. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.d.ts.map +1 -0
  256. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/character-reference.js +166 -0
  257. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts +4 -0
  258. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.d.ts.map +1 -0
  259. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-fenced.js +472 -0
  260. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts +4 -0
  261. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.d.ts.map +1 -0
  262. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-indented.js +178 -0
  263. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts +4 -0
  264. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.d.ts.map +1 -0
  265. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/code-text.js +257 -0
  266. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.d.ts +7 -0
  267. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.d.ts.map +1 -0
  268. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/content.js +185 -0
  269. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts +4 -0
  270. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.d.ts.map +1 -0
  271. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/definition.js +295 -0
  272. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts +4 -0
  273. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.d.ts.map +1 -0
  274. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.js +65 -0
  275. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts +4 -0
  276. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.d.ts.map +1 -0
  277. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/heading-atx.js +229 -0
  278. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts +4 -0
  279. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.d.ts.map +1 -0
  280. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-flow.js +938 -0
  281. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts +4 -0
  282. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.d.ts.map +1 -0
  283. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/html-text.js +783 -0
  284. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts +4 -0
  285. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.d.ts.map +1 -0
  286. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-end.js +658 -0
  287. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts +4 -0
  288. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.d.ts.map +1 -0
  289. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-image.js +119 -0
  290. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts +4 -0
  291. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.d.ts.map +1 -0
  292. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/label-start-link.js +71 -0
  293. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts +4 -0
  294. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.d.ts.map +1 -0
  295. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/line-ending.js +34 -0
  296. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.d.ts +4 -0
  297. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.d.ts.map +1 -0
  298. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/list.js +306 -0
  299. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts +4 -0
  300. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.d.ts.map +1 -0
  301. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/partial-non-lazy-continuation.js +67 -0
  302. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts +4 -0
  303. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.d.ts.map +1 -0
  304. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/setext-underline.js +213 -0
  305. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts +4 -0
  306. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.d.ts.map +1 -0
  307. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/dev/lib/thematic-break.js +120 -0
  308. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.d.ts +23 -0
  309. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.d.ts.map +1 -0
  310. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/index.js +22 -0
  311. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.d.ts +4 -0
  312. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.d.ts.map +1 -0
  313. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/attention.js +231 -0
  314. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.d.ts +4 -0
  315. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.d.ts.map +1 -0
  316. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/autolink.js +233 -0
  317. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.d.ts +4 -0
  318. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.d.ts.map +1 -0
  319. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/blank-line.js +61 -0
  320. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.d.ts +4 -0
  321. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.d.ts.map +1 -0
  322. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/block-quote.js +143 -0
  323. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.d.ts +4 -0
  324. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.d.ts.map +1 -0
  325. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-escape.js +64 -0
  326. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.d.ts +4 -0
  327. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.d.ts.map +1 -0
  328. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/character-reference.js +149 -0
  329. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts +4 -0
  330. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.d.ts.map +1 -0
  331. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-fenced.js +422 -0
  332. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.d.ts +4 -0
  333. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.d.ts.map +1 -0
  334. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-indented.js +159 -0
  335. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.d.ts +4 -0
  336. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.d.ts.map +1 -0
  337. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/code-text.js +225 -0
  338. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.d.ts +7 -0
  339. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.d.ts.map +1 -0
  340. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/content.js +163 -0
  341. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.d.ts +4 -0
  342. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.d.ts.map +1 -0
  343. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/definition.js +254 -0
  344. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts +4 -0
  345. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.d.ts.map +1 -0
  346. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/hard-break-escape.js +60 -0
  347. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts +4 -0
  348. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.d.ts.map +1 -0
  349. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/heading-atx.js +191 -0
  350. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.d.ts +4 -0
  351. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.d.ts.map +1 -0
  352. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-flow.js +827 -0
  353. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.d.ts +4 -0
  354. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.d.ts.map +1 -0
  355. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/html-text.js +678 -0
  356. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.d.ts +4 -0
  357. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.d.ts.map +1 -0
  358. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-end.js +561 -0
  359. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts +4 -0
  360. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.d.ts.map +1 -0
  361. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-image.js +110 -0
  362. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts +4 -0
  363. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.d.ts.map +1 -0
  364. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/label-start-link.js +63 -0
  365. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.d.ts +4 -0
  366. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.d.ts.map +1 -0
  367. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/line-ending.js +33 -0
  368. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.d.ts +4 -0
  369. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.d.ts.map +1 -0
  370. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/list.js +213 -0
  371. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts +4 -0
  372. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.d.ts.map +1 -0
  373. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/partial-non-lazy-continuation.js +61 -0
  374. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts +4 -0
  375. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.d.ts.map +1 -0
  376. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/setext-underline.js +187 -0
  377. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts +4 -0
  378. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.d.ts.map +1 -0
  379. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/lib/thematic-break.js +102 -0
  380. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/license +22 -0
  381. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/package.json +62 -0
  382. package/packages/config-markdownlint/node_modules/micromark-core-commonmark/readme.md +171 -0
  383. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/index.d.ts +55 -0
  384. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/index.js +2 -0
  385. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts +51 -0
  386. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.d.ts.map +1 -0
  387. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/edit-map.js +231 -0
  388. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts +11 -0
  389. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.d.ts.map +1 -0
  390. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/html.js +153 -0
  391. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts +14 -0
  392. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.d.ts.map +1 -0
  393. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/infer.js +64 -0
  394. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts +18 -0
  395. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.d.ts.map +1 -0
  396. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/dev/lib/syntax.js +964 -0
  397. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/index.d.ts +55 -0
  398. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/index.js +2 -0
  399. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts +51 -0
  400. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.d.ts.map +1 -0
  401. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/edit-map.js +222 -0
  402. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.d.ts +11 -0
  403. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.d.ts.map +1 -0
  404. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/html.js +135 -0
  405. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.d.ts +14 -0
  406. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.d.ts.map +1 -0
  407. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/infer.js +52 -0
  408. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts +18 -0
  409. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.d.ts.map +1 -0
  410. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/lib/syntax.js +846 -0
  411. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/license +22 -0
  412. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/package.json +86 -0
  413. package/packages/config-markdownlint/node_modules/micromark-extension-gfm-table/readme.md +515 -0
  414. package/packages/config-markdownlint/node_modules/micromark-util-types/index.d.ts +1315 -0
  415. package/packages/config-markdownlint/node_modules/micromark-util-types/index.js +2 -0
  416. package/packages/config-markdownlint/node_modules/micromark-util-types/license +22 -0
  417. package/packages/config-markdownlint/node_modules/micromark-util-types/package.json +37 -0
  418. package/packages/config-markdownlint/node_modules/micromark-util-types/readme.md +151 -0
  419. package/packages/config-markdownlint/node_modules/string-width/index.d.ts +39 -0
  420. package/packages/config-markdownlint/node_modules/string-width/index.js +203 -0
  421. package/packages/config-markdownlint/node_modules/string-width/license +9 -0
  422. package/packages/config-markdownlint/node_modules/string-width/package.json +65 -0
  423. package/packages/config-markdownlint/node_modules/string-width/readme.md +66 -0
  424. package/packages/config-markdownlint/node_modules/strip-ansi/index.d.ts +15 -0
  425. package/packages/config-markdownlint/node_modules/strip-ansi/index.js +19 -0
  426. package/packages/config-markdownlint/node_modules/strip-ansi/license +9 -0
  427. package/packages/config-markdownlint/node_modules/strip-ansi/package.json +59 -0
  428. package/packages/config-markdownlint/node_modules/strip-ansi/readme.md +37 -0
  429. package/packages/config-markdownlint/package.json +2 -2
@@ -0,0 +1,32 @@
1
+ // @ts-check
2
+
3
+ import { addErrorDetailIf, frontMatterHasTitle } from "../helpers/helpers.cjs";
4
+ import { getHeadingLevel } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ /** @type {import("markdownlint").Rule} */
8
+ export default {
9
+ "names": [ "MD001", "heading-increment" ],
10
+ "description": "Heading levels should only increment by one level at a time",
11
+ "tags": [ "headings" ],
12
+ "parser": "micromark",
13
+ "function": function MD001(params, onError) {
14
+ const hasTitle = frontMatterHasTitle(
15
+ params.frontMatterLines,
16
+ params.config.front_matter_title
17
+ );
18
+ let prevLevel = hasTitle ? 1 : Number.MAX_SAFE_INTEGER;
19
+ for (const heading of filterByTypesCached([ "atxHeading", "setextHeading" ])) {
20
+ const level = getHeadingLevel(heading);
21
+ if (level > prevLevel) {
22
+ addErrorDetailIf(
23
+ onError,
24
+ heading.startLine,
25
+ `h${prevLevel + 1}`,
26
+ `h${level}`
27
+ );
28
+ }
29
+ prevLevel = level;
30
+ }
31
+ }
32
+ };
@@ -0,0 +1,47 @@
1
+ // @ts-check
2
+
3
+ import { addErrorDetailIf } from "../helpers/helpers.cjs";
4
+ import { getHeadingLevel, getHeadingStyle } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ /** @type {import("markdownlint").Rule} */
8
+ export default {
9
+ "names": [ "MD003", "heading-style" ],
10
+ "description": "Heading style",
11
+ "tags": [ "headings" ],
12
+ "parser": "micromark",
13
+ "function": function MD003(params, onError) {
14
+ let style = String(params.config.style || "consistent");
15
+ for (const heading of filterByTypesCached([ "atxHeading", "setextHeading" ])) {
16
+ const styleForToken = getHeadingStyle(heading);
17
+ if (style === "consistent") {
18
+ style = styleForToken;
19
+ }
20
+ if (styleForToken !== style) {
21
+ const h12 = getHeadingLevel(heading) <= 2;
22
+ const setextWithAtx =
23
+ (style === "setext_with_atx") &&
24
+ ((h12 && (styleForToken === "setext")) ||
25
+ (!h12 && (styleForToken === "atx")));
26
+ const setextWithAtxClosed =
27
+ (style === "setext_with_atx_closed") &&
28
+ ((h12 && (styleForToken === "setext")) ||
29
+ (!h12 && (styleForToken === "atx_closed")));
30
+ if (!setextWithAtx && !setextWithAtxClosed) {
31
+ let expected = style;
32
+ if (style === "setext_with_atx") {
33
+ expected = h12 ? "setext" : "atx";
34
+ } else if (style === "setext_with_atx_closed") {
35
+ expected = h12 ? "setext" : "atx_closed";
36
+ }
37
+ addErrorDetailIf(
38
+ onError,
39
+ heading.startLine,
40
+ expected,
41
+ styleForToken
42
+ );
43
+ }
44
+ }
45
+ }
46
+ }
47
+ };
@@ -0,0 +1,73 @@
1
+ // @ts-check
2
+
3
+ import { addErrorDetailIf } from "../helpers/helpers.cjs";
4
+ import { getDescendantsByType, getParentOfType } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ const markerToStyle = (/** @type {string} */ marker) => (marker === "-") ? "dash" : ((marker === "+") ? "plus" : "asterisk");
8
+ const styleToMarker = (/** @type {string} */ style) => (style === "dash") ? "-" : ((style === "plus") ? "+" : "*");
9
+ const differentItemStyle = (/** @type {string} */ style) => (style === "dash") ? "plus" : ((style === "plus") ? "asterisk" : "dash");
10
+ const validStyles = new Set([
11
+ "asterisk",
12
+ "consistent",
13
+ "dash",
14
+ "plus",
15
+ "sublist"
16
+ ]);
17
+
18
+ /** @type {import("markdownlint").Rule} */
19
+ export default {
20
+ "names": [ "MD004", "ul-style" ],
21
+ "description": "Unordered list style",
22
+ "tags": [ "bullet", "ul" ],
23
+ "parser": "micromark",
24
+ "function": function MD004(params, onError) {
25
+ const style = String(params.config.style || "consistent");
26
+ let expectedStyle = validStyles.has(style) ? style : "dash";
27
+ /** @type {("asterisk"|"dash"|"plus")[]} */
28
+ const nestingStyles = [];
29
+ for (const listUnordered of filterByTypesCached([ "listUnordered" ])) {
30
+ let nesting = 0;
31
+ if (style === "sublist") {
32
+ /** @type {import("markdownlint").MicromarkToken | null} */
33
+ let parent = listUnordered;
34
+ // @ts-ignore
35
+ while ((parent = getParentOfType(parent, [ "listOrdered", "listUnordered" ]))) {
36
+ nesting++;
37
+ }
38
+ }
39
+ const listItemMarkers = getDescendantsByType(listUnordered, [ "listItemPrefix", "listItemMarker" ]);
40
+ for (const listItemMarker of listItemMarkers) {
41
+ const itemStyle = markerToStyle(listItemMarker.text);
42
+ if (style === "sublist") {
43
+ // eslint-disable-next-line unicorn/no-computed-property-existence-check
44
+ if (!nestingStyles[nesting]) {
45
+ nestingStyles[nesting] =
46
+ (itemStyle === nestingStyles[nesting - 1]) ?
47
+ differentItemStyle(itemStyle) :
48
+ itemStyle;
49
+ }
50
+ expectedStyle = nestingStyles[nesting];
51
+ } else if (expectedStyle === "consistent") {
52
+ expectedStyle = itemStyle;
53
+ }
54
+ const column = listItemMarker.startColumn;
55
+ const length = listItemMarker.endColumn - listItemMarker.startColumn;
56
+ addErrorDetailIf(
57
+ onError,
58
+ listItemMarker.startLine,
59
+ expectedStyle,
60
+ itemStyle,
61
+ undefined,
62
+ undefined,
63
+ [ column, length ],
64
+ {
65
+ "editColumn": column,
66
+ "deleteCount": length,
67
+ "insertText": styleToMarker(expectedStyle)
68
+ }
69
+ );
70
+ }
71
+ }
72
+ }
73
+ };
@@ -0,0 +1,69 @@
1
+ // @ts-check
2
+
3
+ import { addError, addErrorDetailIf } from "../helpers/helpers.cjs";
4
+ import { filterByTypesCached } from "./cache.mjs";
5
+
6
+ /** @type {import("markdownlint").Rule} */
7
+ export default {
8
+ "names": [ "MD005", "list-indent" ],
9
+ "description": "Inconsistent indentation for list items at the same level",
10
+ "tags": [ "bullet", "ul", "indentation" ],
11
+ "parser": "micromark",
12
+ "function": function MD005(params, onError) {
13
+ for (const list of filterByTypesCached([ "listOrdered", "listUnordered" ])) {
14
+ const expectedIndent = list.startColumn - 1;
15
+ let expectedEnd = 0;
16
+ let endMatching = false;
17
+ const listItemPrefixes =
18
+ list.children.filter((token) => (token.type === "listItemPrefix"));
19
+ for (const listItemPrefix of listItemPrefixes) {
20
+ const lineNumber = listItemPrefix.startLine;
21
+ const actualIndent = listItemPrefix.startColumn - 1;
22
+ const range = [ 1, listItemPrefix.endColumn - 1 ];
23
+ if (list.type === "listUnordered") {
24
+ addErrorDetailIf(
25
+ onError,
26
+ lineNumber,
27
+ expectedIndent,
28
+ actualIndent,
29
+ undefined,
30
+ undefined,
31
+ range
32
+ // No fixInfo; MD007 handles this scenario better
33
+ );
34
+ } else {
35
+ const markerLength = listItemPrefix.text.trim().length;
36
+ const actualEnd = listItemPrefix.startColumn + markerLength - 1;
37
+ expectedEnd ||= actualEnd;
38
+ if ((expectedIndent !== actualIndent) || endMatching) {
39
+ if (expectedEnd === actualEnd) {
40
+ endMatching = true;
41
+ } else {
42
+ const detail = endMatching ?
43
+ `Expected: (${expectedEnd}); Actual: (${actualEnd})` :
44
+ `Expected: ${expectedIndent}; Actual: ${actualIndent}`;
45
+ const expected = endMatching ?
46
+ expectedEnd - markerLength :
47
+ expectedIndent;
48
+ const actual = endMatching ?
49
+ actualEnd - markerLength :
50
+ actualIndent;
51
+ addError(
52
+ onError,
53
+ lineNumber,
54
+ detail,
55
+ undefined,
56
+ range,
57
+ {
58
+ "editColumn": Math.min(actual, expected) + 1,
59
+ "deleteCount": Math.max(actual - expected, 0),
60
+ "insertText": "".padEnd(Math.max(expected - actual, 0))
61
+ }
62
+ );
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+ }
69
+ };
@@ -0,0 +1,84 @@
1
+ // @ts-check
2
+
3
+ import { addErrorDetailIf } from "../helpers/helpers.cjs";
4
+ import { getParentOfType } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ /** @type {import("micromark-util-types").TokenType[]} */
8
+ const unorderedListTypes =
9
+ [ "blockQuotePrefix", "listItemPrefix", "listUnordered" ];
10
+ /** @type {import("micromark-util-types").TokenType[]} */
11
+ const unorderedParentTypes =
12
+ [ "blockQuote", "listOrdered", "listUnordered" ];
13
+
14
+ /** @type {import("markdownlint").Rule} */
15
+ export default {
16
+ "names": [ "MD007", "ul-indent" ],
17
+ "description": "Unordered list indentation",
18
+ "tags": [ "bullet", "ul", "indentation" ],
19
+ "parser": "micromark",
20
+ "function": function MD007(params, onError) {
21
+ const indent = Number(params.config.indent ?? 2);
22
+ const startIndented = !!params.config.start_indented;
23
+ const startIndent = Number(params.config.start_indent ?? indent);
24
+ const unorderedListNesting = new Map();
25
+ let lastBlockQuotePrefix = null;
26
+ const tokens = filterByTypesCached(unorderedListTypes);
27
+ for (const token of tokens) {
28
+ const { endColumn, parent, startColumn, startLine, type } = token;
29
+ if (type === "blockQuotePrefix") {
30
+ lastBlockQuotePrefix = token;
31
+ } else if (type === "listUnordered") {
32
+ let nesting = 0;
33
+ /** @type {import("markdownlint").MicromarkToken | null} */
34
+ let current = token;
35
+ while (
36
+ // @ts-ignore
37
+ (current = getParentOfType(current, unorderedParentTypes))
38
+ ) {
39
+ if (current.type === "listUnordered") {
40
+ nesting++;
41
+ // eslint-disable-next-line no-continue
42
+ continue;
43
+ } else if (current.type === "listOrdered") {
44
+ nesting = -1;
45
+ }
46
+ break;
47
+ }
48
+ if (nesting >= 0) {
49
+ unorderedListNesting.set(token, nesting);
50
+ }
51
+ } else {
52
+ // listItemPrefix
53
+ const nesting = unorderedListNesting.get(parent);
54
+ if (nesting !== undefined) {
55
+ // listItemPrefix for listUnordered
56
+ const baseIndent = (getParentOfType(token, [ "gfmFootnoteDefinition" ])) ? 4 : 0;
57
+ const expectedIndent =
58
+ baseIndent + (startIndented ? startIndent : 0) + (nesting * indent);
59
+ const blockQuoteAdjustment =
60
+ (lastBlockQuotePrefix?.endLine === startLine) ?
61
+ (lastBlockQuotePrefix.endColumn - 1) :
62
+ 0;
63
+ const actualIndent = startColumn - 1 - blockQuoteAdjustment;
64
+ const range = [ 1, endColumn - 1 ];
65
+ const fixInfo = {
66
+ "editColumn": startColumn - actualIndent,
67
+ "deleteCount": Math.max(actualIndent - expectedIndent, 0),
68
+ "insertText": "".padEnd(Math.max(expectedIndent - actualIndent, 0))
69
+ };
70
+ addErrorDetailIf(
71
+ onError,
72
+ startLine,
73
+ expectedIndent,
74
+ actualIndent,
75
+ undefined,
76
+ undefined,
77
+ range,
78
+ fixInfo
79
+ );
80
+ }
81
+ }
82
+ }
83
+ }
84
+ };
@@ -0,0 +1,95 @@
1
+ // @ts-check
2
+
3
+ import { addError } from "../helpers/helpers.cjs";
4
+ import { addRangeToSet } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ /** @type {import("markdownlint").Rule} */
8
+ export default {
9
+ "names": [ "MD009", "no-trailing-spaces" ],
10
+ "description": "Trailing spaces",
11
+ "tags": [ "whitespace" ],
12
+ "parser": "micromark",
13
+ "function": function MD009(params, onError) {
14
+ const brSpaces = Number(params.config.br_spaces ?? 2);
15
+ const codeBlocks = params.config.code_blocks;
16
+ const includeCode = (codeBlocks !== undefined) && !!codeBlocks;
17
+ const listItemEmptyLines = !!params.config.list_item_empty_lines;
18
+ const strict = !!params.config.strict;
19
+ const codeBlockLineNumbers = new Set();
20
+ if (!includeCode) {
21
+ for (const codeBlock of filterByTypesCached([ "codeFenced" ])) {
22
+ addRangeToSet(codeBlockLineNumbers, codeBlock.startLine + 1, codeBlock.endLine - 1);
23
+ }
24
+ for (const codeBlock of filterByTypesCached([ "codeIndented" ])) {
25
+ addRangeToSet(codeBlockLineNumbers, codeBlock.startLine, codeBlock.endLine);
26
+ }
27
+ }
28
+ const listItemLineNumbers = new Set();
29
+ if (listItemEmptyLines) {
30
+ for (const listBlock of filterByTypesCached([ "listOrdered", "listUnordered" ])) {
31
+ addRangeToSet(listItemLineNumbers, listBlock.startLine, listBlock.endLine);
32
+ let trailingIndent = true;
33
+ for (let i = listBlock.children.length - 1; i >= 0; i--) {
34
+ const child = listBlock.children[i];
35
+ switch (child.type) {
36
+ case "content":
37
+ trailingIndent = false;
38
+ break;
39
+ case "listItemIndent":
40
+ if (trailingIndent) {
41
+ listItemLineNumbers.delete(child.startLine);
42
+ }
43
+ break;
44
+ case "listItemPrefix":
45
+ trailingIndent = true;
46
+ break;
47
+ default:
48
+ break;
49
+ }
50
+ }
51
+ }
52
+ }
53
+ const paragraphLineNumbers = new Set();
54
+ const codeInlineLineNumbers = new Set();
55
+ if (strict) {
56
+ for (const paragraph of filterByTypesCached([ "paragraph" ])) {
57
+ addRangeToSet(paragraphLineNumbers, paragraph.startLine, paragraph.endLine - 1);
58
+ }
59
+ for (const codeText of filterByTypesCached([ "codeText" ])) {
60
+ addRangeToSet(codeInlineLineNumbers, codeText.startLine, codeText.endLine - 1);
61
+ }
62
+ }
63
+ const expected = (brSpaces < 2) ? 0 : brSpaces;
64
+ for (let lineIndex = 0; lineIndex < params.lines.length; lineIndex++) {
65
+ const line = params.lines[lineIndex];
66
+ const lineNumber = lineIndex + 1;
67
+ const trailingSpaces = line.length - line.trimEnd().length;
68
+ if (
69
+ trailingSpaces &&
70
+ !codeBlockLineNumbers.has(lineNumber) &&
71
+ !listItemLineNumbers.has(lineNumber) &&
72
+ (
73
+ (expected !== trailingSpaces) ||
74
+ (strict &&
75
+ (!paragraphLineNumbers.has(lineNumber) ||
76
+ codeInlineLineNumbers.has(lineNumber)))
77
+ )
78
+ ) {
79
+ const column = line.length - trailingSpaces + 1;
80
+ addError(
81
+ onError,
82
+ lineNumber,
83
+ "Expected: " + (expected === 0 ? "" : "0 or ") +
84
+ expected + "; Actual: " + trailingSpaces,
85
+ undefined,
86
+ [ column, trailingSpaces ],
87
+ {
88
+ "editColumn": column,
89
+ "deleteCount": trailingSpaces
90
+ }
91
+ );
92
+ }
93
+ }
94
+ }
95
+ };
@@ -0,0 +1,78 @@
1
+ // @ts-check
2
+
3
+ import { addError, hasOverlap } from "../helpers/helpers.cjs";
4
+ import { getDescendantsByType } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ const tabRe = /\t+/g;
8
+
9
+ /** @type {import("markdownlint").Rule} */
10
+ export default {
11
+ "names": [ "MD010", "no-hard-tabs" ],
12
+ "description": "Hard tabs",
13
+ "tags": [ "whitespace", "hard_tab" ],
14
+ "parser": "micromark",
15
+ "function": function MD010(params, onError) {
16
+ const codeBlocks = params.config.code_blocks;
17
+ const includeCode = (codeBlocks === undefined) || !!codeBlocks;
18
+ const ignoreCodeLanguages = new Set(
19
+ (params.config.ignore_code_languages || [])
20
+ .map((/** @type {void} */ language) => String(language).toLowerCase())
21
+ );
22
+ const spacesPerTab = params.config.spaces_per_tab;
23
+ const spaceMultiplier = (spacesPerTab === undefined) ?
24
+ 1 :
25
+ Math.max(0, Number(spacesPerTab));
26
+ /** @type {import("markdownlint").MicromarkTokenType[]} */
27
+ const exclusionTypes = [];
28
+ if (includeCode) {
29
+ if (ignoreCodeLanguages.size > 0) {
30
+ exclusionTypes.push("codeFenced");
31
+ }
32
+ } else {
33
+ exclusionTypes.push("codeFenced", "codeIndented", "codeText");
34
+ }
35
+ const codeTokens = filterByTypesCached(exclusionTypes).filter((token) => {
36
+ if ((token.type === "codeFenced") && (ignoreCodeLanguages.size > 0)) {
37
+ const fenceInfos = getDescendantsByType(token, [ "codeFencedFence", "codeFencedFenceInfo" ]);
38
+ return fenceInfos.every((fenceInfo) => ignoreCodeLanguages.has(fenceInfo.text.toLowerCase()));
39
+ }
40
+ return true;
41
+ });
42
+ const codeRanges = codeTokens.map((token) => {
43
+ const { type, startLine, startColumn, endLine, endColumn } = token;
44
+ const codeFenced = (type === "codeFenced");
45
+ return {
46
+ "startLine": startLine + (codeFenced ? 1 : 0),
47
+ "startColumn": codeFenced ? 0 : startColumn,
48
+ "endLine": endLine - (codeFenced ? 1 : 0),
49
+ "endColumn": codeFenced ? Number.MAX_SAFE_INTEGER : endColumn
50
+ };
51
+ });
52
+ for (let lineIndex = 0; lineIndex < params.lines.length; lineIndex++) {
53
+ const line = params.lines[lineIndex];
54
+ let match = null;
55
+ while ((match = tabRe.exec(line)) !== null) {
56
+ const lineNumber = lineIndex + 1;
57
+ const column = match.index + 1;
58
+ const length = match[0].length;
59
+ /** @type {import("../helpers/helpers.cjs").FileRange} */
60
+ const range = { "startLine": lineNumber, "startColumn": column, "endLine": lineNumber, "endColumn": column + length - 1 };
61
+ if (!codeRanges.some((codeRange) => hasOverlap(codeRange, range))) {
62
+ addError(
63
+ onError,
64
+ lineNumber,
65
+ "Column: " + column,
66
+ undefined,
67
+ [ column, length ],
68
+ {
69
+ "editColumn": column,
70
+ "deleteCount": length,
71
+ "insertText": "".padEnd(length * spaceMultiplier)
72
+ }
73
+ );
74
+ }
75
+ }
76
+ }
77
+ }
78
+ };
@@ -0,0 +1,59 @@
1
+ // @ts-check
2
+
3
+ import { re } from "re2js";
4
+ import { addError, hasOverlap } from "../helpers/helpers.cjs";
5
+ import { addRangeToSet } from "../helpers/micromark-helpers.cjs";
6
+ import { filterByTypesCached } from "./cache.mjs";
7
+
8
+ /** @typedef {typeof import("micromark-extension-math")} _ambient_ */
9
+
10
+ const reversedLinkRe = re`(^|[^\\])\(([^()]+)\)\[([^\]^][^\]]*)\]`;
11
+
12
+ /** @type {import("markdownlint").Rule} */
13
+ export default {
14
+ "names": [ "MD011", "no-reversed-links" ],
15
+ "description": "Reversed link syntax",
16
+ "tags": [ "links" ],
17
+ "parser": "micromark",
18
+ "function": function MD011(params, onError) {
19
+ const ignoreBlockLineNumbers = new Set();
20
+ for (const ignoreBlock of filterByTypesCached([ "codeFenced", "codeIndented", "htmlFlow", "mathFlow" ])) {
21
+ addRangeToSet(ignoreBlockLineNumbers, ignoreBlock.startLine, ignoreBlock.endLine);
22
+ }
23
+ const ignoreTexts = filterByTypesCached([ "codeText", "mathText" ]);
24
+ for (const [ lineIndex, line ] of params.lines.entries()) {
25
+ const lineNumber = lineIndex + 1;
26
+ if (!ignoreBlockLineNumbers.has(lineNumber)) {
27
+ for (const match of reversedLinkRe.matchAll(line)) {
28
+ const [ reversedLink, preChar, linkText, linkDestination ] = match;
29
+ const matchIndex = match.index ?? 0;
30
+ const matchLength = match[0].length;
31
+ if (
32
+ (line[matchIndex + matchLength] !== "(") &&
33
+ !linkText.endsWith("\\") &&
34
+ !linkDestination.endsWith("\\")
35
+ ) {
36
+ const column = matchIndex + preChar.length + 1;
37
+ const length = matchLength - preChar.length;
38
+ /** @type {import("../helpers/helpers.cjs").FileRange} */
39
+ const range = { "startLine": lineNumber, "startColumn": column, "endLine": lineNumber, "endColumn": column + length - 1 };
40
+ if (!ignoreTexts.some((ignoreText) => hasOverlap(ignoreText, range))) {
41
+ addError(
42
+ onError,
43
+ lineNumber,
44
+ reversedLink.slice(preChar.length),
45
+ undefined,
46
+ [ column, length ],
47
+ {
48
+ "editColumn": column,
49
+ "deleteCount": length,
50
+ "insertText": `[${linkText}](${linkDestination})`
51
+ }
52
+ );
53
+ }
54
+ }
55
+ }
56
+ }
57
+ }
58
+ }
59
+ };
@@ -0,0 +1,40 @@
1
+ // @ts-check
2
+
3
+ import { addErrorDetailIf } from "../helpers/helpers.cjs";
4
+ import { addRangeToSet } from "../helpers/micromark-helpers.cjs";
5
+ import { filterByTypesCached } from "./cache.mjs";
6
+
7
+ /** @type {import("markdownlint").Rule} */
8
+ export default {
9
+ "names": [ "MD012", "no-multiple-blanks" ],
10
+ "description": "Multiple consecutive blank lines",
11
+ "tags": [ "whitespace", "blank_lines" ],
12
+ "parser": "micromark",
13
+ "function": function MD012(params, onError) {
14
+ const maximum = Number(params.config.maximum ?? 1);
15
+ const { lines } = params;
16
+ const codeBlockLineNumbers = new Set();
17
+ for (const codeBlock of filterByTypesCached([ "codeFenced", "codeIndented" ])) {
18
+ addRangeToSet(codeBlockLineNumbers, codeBlock.startLine, codeBlock.endLine);
19
+ }
20
+ let count = 0;
21
+ for (const [ lineIndex, line ] of lines.entries()) {
22
+ const inCode = codeBlockLineNumbers.has(lineIndex + 1);
23
+ count = (inCode || (line.trim().length > 0)) ? 0 : count + 1;
24
+ if (maximum < count) {
25
+ addErrorDetailIf(
26
+ onError,
27
+ lineIndex + 1,
28
+ maximum,
29
+ count,
30
+ undefined,
31
+ undefined,
32
+ undefined,
33
+ {
34
+ "deleteCount": -1
35
+ }
36
+ );
37
+ }
38
+ }
39
+ }
40
+ };
@@ -0,0 +1,95 @@
1
+ // @ts-check
2
+
3
+ import { re } from "re2js";
4
+ import { addErrorDetailIf } from "../helpers/helpers.cjs";
5
+ import { filterByTypesCached, getReferenceLinkImageData } from "./cache.mjs";
6
+ import { addRangeToSet, getDescendantsByType } from "../helpers/micromark-helpers.cjs";
7
+
8
+ /** @typedef {typeof import("micromark-extension-gfm-autolink-literal")} _ambient_ */
9
+ /** @typedef {typeof import("micromark-extension-gfm-table")} _ambient_2_ */
10
+
11
+ // Regular expression for a line that is not wrappable
12
+ const notWrappableRe = /^(?:[#>\s]*\s)?\S*$/;
13
+
14
+ // Regular expression for the last run of non-whitespace
15
+ const lastRunRe = re`\S*$`;
16
+
17
+ /** @type {import("markdownlint").Rule} */
18
+ export default {
19
+ "names": [ "MD013", "line-length" ],
20
+ "description": "Line length",
21
+ "tags": [ "line_length" ],
22
+ "parser": "micromark",
23
+ "function": function MD013(params, onError) {
24
+ const lineLength = Number(params.config.line_length ?? 80);
25
+ const headingLineLength = Number(params.config.heading_line_length ?? lineLength);
26
+ const codeLineLength = Number(params.config.code_block_line_length ?? lineLength);
27
+ const strict = !!params.config.strict;
28
+ const stern = !!params.config.stern;
29
+ const codeBlocks = params.config.code_blocks;
30
+ const includeCodeBlocks = (codeBlocks === undefined) || !!codeBlocks;
31
+ const tables = params.config.tables;
32
+ const includeTables = (tables === undefined) || !!tables;
33
+ const headings = params.config.headings;
34
+ const includeHeadings = (headings === undefined) || !!headings;
35
+ const headingLineNumbers = new Set();
36
+ for (const heading of filterByTypesCached([ "atxHeading", "setextHeading" ])) {
37
+ addRangeToSet(headingLineNumbers, heading.startLine, heading.endLine);
38
+ }
39
+ const codeBlockLineNumbers = new Set();
40
+ for (const codeBlock of filterByTypesCached([ "codeFenced", "codeIndented" ])) {
41
+ addRangeToSet(codeBlockLineNumbers, codeBlock.startLine, codeBlock.endLine);
42
+ }
43
+ const tableLineNumbers = new Set();
44
+ for (const table of filterByTypesCached([ "table" ])) {
45
+ addRangeToSet(tableLineNumbers, table.startLine, table.endLine);
46
+ }
47
+ const linkLineNumbers = new Set();
48
+ for (const link of filterByTypesCached([ "autolink", "image", "link", "literalAutolink" ])) {
49
+ addRangeToSet(linkLineNumbers, link.startLine, link.endLine);
50
+ }
51
+ const paragraphDataLineNumbers = new Set();
52
+ for (const paragraph of filterByTypesCached([ "paragraph" ])) {
53
+ for (const data of getDescendantsByType(paragraph, [ "data" ])) {
54
+ addRangeToSet(paragraphDataLineNumbers, data.startLine, data.endLine);
55
+ }
56
+ }
57
+ const linkOnlyLineNumbers = new Set();
58
+ for (const lineNumber of linkLineNumbers) {
59
+ if (!paragraphDataLineNumbers.has(lineNumber)) {
60
+ linkOnlyLineNumbers.add(lineNumber);
61
+ }
62
+ }
63
+ const definitionLineIndices = new Set(getReferenceLinkImageData().definitionLineIndices);
64
+ for (let lineIndex = 0; lineIndex < params.lines.length; lineIndex++) {
65
+ const line = params.lines[lineIndex];
66
+ const lineNumber = lineIndex + 1;
67
+ const isHeading = headingLineNumbers.has(lineNumber);
68
+ const inCode = codeBlockLineNumbers.has(lineNumber);
69
+ const inTable = tableLineNumbers.has(lineNumber);
70
+ const maxLength = inCode ? codeLineLength : (isHeading ? headingLineLength : lineLength);
71
+ // If not strict/stern, the last run of non-whitespace is allowed to go
72
+ // beyond the limit as long as it begins within the limit
73
+ const text = (strict || stern) ? line : lastRunRe.matcher(line).replaceFirst("#");
74
+ if ((maxLength > 0) &&
75
+ (includeCodeBlocks || !inCode) &&
76
+ (includeTables || !inTable) &&
77
+ (includeHeadings || !isHeading) &&
78
+ !definitionLineIndices.has(lineIndex) &&
79
+ (strict ||
80
+ (!(stern && notWrappableRe.test(line)) &&
81
+ !linkOnlyLineNumbers.has(lineNumber))) &&
82
+ (text.length > maxLength)) {
83
+ addErrorDetailIf(
84
+ onError,
85
+ lineNumber,
86
+ maxLength,
87
+ line.length,
88
+ undefined,
89
+ undefined,
90
+ [ maxLength + 1, line.length - maxLength ]
91
+ );
92
+ }
93
+ }
94
+ }
95
+ };