@html-eslint/eslint-plugin 0.21.0 → 0.23.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 (43) hide show
  1. package/lib/index.js +24 -3
  2. package/lib/rules/element-newline.js +10 -3
  3. package/lib/rules/id-naming-convention.js +21 -2
  4. package/lib/rules/indent.js +6 -2
  5. package/lib/rules/lowercase.js +8 -1
  6. package/lib/rules/no-abstract-roles.js +8 -1
  7. package/lib/rules/no-accesskey-attrs.js +8 -1
  8. package/lib/rules/no-aria-hidden-body.js +5 -1
  9. package/lib/rules/no-duplicate-attrs.js +8 -1
  10. package/lib/rules/no-duplicate-id.js +8 -1
  11. package/lib/rules/no-extra-spacing-attrs.js +16 -1
  12. package/lib/rules/no-inline-styles.js +5 -1
  13. package/lib/rules/no-multiple-empty-lines.js +6 -1
  14. package/lib/rules/no-multiple-h1.js +6 -1
  15. package/lib/rules/no-non-scalable-viewport.js +5 -1
  16. package/lib/rules/no-obsolete-tags.js +5 -1
  17. package/lib/rules/no-positive-tabindex.js +8 -1
  18. package/lib/rules/no-restricted-attr-values.js +6 -1
  19. package/lib/rules/no-restricted-attrs.js +6 -1
  20. package/lib/rules/no-script-style-type.js +8 -1
  21. package/lib/rules/no-skip-heading-levels.js +6 -1
  22. package/lib/rules/no-target-blank.js +5 -1
  23. package/lib/rules/no-trailing-spaces.js +5 -1
  24. package/lib/rules/quotes.js +10 -1
  25. package/lib/rules/require-attrs.js +8 -1
  26. package/lib/rules/require-button-type.js +5 -1
  27. package/lib/rules/require-closing-tags.js +6 -1
  28. package/lib/rules/require-doctype.js +5 -1
  29. package/lib/rules/require-frame-title.js +5 -1
  30. package/lib/rules/require-img-alt.js +6 -1
  31. package/lib/rules/require-lang.js +5 -1
  32. package/lib/rules/require-li-container.js +5 -1
  33. package/lib/rules/require-meta-charset.js +7 -2
  34. package/lib/rules/require-meta-description.js +6 -2
  35. package/lib/rules/require-meta-viewport.js +7 -2
  36. package/lib/rules/require-open-graph-protocol.js +7 -2
  37. package/lib/rules/require-title.js +9 -3
  38. package/lib/rules/sort-attrs.js +8 -1
  39. package/lib/rules/utils/node.js +13 -0
  40. package/lib/types.d.ts +261 -262
  41. package/package.json +11 -7
  42. package/types/index.d.ts +14 -0
  43. package/types/index.d.ts.map +1 -0
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ */
4
+
1
5
  const { NODE_TYPES } = require("@html-eslint/parser");
2
6
  const { RULE_CATEGORY } = require("../constants");
3
7
 
