html-validate 9.7.0 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/README.md +2 -2
  2. package/bin/html-validate.mjs +1 -1
  3. package/dist/cjs/cli.js +2 -2
  4. package/dist/cjs/cli.js.map +1 -1
  5. package/dist/cjs/core-browser.js.map +1 -1
  6. package/dist/cjs/core-nodejs.js.map +1 -1
  7. package/dist/cjs/core.js +13 -10
  8. package/dist/cjs/core.js.map +1 -1
  9. package/dist/cjs/elements.js.map +1 -1
  10. package/dist/cjs/html-validate.js +3 -3
  11. package/dist/cjs/html-validate.js.map +1 -1
  12. package/dist/cjs/html5.js.map +1 -1
  13. package/dist/cjs/jest-diff.js.map +1 -1
  14. package/dist/cjs/jest-worker.js.map +1 -1
  15. package/dist/cjs/jest.js.map +1 -1
  16. package/dist/cjs/matcher-utils.js.map +1 -1
  17. package/dist/cjs/matchers-jestonly.js.map +1 -1
  18. package/dist/cjs/matchers.js.map +1 -1
  19. package/dist/cjs/meta-helper.js.map +1 -1
  20. package/dist/cjs/tsdoc-metadata.json +1 -1
  21. package/dist/cjs/utils/natural-join.js.map +1 -1
  22. package/dist/cjs/vitest.js.map +1 -1
  23. package/dist/{es → esm}/cli.js +2 -2
  24. package/dist/esm/cli.js.map +1 -0
  25. package/dist/{es → esm}/core-browser.js.map +1 -1
  26. package/dist/{es → esm}/core-nodejs.js.map +1 -1
  27. package/dist/{es → esm}/core.js +13 -10
  28. package/dist/esm/core.js.map +1 -0
  29. package/dist/{es → esm}/elements.js.map +1 -1
  30. package/dist/{es → esm}/html-validate.js +3 -3
  31. package/dist/esm/html-validate.js.map +1 -0
  32. package/dist/{es → esm}/html5.js.map +1 -1
  33. package/dist/{es → esm}/jest-diff.js.map +1 -1
  34. package/dist/{es → esm}/jest-worker.js.map +1 -1
  35. package/dist/{es → esm}/jest.js.map +1 -1
  36. package/dist/{es → esm}/matcher-utils.js.map +1 -1
  37. package/dist/{es → esm}/matchers-jestonly.js.map +1 -1
  38. package/dist/{es → esm}/matchers.js.map +1 -1
  39. package/dist/{es → esm}/meta-helper.js.map +1 -1
  40. package/dist/{es → esm}/utils/natural-join.js.map +1 -1
  41. package/dist/{es → esm}/vitest.js.map +1 -1
  42. package/dist/tsdoc-metadata.json +1 -1
  43. package/dist/types/vitest.d.ts +1 -0
  44. package/package.json +20 -27
  45. package/browser.d.ts +0 -1
  46. package/browser.js +0 -1
  47. package/dist/es/cli.js.map +0 -1
  48. package/dist/es/core.js.map +0 -1
  49. package/dist/es/html-validate.js.map +0 -1
  50. package/elements/html5.js +0 -1
  51. package/jest.d.ts +0 -1
  52. package/jest.js +0 -1
  53. package/node.d.ts +0 -1
  54. package/node.js +0 -1
  55. package/test-utils.d.ts +0 -1
  56. package/test-utils.js +0 -1
  57. /package/dist/{es → esm}/browser.d.ts +0 -0
  58. /package/dist/{es → esm}/browser.js +0 -0
  59. /package/dist/{es → esm}/browser.js.map +0 -0
  60. /package/dist/{es → esm}/core-browser.js +0 -0
  61. /package/dist/{es → esm}/core-nodejs.js +0 -0
  62. /package/dist/{es → esm}/elements.js +0 -0
  63. /package/dist/{es → esm}/html-validate.d.ts +0 -0
  64. /package/dist/{es → esm}/html5.d.ts +0 -0
  65. /package/dist/{es → esm}/html5.js +0 -0
  66. /package/dist/{es → esm}/index.d.ts +0 -0
  67. /package/dist/{es → esm}/index.js +0 -0
  68. /package/dist/{es → esm}/index.js.map +0 -0
  69. /package/dist/{es → esm}/jest-diff.js +0 -0
  70. /package/dist/{es → esm}/jest-worker.d.ts +0 -0
  71. /package/dist/{es → esm}/jest-worker.js +0 -0
  72. /package/dist/{es → esm}/jest.d.ts +0 -0
  73. /package/dist/{es → esm}/jest.js +0 -0
  74. /package/dist/{es → esm}/matcher-utils.js +0 -0
  75. /package/dist/{es → esm}/matchers-jestonly.js +0 -0
  76. /package/dist/{es → esm}/matchers.js +0 -0
  77. /package/dist/{es → esm}/meta-helper.js +0 -0
  78. /package/dist/{es → esm}/package.json +0 -0
  79. /package/dist/{es → esm}/test-utils.d.ts +0 -0
  80. /package/dist/{es → esm}/test-utils.js +0 -0
  81. /package/dist/{es → esm}/test-utils.js.map +0 -0
  82. /package/dist/{es → esm}/utils/natural-join.js +0 -0
  83. /package/dist/{es → esm}/vitest.d.ts +0 -0
  84. /package/dist/{es → esm}/vitest.js +0 -0
  85. /package/{elements → dist/types}/html5.d.ts +0 -0
