@instructure/ui-dom-utils 10.16.1-snapshot-0 → 10.16.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/CHANGELOG.md +1 -1
- package/es/__new-tests__/addEventListener.test.js +2 -2
- package/es/__new-tests__/addInputModeListener.test.js +9 -4
- package/es/__new-tests__/addPositionChangeListener.test.js +2 -2
- package/es/__new-tests__/findTabbable.test.js +30 -15
- package/es/__new-tests__/getClassList.test.js +5 -4
- package/es/__new-tests__/getFontSize.test.js +5 -4
- package/es/__new-tests__/getOffsetParents.test.js +76 -59
- package/es/__new-tests__/getScrollParents.test.js +43 -34
- package/es/__new-tests__/isVisible.test.js +52 -37
- package/lib/__new-tests__/addEventListener.test.js +4 -5
- package/lib/__new-tests__/addInputModeListener.test.js +14 -10
- package/lib/__new-tests__/addPositionChangeListener.test.js +4 -5
- package/lib/__new-tests__/findTabbable.test.js +31 -17
- package/lib/__new-tests__/getClassList.test.js +6 -6
- package/lib/__new-tests__/getFontSize.test.js +6 -6
- package/lib/__new-tests__/getOffsetParents.test.js +78 -62
- package/lib/__new-tests__/getScrollParents.test.js +47 -39
- package/lib/__new-tests__/isVisible.test.js +59 -45
- package/package.json +4 -4
- package/src/__new-tests__/addEventListener.test.tsx +0 -1
- package/src/__new-tests__/addInputModeListener.test.tsx +0 -1
- package/src/__new-tests__/addPositionChangeListener.test.tsx +0 -1
- package/src/__new-tests__/findTabbable.test.tsx +0 -1
- package/src/__new-tests__/getClassList.test.tsx +0 -1
- package/src/__new-tests__/getFontSize.test.tsx +0 -1
- package/src/__new-tests__/getOffsetParents.test.tsx +0 -1
- package/src/__new-tests__/getScrollParents.test.tsx +0 -1
- package/src/__new-tests__/isVisible.test.tsx +0 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/types/__new-tests__/addEventListener.test.d.ts.map +1 -1
- package/types/__new-tests__/addInputModeListener.test.d.ts.map +1 -1
- package/types/__new-tests__/addPositionChangeListener.test.d.ts.map +1 -1
- package/types/__new-tests__/findTabbable.test.d.ts.map +1 -1
- package/types/__new-tests__/getClassList.test.d.ts.map +1 -1
- package/types/__new-tests__/getFontSize.test.d.ts.map +1 -1
- package/types/__new-tests__/getOffsetParents.test.d.ts.map +1 -1
- package/types/__new-tests__/getScrollParents.test.d.ts.map +1 -1
- package/types/__new-tests__/isVisible.test.d.ts.map +1 -1
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
var _vitest = require("vitest");
|
|
7
5
|
require("@testing-library/jest-dom");
|
|
8
6
|
var _addPositionChangeListener = require("../addPositionChangeListener");
|
|
7
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
9
8
|
var _div;
|
|
10
9
|
/*
|
|
11
10
|
* The MIT License (MIT)
|
|
@@ -45,7 +44,7 @@ describe('addPositionChangeListener', () => {
|
|
|
45
44
|
it('should provide a remove method', async () => {
|
|
46
45
|
const callback = _vitest.vi.fn();
|
|
47
46
|
Element.prototype.getBoundingClientRect = _vitest.vi.fn(() => mockRect);
|
|
48
|
-
const _render = (0,
|
|
47
|
+
const _render = (0, _react.render)(_div || (_div = (0, _jsxRuntime.jsx)("div", {}))),
|
|
49
48
|
container = _render.container;
|
|
50
49
|
const node = container.firstChild;
|
|
51
50
|
const listener = (0, _addPositionChangeListener.addPositionChangeListener)(node, callback);
|
|
@@ -57,7 +56,7 @@ describe('addPositionChangeListener', () => {
|
|
|
57
56
|
top: 200
|
|
58
57
|
};
|
|
59
58
|
});
|
|
60
|
-
await (0,
|
|
59
|
+
await (0, _react.waitFor)(() => {
|
|
61
60
|
expect(callback).toHaveBeenCalledTimes(1);
|
|
62
61
|
expect(typeof listener.remove).toBe('function');
|
|
63
62
|
});
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _findTabbable = require("../findTabbable");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
var _a, _div, _div2, _input, _button, _button2;
|
|
9
8
|
/*
|
|
10
9
|
* The MIT License (MIT)
|
|
@@ -32,19 +31,30 @@ var _a, _div, _div2, _input, _button, _button2;
|
|
|
32
31
|
describe('findTabbable', () => {
|
|
33
32
|
describe('tabbable content', () => {
|
|
34
33
|
it('should find tabbable descendants', () => {
|
|
35
|
-
const _render = (0,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
34
|
+
const _render = (0, _react.render)((0, _jsxRuntime.jsxs)("div", {
|
|
35
|
+
children: [_a || (_a = (0, _jsxRuntime.jsx)("a", {
|
|
36
|
+
href: "https://instructure-test",
|
|
37
|
+
children: "Tabbable"
|
|
38
|
+
})), _div || (_div = (0, _jsxRuntime.jsx)("div", {
|
|
39
|
+
children: "Not Tabbable"
|
|
40
|
+
})), _div2 || (_div2 = (0, _jsxRuntime.jsx)("div", {
|
|
41
|
+
tabIndex: 1,
|
|
42
|
+
children: "Tabbable"
|
|
43
|
+
})), _input || (_input = (0, _jsxRuntime.jsx)("input", {
|
|
44
|
+
type: "text",
|
|
45
|
+
value: "Tabbable",
|
|
46
|
+
readOnly: true
|
|
47
|
+
})), (0, _jsxRuntime.jsxs)("div", {
|
|
48
|
+
children: [_button || (_button = (0, _jsxRuntime.jsx)("button", {
|
|
49
|
+
children: "Tabbable"
|
|
50
|
+
})), (0, _jsxRuntime.jsx)("button", {
|
|
51
|
+
style: {
|
|
52
|
+
display: 'none'
|
|
53
|
+
},
|
|
54
|
+
children: "Not Tabbable"
|
|
55
|
+
})]
|
|
56
|
+
})]
|
|
57
|
+
})),
|
|
48
58
|
container = _render.container;
|
|
49
59
|
const node = container.firstChild;
|
|
50
60
|
expect((0, _findTabbable.findTabbable)(node).length).toBe(4);
|
|
@@ -53,7 +63,11 @@ describe('findTabbable', () => {
|
|
|
53
63
|
describe('tabbable root', () => {
|
|
54
64
|
it('should search the root node when shouldSearchRootNode is set', () => {
|
|
55
65
|
const shouldSearchRootNode = true;
|
|
56
|
-
const _render2 = (0,
|
|
66
|
+
const _render2 = (0, _react.render)(_button2 || (_button2 = (0, _jsxRuntime.jsx)("button", {
|
|
67
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
68
|
+
children: "hello"
|
|
69
|
+
})
|
|
70
|
+
}))),
|
|
57
71
|
container = _render2.container;
|
|
58
72
|
const node = container.firstChild;
|
|
59
73
|
expect((0, _findTabbable.findTabbable)(node).length).toBe(0);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _getClassList = require("../getClassList");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
var _span;
|
|
9
8
|
/*
|
|
10
9
|
* The MIT License (MIT)
|
|
@@ -31,9 +30,10 @@ var _span;
|
|
|
31
30
|
*/
|
|
32
31
|
describe('getClassList', () => {
|
|
33
32
|
it('should provide classlist methods', () => {
|
|
34
|
-
const _render = (0,
|
|
35
|
-
className: "foo bar baz"
|
|
36
|
-
|
|
33
|
+
const _render = (0, _react.render)(_span || (_span = (0, _jsxRuntime.jsx)("span", {
|
|
34
|
+
className: "foo bar baz",
|
|
35
|
+
children: "Test"
|
|
36
|
+
}))),
|
|
37
37
|
container = _render.container;
|
|
38
38
|
const node = container.firstChild;
|
|
39
39
|
const classes = (0, _getClassList.getClassList)(node);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _getFontSize = require("../getFontSize");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
/*
|
|
9
8
|
* The MIT License (MIT)
|
|
10
9
|
*
|
|
@@ -31,11 +30,12 @@ var _getFontSize = require("../getFontSize");
|
|
|
31
30
|
|
|
32
31
|
describe('getFontSize', () => {
|
|
33
32
|
it('should return font size as a number', () => {
|
|
34
|
-
const _render = (0,
|
|
33
|
+
const _render = (0, _react.render)((0, _jsxRuntime.jsx)("span", {
|
|
35
34
|
style: {
|
|
36
35
|
fontSize: '17px'
|
|
37
|
-
}
|
|
38
|
-
|
|
36
|
+
},
|
|
37
|
+
children: "Test"
|
|
38
|
+
})),
|
|
39
39
|
container = _render.container;
|
|
40
40
|
const node = container.firstChild;
|
|
41
41
|
expect((0, _getFontSize.getFontSize)(node)).toBe(17);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _getScrollParents = require("../getScrollParents");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
var _div;
|
|
9
8
|
/*
|
|
10
9
|
* The MIT License (MIT)
|
|
@@ -30,66 +29,83 @@ var _div;
|
|
|
30
29
|
* SOFTWARE.
|
|
31
30
|
*/
|
|
32
31
|
describe('getScrollParents', () => {
|
|
33
|
-
const node =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
32
|
+
const node = (0, _jsxRuntime.jsxs)("div", {
|
|
33
|
+
children: [_div || (_div = (0, _jsxRuntime.jsx)("div", {
|
|
34
|
+
id: "item-1",
|
|
35
|
+
children: (0, _jsxRuntime.jsxs)("div", {
|
|
36
|
+
id: "item-2",
|
|
37
|
+
children: [(0, _jsxRuntime.jsx)("span", {
|
|
38
|
+
id: "item-3",
|
|
39
|
+
children: "Test"
|
|
40
|
+
}), (0, _jsxRuntime.jsx)("span", {
|
|
41
|
+
id: "sibling-1",
|
|
42
|
+
children: "Test"
|
|
43
|
+
}), (0, _jsxRuntime.jsx)("span", {
|
|
44
|
+
id: "sibling-2",
|
|
45
|
+
children: "Test"
|
|
46
|
+
}), (0, _jsxRuntime.jsx)("span", {
|
|
47
|
+
id: "sibling-3",
|
|
48
|
+
children: "Test"
|
|
49
|
+
})]
|
|
50
|
+
})
|
|
51
|
+
})), (0, _jsxRuntime.jsx)("div", {
|
|
52
|
+
id: "ht",
|
|
53
|
+
style: {
|
|
54
|
+
height: '50px'
|
|
55
|
+
}
|
|
56
|
+
}), (0, _jsxRuntime.jsx)("div", {
|
|
57
|
+
id: "scroll-parent",
|
|
58
|
+
style: {
|
|
59
|
+
height: '200px',
|
|
60
|
+
overflow: 'scroll'
|
|
61
|
+
},
|
|
62
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
63
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
64
|
+
id: "scroll-child",
|
|
65
|
+
style: {
|
|
66
|
+
height: '500px'
|
|
67
|
+
},
|
|
68
|
+
children: "Test"
|
|
69
|
+
})
|
|
70
|
+
})
|
|
71
|
+
}), (0, _jsxRuntime.jsx)("div", {
|
|
72
|
+
id: "scroll-parent-rel",
|
|
73
|
+
style: {
|
|
74
|
+
height: '200px',
|
|
75
|
+
overflow: 'scroll',
|
|
76
|
+
position: 'relative'
|
|
77
|
+
},
|
|
78
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
79
|
+
style: {
|
|
80
|
+
height: '200px',
|
|
81
|
+
overflow: 'scroll'
|
|
82
|
+
},
|
|
83
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
84
|
+
id: "scroll-child-rel",
|
|
85
|
+
style: {
|
|
86
|
+
height: '500px',
|
|
87
|
+
position: 'absolute'
|
|
88
|
+
},
|
|
89
|
+
children: "Test"
|
|
90
|
+
})
|
|
91
|
+
})
|
|
92
|
+
}), (0, _jsxRuntime.jsx)("div", {
|
|
93
|
+
style: {
|
|
94
|
+
height: '200px',
|
|
95
|
+
overflow: 'scroll'
|
|
96
|
+
},
|
|
97
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
98
|
+
id: "scroll-child-fixed",
|
|
99
|
+
style: {
|
|
100
|
+
height: '500px',
|
|
101
|
+
position: 'fixed'
|
|
102
|
+
},
|
|
103
|
+
children: "Test"
|
|
104
|
+
})
|
|
105
|
+
})]
|
|
106
|
+
});
|
|
91
107
|
beforeEach(() => {
|
|
92
|
-
(0,
|
|
108
|
+
(0, _react.render)(node);
|
|
93
109
|
});
|
|
94
110
|
it('should find scroll parent for inline elements', () => {
|
|
95
111
|
const child = document.getElementById('scroll-child');
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _getOffsetParents = require("../getOffsetParents");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
var _div, _div2;
|
|
9
8
|
/*
|
|
10
9
|
* The MIT License (MIT)
|
|
@@ -31,41 +30,50 @@ var _div, _div2;
|
|
|
31
30
|
*/
|
|
32
31
|
describe('getOffsetParents', () => {
|
|
33
32
|
// At rendering, we receive the node_wrapper and the body as extra offsetParents
|
|
34
|
-
const node =
|
|
35
|
-
"data-testid": "node"
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
33
|
+
const node = (0, _jsxRuntime.jsxs)("div", {
|
|
34
|
+
"data-testid": "node",
|
|
35
|
+
children: [(0, _jsxRuntime.jsx)("div", {
|
|
36
|
+
"data-testid": "child_1_wrapper_parent",
|
|
37
|
+
style: {
|
|
38
|
+
transform: '200px',
|
|
39
|
+
position: 'relative'
|
|
40
|
+
},
|
|
41
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
42
|
+
"data-testid": "child_1_wrapper",
|
|
43
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
44
|
+
"data-testid": "child-1",
|
|
45
|
+
style: {
|
|
46
|
+
height: '500px'
|
|
47
|
+
},
|
|
48
|
+
children: "Test"
|
|
49
|
+
})
|
|
50
|
+
})
|
|
51
|
+
}), (0, _jsxRuntime.jsx)("div", {
|
|
52
|
+
"data-testid": "child_2_wrapper_parent",
|
|
53
|
+
style: {
|
|
54
|
+
transform: '200px',
|
|
55
|
+
position: 'absolute'
|
|
56
|
+
},
|
|
57
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
58
|
+
"data-testid": "child_2_wrapper",
|
|
59
|
+
style: {
|
|
60
|
+
position: 'absolute'
|
|
61
|
+
},
|
|
62
|
+
children: _div || (_div = (0, _jsxRuntime.jsx)("div", {
|
|
63
|
+
"data-testid": "child-2",
|
|
64
|
+
children: "Test"
|
|
65
|
+
}))
|
|
66
|
+
})
|
|
67
|
+
}), _div2 || (_div2 = (0, _jsxRuntime.jsx)("div", {
|
|
68
|
+
"data-testid": "child_3_wrapper",
|
|
69
|
+
children: (0, _jsxRuntime.jsx)("div", {
|
|
70
|
+
"data-testid": "child-3",
|
|
71
|
+
children: "Test"
|
|
72
|
+
})
|
|
73
|
+
}))]
|
|
74
|
+
});
|
|
67
75
|
it('should find offset parent for inline elements', () => {
|
|
68
|
-
const _render = (0,
|
|
76
|
+
const _render = (0, _react.render)(node),
|
|
69
77
|
getByTestId = _render.getByTestId;
|
|
70
78
|
const child = getByTestId('child-1');
|
|
71
79
|
const parent = getByTestId('child_1_wrapper_parent');
|
|
@@ -73,14 +81,14 @@ describe('getOffsetParents', () => {
|
|
|
73
81
|
expect(offsetParents[1]).toBe(parent);
|
|
74
82
|
});
|
|
75
83
|
it('should ignore static parents when absolute', () => {
|
|
76
|
-
const _render2 = (0,
|
|
84
|
+
const _render2 = (0, _react.render)(node),
|
|
77
85
|
getByTestId = _render2.getByTestId;
|
|
78
86
|
const child = getByTestId('child-2');
|
|
79
87
|
const offsetParents = (0, _getOffsetParents.getOffsetParents)(child);
|
|
80
88
|
expect(offsetParents.length).toBe(5);
|
|
81
89
|
});
|
|
82
90
|
it('should handle fixed', () => {
|
|
83
|
-
const _render3 = (0,
|
|
91
|
+
const _render3 = (0, _react.render)(node),
|
|
84
92
|
getByTestId = _render3.getByTestId;
|
|
85
93
|
const child = getByTestId('child-3');
|
|
86
94
|
const offsetParents = (0, _getOffsetParents.getOffsetParents)(child);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var _react = _interopRequireDefault(require("react"));
|
|
5
|
-
var _react2 = require("@testing-library/react");
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
6
4
|
require("@testing-library/jest-dom");
|
|
7
5
|
var _isVisible = require("../isVisible");
|
|
6
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
8
7
|
var _div;
|
|
9
8
|
/*
|
|
10
9
|
* The MIT License (MIT)
|
|
@@ -31,21 +30,24 @@ var _div;
|
|
|
31
30
|
*/
|
|
32
31
|
describe('isVisible', () => {
|
|
33
32
|
it('should recognize visible elements', () => {
|
|
34
|
-
(0,
|
|
35
|
-
"data-testid": "test"
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
(0, _react.render)(_div || (_div = (0, _jsxRuntime.jsx)("div", {
|
|
34
|
+
"data-testid": "test",
|
|
35
|
+
children: "Hello world!"
|
|
36
|
+
})));
|
|
37
|
+
const element = _react.screen.getByTestId('test');
|
|
38
38
|
expect((0, _isVisible.isVisible)(element)).toBe(true);
|
|
39
39
|
});
|
|
40
40
|
it('should recognize elements with display: none', () => {
|
|
41
|
-
(0,
|
|
42
|
-
"data-testid": "test"
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
41
|
+
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
42
|
+
"data-testid": "test",
|
|
43
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
44
|
+
style: {
|
|
45
|
+
display: 'none'
|
|
46
|
+
},
|
|
47
|
+
children: "Hello world!"
|
|
48
|
+
})
|
|
49
|
+
}));
|
|
50
|
+
const element = _react.screen.getByTestId('test').firstChild;
|
|
49
51
|
expect((0, _isVisible.isVisible)(element)).toBe(false);
|
|
50
52
|
});
|
|
51
53
|
it('should recognize elements hidden with clip', () => {
|
|
@@ -54,12 +56,14 @@ describe('isVisible', () => {
|
|
|
54
56
|
overflow: 'hidden',
|
|
55
57
|
clip: 'rect(0,0,0,0)'
|
|
56
58
|
};
|
|
57
|
-
(0,
|
|
58
|
-
"data-testid": "test"
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
60
|
+
"data-testid": "test",
|
|
61
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
62
|
+
style: style,
|
|
63
|
+
children: "Hello world!"
|
|
64
|
+
})
|
|
65
|
+
}));
|
|
66
|
+
const element = _react.screen.getByTestId('test').firstChild;
|
|
63
67
|
expect((0, _isVisible.isVisible)(element)).toBe(false);
|
|
64
68
|
});
|
|
65
69
|
it('should recognize clipped elements that are not hidden', () => {
|
|
@@ -68,28 +72,34 @@ describe('isVisible', () => {
|
|
|
68
72
|
overflow: 'hidden',
|
|
69
73
|
clip: 'rect(0,0,10px,0)'
|
|
70
74
|
};
|
|
71
|
-
(0,
|
|
72
|
-
"data-testid": "test"
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
76
|
+
"data-testid": "test",
|
|
77
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
78
|
+
style: style,
|
|
79
|
+
children: "Hello world!"
|
|
80
|
+
})
|
|
81
|
+
}));
|
|
82
|
+
const element = _react.screen.getByTestId('test').firstChild;
|
|
77
83
|
expect((0, _isVisible.isVisible)(element)).toBe(true);
|
|
78
84
|
});
|
|
79
85
|
it('should recursively check parent visibility', () => {
|
|
80
86
|
const style = {
|
|
81
87
|
visibility: 'hidden'
|
|
82
88
|
};
|
|
83
|
-
(0,
|
|
89
|
+
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
84
90
|
"data-testid": "test",
|
|
85
|
-
style: style
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
91
|
+
style: style,
|
|
92
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
93
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
94
|
+
"data-testid": "test-2",
|
|
95
|
+
style: {
|
|
96
|
+
visibility: 'visible'
|
|
97
|
+
},
|
|
98
|
+
children: "Hello world!"
|
|
99
|
+
})
|
|
100
|
+
})
|
|
101
|
+
}));
|
|
102
|
+
const element = _react.screen.getByTestId('test-2');
|
|
93
103
|
expect((0, _isVisible.isVisible)(element, false)).toBe(true);
|
|
94
104
|
expect((0, _isVisible.isVisible)(element)).toBe(false);
|
|
95
105
|
});
|
|
@@ -97,16 +107,20 @@ describe('isVisible', () => {
|
|
|
97
107
|
const style = {
|
|
98
108
|
visibility: 'hidden'
|
|
99
109
|
};
|
|
100
|
-
(0,
|
|
110
|
+
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
101
111
|
"data-testid": "test",
|
|
102
|
-
style: style
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
112
|
+
style: style,
|
|
113
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
114
|
+
children: (0, _jsxRuntime.jsx)("span", {
|
|
115
|
+
"data-testid": "test-2",
|
|
116
|
+
style: {
|
|
117
|
+
visibility: 'visible'
|
|
118
|
+
},
|
|
119
|
+
children: "Hello world!"
|
|
120
|
+
})
|
|
121
|
+
})
|
|
122
|
+
}));
|
|
123
|
+
const element = _react.screen.getByTestId('test-2').firstChild;
|
|
110
124
|
expect((0, _isVisible.isVisible)(element, false)).toBe(true);
|
|
111
125
|
expect((0, _isVisible.isVisible)(element)).toBe(false);
|
|
112
126
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/ui-dom-utils",
|
|
3
|
-
"version": "10.16.1
|
|
3
|
+
"version": "10.16.1",
|
|
4
4
|
"description": "A DOM utility library made by Instructure Inc.",
|
|
5
5
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
6
6
|
"module": "./es/index.js",
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
},
|
|
23
23
|
"license": "MIT",
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@instructure/ui-babel-preset": "10.16.1
|
|
25
|
+
"@instructure/ui-babel-preset": "10.16.1",
|
|
26
26
|
"@testing-library/jest-dom": "^6.6.3",
|
|
27
27
|
"@testing-library/react": "^16.0.1",
|
|
28
28
|
"vitest": "^2.1.8"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@babel/runtime": "^7.26.0",
|
|
32
|
-
"@instructure/console": "10.16.1
|
|
33
|
-
"@instructure/shared-types": "10.16.1
|
|
32
|
+
"@instructure/console": "10.16.1",
|
|
33
|
+
"@instructure/shared-types": "10.16.1"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"react": ">=16.14 <=18",
|