@cronn/element-snapshot 0.19.1 → 0.20.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.
- package/dist/browser-lib.iife.js +18 -3
- package/package.json +15 -15
package/dist/browser-lib.iife.js
CHANGED
|
@@ -304,11 +304,20 @@
|
|
|
304
304
|
function resolveTableHeaderCellRole(element) {
|
|
305
305
|
if (!(element instanceof HTMLTableCellElement)) return;
|
|
306
306
|
switch (element.scope) {
|
|
307
|
-
case "col":
|
|
308
|
-
case "
|
|
309
|
-
|
|
307
|
+
case "col":
|
|
308
|
+
case "colgroup": return "columnheader";
|
|
309
|
+
case "row":
|
|
310
|
+
case "rowgroup": return "rowheader";
|
|
311
|
+
default: return resolveTableHeaderCellRoleFromContext(element);
|
|
310
312
|
}
|
|
311
313
|
}
|
|
314
|
+
function resolveTableHeaderCellRoleFromContext(element) {
|
|
315
|
+
const row = element.closest("tr");
|
|
316
|
+
if (row === null) return;
|
|
317
|
+
const nextElementSibling = getNextElementSibling(element);
|
|
318
|
+
if (row.rowIndex === 0 && (nextElementSibling === null || resolveElementRole(nextElementSibling) === "columnheader")) return "columnheader";
|
|
319
|
+
if (element.cellIndex === 0 && nextElementSibling !== null && resolveElementRole(nextElementSibling) === "cell") return "rowheader";
|
|
320
|
+
}
|
|
312
321
|
function isWithinTableOrGrid(element) {
|
|
313
322
|
return isWithinTable(element) || isWithinGrid(element);
|
|
314
323
|
}
|
|
@@ -796,6 +805,12 @@
|
|
|
796
805
|
const cssStyles = window.getComputedStyle(element);
|
|
797
806
|
return cssStyles.display === "none" || cssStyles.visibility === "hidden" || cssStyles.visibility === "collapse";
|
|
798
807
|
}
|
|
808
|
+
function getNextElementSibling(element) {
|
|
809
|
+
const nextElementSibling = element.nextElementSibling;
|
|
810
|
+
if (nextElementSibling === null) return null;
|
|
811
|
+
if (!isSupportedElement(nextElementSibling)) return getNextElementSibling(nextElementSibling);
|
|
812
|
+
return nextElementSibling;
|
|
813
|
+
}
|
|
799
814
|
//#endregion
|
|
800
815
|
//#region src/browser-lib.ts
|
|
801
816
|
window.snapshotElement = snapshotElement;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cronn/element-snapshot",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"description": "Element snapshots for Playwright",
|
|
5
5
|
"homepage": "https://cronn.github.io/file-snapshots/playwright/element-snapshots/",
|
|
6
6
|
"bugs": {
|
|
@@ -26,28 +26,28 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"package-directory": "8.2.0",
|
|
29
|
-
"@cronn/lib-file-snapshots": "1.
|
|
30
|
-
"@cronn/playwright-file-snapshots": "2.0
|
|
29
|
+
"@cronn/lib-file-snapshots": "1.2.0",
|
|
30
|
+
"@cronn/playwright-file-snapshots": "2.2.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@arethetypeswrong/core": "0.18.2",
|
|
34
|
-
"@playwright/test": "1.
|
|
35
|
-
"@types/node": "24.12.
|
|
36
|
-
"@typescript/native-preview": "7.0.0-dev.
|
|
37
|
-
"@vitest/coverage-v8": "4.1.
|
|
38
|
-
"eslint": "10.
|
|
34
|
+
"@playwright/test": "1.60.0",
|
|
35
|
+
"@types/node": "24.12.4",
|
|
36
|
+
"@typescript/native-preview": "7.0.0-dev.20260525.1",
|
|
37
|
+
"@vitest/coverage-v8": "4.1.7",
|
|
38
|
+
"eslint": "10.4.0",
|
|
39
39
|
"eslint-config-prettier": "10.1.8",
|
|
40
40
|
"eslint-plugin-check-file": "3.3.1",
|
|
41
41
|
"eslint-plugin-unused-imports": "4.4.1",
|
|
42
|
-
"publint": "0.3.
|
|
42
|
+
"publint": "0.3.21",
|
|
43
43
|
"rimraf": "6.1.3",
|
|
44
|
-
"tsdown": "0.
|
|
45
|
-
"typescript-eslint": "8.59.
|
|
46
|
-
"vitest": "4.1.
|
|
44
|
+
"tsdown": "0.22.0",
|
|
45
|
+
"typescript-eslint": "8.59.4",
|
|
46
|
+
"vitest": "4.1.7",
|
|
47
47
|
"node": "runtime:>=24.14.1 <25",
|
|
48
|
-
"@cronn/shared-configs": "0.0.0",
|
|
49
48
|
"@cronn/test-utils": "0.0.0",
|
|
50
|
-
"@cronn/
|
|
49
|
+
"@cronn/shared-configs": "0.0.0",
|
|
50
|
+
"@cronn/vitest-file-snapshots": "2.1.1"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"@playwright/test": "^1.55"
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"devEngines": {
|
|
56
56
|
"packageManager": {
|
|
57
57
|
"name": "pnpm",
|
|
58
|
-
"version": "11.0
|
|
58
|
+
"version": "11.3.0",
|
|
59
59
|
"onFail": "download"
|
|
60
60
|
},
|
|
61
61
|
"runtime": {
|