@@ -387,7 +387,7 @@ var deepmerge = /*@__PURE__*/getDefaultExportFromCjs(cjsExports);
387
387
 
388
388
  function stringify(value) {
389
389
  if (typeof value === "string") {
390
- return String(value);
390
+ return value;
391
391
  } else {
392
392
  return JSON.stringify(value);
393
393
  }
@@ -1538,9 +1538,6 @@ class Context {
1538
1538
  return JSON.stringify(this.string.length > n ? `${this.string.slice(0, 10)}...` : this.string);
1539
1539
  }
1540
1540
  consume(n, state) {
1541
- if (typeof n !== "number") {
1542
- n = n[0].length;
1543
- }
1544
1541
  let consumed = this.string.slice(0, n);
1545
1542
  let offset;
1546
1543
  while ((offset = consumed.indexOf("\n")) >= 0) {
@@ -2400,7 +2397,7 @@ function isElementNode(node) {
2400
2397
  return Boolean(node && node.nodeType === NodeType.ELEMENT_NODE);
2401
2398
  }
2402
2399
  function isInvalidTagName(tagName) {
2403
- return Boolean(tagName === "" || tagName === "*");
2400
+ return tagName === "" || tagName === "*";
2404
2401
  }
2405
2402
  function createAdapter(node) {
2406
2403
  return {
@@ -4445,6 +4442,7 @@ const whitelisted = [
4445
4442
  "footer",
4446
4443
  "section",
4447
4444
  "article",
4445
+ "dialog",
4448
4446
  "form",
4449
4447
  "img",
4450
4448
  "area",
@@ -4482,6 +4480,7 @@ class AriaLabelMisuse extends Rule {
4482
4480
  "Landmark elements",
4483
4481
  "Elements with roles inheriting from widget",
4484
4482
  "`<area>`",
4483
+ "`<dialog>`",
4485
4484
  "`<form>` and `<fieldset>`",
4486
4485
  "`<iframe>`",
4487
4486
  "`<img>` and `<figure>`",
@@ -4791,7 +4790,7 @@ class Lexer {
4791
4790
  yield token;
4792
4791
  }
4793
4792
  const state = this.evalNextState(nextState, token);
4794
- context.consume(match, state);
4793
+ context.consume(match[0].length, state);
4795
4794
  this.enter(context, state, match);
4796
4795
  return;
4797
4796
  }
@@ -8154,12 +8153,16 @@ class NoRawCharacters extends Rule {
8154
8153
  }
8155
8154
  });
8156
8155
  this.on("attr", (event) => {
8156
+ const { meta } = event;
8157
8157
  if (!event.value) {
8158
8158
  return;
8159
8159
  }
8160
8160
  if (event.quote) {
8161
8161
  return;
8162
8162
  }
8163
+ if (meta?.boolean) {
8164
+ return;
8165
+ }
8163
8166
  this.findRawChars(
8164
8167
  event.target,
8165
8168
  event.value.toString(),
@@ -10292,7 +10295,7 @@ class H32 extends Rule {
10292
10295
  }
10293
10296
  function isSubmit(node) {
10294
10297
  const type = node.getAttribute("type");
10295
- return Boolean(!type || type.valueMatches(/submit|image/));
10298
+ return !type || type.valueMatches(/submit|image/);
10296
10299
  }
10297
10300
  function isAssociated(id, node) {
10298
10301
  const form = node.getAttribute("form");
@@ -10394,7 +10397,7 @@ class H37 extends Rule {
10394
10397
  if (!inAccessibilityTree(node)) {
10395
10398
  return;
10396
10399
  }
10397
- if (Boolean(node.getAttributeValue("alt")) || Boolean(node.hasAttribute("alt") && this.options.allowEmpty)) {
10400
+ if (Boolean(node.getAttributeValue("alt")) || node.hasAttribute("alt") && this.options.allowEmpty) {
10398
10401
  return;
10399
10402
  }
10400
10403
  for (const attr of this.options.alias) {
@@ -11791,7 +11794,7 @@ class EventHandler {
11791
11794
  }
11792
11795
 
11793
11796
  const name = "html-validate";
11794
- const version = "9.7.0";
11797
+ const version = "10.0.0";
11795
11798
  const bugs = "https://gitlab.com/html-validate/html-validate/issues/new";
11796
11799
 
11797
11800
  function freeze(src) {
@@ -14188,7 +14191,7 @@ var ignoreExports = /*@__PURE__*/ requireIgnore();
14188
14191
  var ignore = /*@__PURE__*/getDefaultExportFromCjs(ignoreExports);
14189
14192
 
14190
14193
  const engines = {
14191
- node: "^18.19.0 || >= 20.6.0"
14194
+ node: ">= 20.6.0"
14192
14195
  };
14193
14196
 
14194
14197
  var workerPath = "./jest-worker.js";