@dso-toolkit/core 45.0.1 → 45.2.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/cjs/dso-accordion-section.cjs.entry.js +110 -0
- package/dist/cjs/dso-accordion.cjs.entry.js +297 -0
- package/dist/cjs/dso-alert.cjs.entry.js +3 -3
- package/dist/cjs/dso-attachments-counter.cjs.entry.js +3 -3
- package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
- package/dist/cjs/dso-badge.cjs.entry.js +1 -1
- package/dist/cjs/dso-banner.cjs.entry.js +2 -2
- package/dist/cjs/dso-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/dso-dropdown-menu.cjs.entry.js +3 -3
- package/dist/cjs/dso-header.cjs.entry.js +6 -6
- package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +59 -3
- package/dist/cjs/dso-highlight-box.cjs.entry.js +2 -2
- package/dist/cjs/dso-icon.cjs.entry.js +2 -2
- package/dist/cjs/dso-image-overlay.cjs.entry.js +11 -5
- package/dist/cjs/dso-info-button.cjs.entry.js +4 -3
- package/dist/cjs/dso-info_2.cjs.entry.js +3 -3
- package/dist/cjs/dso-label.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-base-layers.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-controls.cjs.entry.js +2 -2
- package/dist/cjs/dso-map-overlays.cjs.entry.js +1 -1
- package/dist/cjs/dso-ozon-content.cjs.entry.js +77 -16
- package/dist/cjs/dso-pagination.cjs.entry.js +99 -7
- package/dist/cjs/dso-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
- package/dist/cjs/dso-responsive-element.cjs.entry.js +6 -1
- package/dist/cjs/dso-table.cjs.entry.js +89 -0
- package/dist/cjs/dso-toggletip.cjs.entry.js +2 -2
- package/dist/cjs/dso-toolkit.cjs.js +2 -2
- package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/dso-tree-view.cjs.entry.js +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +11 -5
- package/dist/cjs/{focus-trap.esm-a85643b0.js → focus-trap.esm-e2addb10.js} +28 -11
- package/dist/cjs/{index-0a7c679a.js → index-4066351a.js} +7 -0
- package/dist/cjs/{index.esm-3520a2a6.js → index.esm-50325ea2.js} +110 -12
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/accordion/accordion.css +9 -0
- package/dist/collection/components/accordion/accordion.interfaces.js +1 -0
- package/dist/collection/components/accordion/accordion.js +260 -0
- package/dist/collection/components/accordion/accordion.template.js +26 -0
- package/dist/collection/components/accordion/components/accordion-section.css +221 -0
- package/dist/collection/components/accordion/components/accordion-section.js +292 -0
- package/dist/collection/components/alert/alert.css +14 -51
- package/dist/collection/components/alert/alert.js +1 -0
- package/dist/collection/components/attachments-counter/attachments-counter.css +0 -12
- package/dist/collection/components/attachments-counter/attachments-counter.js +2 -1
- package/dist/collection/components/banner/banner.css +0 -4
- package/dist/collection/components/date-picker/date-picker.css +2 -2
- package/dist/collection/components/dropdown-menu/dropdown-menu.css +0 -7
- package/dist/collection/components/header/header.css +38 -390
- package/dist/collection/components/header/header.js +22 -24
- package/dist/collection/components/header/header.template.js +1 -1
- package/dist/collection/components/helpcenter-panel/helpcenter-panel.css +21 -104
- package/dist/collection/components/helpcenter-panel/helpcenter-panel.js +71 -5
- package/dist/collection/components/highlight-box/highlight-box.css +1 -3
- package/dist/collection/components/image-overlay/image-overlay.css +37 -1134
- package/dist/collection/components/image-overlay/image-overlay.js +13 -3
- package/dist/collection/components/image-overlay/image-overlay.template.js +9 -1
- package/dist/collection/components/info/info.css +19 -1070
- package/dist/collection/components/info/info.js +1 -0
- package/dist/collection/components/info-button/info-button.css +8 -17
- package/dist/collection/components/info-button/info-button.js +9 -3
- package/dist/collection/components/map-controls/map-controls.css +20 -1172
- package/dist/collection/components/ozon-content/nodes/figuur.node.js +41 -6
- package/dist/collection/components/ozon-content/nodes/lijst.node.js +25 -0
- package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +8 -7
- package/dist/collection/components/ozon-content/ozon-content-mapper.js +2 -0
- package/dist/collection/components/ozon-content/ozon-content.css +39 -49
- package/dist/collection/components/pagination/pagination.css +1 -0
- package/dist/collection/components/pagination/pagination.js +122 -14
- package/dist/collection/components/progress-bar/progress-bar.css +1 -1
- package/dist/collection/components/responsive-element/responsive-element.interfaces.js +1 -0
- package/dist/collection/components/responsive-element/responsive-element.js +48 -1
- package/dist/collection/components/responsive-element/responsive-element.template.js +4 -2
- package/dist/collection/components/table/table.css +296 -0
- package/dist/collection/components/table/table.interfaces.js +1 -0
- package/dist/collection/components/table/table.js +146 -0
- package/dist/collection/components/table/table.template.js +26 -0
- package/dist/collection/components/toggletip/toggletip.css +4 -0
- package/dist/collection/components/viewer-grid/viewer-grid.css +34 -1300
- package/dist/collection/components/viewer-grid/viewer-grid.js +12 -1
- package/dist/custom-elements/index.d.ts +18 -0
- package/dist/custom-elements/index.js +2052 -1230
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/p-02b2e01c.entry.js +1 -0
- package/dist/dso-toolkit/{p-d780f9ff.entry.js → p-05a9e206.entry.js} +1 -1
- package/dist/dso-toolkit/p-1a19ce42.entry.js +1 -0
- package/dist/dso-toolkit/p-22c35db5.js +5 -0
- package/dist/dso-toolkit/{p-361528b4.entry.js → p-2e74485e.entry.js} +1 -1
- package/dist/dso-toolkit/p-2f6b1092.entry.js +1 -0
- package/dist/dso-toolkit/{p-bf4d6f63.entry.js → p-3381c859.entry.js} +1 -1
- package/dist/dso-toolkit/{p-3799366e.entry.js → p-37a34037.entry.js} +1 -1
- package/dist/dso-toolkit/p-383227b9.entry.js +1 -0
- package/dist/dso-toolkit/p-42450cfe.js +1 -0
- package/dist/dso-toolkit/p-4c44d27c.entry.js +1 -0
- package/dist/dso-toolkit/{p-91b6a181.entry.js → p-4fd140e9.entry.js} +1 -1
- package/dist/dso-toolkit/p-53c7bf4f.entry.js +1 -0
- package/dist/dso-toolkit/p-662b7663.entry.js +1 -0
- package/dist/dso-toolkit/{p-d60876c2.entry.js → p-67b11174.entry.js} +1 -1
- package/dist/dso-toolkit/{p-375a2523.entry.js → p-6a414479.entry.js} +1 -1
- package/dist/dso-toolkit/{p-e4bcafc4.entry.js → p-6cac0292.entry.js} +1 -1
- package/dist/dso-toolkit/p-7213783b.entry.js +1 -0
- package/dist/dso-toolkit/p-83de460b.entry.js +1 -0
- package/dist/dso-toolkit/p-9aaadf4f.entry.js +1 -0
- package/dist/dso-toolkit/p-a5a5b24b.entry.js +1 -0
- package/dist/dso-toolkit/p-a9b0a83e.entry.js +1 -0
- package/dist/dso-toolkit/p-ac0c0eee.entry.js +1 -0
- package/dist/dso-toolkit/p-b6afe104.entry.js +1 -0
- package/dist/dso-toolkit/{p-590cbab6.entry.js → p-b9531adb.entry.js} +1 -1
- package/dist/dso-toolkit/{p-6bc71e48.entry.js → p-d2255268.entry.js} +1 -1
- package/dist/dso-toolkit/p-de50f5f1.entry.js +1 -0
- package/dist/dso-toolkit/p-e16b5d71.entry.js +1 -0
- package/dist/dso-toolkit/p-ea1d4c81.entry.js +1 -0
- package/dist/dso-toolkit/p-eb326df8.entry.js +1 -0
- package/dist/dso-toolkit/{p-25f8dbc6.entry.js → p-ec3b8800.entry.js} +1 -1
- package/dist/dso-toolkit/{p-16635f4b.entry.js → p-f1b5baf9.entry.js} +1 -1
- package/dist/dso-toolkit/p-f8b023c4.js +5 -0
- package/dist/esm/dso-accordion-section.entry.js +106 -0
- package/dist/esm/dso-accordion.entry.js +293 -0
- package/dist/esm/dso-alert.entry.js +3 -3
- package/dist/esm/dso-attachments-counter.entry.js +3 -3
- package/dist/esm/dso-autosuggest.entry.js +1 -1
- package/dist/esm/dso-badge.entry.js +1 -1
- package/dist/esm/dso-banner.entry.js +2 -2
- package/dist/esm/dso-date-picker.entry.js +2 -2
- package/dist/esm/dso-dropdown-menu.entry.js +3 -3
- package/dist/esm/dso-header.entry.js +6 -6
- package/dist/esm/dso-helpcenter-panel.entry.js +59 -3
- package/dist/esm/dso-highlight-box.entry.js +2 -2
- package/dist/esm/dso-icon.entry.js +2 -2
- package/dist/esm/dso-image-overlay.entry.js +11 -5
- package/dist/esm/dso-info-button.entry.js +4 -3
- package/dist/esm/dso-info_2.entry.js +3 -3
- package/dist/esm/dso-label.entry.js +1 -1
- package/dist/esm/dso-map-base-layers.entry.js +1 -1
- package/dist/esm/dso-map-controls.entry.js +2 -2
- package/dist/esm/dso-map-overlays.entry.js +1 -1
- package/dist/esm/dso-ozon-content.entry.js +77 -16
- package/dist/esm/dso-pagination.entry.js +99 -7
- package/dist/esm/dso-progress-bar.entry.js +2 -2
- package/dist/esm/dso-progress-indicator.entry.js +1 -1
- package/dist/esm/dso-responsive-element.entry.js +6 -1
- package/dist/esm/dso-table.entry.js +85 -0
- package/dist/esm/dso-toggletip.entry.js +2 -2
- package/dist/esm/dso-toolkit.js +2 -2
- package/dist/esm/dso-tooltip.entry.js +1 -1
- package/dist/esm/dso-tree-view.entry.js +1 -1
- package/dist/esm/dso-viewer-grid.entry.js +11 -5
- package/dist/esm/{focus-trap.esm-a01ad6c9.js → focus-trap.esm-e3b5bde3.js} +28 -11
- package/dist/esm/{index-1602fde1.js → index-771c1291.js} +7 -1
- package/dist/esm/{index.esm-45465af7.js → index.esm-4510c39e.js} +110 -12
- package/dist/esm/loader.js +2 -2
- package/dist/types/components/accordion/accordion.d.ts +32 -0
- package/dist/types/components/accordion/accordion.interfaces.d.ts +20 -0
- package/dist/types/components/accordion/accordion.template.d.ts +2 -0
- package/dist/types/components/accordion/components/accordion-section.d.ts +25 -0
- package/dist/types/components/helpcenter-panel/helpcenter-panel.d.ts +11 -0
- package/dist/types/components/image-overlay/image-overlay.d.ts +3 -0
- package/dist/types/components/info-button/info-button.d.ts +1 -0
- package/dist/types/components/ozon-content/nodes/figuur.node.d.ts +4 -1
- package/dist/types/components/ozon-content/nodes/lijst.node.d.ts +6 -0
- package/dist/types/components/pagination/pagination.d.ts +15 -0
- package/dist/types/components/responsive-element/responsive-element.d.ts +5 -2
- package/dist/types/components/responsive-element/responsive-element.interfaces.d.ts +5 -0
- package/dist/types/components/responsive-element/responsive-element.template.d.ts +1 -1
- package/dist/types/components/table/table.d.ts +26 -0
- package/dist/types/components/table/table.interfaces.d.ts +3 -0
- package/dist/types/components/table/table.template.d.ts +2 -0
- package/dist/types/components.d.ts +128 -0
- package/package.json +4 -3
- package/readme.md +0 -7
- package/dist/collection/icon/dso-icon-sass-function.js +0 -42
- package/dist/dso-toolkit/dso-toolkit.css +0 -1
- package/dist/dso-toolkit/p-02272301.entry.js +0 -1
- package/dist/dso-toolkit/p-10a6db1a.entry.js +0 -1
- package/dist/dso-toolkit/p-131d54e3.js +0 -5
- package/dist/dso-toolkit/p-1450f113.entry.js +0 -1
- package/dist/dso-toolkit/p-15d0f2eb.entry.js +0 -1
- package/dist/dso-toolkit/p-3b5f957e.entry.js +0 -1
- package/dist/dso-toolkit/p-49938275.entry.js +0 -1
- package/dist/dso-toolkit/p-5a56d726.entry.js +0 -1
- package/dist/dso-toolkit/p-5e5fbd41.js +0 -5
- package/dist/dso-toolkit/p-68d49733.entry.js +0 -1
- package/dist/dso-toolkit/p-7b716383.entry.js +0 -1
- package/dist/dso-toolkit/p-b95bc2c7.entry.js +0 -1
- package/dist/dso-toolkit/p-c1070a58.entry.js +0 -1
- package/dist/dso-toolkit/p-c62606a3.js +0 -1
- package/dist/dso-toolkit/p-e7888d49.entry.js +0 -1
- package/dist/dso-toolkit/p-eb17d45e.entry.js +0 -1
- package/dist/dso-toolkit/p-f726111e.entry.js +0 -1
- package/dist/dso-toolkit/p-fd8a8509.entry.js +0 -1
- package/dist/types/icon/dso-icon-sass-function.d.ts +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* tabbable
|
|
2
|
+
* tabbable 6.0.0
|
|
3
3
|
* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
|
|
4
4
|
*/
|
|
5
5
|
var candidateSelectors = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]:not(slot)', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable="false"])', 'details>summary:first-of-type', 'details'];
|
|
@@ -34,6 +34,12 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
|
34
34
|
* @returns {ShadowRoot|boolean} ShadowRoot if available or boolean indicating if a shadowRoot is attached but not available.
|
|
35
35
|
*/
|
|
36
36
|
|
|
37
|
+
/**
|
|
38
|
+
* @callback ShadowRootFilter
|
|
39
|
+
* @param {Element} shadowHostNode the element which contains shadow content
|
|
40
|
+
* @returns {boolean} true if a shadow root could potentially contain valid candidates.
|
|
41
|
+
*/
|
|
42
|
+
|
|
37
43
|
/**
|
|
38
44
|
* @typedef {Object} CandidatesScope
|
|
39
45
|
* @property {Element} scope contains inner candidates
|
|
@@ -47,6 +53,7 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
|
47
53
|
* or a boolean stating if it has an undisclosed shadow root
|
|
48
54
|
* @property {(node: Element) => boolean} filter filter candidates
|
|
49
55
|
* @property {boolean} flatten if true then result will flatten any CandidatesScope into the returned list
|
|
56
|
+
* @property {ShadowRootFilter} shadowRootFilter filter shadow roots;
|
|
50
57
|
*/
|
|
51
58
|
|
|
52
59
|
/**
|
|
@@ -89,8 +96,9 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
|
|
|
89
96
|
|
|
90
97
|
var shadowRoot = element.shadowRoot || // check for an undisclosed shadow
|
|
91
98
|
typeof options.getShadowRoot === 'function' && options.getShadowRoot(element);
|
|
99
|
+
var validShadowRoot = !options.shadowRootFilter || options.shadowRootFilter(element);
|
|
92
100
|
|
|
93
|
-
if (shadowRoot) {
|
|
101
|
+
if (shadowRoot && validShadowRoot) {
|
|
94
102
|
// add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed
|
|
95
103
|
// shadow exists, so look at light dom children as fallback BUT create a scope for any
|
|
96
104
|
// child candidates found because they're likely slotted elements (elements that are
|
|
@@ -201,6 +209,45 @@ var isRadio = function isRadio(node) {
|
|
|
201
209
|
|
|
202
210
|
var isNonTabbableRadio = function isNonTabbableRadio(node) {
|
|
203
211
|
return isRadio(node) && !isTabbableRadio(node);
|
|
212
|
+
}; // determines if a node is ultimately attached to the window's document
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
var isNodeAttached = function isNodeAttached(node) {
|
|
216
|
+
var _nodeRootHost;
|
|
217
|
+
|
|
218
|
+
// The root node is the shadow root if the node is in a shadow DOM; some document otherwise
|
|
219
|
+
// (but NOT _the_ document; see second 'If' comment below for more).
|
|
220
|
+
// If rootNode is shadow root, it'll have a host, which is the element to which the shadow
|
|
221
|
+
// is attached, and the one we need to check if it's in the document or not (because the
|
|
222
|
+
// shadow, and all nodes it contains, is never considered in the document since shadows
|
|
223
|
+
// behave like self-contained DOMs; but if the shadow's HOST, which is part of the document,
|
|
224
|
+
// is hidden, or is not in the document itself but is detached, it will affect the shadow's
|
|
225
|
+
// visibility, including all the nodes it contains). The host could be any normal node,
|
|
226
|
+
// or a custom element (i.e. web component). Either way, that's the one that is considered
|
|
227
|
+
// part of the document, not the shadow root, nor any of its children (i.e. the node being
|
|
228
|
+
// tested).
|
|
229
|
+
// To further complicate things, we have to look all the way up until we find a shadow HOST
|
|
230
|
+
// that is attached (or find none) because the node might be in nested shadows...
|
|
231
|
+
// If rootNode is not a shadow root, it won't have a host, and so rootNode should be the
|
|
232
|
+
// document (per the docs) and while it's a Document-type object, that document does not
|
|
233
|
+
// appear to be the same as the node's `ownerDocument` for some reason, so it's safer
|
|
234
|
+
// to ignore the rootNode at this point, and use `node.ownerDocument`. Otherwise,
|
|
235
|
+
// using `rootNode.contains(node)` will _always_ be true we'll get false-positives when
|
|
236
|
+
// node is actually detached.
|
|
237
|
+
var nodeRootHost = getRootNode(node).host;
|
|
238
|
+
var attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && _nodeRootHost.ownerDocument.contains(nodeRootHost) || node.ownerDocument.contains(node));
|
|
239
|
+
|
|
240
|
+
while (!attached && nodeRootHost) {
|
|
241
|
+
var _nodeRootHost2;
|
|
242
|
+
|
|
243
|
+
// since it's not attached and we have a root host, the node MUST be in a nested shadow DOM,
|
|
244
|
+
// which means we need to get the host's host and check if that parent host is contained
|
|
245
|
+
// in (i.e. attached to) the document
|
|
246
|
+
nodeRootHost = getRootNode(nodeRootHost).host;
|
|
247
|
+
attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && _nodeRootHost2.ownerDocument.contains(nodeRootHost));
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
return attached;
|
|
204
251
|
};
|
|
205
252
|
|
|
206
253
|
var isZeroArea = function isZeroArea(node) {
|
|
@@ -215,6 +262,11 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
215
262
|
var displayCheck = _ref.displayCheck,
|
|
216
263
|
getShadowRoot = _ref.getShadowRoot;
|
|
217
264
|
|
|
265
|
+
// NOTE: visibility will be `undefined` if node is detached from the document
|
|
266
|
+
// (see notes about this further down), which means we will consider it visible
|
|
267
|
+
// (this is legacy behavior from a very long way back)
|
|
268
|
+
// NOTE: we check this regardless of `displayCheck="none"` because this is a
|
|
269
|
+
// _visibility_ check, not a _display_ check
|
|
218
270
|
if (getComputedStyle(node).visibility === 'hidden') {
|
|
219
271
|
return true;
|
|
220
272
|
}
|
|
@@ -226,7 +278,7 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
226
278
|
return true;
|
|
227
279
|
}
|
|
228
280
|
|
|
229
|
-
if (!displayCheck || displayCheck === 'full') {
|
|
281
|
+
if (!displayCheck || displayCheck === 'full' || displayCheck === 'legacy-full') {
|
|
230
282
|
if (typeof getShadowRoot === 'function') {
|
|
231
283
|
// figure out if we should consider the node to be in an undisclosed shadow and use the
|
|
232
284
|
// 'non-zero-area' fallback
|
|
@@ -257,18 +309,51 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
257
309
|
} // else, `getShadowRoot` might be true, but all that does is enable shadow DOM support
|
|
258
310
|
// (i.e. it does not also presume that all nodes might have undisclosed shadows); or
|
|
259
311
|
// it might be a falsy value, which means shadow DOM support is disabled
|
|
260
|
-
// didn't find it sitting in an undisclosed shadow (or shadows are disabled)
|
|
261
|
-
// can just test to see if it would normally be visible or not
|
|
262
|
-
//
|
|
263
|
-
//
|
|
264
|
-
//
|
|
265
|
-
|
|
312
|
+
// Since we didn't find it sitting in an undisclosed shadow (or shadows are disabled)
|
|
313
|
+
// now we can just test to see if it would normally be visible or not, provided it's
|
|
314
|
+
// attached to the main document.
|
|
315
|
+
// NOTE: We must consider case where node is inside a shadow DOM and given directly to
|
|
316
|
+
// `isTabbable()` or `isFocusable()` -- regardless of `getShadowRoot` option setting.
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
if (isNodeAttached(node)) {
|
|
320
|
+
// this works wherever the node is: if there's at least one client rect, it's
|
|
321
|
+
// somehow displayed; it also covers the CSS 'display: contents' case where the
|
|
322
|
+
// node itself is hidden in place of its contents; and there's no need to search
|
|
323
|
+
// up the hierarchy either
|
|
324
|
+
return !node.getClientRects().length;
|
|
325
|
+
} // Else, the node isn't attached to the document, which means the `getClientRects()`
|
|
326
|
+
// API will __always__ return zero rects (this can happen, for example, if React
|
|
327
|
+
// is used to render nodes onto a detached tree, as confirmed in this thread:
|
|
328
|
+
// https://github.com/facebook/react/issues/9117#issuecomment-284228870)
|
|
329
|
+
//
|
|
330
|
+
// It also means that even window.getComputedStyle(node).display will return `undefined`
|
|
331
|
+
// because styles are only computed for nodes that are in the document.
|
|
332
|
+
//
|
|
333
|
+
// NOTE: THIS HAS BEEN THE CASE FOR YEARS. It is not new, nor is it caused by tabbable
|
|
334
|
+
// somehow. Though it was never stated officially, anyone who has ever used tabbable
|
|
335
|
+
// APIs on nodes in detached containers has actually implicitly used tabbable in what
|
|
336
|
+
// was later (as of v5.2.0 on Apr 9, 2021) called `displayCheck="none"` mode -- essentially
|
|
337
|
+
// considering __everything__ to be visible because of the innability to determine styles.
|
|
338
|
+
//
|
|
339
|
+
// v6.0.0: As of this major release, the default 'full' option __no longer treats detached
|
|
340
|
+
// nodes as visible with the 'none' fallback.__
|
|
266
341
|
|
|
267
342
|
|
|
268
|
-
|
|
343
|
+
if (displayCheck !== 'legacy-full') {
|
|
344
|
+
return true; // hidden
|
|
345
|
+
} // else, fallback to 'none' mode and consider the node visible
|
|
346
|
+
|
|
269
347
|
} else if (displayCheck === 'non-zero-area') {
|
|
348
|
+
// NOTE: Even though this tests that the node's client rect is non-zero to determine
|
|
349
|
+
// whether it's displayed, and that a detached node will __always__ have a zero-area
|
|
350
|
+
// client rect, we don't special-case for whether the node is attached or not. In
|
|
351
|
+
// this mode, we do want to consider nodes that have a zero area to be hidden at all
|
|
352
|
+
// times, and that includes attached or not.
|
|
270
353
|
return isZeroArea(node);
|
|
271
|
-
}
|
|
354
|
+
} // visible, as far as we can tell, or per current `displayCheck=none` mode, we assume
|
|
355
|
+
// it's visible
|
|
356
|
+
|
|
272
357
|
|
|
273
358
|
return false;
|
|
274
359
|
}; // form fields (nested) inside a disabled fieldset are not focusable/tabbable
|
|
@@ -322,6 +407,18 @@ var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(opt
|
|
|
322
407
|
|
|
323
408
|
return true;
|
|
324
409
|
};
|
|
410
|
+
|
|
411
|
+
var isValidShadowRootTabbable = function isValidShadowRootTabbable(shadowHostNode) {
|
|
412
|
+
var tabIndex = parseInt(shadowHostNode.getAttribute('tabindex'), 10);
|
|
413
|
+
|
|
414
|
+
if (isNaN(tabIndex) || tabIndex >= 0) {
|
|
415
|
+
return true;
|
|
416
|
+
} // If a custom element has an explicit negative tabindex,
|
|
417
|
+
// browsers will not allow tab targeting said element's children.
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
return false;
|
|
421
|
+
};
|
|
325
422
|
/**
|
|
326
423
|
* @param {Array.<Element|CandidatesScope>} candidates
|
|
327
424
|
* @returns Element[]
|
|
@@ -363,7 +460,8 @@ var tabbable = function tabbable(el, options) {
|
|
|
363
460
|
candidates = getCandidatesIteratively([el], options.includeContainer, {
|
|
364
461
|
filter: isNodeMatchingSelectorTabbable.bind(null, options),
|
|
365
462
|
flatten: false,
|
|
366
|
-
getShadowRoot: options.getShadowRoot
|
|
463
|
+
getShadowRoot: options.getShadowRoot,
|
|
464
|
+
shadowRootFilter: isValidShadowRootTabbable
|
|
367
465
|
});
|
|
368
466
|
} else {
|
|
369
467
|
candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
|
package/dist/esm/loader.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as promiseResolve, b as bootstrapLazy } from './index-
|
|
1
|
+
import { p as promiseResolve, b as bootstrapLazy } from './index-771c1291.js';
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
Stencil Client Patch Esm v2.10.0 | MIT Licensed | https://stenciljs.com
|
|
@@ -10,7 +10,7 @@ const patchEsm = () => {
|
|
|
10
10
|
const defineCustomElements = (win, options) => {
|
|
11
11
|
if (typeof window === 'undefined') return Promise.resolve();
|
|
12
12
|
return patchEsm().then(() => {
|
|
13
|
-
return bootstrapLazy([["dso-map-base-layers",[[1,"dso-map-base-layers",{"group":[1],"baseLayers":[16]}]]],["dso-map-overlays",[[1,"dso-map-overlays",{"group":[1],"overlays":[16]}]]],["dso-
|
|
13
|
+
return bootstrapLazy([["dso-icon",[[1,"dso-icon",{"icon":[1]}]]],["dso-map-base-layers",[[1,"dso-map-base-layers",{"group":[1],"baseLayers":[16]}]]],["dso-map-overlays",[[1,"dso-map-overlays",{"group":[1],"overlays":[16]}]]],["dso-toggletip",[[1,"dso-toggletip",{"label":[1],"position":[1],"small":[4],"secondary":[4],"active":[32]}]]],["dso-accordion-section",[[1,"dso-accordion-section",{"handleTitle":[1,"handle-title"],"heading":[1],"handleUrl":[1,"handle-url"],"state":[1],"attachmentCount":[2,"attachment-count"],"icon":[1],"status":[1],"open":[1540],"hasNestedSection":[32],"toggleSection":[64]}]]],["dso-header",[[6,"dso-header",{"mainMenu":[16],"useDropDownMenu":[1,"use-drop-down-menu"],"authStatus":[1,"auth-status"],"loginUrl":[1,"login-url"],"logoutUrl":[1,"logout-url"],"userProfileName":[1,"user-profile-name"],"userProfileUrl":[1,"user-profile-url"],"userHomeUrl":[1,"user-home-url"],"showDropDown":[32],"hasSubLogo":[32],"overflowMenuItems":[32]}]]],["dso-label",[[1,"dso-label",{"compact":[4],"removable":[4],"status":[1],"truncate":[4],"removeHover":[32],"removeFocus":[32],"textHover":[32],"textFocus":[32],"truncatedContent":[32],"labelText":[32]}]]],["dso-pagination",[[1,"dso-pagination",{"totalPages":[2,"total-pages"],"currentPage":[2,"current-page"],"formatHref":[16],"availablePositions":[32]},[[0,"dsoSizeChange","sizeChangeHandler"]]]]],["dso-tree-view",[[1,"dso-tree-view",{"collection":[16],"focusItem":[64]}]]],["dso-alert",[[1,"dso-alert",{"status":[1],"roleAlert":[4,"role-alert"]}]]],["dso-autosuggest",[[6,"dso-autosuggest",{"suggestions":[16],"loading":[4],"loadingLabel":[1,"loading-label"],"loadingDelayed":[2,"loading-delayed"],"notFoundLabel":[1,"not-found-label"],"suggestOnFocus":[4,"suggest-on-focus"],"showSuggestions":[32],"selectedSuggestion":[32],"notFound":[32],"showLoading":[32]},[[4,"click","onDocumentClick"]]]]],["dso-date-picker",[[2,"dso-date-picker",{"name":[1],"identifier":[1],"disabled":[516],"role":[1],"direction":[1],"required":[4],"dsoAutofocus":[4,"dso-autofocus"],"value":[1537],"min":[1],"max":[1],"activeFocus":[32],"focusedDay":[32],"open":[32],"visible":[32],"setFocus":[64],"show":[64],"hide":[64]},[[6,"click","handleDocumentClick"]]]]],["dso-helpcenter-panel",[[1,"dso-helpcenter-panel",{"label":[1],"url":[1],"visibility":[32],"isOpen":[32],"slideState":[32],"loadIframe":[32]},[[8,"keydown","keyDownListener"]]]]],["dso-image-overlay",[[1,"dso-image-overlay",{"active":[32],"focused":[32],"zoomable":[32]},[[2,"load","loadListener"]]]]],["dso-map-controls",[[1,"dso-map-controls",{"open":[1540],"disableZoom":[1,"disable-zoom"],"hideContent":[32]}]]],["dso-table",[[1,"dso-table",{"noModal":[516,"no-modal"],"isResponsive":[516,"is-responsive"],"modalActive":[32],"placeholderHeight":[32]}]]],["dso-viewer-grid",[[1,"dso-viewer-grid",{"filterpanelOpen":[516,"filterpanel-open"],"overlayOpen":[516,"overlay-open"],"initialMainSize":[1,"initial-main-size"],"mainSize":[32]}]]],["dso-accordion",[[1,"dso-accordion",{"variant":[513],"reverseAlign":[516,"reverse-align"],"allowMultipleOpen":[516,"allow-multiple-open"],"getState":[64],"toggleSection":[64],"closeOpenSections":[64]}]]],["dso-badge",[[1,"dso-badge",{"status":[1]}]]],["dso-banner",[[1,"dso-banner",{"status":[1]}]]],["dso-highlight-box",[[1,"dso-highlight-box",{"yellow":[4],"border":[4],"white":[4],"dropShadow":[4,"drop-shadow"],"step":[2]}]]],["dso-ozon-content",[[6,"dso-ozon-content",{"content":[1],"inline":[516],"deleted":[516],"interactive":[520],"state":[32]}]]],["dso-progress-bar",[[1,"dso-progress-bar",{"progress":[2],"min":[2],"max":[2]}]]],["dso-attachments-counter",[[1,"dso-attachments-counter",{"count":[2]}]]],["dso-dropdown-menu",[[1,"dso-dropdown-menu",{"open":[1540],"dropdownAlign":[1,"dropdown-align"],"checkable":[4]}]]],["dso-responsive-element",[[1,"dso-responsive-element",{"sizeAlias":[32],"sizeWidth":[32],"getSize":[64]}]]],["dso-progress-indicator",[[1,"dso-progress-indicator",{"label":[1],"size":[1],"block":[4]}]]],["dso-tooltip",[[1,"dso-tooltip",{"descriptive":[516],"position":[1],"strategy":[1],"for":[1],"noArrow":[4,"no-arrow"],"stateless":[4],"small":[4],"active":[1540],"hidden":[32],"activate":[64],"deactivate":[64]},[[0,"click","listenClick"]]]]],["dso-info-button",[[1,"dso-info-button",{"active":[1540],"secondary":[4],"label":[1],"hover":[32],"setFocus":[64]}]]],["dso-info_2",[[6,"dso-selectable",{"type":[1],"identifier":[1],"name":[1],"value":[1],"invalid":[4],"describedById":[1,"described-by-id"],"disabled":[4],"required":[4],"checked":[4],"indeterminate":[4],"infoFixed":[4,"info-fixed"],"infoActive":[32],"toggleInfo":[64]}],[1,"dso-info",{"fixed":[516],"active":[516]}]]]], options);
|
|
14
14
|
});
|
|
15
15
|
};
|
|
16
16
|
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import { AccordionInterface, AccordionInternalState, AccordionSectionToggleEvent, AccordionVariant } from './accordion.interfaces';
|
|
3
|
+
export declare class Accordion implements ComponentInterface, AccordionInterface {
|
|
4
|
+
private accordionState;
|
|
5
|
+
host: HTMLElement;
|
|
6
|
+
variant?: AccordionVariant;
|
|
7
|
+
/** Places the chevron at the opposite side. Note: this mode does not display `state`, `attachmentCount` or `status` props on child `<dso-accordion-section>` elements */
|
|
8
|
+
reverseAlign: boolean;
|
|
9
|
+
/** Allows multiple sections to be open at the same time. */
|
|
10
|
+
allowMultipleOpen: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Emitted when a section is toggled.
|
|
13
|
+
*
|
|
14
|
+
* `event.detail.originalEvent` contains the original `MouseEvent` when the section is toggled by clicking on the header
|
|
15
|
+
* `event.detail.section` contains the toggled section and its new opened value.\
|
|
16
|
+
* `event.detail.sections` contains all `<dso-accordion-section>` elements belonging to this accordion.
|
|
17
|
+
*/
|
|
18
|
+
dsoToggleSection: EventEmitter<AccordionSectionToggleEvent>;
|
|
19
|
+
updateVariant(variant?: AccordionVariant): void;
|
|
20
|
+
updateReverseAlign(reverseAlign: boolean): void;
|
|
21
|
+
watchAllowMultiple(allowMultipleOpen: boolean): void;
|
|
22
|
+
getState(): Promise<AccordionInternalState>;
|
|
23
|
+
/** Toggle a section. Pass the `<dso-accordion-section>` element or the index of the section. */
|
|
24
|
+
toggleSection(sectionElement: HTMLElement | number, event?: MouseEvent): Promise<void>;
|
|
25
|
+
/** Closes all sections belonging to this accordion. */
|
|
26
|
+
closeOpenSections(): Promise<void>;
|
|
27
|
+
constructor();
|
|
28
|
+
render(): any;
|
|
29
|
+
private emitToggleEvent;
|
|
30
|
+
private isSectionOpen;
|
|
31
|
+
private controlOpenAttribute;
|
|
32
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare type AccordionVariant = 'default' | 'compact' | 'conclusion';
|
|
2
|
+
export declare type AccordionSectionState = 'success' | 'info' | 'warning' | 'danger';
|
|
3
|
+
export declare type AccordionHeading = 'h2' | 'h3' | 'h4' | 'h5';
|
|
4
|
+
export interface AccordionInternalState {
|
|
5
|
+
variant: AccordionVariant;
|
|
6
|
+
reverseAlign: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface AccordionInterface {
|
|
9
|
+
getState(): Promise<AccordionInternalState>;
|
|
10
|
+
toggleSection(sectionElement: HTMLElement | number, event?: MouseEvent): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
export interface AccordionSectionToggleEvent {
|
|
13
|
+
/** When the section is toggled by clicking in the header the `MouseEvent` is available. */
|
|
14
|
+
originalEvent?: MouseEvent;
|
|
15
|
+
section: {
|
|
16
|
+
element: HTMLElement;
|
|
17
|
+
open: boolean;
|
|
18
|
+
};
|
|
19
|
+
sections: HTMLElement[];
|
|
20
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ComponentInterface } from '../../../stencil-public-runtime';
|
|
2
|
+
import { AccordionHeading, AccordionSectionState } from '../accordion.interfaces';
|
|
3
|
+
export declare class AccordionSection implements ComponentInterface {
|
|
4
|
+
private accordion?;
|
|
5
|
+
private accordionState?;
|
|
6
|
+
host: HTMLElement;
|
|
7
|
+
handleTitle?: string;
|
|
8
|
+
heading: AccordionHeading;
|
|
9
|
+
/** When set the handle will render as a `<a>`. When undefined it renders as a `<button>` */
|
|
10
|
+
handleUrl?: string;
|
|
11
|
+
/** `state` takes precedence over `attachmentCount` and `icon` */
|
|
12
|
+
state?: AccordionSectionState;
|
|
13
|
+
/** `attachmentCount` takes precedence over `icon` */
|
|
14
|
+
attachmentCount?: number;
|
|
15
|
+
icon?: string;
|
|
16
|
+
status?: string;
|
|
17
|
+
open: boolean;
|
|
18
|
+
hasNestedSection: boolean;
|
|
19
|
+
componentWillLoad(): void;
|
|
20
|
+
componentDidLoad(): void;
|
|
21
|
+
/** Toggle this section */
|
|
22
|
+
toggleSection(): Promise<void>;
|
|
23
|
+
private toggle;
|
|
24
|
+
render(): any;
|
|
25
|
+
}
|
|
@@ -1,11 +1,22 @@
|
|
|
1
1
|
export declare class HelpcenterPanel {
|
|
2
|
+
private iframeUrl?;
|
|
3
|
+
private trap?;
|
|
4
|
+
private panelWrapperElement?;
|
|
5
|
+
private openButtonElement?;
|
|
6
|
+
private closeButtonElement?;
|
|
7
|
+
private iframeLoaded;
|
|
2
8
|
label?: string;
|
|
3
9
|
url: string;
|
|
4
10
|
visibility: "visible" | "hidden";
|
|
5
11
|
isOpen: "open" | "close";
|
|
6
12
|
slideState: "open" | "close";
|
|
7
13
|
loadIframe: boolean;
|
|
14
|
+
watchUrl(url: string): void;
|
|
15
|
+
watchIsOpen(isOpen: 'open' | 'close'): void;
|
|
16
|
+
keyDownListener(event: KeyboardEvent): void;
|
|
17
|
+
createTrap(): void;
|
|
8
18
|
openClick: () => void;
|
|
9
19
|
closeClick: () => void;
|
|
20
|
+
componentDidRender(): void;
|
|
10
21
|
render(): any;
|
|
11
22
|
}
|
|
@@ -8,9 +8,12 @@ export declare class ImageOverlay implements ComponentInterface {
|
|
|
8
8
|
buttonElement: HTMLButtonElement | undefined;
|
|
9
9
|
wrapperElement: HTMLDivElement | undefined;
|
|
10
10
|
trap: FocusTrap | undefined;
|
|
11
|
+
titelSlot: HTMLElement | null;
|
|
12
|
+
bijschriftSlot: HTMLElement | null;
|
|
11
13
|
private mutationObserver?;
|
|
12
14
|
private resizeObserver?;
|
|
13
15
|
loadListener(event: Event): void;
|
|
16
|
+
connectedCallback(): void;
|
|
14
17
|
componentDidLoad(): void;
|
|
15
18
|
disconnectedCallback(): void;
|
|
16
19
|
initZoomableImage(): void;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { OzonContentNodeContext } from '../ozon-content-node-context.interface';
|
|
1
2
|
import { OzonContentNode } from '../ozon-content-node.interface';
|
|
2
3
|
export declare class OzonContentFiguurNode implements OzonContentNode {
|
|
3
4
|
name: string[];
|
|
4
|
-
|
|
5
|
+
setImageDimensions(imageElement: HTMLImageElement, schaal: number): void;
|
|
6
|
+
onImageLoad(event: Event, schaal?: number): void;
|
|
7
|
+
render(node: Element, { mapNodeToJsx }: OzonContentNodeContext): any;
|
|
5
8
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { OzonContentNodeContext } from '../ozon-content-node-context.interface';
|
|
2
|
+
import { OzonContentNode } from '../ozon-content-node.interface';
|
|
3
|
+
export declare class OzonContentLijstNode implements OzonContentNode {
|
|
4
|
+
name: string;
|
|
5
|
+
render(node: Element, { mapNodeToJsx }: OzonContentNodeContext): any;
|
|
6
|
+
}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import { ResponsiveElementSize } from '../responsive-element/responsive-element.interfaces';
|
|
2
3
|
import { PaginationSelectPageEvent } from './pagination.interfaces';
|
|
3
4
|
export declare class Pagination implements ComponentInterface {
|
|
5
|
+
private sizePositionsMap;
|
|
6
|
+
private responsiveElement?;
|
|
7
|
+
host: HTMLElement;
|
|
8
|
+
availablePositions?: number;
|
|
4
9
|
/**
|
|
5
10
|
* Total pages
|
|
6
11
|
*/
|
|
@@ -17,6 +22,16 @@ export declare class Pagination implements ComponentInterface {
|
|
|
17
22
|
* Emitted on page select
|
|
18
23
|
*/
|
|
19
24
|
dsoSelectPage: EventEmitter<PaginationSelectPageEvent>;
|
|
25
|
+
/**
|
|
26
|
+
* Listens to the dsoSizeChange event on Responsive Element
|
|
27
|
+
*/
|
|
28
|
+
sizeChangeHandler(event: CustomEvent<ResponsiveElementSize>): void;
|
|
20
29
|
clickHandler(e: MouseEvent, page: number): void;
|
|
30
|
+
componentDidLoad(): void;
|
|
21
31
|
render(): any;
|
|
32
|
+
private getAvailablePositions;
|
|
33
|
+
private getPages;
|
|
34
|
+
private getPageRange;
|
|
35
|
+
private showEllipsisAfterFirst;
|
|
36
|
+
private showEllipsisBeforeLast;
|
|
22
37
|
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { ComponentInterface } from '../../stencil-public-runtime';
|
|
1
|
+
import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import { ResponsiveElementSize } from './responsive-element.interfaces';
|
|
2
3
|
export declare class ResponsiveElement implements ComponentInterface {
|
|
3
|
-
sizeAlias:
|
|
4
|
+
sizeAlias: ResponsiveElementSize;
|
|
4
5
|
sizeWidth: number;
|
|
6
|
+
dsoSizeChange: EventEmitter<ResponsiveElementSize>;
|
|
7
|
+
getSize(): Promise<ResponsiveElementSize>;
|
|
5
8
|
observer: ResizeObserver;
|
|
6
9
|
host: HTMLElement;
|
|
7
10
|
componentWillLoad(): void;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ResponsiveElement } from '@dso-toolkit/sources';
|
|
2
2
|
import { TemplateResult } from 'lit-html';
|
|
3
|
-
export declare function responsiveElementTemplate({
|
|
3
|
+
export declare function responsiveElementTemplate({ dsoSizeChange }: ResponsiveElement, children: TemplateResult): TemplateResult<1>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ComponentInterface } from '../../stencil-public-runtime';
|
|
2
|
+
import { TableInterface } from './table.interfaces';
|
|
3
|
+
export declare class Table implements ComponentInterface, TableInterface {
|
|
4
|
+
private resizeObserver?;
|
|
5
|
+
private focusTrapElement?;
|
|
6
|
+
private buttonElement?;
|
|
7
|
+
private trap?;
|
|
8
|
+
private labelledbyId;
|
|
9
|
+
host: HTMLElement;
|
|
10
|
+
/** Prevents the table being opened in a modal. */
|
|
11
|
+
noModal: boolean;
|
|
12
|
+
/** Indicates whether the table is currently horizontally scrollable */
|
|
13
|
+
isResponsive: boolean;
|
|
14
|
+
modalActive: boolean;
|
|
15
|
+
placeholderHeight?: number;
|
|
16
|
+
startResponsiveBehavior(): void;
|
|
17
|
+
componentWillLoad(): void;
|
|
18
|
+
componentDidLoad(): void;
|
|
19
|
+
componentDidRender(): void;
|
|
20
|
+
disconnectedCallback(): void;
|
|
21
|
+
render(): any;
|
|
22
|
+
private openModal;
|
|
23
|
+
private closeModal;
|
|
24
|
+
private setFocusTrap;
|
|
25
|
+
private setResponsiveTable;
|
|
26
|
+
}
|