@@ -8,7 +12,7 @@ const MESSAGE_IDS = {
8
12
  const VALID_CONTAINERS = ["ul", "ol", "menu"];
9
13
 
10
14
  /**
11
- * @type {Rule}
15
+ * @type {RuleModule}
12
16
  */
13
17
  module.exports = {
14
18
  meta: {
@@ -1,3 +1,8 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").TagNode } TagNode
4
+ */
5
+
1
6
  const { NODE_TYPES } = require("@html-eslint/parser");
2
7
  const { RULE_CATEGORY } = require("../constants");
3
8
  const { find } = require("./utils/array");
@@ -9,7 +14,7 @@ const MESSAGE_IDS = {
9
14
  };
10
15
 
11
16
  /**
12
- * @param {ChildType<TagNode>} node
17
+ * @param { import("../types").ChildType<TagNode>} node
13
18
  * @returns {node is TagNode}
14
19
  */
15
20
  function isMetaCharset(node) {
@@ -21,7 +26,7 @@ function isMetaCharset(node) {
21
26
  }
22
27
 
23
28
  /**
24
- * @type {Rule}
29
+ * @type {RuleModule}
25
30
  */
26
31
  module.exports = {
27
32
  meta: {
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").TagNode } TagNode
4
+ */
1
5
  const { NODE_TYPES } = require("@html-eslint/parser");
2
6
  const { RULE_CATEGORY } = require("../constants");
3
7
  const { filter } = require("./utils/array");
@@ -9,7 +13,7 @@ const MESSAGE_IDS = {
9
13
  };
10
14
 
11
15
  /**
12
- * @param {ChildType<TagNode>} node
16
+ * @param {import("../types").ChildType<TagNode>} node
13
17
  * @returns {node is TagNode}
14
18
  */
15
19
  function isMetaTagNode(node) {
@@ -17,7 +21,7 @@ function isMetaTagNode(node) {
17
21
  }
18
22
 
19
23
  /**
20
- * @type {Rule}
24
+ * @type {RuleModule}
21
25
  */
22
26
  module.exports = {
23
27
  meta: {
@@ -1,3 +1,8 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").TagNode } TagNode
4
+ */
5
+
1
6
  const { NODE_TYPES } = require("@html-eslint/parser");
2
7
  const { RULE_CATEGORY } = require("../constants");
3
8
  const { find } = require("./utils/array");
@@ -9,7 +14,7 @@ const MESSAGE_IDS = {
9
14
  };
10
15
 
11
16
  /**
12
- * @param {ChildType<TagNode>} node
17
+ * @param {import("../types").ChildType<TagNode>} node
13
18
  * @returns {node is TagNode}
14
19
  */
15
20
  function isMetaViewport(node) {
@@ -25,7 +30,7 @@ function isMetaViewport(node) {
25
30
  }
26
31
 
27
32
  /**
28
- * @type {Rule}
33
+ * @type {RuleModule}
29
34
  */
30
35
  module.exports = {
31
36
  meta: {
@@ -1,3 +1,8 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").TagNode } TagNode
4
+ */
5
+
1
6
  const { NODE_TYPES } = require("@html-eslint/parser");
2
7
  const { RULE_CATEGORY } = require("../constants");
3
8
  const { filter } = require("./utils/array");
@@ -27,7 +32,7 @@ function normalize(properties) {
27
32
  }
28
33
 
29
34
  /**
30
- * @type {Rule}
35
+ * @type {RuleModule}
31
36
  */
32
37
  module.exports = {
33
38
  meta: {
@@ -65,7 +70,7 @@ module.exports = {
65
70
  );
66
71
 
67
72
  /**
68
- * @param {ChildType<TagNode>} node
73
+ * @param {import("../types").ChildType<TagNode>} node
69
74
  * @returns {node is TagNode}
70
75
  */
71
76
  function isOgpMeta(node) {
@@ -1,3 +1,9 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").TagNode } TagNode
4
+ * @typedef { import("../types").TextNode } TextNode
5
+ */
6
+
1
7
  const { NODE_TYPES } = require("@html-eslint/parser");
2
8
  const { RULE_CATEGORY } = require("../constants");
3
9
  const { find } = require("./utils/array");
@@ -8,7 +14,7 @@ const MESSAGE_IDS = {
8
14
  };
9
15
 
10
16
  /**
11
- * @param {ChildType<TagNode>} node
17
+ * @param {import("../types").ChildType<TagNode>} node
12
18
  * @returns {node is TagNode}
13
19
  */
14
20
  function isTitle(node) {
@@ -16,7 +22,7 @@ function isTitle(node) {
16
22
  }
17
23
 
18
24
  /**
19
- * @param {ChildType<TagNode>} node
25
+ * @param {import("../types").ChildType<TagNode>} node
20
26
  * @returns {node is TextNode}
21
27
  */
22
28
  function isNonEmptyText(node) {
@@ -24,7 +30,7 @@ function isNonEmptyText(node) {
24
30
  }
25
31
 
26
32
  /**
27
- * @type {Rule}
33
+ * @type {RuleModule}
28
34
  */
29
35
  module.exports = {
30
36
  meta: {
@@ -1,3 +1,10 @@
1
+ /**
2
+ * @typedef { import("../types").RuleModule } RuleModule
3
+ * @typedef { import("../types").AttributeNode } AttributeNode
4
+ * @typedef { import("../types").TextNode } TextNode
5
+ * @typedef { import("../types").RuleFixer } RuleFixer
6
+ */
7
+
1
8
  const { RULE_CATEGORY } = require("../constants");
2
9
 
3
10
  const MESSAGE_IDS = {
@@ -5,7 +12,7 @@ const MESSAGE_IDS = {
5
12
  };
6
13
 
7
14
  /**
8
- * @type {Rule}
15
+ * @type {RuleModule}
9
16
  */
10
17
  module.exports = {
11
18
  meta: {
@@ -1,3 +1,16 @@
1
+ /**
2
+ * @typedef { import("../../types").TagNode } TagNode
3
+ * @typedef { import("../../types").ScriptTagNode } ScriptTagNode
4
+ * @typedef { import("../../types").StyleTagNode } StyleTagNode
5
+ * @typedef { import("../../types").AttributeNode } AttributeNode
6
+ * @typedef { import("../../types").AnyNode } AnyNode
7
+ * @typedef { import("../../types").TextNode } TextNode
8
+ * @typedef { import("../../types").CommentContentNode } CommentContentNode
9
+ * @typedef { import("../../types").LineNode } LineNode
10
+ * @typedef { import("../../types").BaseNode } BaseNode
11
+ * @typedef { import("../../types").Location } Location
12
+ */
13
+
1
14
  module.exports = {
2
15
  /**
3
16
  * @param {TagNode | ScriptTagNode | StyleTagNode} node