markdownlint 0.38.0 → 0.40.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 (60) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +144 -75
  4. package/doc/Rules.md +174 -18
  5. package/doc/md001.md +14 -0
  6. package/doc/md009.md +8 -9
  7. package/doc/md010.md +6 -0
  8. package/doc/md029.md +2 -0
  9. package/doc/md033.md +7 -1
  10. package/doc/md051.md +10 -5
  11. package/doc/md055.md +1 -1
  12. package/doc/md056.md +1 -1
  13. package/doc/md059.md +4 -1
  14. package/doc/md060.md +118 -0
  15. package/helpers/README.md +2 -2
  16. package/helpers/helpers.cjs +171 -15
  17. package/helpers/micromark-helpers.cjs +11 -7
  18. package/helpers/package.json +1 -1
  19. package/lib/cache.mjs +6 -2
  20. package/lib/configuration-strict.d.ts +1351 -205
  21. package/lib/constants.mjs +6 -5
  22. package/lib/defer-require.cjs +2 -0
  23. package/lib/exports.d.mts +1 -2
  24. package/lib/exports.mjs +1 -2
  25. package/lib/markdownit.cjs +2 -1
  26. package/lib/markdownlint.d.mts +101 -51
  27. package/lib/markdownlint.mjs +217 -181
  28. package/lib/md001.mjs +6 -2
  29. package/lib/md004.mjs +7 -18
  30. package/lib/md007.mjs +2 -1
  31. package/lib/md009.mjs +9 -5
  32. package/lib/md010.mjs +1 -1
  33. package/lib/md011.mjs +8 -6
  34. package/lib/md013.mjs +14 -27
  35. package/lib/md022.mjs +5 -2
  36. package/lib/md029.mjs +25 -14
  37. package/lib/md031.mjs +0 -1
  38. package/lib/md032.mjs +3 -1
  39. package/lib/md033.mjs +28 -20
  40. package/lib/md034.mjs +2 -1
  41. package/lib/md036.mjs +5 -3
  42. package/lib/md037.mjs +10 -7
  43. package/lib/md042.mjs +4 -2
  44. package/lib/md043.mjs +2 -2
  45. package/lib/md044.mjs +1 -1
  46. package/lib/md046.mjs +6 -6
  47. package/lib/md053.mjs +1 -1
  48. package/lib/md054.mjs +7 -5
  49. package/lib/md055.mjs +7 -6
  50. package/lib/md056.mjs +1 -1
  51. package/lib/md060.mjs +170 -0
  52. package/lib/micromark-parse.mjs +5 -3
  53. package/lib/node-imports-browser.mjs +2 -0
  54. package/lib/parse-configuration.mjs +5 -4
  55. package/lib/rules.mjs +3 -1
  56. package/package.json +18 -18
  57. package/schema/.markdownlint.jsonc +69 -54
  58. package/schema/.markdownlint.yaml +66 -53
  59. package/schema/markdownlint-config-schema-strict.json +4709 -1537
  60. package/schema/markdownlint-config-schema.json +4709 -1537
package/lib/cache.mjs CHANGED
@@ -6,6 +6,7 @@ import { filterByTypes } from "../helpers/micromark-helpers.cjs";
6
6
  /** @typedef {import("markdownlint").RuleParams} RuleParams */
7
7
  /** @typedef {import("markdownlint").MicromarkToken} MicromarkToken */
8
8
  /** @typedef {import("markdownlint").MicromarkTokenType} MicromarkTokenType */
9
+ /** @typedef {import("../helpers/helpers.cjs").GetReferenceLinkImageDataResult} GetReferenceLinkImageDataResult */
9
10
 
10
11
  /** @type {Map<string, object>} */
11
12
  const map = new Map();
@@ -36,11 +37,12 @@ export function micromarkTokens() {
36
37
  * Gets a cached object value - computes it and caches it.
37
38
  *
38
39
  * @param {string} name Cache object name.
39
- * @param {Function} getValue Getter for object value.
40
+ * @param {() => Object} getValue Getter for object value.
40
41
  * @returns {Object} Object value.
41
42
  */
42
43
  function getCached(name, getValue) {
43
44
  if (map.has(name)) {
45
+ // @ts-ignore
44
46
  return map.get(name);
45
47
  }
46
48
  const value = getValue();
@@ -56,6 +58,7 @@ function getCached(name, getValue) {
56
58
  * @returns {MicromarkToken[]} Filtered tokens.
57
59
  */
58
60
  export function filterByTypesCached(types, htmlFlow) {
61
+ // @ts-ignore
59
62
  return getCached(
60
63
  // eslint-disable-next-line prefer-rest-params
61
64
  JSON.stringify(arguments),
@@ -66,9 +69,10 @@ export function filterByTypesCached(types, htmlFlow) {
66
69
  /**
67
70
  * Gets a reference link and image data object.
68
71
  *
69
- * @returns {Object} Reference link and image data object.
72
+ * @returns {GetReferenceLinkImageDataResult} Reference link and image data object.
70
73
  */
71
74
  export function getReferenceLinkImageData() {
75
+ // @ts-ignore
72
76
  return getCached(
73
77
  getReferenceLinkImageData.name,
74
78
  () => helpersGetReferenceLinkImageData(micromarkTokens())