html-validate 10.12.2 → 10.13.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.
- package/dist/cjs/browser.js +1 -0
- package/dist/cjs/browser.js.map +1 -1
- package/dist/cjs/core.js +116 -5
- package/dist/cjs/core.js.map +1 -1
- package/dist/cjs/elements.js +12 -3
- package/dist/cjs/elements.js.map +1 -1
- package/dist/cjs/html-validate.js +1 -0
- package/dist/cjs/html-validate.js.map +1 -1
- package/dist/cjs/html5.js +1 -0
- package/dist/cjs/html5.js.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/jest-worker.js +1 -0
- package/dist/cjs/jest-worker.js.map +1 -1
- package/dist/cjs/jest.js +1 -0
- package/dist/cjs/jest.js.map +1 -1
- package/dist/cjs/utils/parse-image-candidate-string.js +38 -0
- package/dist/cjs/utils/parse-image-candidate-string.js.map +1 -0
- package/dist/cjs/vitest.js +1 -0
- package/dist/cjs/vitest.js.map +1 -1
- package/dist/esm/browser.js +1 -0
- package/dist/esm/browser.js.map +1 -1
- package/dist/esm/core.js +116 -5
- package/dist/esm/core.js.map +1 -1
- package/dist/esm/elements.js +12 -3
- package/dist/esm/elements.js.map +1 -1
- package/dist/esm/html-validate.js +1 -0
- package/dist/esm/html-validate.js.map +1 -1
- package/dist/esm/html5.js +1 -0
- package/dist/esm/html5.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/jest-worker.js +1 -0
- package/dist/esm/jest-worker.js.map +1 -1
- package/dist/esm/jest.js +1 -0
- package/dist/esm/jest.js.map +1 -1
- package/dist/esm/utils/parse-image-candidate-string.js +36 -0
- package/dist/esm/utils/parse-image-candidate-string.js.map +1 -0
- package/dist/esm/vitest.js +1 -0
- package/dist/esm/vitest.js.map +1 -1
- package/dist/schema/elements.json +25 -1
- package/dist/types/browser.d.ts +43 -0
- package/dist/types/index.d.ts +43 -0
- package/package.json +2 -2
package/dist/esm/elements.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { m as metadataHelper } from './meta-helper.js';
|
|
2
|
+
import { p as parseImageCandidateString } from './utils/parse-image-candidate-string.js';
|
|
2
3
|
|
|
3
4
|
const {
|
|
4
5
|
allowedIfAttributeIsPresent,
|
|
@@ -34,6 +35,9 @@ function isInsideLandmark(node) {
|
|
|
34
35
|
];
|
|
35
36
|
return Boolean(node.closest(selectors.join(",")));
|
|
36
37
|
}
|
|
38
|
+
function hasWidthDescriptor(srcset) {
|
|
39
|
+
return parseImageCandidateString(srcset).some((it) => it.descriptor === "width");
|
|
40
|
+
}
|
|
37
41
|
function linkBodyOk(node) {
|
|
38
42
|
if (node.hasAttribute("itemprop")) {
|
|
39
43
|
return true;
|
|
@@ -1104,7 +1108,7 @@ var html5 = {
|
|
|
1104
1108
|
}
|
|
1105
1109
|
},
|
|
1106
1110
|
head: {
|
|
1107
|
-
implicitClosed: ["body"],
|
|
1111
|
+
implicitClosed: ["body", "@flow-not-meta"],
|
|
1108
1112
|
optionalEnd: true,
|
|
1109
1113
|
permittedContent: ["base?", "title?", "@meta"],
|
|
1110
1114
|
permittedParent: ["html"],
|
|
@@ -1174,6 +1178,10 @@ var html5 = {
|
|
|
1174
1178
|
}
|
|
1175
1179
|
},
|
|
1176
1180
|
html: {
|
|
1181
|
+
implicitOpen: [
|
|
1182
|
+
{ for: ["@meta"], open: "head" },
|
|
1183
|
+
{ for: ["@flow-not-meta"], open: "body" }
|
|
1184
|
+
],
|
|
1177
1185
|
optionalEnd: true,
|
|
1178
1186
|
permittedContent: ["head?", "body?"],
|
|
1179
1187
|
permittedOrder: ["head", "body"],
|
|
@@ -1704,8 +1712,9 @@ var html5 = {
|
|
|
1704
1712
|
return null;
|
|
1705
1713
|
},
|
|
1706
1714
|
required(node) {
|
|
1707
|
-
|
|
1708
|
-
|
|
1715
|
+
const imagesrcset = node.getAttribute("imagesrcset");
|
|
1716
|
+
if (typeof imagesrcset === "string" && hasWidthDescriptor(imagesrcset)) {
|
|
1717
|
+
return `{{ tagName }} requires "{{ attr }}" attribute when "imagesrcset" uses width descriptors`;
|
|
1709
1718
|
}
|
|
1710
1719
|
return false;
|
|
1711
1720
|
}
|