@oiz/stzh-components 2.2.0 → 2.3.0-alpha
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/{app-globals-b6d82414.js → app-globals-13e786d3.js} +1 -1
- package/dist/cjs/{arrow-3c3b0ae5.js → arrow-cd521f34.js} +468 -478
- package/dist/cjs/axios-7ec96df7.js +3167 -0
- package/dist/cjs/{dom-9deb26c8.js → dom-be1edfde.js} +1 -1
- package/dist/cjs/{focus-trap.esm-1cb6bb2e.js → focus-trap.esm-34a1a0d0.js} +188 -278
- package/dist/cjs/{index-9fcb4305.js → index-83d427ee.js} +113 -3
- package/dist/cjs/loader.cjs.js +5 -4
- package/dist/cjs/{shadow-css-bf3843d2.js → shadow-css-54f5c2d9.js} +1 -1
- package/dist/cjs/stzh-accordion-item.cjs.entry.js +1 -1
- package/dist/cjs/stzh-accordion.cjs.entry.js +1 -1
- package/dist/cjs/stzh-actions.cjs.entry.js +1 -1
- package/dist/cjs/stzh-actionset.cjs.entry.js +15 -5
- package/dist/cjs/stzh-anchornav.cjs.entry.js +2 -2
- package/dist/cjs/stzh-appnav.cjs.entry.js +1 -1
- package/dist/cjs/stzh-appointments.cjs.entry.js +1 -1
- package/dist/cjs/stzh-audio.cjs.entry.js +1 -1
- package/dist/cjs/stzh-badge_3.cjs.entry.js +2 -2
- package/dist/cjs/stzh-calendar.cjs.entry.js +1 -1
- package/dist/cjs/stzh-card_3.cjs.entry.js +20 -15
- package/dist/cjs/stzh-cell.cjs.entry.js +1 -1
- package/dist/cjs/stzh-chart.cjs.entry.js +1471 -404
- package/dist/cjs/stzh-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/stzh-checkboxgroup.cjs.entry.js +2 -2
- package/dist/cjs/stzh-chip_2.cjs.entry.js +132 -0
- package/dist/cjs/stzh-components.cjs.js +27 -5
- package/dist/cjs/stzh-contact.cjs.entry.js +91 -0
- package/dist/cjs/stzh-container.cjs.entry.js +3 -2
- package/dist/cjs/stzh-cspace.cjs.entry.js +2 -2
- package/dist/cjs/stzh-datalist_2.cjs.entry.js +33 -13
- package/dist/cjs/stzh-datamessagelist-item.cjs.entry.js +1 -1
- package/dist/cjs/stzh-datamessagelist.cjs.entry.js +1 -1
- package/dist/cjs/stzh-datatable.cjs.entry.js +32 -31
- package/dist/cjs/stzh-datepicker_3.cjs.entry.js +2 -2
- package/dist/cjs/stzh-details.cjs.entry.js +1 -1
- package/dist/cjs/stzh-dialog.cjs.entry.js +2 -2
- package/dist/cjs/stzh-dropdown.cjs.entry.js +1056 -425
- package/dist/cjs/stzh-fieldset.cjs.entry.js +2 -2
- package/dist/cjs/stzh-figure.cjs.entry.js +5 -3
- package/dist/cjs/stzh-flyingfocus.cjs.entry.js +1 -1
- package/dist/cjs/stzh-footer.cjs.entry.js +2 -2
- package/dist/cjs/stzh-ghettobox_2.cjs.entry.js +3 -3
- package/dist/cjs/stzh-header.cjs.entry.js +6 -5
- package/dist/cjs/stzh-heading.cjs.entry.js +1 -1
- package/dist/cjs/stzh-hr.cjs.entry.js +1 -1
- package/dist/cjs/stzh-hspace.cjs.entry.js +4 -3
- package/dist/cjs/stzh-icon-sprite.cjs.entry.js +1 -1
- package/dist/cjs/{stzh-input-description-4326b0d9.js → stzh-input-description-2edc5cac.js} +1 -1
- package/dist/cjs/stzh-input.cjs.entry.js +2 -2
- package/dist/cjs/stzh-invert.cjs.entry.js +23 -0
- package/dist/cjs/stzh-langnav.cjs.entry.js +1 -1
- package/dist/cjs/stzh-link.cjs.entry.js +1 -1
- package/dist/cjs/stzh-list-item.cjs.entry.js +1 -1
- package/dist/cjs/stzh-list.cjs.entry.js +1 -1
- package/dist/cjs/stzh-loader.cjs.entry.js +1 -1
- package/dist/cjs/stzh-loadingbar.cjs.entry.js +1 -1
- package/dist/cjs/stzh-menu_2.cjs.entry.js +1 -1
- package/dist/cjs/stzh-message.cjs.entry.js +1 -1
- package/dist/cjs/stzh-metanav.cjs.entry.js +1 -1
- package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js +3 -3
- package/dist/cjs/stzh-olmap.cjs.entry.js +1 -1
- package/dist/cjs/stzh-overlay.cjs.entry.js +2 -2
- package/dist/cjs/stzh-page-skiplinks.cjs.entry.js +1 -1
- package/dist/cjs/stzh-pagebottom.cjs.entry.js +5 -2
- package/dist/cjs/stzh-pagetitle-hero.cjs.entry.js +2 -2
- package/dist/cjs/stzh-pagetitle.cjs.entry.js +9 -1
- package/dist/cjs/stzh-popover.cjs.entry.js +5 -5
- package/dist/cjs/stzh-portal-mitwirken.cjs.entry.js +2 -2
- package/dist/cjs/stzh-progressbar-item.cjs.entry.js +6 -4
- package/dist/cjs/stzh-progressbar.cjs.entry.js +2 -2
- package/dist/cjs/stzh-ratio.cjs.entry.js +26 -0
- package/dist/cjs/stzh-readspeaker.cjs.entry.js +1 -1
- package/dist/cjs/stzh-row.cjs.entry.js +1 -1
- package/dist/cjs/stzh-saptcha.cjs.entry.js +1 -1
- package/dist/cjs/stzh-section.cjs.entry.js +1 -1
- package/dist/cjs/stzh-share.cjs.entry.js +1 -1
- package/dist/cjs/stzh-show.cjs.entry.js +41 -0
- package/dist/cjs/stzh-sitemap.cjs.entry.js +2 -2
- package/dist/cjs/stzh-skiplink.cjs.entry.js +1 -1
- package/dist/cjs/stzh-sortable.cjs.entry.js +10 -66
- package/dist/cjs/stzh-space.cjs.entry.js +34 -0
- package/dist/cjs/stzh-status.cjs.entry.js +1 -1
- package/dist/cjs/stzh-sticky.cjs.entry.js +5 -3
- package/dist/cjs/stzh-table.cjs.entry.js +3 -2
- package/dist/cjs/stzh-text.cjs.entry.js +2 -2
- package/dist/cjs/stzh-textandimage.cjs.entry.js +1 -1
- package/dist/cjs/stzh-toggle.cjs.entry.js +2 -2
- package/dist/cjs/stzh-tooltip.cjs.entry.js +5 -5
- package/dist/cjs/stzh-upload.cjs.entry.js +5 -2
- package/dist/cjs/stzh-vbz-linechip.cjs.entry.js +782 -690
- package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +7 -7
- package/dist/cjs/stzh-vbz-ticker.cjs.entry.js +3 -3
- package/dist/cjs/stzh-visuallyhidden.cjs.entry.js +1 -1
- package/dist/cjs/stzh-vspace.cjs.entry.js +4 -3
- package/dist/collection/assets/i18n/de.json +1 -1
- package/dist/collection/assets/i18n/en.json +1 -1
- package/dist/collection/collection-manifest.json +7 -3
- package/dist/collection/components/stzh-actionset/stzh-actionset.css +11 -0
- package/dist/collection/components/stzh-actionset/stzh-actionset.js +18 -8
- package/dist/collection/components/stzh-actionset/stzh-actionset.stories.js +5 -5
- package/dist/collection/components/stzh-anchornav/stzh-anchornav.css +1 -3
- package/dist/collection/components/stzh-button/stzh-button.css +12 -4
- package/dist/collection/components/stzh-button/stzh-button.stories.js +10 -6
- package/dist/collection/components/stzh-card/stzh-card.css +0 -18
- package/dist/collection/components/stzh-card/stzh-card.stories.js +1 -1
- package/dist/collection/components/stzh-chart/stzh-chart.css +55 -37
- package/dist/collection/components/stzh-chip/stzh-chip.css +16 -2
- package/dist/collection/components/stzh-chip/stzh-chip.js +32 -3
- package/dist/collection/components/stzh-chip/stzh-chip.stories.js +7 -0
- package/dist/collection/components/stzh-chip-select/stzh-chip-select.css +6 -0
- package/dist/collection/components/stzh-chip-select/stzh-chip-select.js +21 -11
- package/dist/collection/components/stzh-clamp/stzh-clamp.css +5 -0
- package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.css → stzh-contact/stzh-contact.css} +22 -22
- package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.js → stzh-contact/stzh-contact.js} +25 -25
- package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.stories.js → stzh-contact/stzh-contact.stories.js} +10 -9
- package/dist/collection/components/stzh-container/stzh-container.css +11 -1
- package/dist/collection/components/stzh-container/stzh-container.js +26 -1
- package/dist/collection/components/stzh-container/stzh-container.stories.js +6 -1
- package/dist/collection/components/stzh-cspace/stzh-cspace.css +136 -43
- package/dist/collection/components/stzh-datalist/stzh-datalist.css +12 -0
- package/dist/collection/components/stzh-datalist/stzh-datalist.js +19 -0
- package/dist/collection/components/stzh-datalist/stzh-datalist.stories.js +2 -1
- package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +28 -13
- package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.js +35 -13
- package/dist/collection/components/stzh-datatable/stzh-datatable.css +3 -0
- package/dist/collection/components/stzh-datatable/stzh-datatable.js +20 -1
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +9 -8
- package/dist/collection/components/stzh-fieldset/stzh-fieldset.css +1 -0
- package/dist/collection/components/stzh-figure/stzh-figure.css +8 -5
- package/dist/collection/components/stzh-figure/stzh-figure.js +21 -1
- package/dist/collection/components/stzh-footer/stzh-footer.css +1 -0
- package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.css +12 -1
- package/dist/collection/components/stzh-header/stzh-header.css +5 -1
- package/dist/collection/components/stzh-header/stzh-header.js +4 -3
- package/dist/collection/components/stzh-header/stzh-header.stories.js +46 -38
- package/dist/collection/components/stzh-hspace/stzh-hspace.css +166 -138
- package/dist/collection/components/stzh-hspace/stzh-hspace.js +30 -6
- package/dist/collection/components/stzh-invert/stzh-invert.css +158 -0
- package/dist/collection/components/stzh-invert/stzh-invert.js +25 -0
- package/dist/collection/components/stzh-invert/stzh-invert.stories.js +55 -0
- package/dist/collection/components/stzh-link/stzh-link.stories.js +11 -19
- package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js +4 -1
- package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js +8 -0
- package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.stories.js +6 -6
- package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.css +14 -1
- package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.stories.js +4 -6
- package/dist/collection/components/stzh-popover/stzh-popover.css +1 -1
- package/dist/collection/components/stzh-popover/stzh-popover.js +1 -1
- package/dist/collection/components/stzh-popover/stzh-popover.stories.js +5 -7
- package/dist/collection/components/stzh-portal-mitwirken/stzh-portal-mitwirken.css +34 -9
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +2 -2
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.stories.js +2 -1
- package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.css +40 -4
- package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js +22 -2
- package/dist/collection/components/stzh-ratio/stzh-ratio.css +172 -0
- package/dist/collection/components/stzh-ratio/stzh-ratio.js +88 -0
- package/dist/collection/components/stzh-ratio/stzh-ratio.stories.js +35 -0
- package/dist/collection/components/stzh-richtext/stzh-richtext.css +10 -5
- package/dist/collection/components/stzh-show/stzh-show.css +165 -0
- package/dist/collection/components/stzh-show/stzh-show.js +158 -0
- package/dist/collection/components/stzh-show/stzh-show.stories.js +52 -0
- package/dist/collection/components/stzh-sitemap/stzh-sitemap.css +1 -1
- package/dist/collection/components/stzh-sortable/stzh-sortable.js +6 -3
- package/dist/collection/components/stzh-space/stzh-space.css +842 -0
- package/dist/collection/components/stzh-space/stzh-space.js +262 -0
- package/dist/collection/components/stzh-space/stzh-space.stories.js +76 -0
- package/dist/collection/components/stzh-sticky/stzh-sticky.css +9 -0
- package/dist/collection/components/stzh-sticky/stzh-sticky.js +21 -1
- package/dist/collection/components/stzh-sticky/stzh-sticky.stories.js +3 -1
- package/dist/collection/components/stzh-table/stzh-table.css +3 -0
- package/dist/collection/components/stzh-table/stzh-table.js +19 -0
- package/dist/collection/components/stzh-text/stzh-text.css +2 -2
- package/dist/collection/components/stzh-tooltip/stzh-tooltip.js +2 -2
- package/dist/collection/components/stzh-upload/stzh-upload.js +3 -0
- package/dist/collection/components/stzh-vspace/stzh-vspace.css +157 -129
- package/dist/collection/components/stzh-vspace/stzh-vspace.js +30 -6
- package/dist/collection/pages/egov.stories.js +190 -182
- package/dist/collection/pages/meinkonto.stories.js +367 -511
- package/dist/collection/pages/microsite.stories.js +235 -0
- package/dist/collection/pages/website.stories.js +139 -0
- package/dist/collection/patterns/appointments.stories.js +2 -2
- package/dist/collection/patterns/contact.stories.js +20 -20
- package/dist/collection/patterns/contactform.stories.js +2 -2
- package/dist/collection/patterns/jobdetails.stories.js +151 -0
- package/dist/collection/patterns/subpages.stories.js +1 -1
- package/dist/collection/patterns/twocolumns.stories.js +46 -0
- package/dist/components/arrow.js +468 -478
- package/dist/components/axios.js +3165 -0
- package/dist/components/date-utils.js +159 -0
- package/dist/components/focus-trap.esm.js +188 -278
- package/dist/components/index.d.ts +14 -1
- package/dist/components/index.js +7 -3
- package/dist/components/stzh-actionset2.js +16 -6
- package/dist/components/stzh-anchornav.js +1 -1
- package/dist/components/stzh-appointments.js +2 -1
- package/dist/components/stzh-button2.js +1 -1
- package/dist/components/stzh-calendar2.js +2 -159
- package/dist/components/stzh-card2.js +1 -1
- package/dist/components/stzh-chart.js +1470 -403
- package/dist/components/stzh-chip-select2.js +27 -15
- package/dist/components/stzh-chip2.js +23 -5
- package/dist/components/stzh-clamp2.js +1 -1
- package/dist/components/{stzh-contactaddress.d.ts → stzh-contact.d.ts} +4 -4
- package/dist/components/stzh-contact.js +157 -0
- package/dist/components/stzh-container.js +5 -2
- package/dist/components/stzh-cspace.js +1 -1
- package/dist/components/stzh-datalist-item2.js +30 -11
- package/dist/components/stzh-datalist2.js +3 -1
- package/dist/components/stzh-datatable.js +32 -30
- package/dist/components/stzh-datepicker2.js +2 -1
- package/dist/components/stzh-dropdown2.js +1054 -423
- package/dist/components/stzh-fieldset.js +1 -1
- package/dist/components/stzh-figure.js +6 -3
- package/dist/components/stzh-footer.js +1 -1
- package/dist/components/stzh-ghettobox2.js +1 -1
- package/dist/components/stzh-header.js +5 -4
- package/dist/components/stzh-hspace.js +8 -5
- package/dist/components/stzh-invert.d.ts +11 -0
- package/dist/components/stzh-invert.js +36 -0
- package/dist/components/stzh-microsite-teaserlist.js +1 -1
- package/dist/components/stzh-pagebottom.js +4 -1
- package/dist/components/stzh-pagetitle-hero.js +1 -1
- package/dist/components/stzh-pagetitle.js +8 -0
- package/dist/components/stzh-popover2.js +2 -2
- package/dist/components/stzh-portal-mitwirken.js +1 -1
- package/dist/components/stzh-progressbar-item2.js +6 -3
- package/dist/components/stzh-progressbar.js +1 -1
- package/dist/components/stzh-ratio.d.ts +11 -0
- package/dist/components/stzh-ratio.js +43 -0
- package/dist/components/stzh-richtext2.js +1 -1
- package/dist/components/stzh-show.d.ts +11 -0
- package/dist/components/stzh-show.js +62 -0
- package/dist/components/stzh-sitemap.js +1 -1
- package/dist/components/stzh-sortable2.js +9 -65
- package/dist/components/stzh-space.d.ts +11 -0
- package/dist/components/stzh-space.js +59 -0
- package/dist/components/stzh-sticky.js +5 -2
- package/dist/components/stzh-table.js +3 -1
- package/dist/components/stzh-text2.js +1 -1
- package/dist/components/stzh-tooltip2.js +2 -2
- package/dist/components/stzh-upload.js +3 -0
- package/dist/components/stzh-vbz-linechip2.js +772 -680
- package/dist/components/stzh-vbz-majorticker.js +1 -1
- package/dist/components/stzh-vbz-ticker.js +1 -1
- package/dist/components/stzh-vspace.js +8 -5
- package/dist/esm/{app-globals-ff581b69.js → app-globals-2e508622.js} +1 -1
- package/dist/esm/{arrow-86a679c7.js → arrow-480bc86f.js} +468 -478
- package/dist/esm/axios-e2b39666.js +3165 -0
- package/dist/esm/{dom-6be6f662.js → dom-c525f6e4.js} +1 -1
- package/dist/esm/{focus-trap.esm-074705a3.js → focus-trap.esm-82634dec.js} +188 -278
- package/dist/esm/{index-011c84fe.js → index-319b7c49.js} +112 -4
- package/dist/esm/loader.js +5 -4
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/esm/{shadow-css-ed4599f8.js → shadow-css-abbdeef8.js} +1 -1
- package/dist/esm/stzh-accordion-item.entry.js +1 -1
- package/dist/esm/stzh-accordion.entry.js +1 -1
- package/dist/esm/stzh-actions.entry.js +1 -1
- package/dist/esm/stzh-actionset.entry.js +16 -6
- package/dist/esm/stzh-anchornav.entry.js +2 -2
- package/dist/esm/stzh-appnav.entry.js +1 -1
- package/dist/esm/stzh-appointments.entry.js +1 -1
- package/dist/esm/stzh-audio.entry.js +1 -1
- package/dist/esm/stzh-badge_3.entry.js +2 -2
- package/dist/esm/stzh-calendar.entry.js +1 -1
- package/dist/esm/stzh-card_3.entry.js +20 -15
- package/dist/esm/stzh-cell.entry.js +1 -1
- package/dist/esm/stzh-chart.entry.js +1471 -404
- package/dist/esm/stzh-checkbox.entry.js +2 -2
- package/dist/esm/stzh-checkboxgroup.entry.js +2 -2
- package/dist/esm/stzh-chip_2.entry.js +127 -0
- package/dist/esm/stzh-components.js +24 -5
- package/dist/esm/stzh-contact.entry.js +87 -0
- package/dist/esm/stzh-container.entry.js +3 -2
- package/dist/esm/stzh-cspace.entry.js +2 -2
- package/dist/esm/stzh-datalist_2.entry.js +33 -13
- package/dist/esm/stzh-datamessagelist-item.entry.js +1 -1
- package/dist/esm/stzh-datamessagelist.entry.js +1 -1
- package/dist/esm/stzh-datatable.entry.js +32 -31
- package/dist/esm/stzh-datepicker_3.entry.js +2 -2
- package/dist/esm/stzh-details.entry.js +1 -1
- package/dist/esm/stzh-dialog.entry.js +2 -2
- package/dist/esm/stzh-dropdown.entry.js +1056 -425
- package/dist/esm/stzh-fieldset.entry.js +2 -2
- package/dist/esm/stzh-figure.entry.js +5 -3
- package/dist/esm/stzh-flyingfocus.entry.js +1 -1
- package/dist/esm/stzh-footer.entry.js +2 -2
- package/dist/esm/stzh-ghettobox_2.entry.js +3 -3
- package/dist/esm/stzh-header.entry.js +6 -5
- package/dist/esm/stzh-heading.entry.js +1 -1
- package/dist/esm/stzh-hr.entry.js +1 -1
- package/dist/esm/stzh-hspace.entry.js +4 -3
- package/dist/esm/stzh-icon-sprite.entry.js +1 -1
- package/dist/esm/{stzh-input-description-bdd1e340.js → stzh-input-description-cc38e214.js} +1 -1
- package/dist/esm/stzh-input.entry.js +2 -2
- package/dist/esm/stzh-invert.entry.js +19 -0
- package/dist/esm/stzh-langnav.entry.js +1 -1
- package/dist/esm/stzh-link.entry.js +1 -1
- package/dist/esm/stzh-list-item.entry.js +1 -1
- package/dist/esm/stzh-list.entry.js +1 -1
- package/dist/esm/stzh-loader.entry.js +1 -1
- package/dist/esm/stzh-loadingbar.entry.js +1 -1
- package/dist/esm/stzh-menu_2.entry.js +1 -1
- package/dist/esm/stzh-message.entry.js +1 -1
- package/dist/esm/stzh-metanav.entry.js +1 -1
- package/dist/esm/stzh-microsite-teaserlist.entry.js +2 -2
- package/dist/esm/stzh-olmap.entry.js +1 -1
- package/dist/esm/stzh-overlay.entry.js +2 -2
- package/dist/esm/stzh-page-skiplinks.entry.js +1 -1
- package/dist/esm/stzh-pagebottom.entry.js +5 -2
- package/dist/esm/stzh-pagetitle-hero.entry.js +2 -2
- package/dist/esm/stzh-pagetitle.entry.js +9 -1
- package/dist/esm/stzh-popover.entry.js +5 -5
- package/dist/esm/stzh-portal-mitwirken.entry.js +2 -2
- package/dist/esm/stzh-progressbar-item.entry.js +6 -4
- package/dist/esm/stzh-progressbar.entry.js +2 -2
- package/dist/esm/stzh-ratio.entry.js +22 -0
- package/dist/esm/stzh-readspeaker.entry.js +1 -1
- package/dist/esm/stzh-row.entry.js +1 -1
- package/dist/esm/stzh-saptcha.entry.js +1 -1
- package/dist/esm/stzh-section.entry.js +1 -1
- package/dist/esm/stzh-share.entry.js +1 -1
- package/dist/esm/stzh-show.entry.js +37 -0
- package/dist/esm/stzh-sitemap.entry.js +2 -2
- package/dist/esm/stzh-skiplink.entry.js +1 -1
- package/dist/esm/stzh-sortable.entry.js +10 -66
- package/dist/esm/stzh-space.entry.js +30 -0
- package/dist/esm/stzh-status.entry.js +1 -1
- package/dist/esm/stzh-sticky.entry.js +5 -3
- package/dist/esm/stzh-table.entry.js +3 -2
- package/dist/esm/stzh-text.entry.js +2 -2
- package/dist/esm/stzh-textandimage.entry.js +1 -1
- package/dist/esm/stzh-toggle.entry.js +2 -2
- package/dist/esm/stzh-tooltip.entry.js +5 -5
- package/dist/esm/stzh-upload.entry.js +5 -2
- package/dist/esm/stzh-vbz-linechip.entry.js +783 -691
- package/dist/esm/stzh-vbz-majorticker.entry.js +2 -2
- package/dist/esm/stzh-vbz-ticker.entry.js +2 -2
- package/dist/esm/stzh-visuallyhidden.entry.js +1 -1
- package/dist/esm/stzh-vspace.entry.js +4 -3
- package/dist/esm-es5/app-globals-2e508622.js +1 -0
- package/dist/esm-es5/arrow-480bc86f.js +1 -0
- package/dist/esm-es5/axios-e2b39666.js +1 -0
- package/dist/esm-es5/{dom-6be6f662.js → dom-c525f6e4.js} +0 -0
- package/dist/esm-es5/focus-trap.esm-82634dec.js +9 -0
- package/dist/esm-es5/index-319b7c49.js +2 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{shadow-css-ed4599f8.js → shadow-css-abbdeef8.js} +0 -0
- package/dist/esm-es5/stzh-accordion-item.entry.js +1 -1
- package/dist/esm-es5/stzh-accordion.entry.js +1 -1
- package/dist/esm-es5/stzh-actions.entry.js +1 -1
- package/dist/esm-es5/stzh-actionset.entry.js +1 -1
- package/dist/esm-es5/stzh-anchornav.entry.js +1 -1
- package/dist/esm-es5/stzh-appnav.entry.js +1 -1
- package/dist/esm-es5/stzh-appointments.entry.js +1 -1
- package/dist/esm-es5/stzh-audio.entry.js +1 -1
- package/dist/esm-es5/stzh-badge_3.entry.js +1 -1
- package/dist/esm-es5/stzh-calendar.entry.js +1 -1
- package/dist/esm-es5/stzh-card_3.entry.js +1 -1
- package/dist/esm-es5/stzh-cell.entry.js +1 -1
- package/dist/esm-es5/stzh-chart.entry.js +3 -3
- package/dist/esm-es5/stzh-checkbox.entry.js +1 -1
- package/dist/esm-es5/stzh-checkboxgroup.entry.js +1 -1
- package/dist/esm-es5/stzh-chip_2.entry.js +1 -0
- package/dist/esm-es5/stzh-components.js +1 -1
- package/dist/esm-es5/stzh-contact.entry.js +1 -0
- package/dist/esm-es5/stzh-container.entry.js +1 -1
- package/dist/esm-es5/stzh-cspace.entry.js +1 -1
- package/dist/esm-es5/stzh-datalist_2.entry.js +1 -1
- package/dist/esm-es5/stzh-datamessagelist-item.entry.js +1 -1
- package/dist/esm-es5/stzh-datamessagelist.entry.js +1 -1
- package/dist/esm-es5/stzh-datatable.entry.js +4 -4
- package/dist/esm-es5/stzh-datepicker_3.entry.js +1 -1
- package/dist/esm-es5/stzh-details.entry.js +1 -1
- package/dist/esm-es5/stzh-dialog.entry.js +1 -1
- package/dist/esm-es5/stzh-dropdown.entry.js +9 -1
- package/dist/esm-es5/stzh-fieldset.entry.js +1 -1
- package/dist/esm-es5/stzh-figure.entry.js +1 -1
- package/dist/esm-es5/stzh-flyingfocus.entry.js +1 -1
- package/dist/esm-es5/stzh-footer.entry.js +1 -1
- package/dist/esm-es5/stzh-ghettobox_2.entry.js +1 -1
- package/dist/esm-es5/stzh-header.entry.js +1 -1
- package/dist/esm-es5/stzh-heading.entry.js +1 -1
- package/dist/esm-es5/stzh-hr.entry.js +1 -1
- package/dist/esm-es5/stzh-hspace.entry.js +1 -1
- package/dist/esm-es5/stzh-icon-sprite.entry.js +1 -1
- package/dist/esm-es5/{stzh-input-description-bdd1e340.js → stzh-input-description-cc38e214.js} +1 -1
- package/dist/esm-es5/stzh-input.entry.js +1 -1
- package/dist/esm-es5/stzh-invert.entry.js +1 -0
- package/dist/esm-es5/stzh-langnav.entry.js +1 -1
- package/dist/esm-es5/stzh-link.entry.js +1 -1
- package/dist/esm-es5/stzh-list-item.entry.js +1 -1
- package/dist/esm-es5/stzh-list.entry.js +1 -1
- package/dist/esm-es5/stzh-loader.entry.js +1 -1
- package/dist/esm-es5/stzh-loadingbar.entry.js +1 -1
- package/dist/esm-es5/stzh-menu_2.entry.js +1 -1
- package/dist/esm-es5/stzh-message.entry.js +1 -1
- package/dist/esm-es5/stzh-metanav.entry.js +1 -1
- package/dist/esm-es5/stzh-microsite-teaserlist.entry.js +1 -1
- package/dist/esm-es5/stzh-olmap.entry.js +1 -1
- package/dist/esm-es5/stzh-overlay.entry.js +1 -1
- package/dist/esm-es5/stzh-page-skiplinks.entry.js +1 -1
- package/dist/esm-es5/stzh-pagebottom.entry.js +1 -1
- package/dist/esm-es5/stzh-pagetitle-hero.entry.js +1 -1
- package/dist/esm-es5/stzh-pagetitle.entry.js +1 -1
- package/dist/esm-es5/stzh-popover.entry.js +1 -1
- package/dist/esm-es5/stzh-portal-mitwirken.entry.js +1 -1
- package/dist/esm-es5/stzh-progressbar-item.entry.js +1 -1
- package/dist/esm-es5/stzh-progressbar.entry.js +1 -1
- package/dist/esm-es5/stzh-ratio.entry.js +1 -0
- package/dist/esm-es5/stzh-readspeaker.entry.js +1 -1
- package/dist/esm-es5/stzh-row.entry.js +1 -1
- package/dist/esm-es5/stzh-saptcha.entry.js +1 -1
- package/dist/esm-es5/stzh-section.entry.js +1 -1
- package/dist/esm-es5/stzh-share.entry.js +1 -1
- package/dist/esm-es5/stzh-show.entry.js +1 -0
- package/dist/esm-es5/stzh-sitemap.entry.js +1 -1
- package/dist/esm-es5/stzh-skiplink.entry.js +1 -1
- package/dist/esm-es5/stzh-sortable.entry.js +2 -2
- package/dist/esm-es5/stzh-space.entry.js +1 -0
- package/dist/esm-es5/stzh-status.entry.js +1 -1
- package/dist/esm-es5/stzh-sticky.entry.js +1 -1
- package/dist/esm-es5/stzh-table.entry.js +1 -1
- package/dist/esm-es5/stzh-text.entry.js +1 -1
- package/dist/esm-es5/stzh-textandimage.entry.js +1 -1
- package/dist/esm-es5/stzh-toggle.entry.js +1 -1
- package/dist/esm-es5/stzh-tooltip.entry.js +1 -1
- package/dist/esm-es5/stzh-upload.entry.js +1 -1
- package/dist/esm-es5/stzh-vbz-linechip.entry.js +1 -1
- package/dist/esm-es5/stzh-vbz-majorticker.entry.js +1 -1
- package/dist/esm-es5/stzh-vbz-ticker.entry.js +1 -1
- package/dist/esm-es5/stzh-visuallyhidden.entry.js +1 -1
- package/dist/esm-es5/stzh-vspace.entry.js +1 -1
- package/dist/esm-es5/translation-utils-2623783f.js +1 -1
- package/dist/stzh-components/assets/i18n/de.json +1 -1
- package/dist/stzh-components/assets/i18n/en.json +1 -1
- package/dist/stzh-components/p-00c4c8c0.system.entry.js +1 -0
- package/dist/stzh-components/p-013d269a.system.entry.js +1 -0
- package/dist/stzh-components/p-0447b178.system.entry.js +1 -0
- package/dist/stzh-components/{p-2bec3c77.entry.js → p-04d390eb.entry.js} +1 -1
- package/dist/stzh-components/p-06f5abab.system.entry.js +1 -0
- package/dist/stzh-components/{p-9176246f.entry.js → p-0930004d.entry.js} +1 -1
- package/dist/stzh-components/p-09f582cd.entry.js +1 -0
- package/dist/stzh-components/p-0a2de4e8.entry.js +1 -0
- package/dist/stzh-components/p-0ada0b0a.system.entry.js +1 -0
- package/dist/stzh-components/p-0af8a184.system.entry.js +1 -0
- package/dist/stzh-components/p-0afba769.entry.js +1 -0
- package/dist/stzh-components/p-0ce8b383.system.js +1 -0
- package/dist/stzh-components/p-0f882e26.system.entry.js +1 -0
- package/dist/stzh-components/{p-fbf2f4ed.system.entry.js → p-101f9b11.system.entry.js} +1 -1
- package/dist/stzh-components/{p-cff8376e.entry.js → p-12564ee4.entry.js} +1 -1
- package/dist/stzh-components/p-125a8244.entry.js +1 -0
- package/dist/stzh-components/{p-bee6eef5.entry.js → p-126a0f14.entry.js} +1 -1
- package/dist/stzh-components/p-12e03b78.system.entry.js +1 -0
- package/dist/stzh-components/{p-30ae5c00.system.entry.js → p-16b3d4ee.system.entry.js} +1 -1
- package/dist/stzh-components/p-1783b15a.js +12 -0
- package/dist/stzh-components/p-1c2c9ca8.entry.js +1 -0
- package/dist/stzh-components/p-1f925e84.system.entry.js +1 -0
- package/dist/stzh-components/p-20bd79d0.entry.js +1 -0
- package/dist/stzh-components/p-246cd179.js +1 -0
- package/dist/stzh-components/p-26889a91.entry.js +9 -0
- package/dist/stzh-components/p-2ad73c0c.system.entry.js +1 -0
- package/dist/stzh-components/p-2b67b0b3.system.entry.js +9 -0
- package/dist/stzh-components/p-2ba88798.entry.js +1 -0
- package/dist/stzh-components/{p-60274e67.system.entry.js → p-2c490268.system.entry.js} +1 -1
- package/dist/stzh-components/{p-912706bb.entry.js → p-2e6ef670.entry.js} +1 -1
- package/dist/stzh-components/p-2f4448c9.system.entry.js +1 -0
- package/dist/stzh-components/{p-376946bc.entry.js → p-2f4c5e18.entry.js} +1 -1
- package/dist/stzh-components/p-3238b0bf.entry.js +1 -0
- package/dist/stzh-components/p-36e72c1d.system.js +2 -0
- package/dist/stzh-components/{p-fd265f3a.entry.js → p-38e7645a.entry.js} +1 -1
- package/dist/stzh-components/{p-ed6adb96.entry.js → p-3b00d8b8.entry.js} +1 -1
- package/dist/stzh-components/p-3e433996.entry.js +1 -0
- package/dist/stzh-components/p-3f676d99.system.entry.js +1 -0
- package/dist/stzh-components/{p-0c8427bc.entry.js → p-40798ed2.entry.js} +1 -1
- package/dist/stzh-components/p-418e04f7.system.entry.js +1 -0
- package/dist/stzh-components/{p-7704b10b.entry.js → p-41fa7e81.entry.js} +1 -1
- package/dist/stzh-components/p-4370efe7.entry.js +1 -0
- package/dist/stzh-components/p-444b2baf.entry.js +1 -0
- package/dist/stzh-components/p-44b03dbb.js +10 -0
- package/dist/stzh-components/{p-2577ca1e.system.entry.js → p-44d10402.system.entry.js} +1 -1
- package/dist/stzh-components/{p-ed0d51b6.entry.js → p-46d07ed7.entry.js} +1 -1
- package/dist/stzh-components/p-470182bb.system.entry.js +1 -0
- package/dist/stzh-components/{p-669896ec.entry.js → p-48dee587.entry.js} +1 -1
- package/dist/stzh-components/p-48e835cf.system.js +1 -0
- package/dist/stzh-components/{p-55b7cda7.system.entry.js → p-4a298117.system.entry.js} +1 -1
- package/dist/stzh-components/p-4a60b27f.entry.js +1 -0
- package/dist/stzh-components/p-4d8c81b2.system.entry.js +1 -0
- package/dist/stzh-components/{p-f027e569.system.entry.js → p-512c38b3.system.entry.js} +1 -1
- package/dist/stzh-components/p-51b3a560.system.entry.js +1 -0
- package/dist/stzh-components/p-537adcfe.system.entry.js +3 -0
- package/dist/stzh-components/{p-13051e1c.js → p-538882c8.js} +0 -0
- package/dist/stzh-components/p-55752bd5.system.entry.js +1 -0
- package/dist/stzh-components/p-563b1abc.system.entry.js +1 -0
- package/dist/stzh-components/p-59793ef8.system.entry.js +1 -0
- package/dist/stzh-components/{p-6a0a76b3.entry.js → p-5b162e4f.entry.js} +1 -1
- package/dist/stzh-components/{p-0409bf6b.system.entry.js → p-5c717080.system.entry.js} +1 -1
- package/dist/stzh-components/p-5cb1cd93.system.entry.js +1 -0
- package/dist/stzh-components/p-5f9b58fb.system.entry.js +1 -0
- package/dist/stzh-components/{p-e7cf6c45.system.entry.js → p-617ece76.system.entry.js} +1 -1
- package/dist/stzh-components/{p-104df3a8.system.entry.js → p-6414454e.system.entry.js} +1 -1
- package/dist/stzh-components/p-6496df0a.system.entry.js +9 -0
- package/dist/stzh-components/p-64cdef2f.entry.js +1 -0
- package/dist/stzh-components/p-64e27ac1.entry.js +1 -0
- package/dist/stzh-components/p-655e3c46.system.entry.js +1 -0
- package/dist/stzh-components/{p-b0d8866d.entry.js → p-65ea23f6.entry.js} +1 -1
- package/dist/stzh-components/p-668b4025.system.entry.js +1 -0
- package/dist/stzh-components/{p-f03ce92d.system.entry.js → p-6722e89a.system.entry.js} +1 -1
- package/dist/stzh-components/p-67ae4994.entry.js +1 -0
- package/dist/stzh-components/{p-f39f347c.system.js → p-6845b6ac.system.js} +0 -0
- package/dist/stzh-components/p-6adc5f0c.system.entry.js +1 -0
- package/dist/stzh-components/p-6c80b920.system.entry.js +1 -0
- package/dist/stzh-components/p-6dbf976b.entry.js +1 -0
- package/dist/stzh-components/{p-eade9f77.entry.js → p-6e3231ce.entry.js} +1 -1
- package/dist/stzh-components/{p-ef3da23b.entry.js → p-705aa56d.entry.js} +1 -1
- package/dist/stzh-components/{p-288ee536.system.entry.js → p-70f85be3.system.entry.js} +1 -1
- package/dist/stzh-components/{p-62a2684d.entry.js → p-7185f634.entry.js} +1 -1
- package/dist/stzh-components/{p-11d7b426.system.entry.js → p-74d6e349.system.entry.js} +1 -1
- package/dist/stzh-components/p-77d0a54b.system.entry.js +1 -0
- package/dist/stzh-components/p-7b0c04b3.system.entry.js +1 -0
- package/dist/stzh-components/{p-0cc8bbd7.system.entry.js → p-7e4261ce.system.entry.js} +1 -1
- package/dist/stzh-components/{p-fee6a938.entry.js → p-7e94b787.entry.js} +1 -1
- package/dist/stzh-components/{p-df5f49b4.js → p-7f0fb35c.js} +1 -1
- package/dist/stzh-components/{p-44e0b101.system.entry.js → p-7f1b7b44.system.entry.js} +1 -1
- package/dist/stzh-components/{p-97e16665.system.entry.js → p-80f497d8.system.entry.js} +1 -1
- package/dist/stzh-components/p-81b4b0e6.system.entry.js +1 -0
- package/dist/stzh-components/{p-8cc119d3.system.entry.js → p-8361c9d8.system.entry.js} +1 -1
- package/dist/stzh-components/{p-cc720d2d.entry.js → p-838b0542.entry.js} +1 -1
- package/dist/stzh-components/p-862e7723.system.entry.js +1 -0
- package/dist/stzh-components/{p-49b292df.entry.js → p-86336227.entry.js} +1 -1
- package/dist/stzh-components/{p-586a8b3f.entry.js → p-8715198b.entry.js} +1 -1
- package/dist/stzh-components/p-8972cf20.entry.js +1 -0
- package/dist/stzh-components/p-8c5a6832.system.entry.js +1 -0
- package/dist/stzh-components/p-8caafed2.system.entry.js +1 -0
- package/dist/stzh-components/p-8ccefd49.system.entry.js +1 -0
- package/dist/stzh-components/p-8ee705ed.entry.js +1 -0
- package/dist/stzh-components/p-906caf97.js +1 -0
- package/dist/stzh-components/{p-9e4e0cc9.entry.js → p-923dffc7.entry.js} +1 -1
- package/dist/stzh-components/p-9380fb85.entry.js +1 -0
- package/dist/stzh-components/p-97e4272b.system.entry.js +1 -0
- package/dist/stzh-components/p-990f395b.entry.js +1 -0
- package/dist/stzh-components/p-99a3742a.js +2 -0
- package/dist/stzh-components/p-99aacd74.entry.js +1 -0
- package/dist/stzh-components/p-99b82949.entry.js +1 -0
- package/dist/stzh-components/p-99e27f57.system.js +1 -0
- package/dist/stzh-components/{p-576e1345.entry.js → p-99e43fb0.entry.js} +1 -1
- package/dist/stzh-components/p-9be29697.entry.js +1 -0
- package/dist/stzh-components/{p-eb6d3e6c.entry.js → p-9c35c9cd.entry.js} +1 -1
- package/dist/stzh-components/{p-33f80cd2.system.entry.js → p-9d5c70ee.system.entry.js} +1 -1
- package/dist/stzh-components/p-9e30ee4a.system.js +10 -0
- package/dist/stzh-components/{p-94830f96.system.entry.js → p-a0a033bd.system.entry.js} +1 -1
- package/dist/stzh-components/{p-d5cb80ad.system.entry.js → p-a11ef2d6.system.entry.js} +1 -1
- package/dist/stzh-components/p-a2b2cfac.system.entry.js +1 -0
- package/dist/stzh-components/p-a3c7aa63.entry.js +9 -0
- package/dist/stzh-components/p-a408bfba.system.js +1 -1
- package/dist/stzh-components/{p-aae4655f.entry.js → p-a44527f8.entry.js} +1 -1
- package/dist/stzh-components/{p-8bbaed3a.entry.js → p-a4dd5ba3.entry.js} +1 -1
- package/dist/stzh-components/{p-c30600d0.system.entry.js → p-a51dd210.system.entry.js} +1 -1
- package/dist/stzh-components/{p-4b0f473e.entry.js → p-a693ab41.entry.js} +1 -1
- package/dist/stzh-components/p-a6be6aca.system.entry.js +1 -0
- package/dist/stzh-components/p-ac3e3b2a.system.entry.js +1 -0
- package/dist/stzh-components/{p-72389069.entry.js → p-ad816fd9.entry.js} +1 -1
- package/dist/stzh-components/p-af67ea5e.entry.js +7 -0
- package/dist/stzh-components/p-b050c1f4.entry.js +1 -0
- package/dist/stzh-components/{p-be79497f.system.entry.js → p-b1ffc2a9.system.entry.js} +1 -1
- package/dist/stzh-components/p-b395bed5.system.entry.js +1 -0
- package/dist/stzh-components/{p-30ba96a3.entry.js → p-b689b882.entry.js} +1 -1
- package/dist/stzh-components/{p-b3dc4913.entry.js → p-b6e6f847.entry.js} +1 -1
- package/dist/stzh-components/p-b92734db.entry.js +1 -0
- package/dist/stzh-components/{p-57a0f895.entry.js → p-b9427914.entry.js} +1 -1
- package/dist/stzh-components/p-bada7caa.system.entry.js +1 -0
- package/dist/stzh-components/p-bb82fa2d.system.entry.js +1 -0
- package/dist/stzh-components/{p-557f07b5.system.entry.js → p-bc36fda4.system.entry.js} +1 -1
- package/dist/stzh-components/{p-1d8272a5.entry.js → p-be68b323.entry.js} +1 -1
- package/dist/stzh-components/p-bf071e77.system.js +1 -0
- package/dist/stzh-components/{p-84965eac.entry.js → p-c0ec905d.entry.js} +1 -1
- package/dist/stzh-components/p-c2f909c1.system.entry.js +1 -0
- package/dist/stzh-components/{p-ea9ca52b.entry.js → p-c33b7d23.entry.js} +1 -1
- package/dist/stzh-components/p-c646c712.entry.js +1 -0
- package/dist/stzh-components/p-c8cc2563.system.entry.js +1 -0
- package/dist/stzh-components/p-c9c7d88a.entry.js +1 -0
- package/dist/stzh-components/p-cbe6d2ea.entry.js +1 -0
- package/dist/stzh-components/{p-2732d8c8.system.js → p-cbfae706.system.js} +0 -0
- package/dist/stzh-components/p-ccf023da.entry.js +3 -0
- package/dist/stzh-components/p-d04bbc19.js +1 -0
- package/dist/stzh-components/p-d32965be.system.entry.js +1 -0
- package/dist/stzh-components/p-d54ff4d4.system.entry.js +1 -0
- package/dist/stzh-components/p-d5644c25.entry.js +8 -0
- package/dist/stzh-components/p-d6a11daa.entry.js +1 -0
- package/dist/stzh-components/p-d943e02c.system.entry.js +1 -0
- package/dist/stzh-components/{p-a474826c.system.entry.js → p-da85cf73.system.entry.js} +1 -1
- package/dist/stzh-components/p-da98a8bb.system.entry.js +7 -0
- package/dist/stzh-components/p-db306e24.entry.js +1 -0
- package/dist/stzh-components/{p-d2f6fb1b.system.js → p-db339680.system.js} +1 -1
- package/dist/stzh-components/{p-f5fdc88c.entry.js → p-dbe5320f.entry.js} +3 -3
- package/dist/stzh-components/p-dd1bb919.entry.js +1 -0
- package/dist/stzh-components/p-dd5f29aa.entry.js +1 -0
- package/dist/stzh-components/p-de9edaf2.entry.js +1 -0
- package/dist/stzh-components/p-e3afc8f7.entry.js +1 -0
- package/dist/stzh-components/p-e54ef44f.system.entry.js +1 -0
- package/dist/stzh-components/p-e78fe899.system.entry.js +1 -0
- package/dist/stzh-components/{p-60d9bf98.system.entry.js → p-e7909de9.system.entry.js} +1 -1
- package/dist/stzh-components/{p-58af0855.system.entry.js → p-e7e9b295.system.entry.js} +1 -1
- package/dist/stzh-components/p-e8feb92e.system.entry.js +1 -0
- package/dist/stzh-components/p-eb7773f3.entry.js +1 -0
- package/dist/stzh-components/p-ed58b644.system.entry.js +1 -0
- package/dist/stzh-components/p-ee4b939a.entry.js +1 -0
- package/dist/stzh-components/{p-28d8aa31.entry.js → p-f0e2a32d.entry.js} +1 -1
- package/dist/stzh-components/{p-0cff4e01.entry.js → p-f2deda0a.entry.js} +1 -1
- package/dist/stzh-components/p-f3d69226.system.entry.js +1 -0
- package/dist/stzh-components/p-f433e62a.system.entry.js +1 -0
- package/dist/stzh-components/p-f5b2c12e.entry.js +1 -0
- package/dist/stzh-components/{p-4226dec6.system.entry.js → p-f7bb76d8.system.entry.js} +1 -1
- package/dist/stzh-components/{p-e0f063ac.entry.js → p-f8feb07b.entry.js} +1 -1
- package/dist/stzh-components/p-f9ab0433.entry.js +1 -0
- package/dist/stzh-components/p-fa615b51.system.entry.js +1 -0
- package/dist/stzh-components/{p-e016ceb9.entry.js → p-fd15cc86.entry.js} +1 -1
- package/dist/stzh-components/p-fd3acd16.system.entry.js +1 -0
- package/dist/stzh-components/p-fe5d5fc8.entry.js +1 -0
- package/dist/stzh-components/p-fe9acc68.system.entry.js +1 -0
- package/dist/stzh-components/stzh-components.css +1 -1
- package/dist/stzh-components/stzh-components.esm.js +1 -1
- package/dist/stzh-components/stzh-components.js +1 -1
- package/dist/types/components/stzh-actionset/stzh-actionset.localization.d.ts +1 -1
- package/dist/types/components/stzh-appointments/stzh-appointments.localization.d.ts +1 -1
- package/dist/types/components/stzh-audio/stzh-audio.localization.d.ts +1 -1
- package/dist/types/components/stzh-calendar/stzh-calendar-day.d.ts +1 -1
- package/dist/types/components/stzh-calendar/stzh-calendar-month.d.ts +1 -1
- package/dist/types/components/stzh-calendar/stzh-calendar.localization.d.ts +1 -1
- package/dist/types/components/stzh-card/stzh-card.localization.d.ts +1 -1
- package/dist/types/components/stzh-card-list/stzh-card-list.localization.d.ts +1 -1
- package/dist/types/components/stzh-container/stzh-container.d.ts +2 -0
- package/dist/types/components/stzh-datamessagelist-item/stzh-datamessagelist-item.localization.d.ts +1 -1
- package/dist/types/components/stzh-datatable/stzh-datatable.localization.d.ts +1 -1
- package/dist/types/components/stzh-datepicker/stzh-datepicker.localization.d.ts +1 -1
- package/dist/types/components/stzh-dialog/stzh-dialog.localization.d.ts +1 -1
- package/dist/types/components/stzh-dropdown/stzh-dropdown.localization.d.ts +1 -1
- package/dist/types/components/stzh-footer/stzh-footer.localization.d.ts +1 -1
- package/dist/types/components/stzh-ghettobox/stzh-ghettobox.localization.d.ts +1 -1
- package/dist/types/components/stzh-hspace/stzh-hspace.d.ts +3 -1
- package/dist/types/components/stzh-input/stzh-input-description.d.ts +1 -1
- package/dist/types/components/stzh-message/stzh-message.localization.d.ts +1 -1
- package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.localization.d.ts +1 -1
- package/dist/types/components/stzh-olmap/stzh-olmap.localization.d.ts +1 -1
- package/dist/types/components/stzh-popover/stzh-popover.localization.d.ts +1 -1
- package/dist/types/components/stzh-progressbar-item/stzh-progressbar-item.d.ts +1 -0
- package/dist/types/components/stzh-saptcha/stzh-saptcha.localization.d.ts +1 -1
- package/dist/types/components/stzh-share/stzh-share.localization.d.ts +1 -1
- package/dist/types/components/stzh-sortable/stzh-sortable.localization.d.ts +1 -1
- package/dist/types/components/stzh-space/stzh-space.d.ts +27 -0
- package/dist/types/components/stzh-tooltip/stzh-tooltip.localization.d.ts +1 -1
- package/dist/types/components/stzh-upload/stzh-upload.localization.d.ts +1 -1
- package/dist/types/components/stzh-vbz-majorticker/stzh-vbz-majorticker.localization.d.ts +1 -1
- package/dist/types/components/stzh-vbz-ticker/stzh-vbz-ticker.localization.d.ts +1 -1
- package/dist/types/components/stzh-vspace/stzh-vspace.d.ts +3 -1
- package/dist/types/components.d.ts +390 -20
- package/dist/types/index.d.ts +135 -133
- package/dist/types/stencil-public-runtime.d.ts +59 -3
- package/dist/types/utils/date-adapter.d.ts +2 -2
- package/dist/types/utils/h.d.ts +3 -3
- package/dist/types/utils/test-utils.d.ts +2 -2
- package/dist/types/utils/translation-utils.d.ts +5 -5
- package/dist/vscode-data.json +563 -4
- package/loader/index.d.ts +9 -0
- package/package.json +11 -11
- package/dist/cjs/index-8bd1552a.js +0 -2019
- package/dist/cjs/stzh-chip.cjs.entry.js +0 -100
- package/dist/cjs/stzh-clamp.cjs.entry.js +0 -27
- package/dist/cjs/stzh-contactaddress.cjs.entry.js +0 -91
- package/dist/collection/pages/example.stories.js +0 -170
- package/dist/components/index3.js +0 -2017
- package/dist/components/stzh-contactaddress.js +0 -157
- package/dist/esm/index-545902f4.js +0 -2017
- package/dist/esm/stzh-chip.entry.js +0 -96
- package/dist/esm/stzh-clamp.entry.js +0 -23
- package/dist/esm/stzh-contactaddress.entry.js +0 -87
- package/dist/esm-es5/app-globals-ff581b69.js +0 -1
- package/dist/esm-es5/arrow-86a679c7.js +0 -1
- package/dist/esm-es5/focus-trap.esm-074705a3.js +0 -9
- package/dist/esm-es5/index-011c84fe.js +0 -2
- package/dist/esm-es5/index-545902f4.js +0 -1
- package/dist/esm-es5/stzh-chip.entry.js +0 -1
- package/dist/esm-es5/stzh-clamp.entry.js +0 -1
- package/dist/esm-es5/stzh-contactaddress.entry.js +0 -1
- package/dist/stzh-components/p-006751fc.system.entry.js +0 -1
- package/dist/stzh-components/p-025c9c5b.entry.js +0 -1
- package/dist/stzh-components/p-06d9b884.system.entry.js +0 -1
- package/dist/stzh-components/p-0743d7fa.entry.js +0 -1
- package/dist/stzh-components/p-0850a2e1.system.entry.js +0 -1
- package/dist/stzh-components/p-09da70d8.entry.js +0 -1
- package/dist/stzh-components/p-0a647396.entry.js +0 -1
- package/dist/stzh-components/p-10c046fc.system.entry.js +0 -1
- package/dist/stzh-components/p-12a2afe9.entry.js +0 -1
- package/dist/stzh-components/p-17645237.entry.js +0 -1
- package/dist/stzh-components/p-18cb06e2.entry.js +0 -1
- package/dist/stzh-components/p-19ab7e34.system.entry.js +0 -1
- package/dist/stzh-components/p-1ae4d600.system.entry.js +0 -1
- package/dist/stzh-components/p-1e4b4d71.system.js +0 -1
- package/dist/stzh-components/p-21cad060.system.entry.js +0 -1
- package/dist/stzh-components/p-22b06793.entry.js +0 -1
- package/dist/stzh-components/p-23829f75.system.entry.js +0 -1
- package/dist/stzh-components/p-2bdc71ae.system.entry.js +0 -1
- package/dist/stzh-components/p-2d340222.system.entry.js +0 -1
- package/dist/stzh-components/p-31c3469c.entry.js +0 -1
- package/dist/stzh-components/p-3200f52a.system.entry.js +0 -1
- package/dist/stzh-components/p-385dda6c.system.entry.js +0 -1
- package/dist/stzh-components/p-391e6b90.entry.js +0 -1
- package/dist/stzh-components/p-3a1ff759.entry.js +0 -1
- package/dist/stzh-components/p-3ad67331.entry.js +0 -1
- package/dist/stzh-components/p-3e850dce.entry.js +0 -1
- package/dist/stzh-components/p-40a19ce6.js +0 -10
- package/dist/stzh-components/p-441ea784.entry.js +0 -1
- package/dist/stzh-components/p-4704588f.system.entry.js +0 -1
- package/dist/stzh-components/p-49bb09a5.entry.js +0 -1
- package/dist/stzh-components/p-4b369bac.entry.js +0 -1
- package/dist/stzh-components/p-51be647d.entry.js +0 -1
- package/dist/stzh-components/p-53934cfd.js +0 -1
- package/dist/stzh-components/p-57237509.system.entry.js +0 -1
- package/dist/stzh-components/p-5790eb4f.system.entry.js +0 -1
- package/dist/stzh-components/p-57f8596f.system.entry.js +0 -1
- package/dist/stzh-components/p-5b1c1cf7.entry.js +0 -1
- package/dist/stzh-components/p-5ddf8258.system.entry.js +0 -1
- package/dist/stzh-components/p-5fd9ae99.system.entry.js +0 -1
- package/dist/stzh-components/p-60ec90b2.system.entry.js +0 -1
- package/dist/stzh-components/p-63d94a57.system.entry.js +0 -1
- package/dist/stzh-components/p-64422176.entry.js +0 -9
- package/dist/stzh-components/p-661831da.entry.js +0 -1
- package/dist/stzh-components/p-67c6f0f2.entry.js +0 -1
- package/dist/stzh-components/p-6d009f56.system.entry.js +0 -1
- package/dist/stzh-components/p-71c07419.system.entry.js +0 -1
- package/dist/stzh-components/p-75068cd7.system.entry.js +0 -1
- package/dist/stzh-components/p-76165227.entry.js +0 -1
- package/dist/stzh-components/p-7941cf38.js +0 -1
- package/dist/stzh-components/p-7adc28a4.system.entry.js +0 -7
- package/dist/stzh-components/p-7b86c022.entry.js +0 -1
- package/dist/stzh-components/p-7c26f80f.system.entry.js +0 -1
- package/dist/stzh-components/p-7ce59988.system.entry.js +0 -1
- package/dist/stzh-components/p-7e94dde2.entry.js +0 -1
- package/dist/stzh-components/p-812ea5e9.system.entry.js +0 -1
- package/dist/stzh-components/p-8364475f.js +0 -12
- package/dist/stzh-components/p-84b9f66f.system.entry.js +0 -1
- package/dist/stzh-components/p-853a1f92.entry.js +0 -1
- package/dist/stzh-components/p-88a31179.system.entry.js +0 -1
- package/dist/stzh-components/p-8991d3bc.entry.js +0 -1
- package/dist/stzh-components/p-8a1d00fe.entry.js +0 -3
- package/dist/stzh-components/p-8fa2fb95.system.entry.js +0 -1
- package/dist/stzh-components/p-9072a490.system.entry.js +0 -1
- package/dist/stzh-components/p-92afa8df.entry.js +0 -1
- package/dist/stzh-components/p-95b490ec.system.entry.js +0 -1
- package/dist/stzh-components/p-9743f558.system.entry.js +0 -1
- package/dist/stzh-components/p-996579d0.entry.js +0 -1
- package/dist/stzh-components/p-9a5ebb1f.js +0 -2
- package/dist/stzh-components/p-9dac46e2.system.entry.js +0 -1
- package/dist/stzh-components/p-9e38b823.system.entry.js +0 -1
- package/dist/stzh-components/p-a16dc363.entry.js +0 -1
- package/dist/stzh-components/p-a53c0a98.entry.js +0 -1
- package/dist/stzh-components/p-a8101552.entry.js +0 -8
- package/dist/stzh-components/p-a934dd4d.entry.js +0 -1
- package/dist/stzh-components/p-aacf685b.system.entry.js +0 -3
- package/dist/stzh-components/p-ac1a6085.system.entry.js +0 -1
- package/dist/stzh-components/p-ac3aa560.system.entry.js +0 -1
- package/dist/stzh-components/p-afedafa6.system.entry.js +0 -1
- package/dist/stzh-components/p-b2145753.system.entry.js +0 -1
- package/dist/stzh-components/p-b436a18d.system.entry.js +0 -1
- package/dist/stzh-components/p-b908d228.system.entry.js +0 -1
- package/dist/stzh-components/p-b937ae70.system.js +0 -1
- package/dist/stzh-components/p-ba0b93c4.system.entry.js +0 -9
- package/dist/stzh-components/p-bfcfbfbb.system.entry.js +0 -1
- package/dist/stzh-components/p-c0fef3d1.entry.js +0 -1
- package/dist/stzh-components/p-c3a543a6.entry.js +0 -1
- package/dist/stzh-components/p-c63aecaa.system.entry.js +0 -1
- package/dist/stzh-components/p-c87e12de.system.entry.js +0 -1
- package/dist/stzh-components/p-cf6003d6.js +0 -1
- package/dist/stzh-components/p-cfd22a5e.system.entry.js +0 -1
- package/dist/stzh-components/p-d240494d.entry.js +0 -1
- package/dist/stzh-components/p-d5c0801b.entry.js +0 -1
- package/dist/stzh-components/p-d6ec20c8.system.entry.js +0 -1
- package/dist/stzh-components/p-d9bf09b1.system.entry.js +0 -1
- package/dist/stzh-components/p-db1692fb.entry.js +0 -1
- package/dist/stzh-components/p-dbdc01c7.system.js +0 -2
- package/dist/stzh-components/p-ded16c0e.system.js +0 -1
- package/dist/stzh-components/p-e20369c8.system.js +0 -10
- package/dist/stzh-components/p-e32bc982.system.js +0 -1
- package/dist/stzh-components/p-e46d82b9.system.entry.js +0 -1
- package/dist/stzh-components/p-e76a3647.entry.js +0 -1
- package/dist/stzh-components/p-ec3a472a.system.entry.js +0 -1
- package/dist/stzh-components/p-ec7b6ce8.entry.js +0 -7
- package/dist/stzh-components/p-f133eba2.entry.js +0 -1
- package/dist/stzh-components/p-f3107fc7.system.entry.js +0 -1
- package/dist/stzh-components/p-fcec6003.system.entry.js +0 -1
- package/dist/stzh-components/p-fdb906b9.system.entry.js +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
/*!
|
|
4
|
-
* tabbable 6.0.
|
|
4
|
+
* tabbable 6.0.1
|
|
5
5
|
* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
|
|
6
6
|
*/
|
|
7
7
|
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'];
|
|
@@ -13,23 +13,22 @@ var getRootNode = !NoElement && Element.prototype.getRootNode ? function (elemen
|
|
|
13
13
|
} : function (element) {
|
|
14
14
|
return element.ownerDocument;
|
|
15
15
|
};
|
|
16
|
+
|
|
16
17
|
/**
|
|
17
18
|
* @param {Element} el container to check in
|
|
18
19
|
* @param {boolean} includeContainer add container to check
|
|
19
20
|
* @param {(node: Element) => boolean} filter filter candidates
|
|
20
21
|
* @returns {Element[]}
|
|
21
22
|
*/
|
|
22
|
-
|
|
23
23
|
var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
24
24
|
var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));
|
|
25
|
-
|
|
26
25
|
if (includeContainer && matches.call(el, candidateSelector)) {
|
|
27
26
|
candidates.unshift(el);
|
|
28
27
|
}
|
|
29
|
-
|
|
30
28
|
candidates = candidates.filter(filter);
|
|
31
29
|
return candidates;
|
|
32
30
|
};
|
|
31
|
+
|
|
33
32
|
/**
|
|
34
33
|
* @callback GetShadowRoot
|
|
35
34
|
* @param {Element} element to check for shadow root
|
|
@@ -43,9 +42,9 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
|
43
42
|
*/
|
|
44
43
|
|
|
45
44
|
/**
|
|
46
|
-
* @typedef {Object}
|
|
47
|
-
* @property {Element}
|
|
48
|
-
* @property {Element[]} candidates
|
|
45
|
+
* @typedef {Object} CandidateScope
|
|
46
|
+
* @property {Element} scopeParent contains inner candidates
|
|
47
|
+
* @property {Element[]} candidates list of candidates found in the scope parent
|
|
49
48
|
*/
|
|
50
49
|
|
|
51
50
|
/**
|
|
@@ -54,7 +53,7 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
|
54
53
|
* if a function, implies shadow support is enabled and either returns the shadow root of an element
|
|
55
54
|
* or a boolean stating if it has an undisclosed shadow root
|
|
56
55
|
* @property {(node: Element) => boolean} filter filter candidates
|
|
57
|
-
* @property {boolean} flatten if true then result will flatten any
|
|
56
|
+
* @property {boolean} flatten if true then result will flatten any CandidateScope into the returned list
|
|
58
57
|
* @property {ShadowRootFilter} shadowRootFilter filter shadow roots;
|
|
59
58
|
*/
|
|
60
59
|
|
|
@@ -62,44 +61,38 @@ var getCandidates = function getCandidates(el, includeContainer, filter) {
|
|
|
62
61
|
* @param {Element[]} elements list of element containers to match candidates from
|
|
63
62
|
* @param {boolean} includeContainer add container list to check
|
|
64
63
|
* @param {IterativeOptions} options
|
|
65
|
-
* @returns {Array.<Element|
|
|
64
|
+
* @returns {Array.<Element|CandidateScope>}
|
|
66
65
|
*/
|
|
67
|
-
|
|
68
|
-
|
|
69
66
|
var getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {
|
|
70
67
|
var candidates = [];
|
|
71
68
|
var elementsToCheck = Array.from(elements);
|
|
72
|
-
|
|
73
69
|
while (elementsToCheck.length) {
|
|
74
70
|
var element = elementsToCheck.shift();
|
|
75
|
-
|
|
76
71
|
if (element.tagName === 'SLOT') {
|
|
77
72
|
// add shadow dom slot scope (slot itself cannot be focusable)
|
|
78
73
|
var assigned = element.assignedElements();
|
|
79
74
|
var content = assigned.length ? assigned : element.children;
|
|
80
75
|
var nestedCandidates = getCandidatesIteratively(content, true, options);
|
|
81
|
-
|
|
82
76
|
if (options.flatten) {
|
|
83
77
|
candidates.push.apply(candidates, nestedCandidates);
|
|
84
78
|
} else {
|
|
85
79
|
candidates.push({
|
|
86
|
-
|
|
80
|
+
scopeParent: element,
|
|
87
81
|
candidates: nestedCandidates
|
|
88
82
|
});
|
|
89
83
|
}
|
|
90
84
|
} else {
|
|
91
85
|
// check candidate element
|
|
92
86
|
var validCandidate = matches.call(element, candidateSelector);
|
|
93
|
-
|
|
94
87
|
if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) {
|
|
95
88
|
candidates.push(element);
|
|
96
|
-
}
|
|
97
|
-
|
|
89
|
+
}
|
|
98
90
|
|
|
99
|
-
|
|
91
|
+
// iterate over shadow content if possible
|
|
92
|
+
var shadowRoot = element.shadowRoot ||
|
|
93
|
+
// check for an undisclosed shadow
|
|
100
94
|
typeof options.getShadowRoot === 'function' && options.getShadowRoot(element);
|
|
101
95
|
var validShadowRoot = !options.shadowRootFilter || options.shadowRootFilter(element);
|
|
102
|
-
|
|
103
96
|
if (shadowRoot && validShadowRoot) {
|
|
104
97
|
// add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed
|
|
105
98
|
// shadow exists, so look at light dom children as fallback BUT create a scope for any
|
|
@@ -108,12 +101,11 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
|
|
|
108
101
|
// slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below,
|
|
109
102
|
// _after_ we return from this recursive call
|
|
110
103
|
var _nestedCandidates = getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);
|
|
111
|
-
|
|
112
104
|
if (options.flatten) {
|
|
113
105
|
candidates.push.apply(candidates, _nestedCandidates);
|
|
114
106
|
} else {
|
|
115
107
|
candidates.push({
|
|
116
|
-
|
|
108
|
+
scopeParent: element,
|
|
117
109
|
candidates: _nestedCandidates
|
|
118
110
|
});
|
|
119
111
|
}
|
|
@@ -124,10 +116,8 @@ var getCandidatesIteratively = function getCandidatesIteratively(elements, inclu
|
|
|
124
116
|
}
|
|
125
117
|
}
|
|
126
118
|
}
|
|
127
|
-
|
|
128
119
|
return candidates;
|
|
129
120
|
};
|
|
130
|
-
|
|
131
121
|
var getTabindex = function getTabindex(node, isScope) {
|
|
132
122
|
if (node.tabIndex < 0) {
|
|
133
123
|
// in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default
|
|
@@ -145,29 +135,23 @@ var getTabindex = function getTabindex(node, isScope) {
|
|
|
145
135
|
return 0;
|
|
146
136
|
}
|
|
147
137
|
}
|
|
148
|
-
|
|
149
138
|
return node.tabIndex;
|
|
150
139
|
};
|
|
151
|
-
|
|
152
140
|
var sortOrderedTabbables = function sortOrderedTabbables(a, b) {
|
|
153
141
|
return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;
|
|
154
142
|
};
|
|
155
|
-
|
|
156
143
|
var isInput = function isInput(node) {
|
|
157
144
|
return node.tagName === 'INPUT';
|
|
158
145
|
};
|
|
159
|
-
|
|
160
146
|
var isHiddenInput = function isHiddenInput(node) {
|
|
161
147
|
return isInput(node) && node.type === 'hidden';
|
|
162
148
|
};
|
|
163
|
-
|
|
164
149
|
var isDetailsWithSummary = function isDetailsWithSummary(node) {
|
|
165
150
|
var r = node.tagName === 'DETAILS' && Array.prototype.slice.apply(node.children).some(function (child) {
|
|
166
151
|
return child.tagName === 'SUMMARY';
|
|
167
152
|
});
|
|
168
153
|
return r;
|
|
169
154
|
};
|
|
170
|
-
|
|
171
155
|
var getCheckedRadio = function getCheckedRadio(nodes, form) {
|
|
172
156
|
for (var i = 0; i < nodes.length; i++) {
|
|
173
157
|
if (nodes[i].checked && nodes[i].form === form) {
|
|
@@ -175,20 +159,15 @@ var getCheckedRadio = function getCheckedRadio(nodes, form) {
|
|
|
175
159
|
}
|
|
176
160
|
}
|
|
177
161
|
};
|
|
178
|
-
|
|
179
162
|
var isTabbableRadio = function isTabbableRadio(node) {
|
|
180
163
|
if (!node.name) {
|
|
181
164
|
return true;
|
|
182
165
|
}
|
|
183
|
-
|
|
184
166
|
var radioScope = node.form || getRootNode(node);
|
|
185
|
-
|
|
186
167
|
var queryRadios = function queryRadios(name) {
|
|
187
168
|
return radioScope.querySelectorAll('input[type="radio"][name="' + name + '"]');
|
|
188
169
|
};
|
|
189
|
-
|
|
190
170
|
var radioSet;
|
|
191
|
-
|
|
192
171
|
if (typeof window !== 'undefined' && typeof window.CSS !== 'undefined' && typeof window.CSS.escape === 'function') {
|
|
193
172
|
radioSet = queryRadios(window.CSS.escape(node.name));
|
|
194
173
|
} else {
|
|
@@ -200,23 +179,19 @@ var isTabbableRadio = function isTabbableRadio(node) {
|
|
|
200
179
|
return false;
|
|
201
180
|
}
|
|
202
181
|
}
|
|
203
|
-
|
|
204
182
|
var checked = getCheckedRadio(radioSet, node.form);
|
|
205
183
|
return !checked || checked === node;
|
|
206
184
|
};
|
|
207
|
-
|
|
208
185
|
var isRadio = function isRadio(node) {
|
|
209
186
|
return isInput(node) && node.type === 'radio';
|
|
210
187
|
};
|
|
211
|
-
|
|
212
188
|
var isNonTabbableRadio = function isNonTabbableRadio(node) {
|
|
213
189
|
return isRadio(node) && !isTabbableRadio(node);
|
|
214
|
-
};
|
|
215
|
-
|
|
190
|
+
};
|
|
216
191
|
|
|
192
|
+
// determines if a node is ultimately attached to the window's document
|
|
217
193
|
var isNodeAttached = function isNodeAttached(node) {
|
|
218
194
|
var _nodeRootHost;
|
|
219
|
-
|
|
220
195
|
// The root node is the shadow root if the node is in a shadow DOM; some document otherwise
|
|
221
196
|
// (but NOT _the_ document; see second 'If' comment below for more).
|
|
222
197
|
// If rootNode is shadow root, it'll have a host, which is the element to which the shadow
|
|
@@ -238,32 +213,25 @@ var isNodeAttached = function isNodeAttached(node) {
|
|
|
238
213
|
// node is actually detached.
|
|
239
214
|
var nodeRootHost = getRootNode(node).host;
|
|
240
215
|
var attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && _nodeRootHost.ownerDocument.contains(nodeRootHost) || node.ownerDocument.contains(node));
|
|
241
|
-
|
|
242
216
|
while (!attached && nodeRootHost) {
|
|
243
217
|
var _nodeRootHost2;
|
|
244
|
-
|
|
245
218
|
// since it's not attached and we have a root host, the node MUST be in a nested shadow DOM,
|
|
246
219
|
// which means we need to get the host's host and check if that parent host is contained
|
|
247
220
|
// in (i.e. attached to) the document
|
|
248
221
|
nodeRootHost = getRootNode(nodeRootHost).host;
|
|
249
222
|
attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && _nodeRootHost2.ownerDocument.contains(nodeRootHost));
|
|
250
223
|
}
|
|
251
|
-
|
|
252
224
|
return attached;
|
|
253
225
|
};
|
|
254
|
-
|
|
255
226
|
var isZeroArea = function isZeroArea(node) {
|
|
256
227
|
var _node$getBoundingClie = node.getBoundingClientRect(),
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
228
|
+
width = _node$getBoundingClie.width,
|
|
229
|
+
height = _node$getBoundingClie.height;
|
|
260
230
|
return width === 0 && height === 0;
|
|
261
231
|
};
|
|
262
|
-
|
|
263
232
|
var isHidden = function isHidden(node, _ref) {
|
|
264
233
|
var displayCheck = _ref.displayCheck,
|
|
265
|
-
|
|
266
|
-
|
|
234
|
+
getShadowRoot = _ref.getShadowRoot;
|
|
267
235
|
// NOTE: visibility will be `undefined` if node is detached from the document
|
|
268
236
|
// (see notes about this further down), which means we will consider it visible
|
|
269
237
|
// (this is legacy behavior from a very long way back)
|
|
@@ -272,24 +240,19 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
272
240
|
if (getComputedStyle(node).visibility === 'hidden') {
|
|
273
241
|
return true;
|
|
274
242
|
}
|
|
275
|
-
|
|
276
243
|
var isDirectSummary = matches.call(node, 'details>summary:first-of-type');
|
|
277
244
|
var nodeUnderDetails = isDirectSummary ? node.parentElement : node;
|
|
278
|
-
|
|
279
245
|
if (matches.call(nodeUnderDetails, 'details:not([open]) *')) {
|
|
280
246
|
return true;
|
|
281
247
|
}
|
|
282
|
-
|
|
283
248
|
if (!displayCheck || displayCheck === 'full' || displayCheck === 'legacy-full') {
|
|
284
249
|
if (typeof getShadowRoot === 'function') {
|
|
285
250
|
// figure out if we should consider the node to be in an undisclosed shadow and use the
|
|
286
251
|
// 'non-zero-area' fallback
|
|
287
252
|
var originalNode = node;
|
|
288
|
-
|
|
289
253
|
while (node) {
|
|
290
254
|
var parentElement = node.parentElement;
|
|
291
255
|
var rootNode = getRootNode(node);
|
|
292
|
-
|
|
293
256
|
if (parentElement && !parentElement.shadowRoot && getShadowRoot(parentElement) === true // check if there's an undisclosed shadow
|
|
294
257
|
) {
|
|
295
258
|
// node has an undisclosed shadow which means we can only treat it as a black box, so we
|
|
@@ -306,25 +269,27 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
306
269
|
node = parentElement;
|
|
307
270
|
}
|
|
308
271
|
}
|
|
309
|
-
|
|
310
272
|
node = originalNode;
|
|
311
|
-
}
|
|
273
|
+
}
|
|
274
|
+
// else, `getShadowRoot` might be true, but all that does is enable shadow DOM support
|
|
312
275
|
// (i.e. it does not also presume that all nodes might have undisclosed shadows); or
|
|
313
276
|
// it might be a falsy value, which means shadow DOM support is disabled
|
|
277
|
+
|
|
314
278
|
// Since we didn't find it sitting in an undisclosed shadow (or shadows are disabled)
|
|
315
279
|
// now we can just test to see if it would normally be visible or not, provided it's
|
|
316
280
|
// attached to the main document.
|
|
317
281
|
// NOTE: We must consider case where node is inside a shadow DOM and given directly to
|
|
318
282
|
// `isTabbable()` or `isFocusable()` -- regardless of `getShadowRoot` option setting.
|
|
319
283
|
|
|
320
|
-
|
|
321
284
|
if (isNodeAttached(node)) {
|
|
322
285
|
// this works wherever the node is: if there's at least one client rect, it's
|
|
323
286
|
// somehow displayed; it also covers the CSS 'display: contents' case where the
|
|
324
287
|
// node itself is hidden in place of its contents; and there's no need to search
|
|
325
288
|
// up the hierarchy either
|
|
326
289
|
return !node.getClientRects().length;
|
|
327
|
-
}
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Else, the node isn't attached to the document, which means the `getClientRects()`
|
|
328
293
|
// API will __always__ return zero rects (this can happen, for example, if React
|
|
329
294
|
// is used to render nodes onto a detached tree, as confirmed in this thread:
|
|
330
295
|
// https://github.com/facebook/react/issues/9117#issuecomment-284228870)
|
|
@@ -340,12 +305,10 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
340
305
|
//
|
|
341
306
|
// v6.0.0: As of this major release, the default 'full' option __no longer treats detached
|
|
342
307
|
// nodes as visible with the 'none' fallback.__
|
|
343
|
-
|
|
344
|
-
|
|
345
308
|
if (displayCheck !== 'legacy-full') {
|
|
346
309
|
return true; // hidden
|
|
347
|
-
}
|
|
348
|
-
|
|
310
|
+
}
|
|
311
|
+
// else, fallback to 'none' mode and consider the node visible
|
|
349
312
|
} else if (displayCheck === 'non-zero-area') {
|
|
350
313
|
// NOTE: Even though this tests that the node's client rect is non-zero to determine
|
|
351
314
|
// whether it's displayed, and that a detached node will __always__ have a zero-area
|
|
@@ -353,89 +316,79 @@ var isHidden = function isHidden(node, _ref) {
|
|
|
353
316
|
// this mode, we do want to consider nodes that have a zero area to be hidden at all
|
|
354
317
|
// times, and that includes attached or not.
|
|
355
318
|
return isZeroArea(node);
|
|
356
|
-
}
|
|
357
|
-
// it's visible
|
|
358
|
-
|
|
319
|
+
}
|
|
359
320
|
|
|
321
|
+
// visible, as far as we can tell, or per current `displayCheck=none` mode, we assume
|
|
322
|
+
// it's visible
|
|
360
323
|
return false;
|
|
361
|
-
};
|
|
324
|
+
};
|
|
325
|
+
|
|
326
|
+
// form fields (nested) inside a disabled fieldset are not focusable/tabbable
|
|
362
327
|
// unless they are in the _first_ <legend> element of the top-most disabled
|
|
363
328
|
// fieldset
|
|
364
|
-
|
|
365
|
-
|
|
366
329
|
var isDisabledFromFieldset = function isDisabledFromFieldset(node) {
|
|
367
330
|
if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(node.tagName)) {
|
|
368
|
-
var parentNode = node.parentElement;
|
|
369
|
-
|
|
331
|
+
var parentNode = node.parentElement;
|
|
332
|
+
// check if `node` is contained in a disabled <fieldset>
|
|
370
333
|
while (parentNode) {
|
|
371
334
|
if (parentNode.tagName === 'FIELDSET' && parentNode.disabled) {
|
|
372
335
|
// look for the first <legend> among the children of the disabled <fieldset>
|
|
373
336
|
for (var i = 0; i < parentNode.children.length; i++) {
|
|
374
|
-
var child = parentNode.children.item(i);
|
|
375
|
-
|
|
337
|
+
var child = parentNode.children.item(i);
|
|
338
|
+
// when the first <legend> (in document order) is found
|
|
376
339
|
if (child.tagName === 'LEGEND') {
|
|
377
340
|
// if its parent <fieldset> is not nested in another disabled <fieldset>,
|
|
378
341
|
// return whether `node` is a descendant of its first <legend>
|
|
379
342
|
return matches.call(parentNode, 'fieldset[disabled] *') ? true : !child.contains(node);
|
|
380
343
|
}
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
|
|
344
|
+
}
|
|
345
|
+
// the disabled <fieldset> containing `node` has no <legend>
|
|
384
346
|
return true;
|
|
385
347
|
}
|
|
386
|
-
|
|
387
348
|
parentNode = parentNode.parentElement;
|
|
388
349
|
}
|
|
389
|
-
}
|
|
390
|
-
// enabled/disabled state
|
|
391
|
-
|
|
350
|
+
}
|
|
392
351
|
|
|
352
|
+
// else, node's tabbable/focusable state should not be affected by a fieldset's
|
|
353
|
+
// enabled/disabled state
|
|
393
354
|
return false;
|
|
394
355
|
};
|
|
395
|
-
|
|
396
356
|
var isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable(options, node) {
|
|
397
|
-
if (node.disabled || isHiddenInput(node) || isHidden(node, options) ||
|
|
357
|
+
if (node.disabled || isHiddenInput(node) || isHidden(node, options) ||
|
|
358
|
+
// For a details element with a summary, the summary element gets the focus
|
|
398
359
|
isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {
|
|
399
360
|
return false;
|
|
400
361
|
}
|
|
401
|
-
|
|
402
362
|
return true;
|
|
403
363
|
};
|
|
404
|
-
|
|
405
364
|
var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(options, node) {
|
|
406
365
|
if (isNonTabbableRadio(node) || getTabindex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {
|
|
407
366
|
return false;
|
|
408
367
|
}
|
|
409
|
-
|
|
410
368
|
return true;
|
|
411
369
|
};
|
|
412
|
-
|
|
413
370
|
var isValidShadowRootTabbable = function isValidShadowRootTabbable(shadowHostNode) {
|
|
414
371
|
var tabIndex = parseInt(shadowHostNode.getAttribute('tabindex'), 10);
|
|
415
|
-
|
|
416
372
|
if (isNaN(tabIndex) || tabIndex >= 0) {
|
|
417
373
|
return true;
|
|
418
|
-
}
|
|
374
|
+
}
|
|
375
|
+
// If a custom element has an explicit negative tabindex,
|
|
419
376
|
// browsers will not allow tab targeting said element's children.
|
|
420
|
-
|
|
421
|
-
|
|
422
377
|
return false;
|
|
423
378
|
};
|
|
379
|
+
|
|
424
380
|
/**
|
|
425
|
-
* @param {Array.<Element|
|
|
381
|
+
* @param {Array.<Element|CandidateScope>} candidates
|
|
426
382
|
* @returns Element[]
|
|
427
383
|
*/
|
|
428
|
-
|
|
429
|
-
|
|
430
384
|
var sortByOrder = function sortByOrder(candidates) {
|
|
431
385
|
var regularTabbables = [];
|
|
432
386
|
var orderedTabbables = [];
|
|
433
387
|
candidates.forEach(function (item, i) {
|
|
434
|
-
var isScope = !!item.
|
|
435
|
-
var element = isScope ? item.
|
|
388
|
+
var isScope = !!item.scopeParent;
|
|
389
|
+
var element = isScope ? item.scopeParent : item;
|
|
436
390
|
var candidateTabindex = getTabindex(element, isScope);
|
|
437
391
|
var elements = isScope ? sortByOrder(item.candidates) : element;
|
|
438
|
-
|
|
439
392
|
if (candidateTabindex === 0) {
|
|
440
393
|
isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);
|
|
441
394
|
} else {
|
|
@@ -453,11 +406,9 @@ var sortByOrder = function sortByOrder(candidates) {
|
|
|
453
406
|
return acc;
|
|
454
407
|
}, []).concat(regularTabbables);
|
|
455
408
|
};
|
|
456
|
-
|
|
457
409
|
var tabbable = function tabbable(el, options) {
|
|
458
410
|
options = options || {};
|
|
459
411
|
var candidates;
|
|
460
|
-
|
|
461
412
|
if (options.getShadowRoot) {
|
|
462
413
|
candidates = getCandidatesIteratively([el], options.includeContainer, {
|
|
463
414
|
filter: isNodeMatchingSelectorTabbable.bind(null, options),
|
|
@@ -468,14 +419,11 @@ var tabbable = function tabbable(el, options) {
|
|
|
468
419
|
} else {
|
|
469
420
|
candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
|
|
470
421
|
}
|
|
471
|
-
|
|
472
422
|
return sortByOrder(candidates);
|
|
473
423
|
};
|
|
474
|
-
|
|
475
424
|
var focusable = function focusable(el, options) {
|
|
476
425
|
options = options || {};
|
|
477
426
|
var candidates;
|
|
478
|
-
|
|
479
427
|
if (options.getShadowRoot) {
|
|
480
428
|
candidates = getCandidatesIteratively([el], options.includeContainer, {
|
|
481
429
|
filter: isNodeMatchingSelectorFocusable.bind(null, options),
|
|
@@ -485,58 +433,45 @@ var focusable = function focusable(el, options) {
|
|
|
485
433
|
} else {
|
|
486
434
|
candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));
|
|
487
435
|
}
|
|
488
|
-
|
|
489
436
|
return candidates;
|
|
490
437
|
};
|
|
491
|
-
|
|
492
438
|
var isTabbable = function isTabbable(node, options) {
|
|
493
439
|
options = options || {};
|
|
494
|
-
|
|
495
440
|
if (!node) {
|
|
496
441
|
throw new Error('No node provided');
|
|
497
442
|
}
|
|
498
|
-
|
|
499
443
|
if (matches.call(node, candidateSelector) === false) {
|
|
500
444
|
return false;
|
|
501
445
|
}
|
|
502
|
-
|
|
503
446
|
return isNodeMatchingSelectorTabbable(options, node);
|
|
504
447
|
};
|
|
505
|
-
|
|
506
448
|
var focusableCandidateSelector = /* #__PURE__ */candidateSelectors.concat('iframe').join(',');
|
|
507
|
-
|
|
508
449
|
var isFocusable = function isFocusable(node, options) {
|
|
509
450
|
options = options || {};
|
|
510
|
-
|
|
511
451
|
if (!node) {
|
|
512
452
|
throw new Error('No node provided');
|
|
513
453
|
}
|
|
514
|
-
|
|
515
454
|
if (matches.call(node, focusableCandidateSelector) === false) {
|
|
516
455
|
return false;
|
|
517
456
|
}
|
|
518
|
-
|
|
519
457
|
return isNodeMatchingSelectorFocusable(options, node);
|
|
520
458
|
};
|
|
521
459
|
|
|
522
460
|
/*!
|
|
523
|
-
* focus-trap 7.
|
|
461
|
+
* focus-trap 7.2.0
|
|
524
462
|
* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
|
|
525
463
|
*/
|
|
526
464
|
|
|
527
465
|
function ownKeys(object, enumerableOnly) {
|
|
528
466
|
var keys = Object.keys(object);
|
|
529
|
-
|
|
530
467
|
if (Object.getOwnPropertySymbols) {
|
|
531
468
|
var symbols = Object.getOwnPropertySymbols(object);
|
|
532
469
|
enumerableOnly && (symbols = symbols.filter(function (sym) {
|
|
533
470
|
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
534
471
|
})), keys.push.apply(keys, symbols);
|
|
535
472
|
}
|
|
536
|
-
|
|
537
473
|
return keys;
|
|
538
474
|
}
|
|
539
|
-
|
|
540
475
|
function _objectSpread2(target) {
|
|
541
476
|
for (var i = 1; i < arguments.length; i++) {
|
|
542
477
|
var source = null != arguments[i] ? arguments[i] : {};
|
|
@@ -546,11 +481,10 @@ function _objectSpread2(target) {
|
|
|
546
481
|
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
547
482
|
});
|
|
548
483
|
}
|
|
549
|
-
|
|
550
484
|
return target;
|
|
551
485
|
}
|
|
552
|
-
|
|
553
486
|
function _defineProperty(obj, key, value) {
|
|
487
|
+
key = _toPropertyKey(key);
|
|
554
488
|
if (key in obj) {
|
|
555
489
|
Object.defineProperty(obj, key, {
|
|
556
490
|
value: value,
|
|
@@ -561,64 +495,75 @@ function _defineProperty(obj, key, value) {
|
|
|
561
495
|
} else {
|
|
562
496
|
obj[key] = value;
|
|
563
497
|
}
|
|
564
|
-
|
|
565
498
|
return obj;
|
|
566
499
|
}
|
|
500
|
+
function _toPrimitive(input, hint) {
|
|
501
|
+
if (typeof input !== "object" || input === null) return input;
|
|
502
|
+
var prim = input[Symbol.toPrimitive];
|
|
503
|
+
if (prim !== undefined) {
|
|
504
|
+
var res = prim.call(input, hint || "default");
|
|
505
|
+
if (typeof res !== "object") return res;
|
|
506
|
+
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
507
|
+
}
|
|
508
|
+
return (hint === "string" ? String : Number)(input);
|
|
509
|
+
}
|
|
510
|
+
function _toPropertyKey(arg) {
|
|
511
|
+
var key = _toPrimitive(arg, "string");
|
|
512
|
+
return typeof key === "symbol" ? key : String(key);
|
|
513
|
+
}
|
|
567
514
|
|
|
568
|
-
var activeFocusTraps =
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
if (
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
if (activeTrap !== trap) {
|
|
576
|
-
activeTrap.pause();
|
|
577
|
-
}
|
|
578
|
-
}
|
|
579
|
-
|
|
580
|
-
var trapIndex = trapQueue.indexOf(trap);
|
|
581
|
-
|
|
582
|
-
if (trapIndex === -1) {
|
|
583
|
-
trapQueue.push(trap);
|
|
584
|
-
} else {
|
|
585
|
-
// move this existing trap to the front of the queue
|
|
586
|
-
trapQueue.splice(trapIndex, 1);
|
|
587
|
-
trapQueue.push(trap);
|
|
588
|
-
}
|
|
589
|
-
},
|
|
590
|
-
deactivateTrap: function deactivateTrap(trap) {
|
|
591
|
-
var trapIndex = trapQueue.indexOf(trap);
|
|
592
|
-
|
|
593
|
-
if (trapIndex !== -1) {
|
|
594
|
-
trapQueue.splice(trapIndex, 1);
|
|
595
|
-
}
|
|
596
|
-
|
|
597
|
-
if (trapQueue.length > 0) {
|
|
598
|
-
trapQueue[trapQueue.length - 1].unpause();
|
|
515
|
+
var activeFocusTraps = {
|
|
516
|
+
activateTrap: function activateTrap(trapStack, trap) {
|
|
517
|
+
if (trapStack.length > 0) {
|
|
518
|
+
var activeTrap = trapStack[trapStack.length - 1];
|
|
519
|
+
if (activeTrap !== trap) {
|
|
520
|
+
activeTrap.pause();
|
|
599
521
|
}
|
|
600
522
|
}
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
523
|
+
var trapIndex = trapStack.indexOf(trap);
|
|
524
|
+
if (trapIndex === -1) {
|
|
525
|
+
trapStack.push(trap);
|
|
526
|
+
} else {
|
|
527
|
+
// move this existing trap to the front of the queue
|
|
528
|
+
trapStack.splice(trapIndex, 1);
|
|
529
|
+
trapStack.push(trap);
|
|
530
|
+
}
|
|
531
|
+
},
|
|
532
|
+
deactivateTrap: function deactivateTrap(trapStack, trap) {
|
|
533
|
+
var trapIndex = trapStack.indexOf(trap);
|
|
534
|
+
if (trapIndex !== -1) {
|
|
535
|
+
trapStack.splice(trapIndex, 1);
|
|
536
|
+
}
|
|
537
|
+
if (trapStack.length > 0) {
|
|
538
|
+
trapStack[trapStack.length - 1].unpause();
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
};
|
|
604
542
|
var isSelectableInput = function isSelectableInput(node) {
|
|
605
543
|
return node.tagName && node.tagName.toLowerCase() === 'input' && typeof node.select === 'function';
|
|
606
544
|
};
|
|
607
|
-
|
|
608
545
|
var isEscapeEvent = function isEscapeEvent(e) {
|
|
609
546
|
return e.key === 'Escape' || e.key === 'Esc' || e.keyCode === 27;
|
|
610
547
|
};
|
|
611
|
-
|
|
612
548
|
var isTabEvent = function isTabEvent(e) {
|
|
613
549
|
return e.key === 'Tab' || e.keyCode === 9;
|
|
614
550
|
};
|
|
615
551
|
|
|
552
|
+
// checks for TAB by default
|
|
553
|
+
var isKeyForward = function isKeyForward(e) {
|
|
554
|
+
return isTabEvent(e) && !e.shiftKey;
|
|
555
|
+
};
|
|
556
|
+
|
|
557
|
+
// checks for SHIFT+TAB by default
|
|
558
|
+
var isKeyBackward = function isKeyBackward(e) {
|
|
559
|
+
return isTabEvent(e) && e.shiftKey;
|
|
560
|
+
};
|
|
616
561
|
var delay = function delay(fn) {
|
|
617
562
|
return setTimeout(fn, 0);
|
|
618
|
-
};
|
|
619
|
-
// of Array.findIndex() for our needs
|
|
620
|
-
|
|
563
|
+
};
|
|
621
564
|
|
|
565
|
+
// Array.find/findIndex() are not supported on IE; this replicates enough
|
|
566
|
+
// of Array.findIndex() for our needs
|
|
622
567
|
var findIndex = function findIndex(arr, fn) {
|
|
623
568
|
var idx = -1;
|
|
624
569
|
arr.every(function (value, i) {
|
|
@@ -629,8 +574,10 @@ var findIndex = function findIndex(arr, fn) {
|
|
|
629
574
|
|
|
630
575
|
return true; // next
|
|
631
576
|
});
|
|
577
|
+
|
|
632
578
|
return idx;
|
|
633
579
|
};
|
|
580
|
+
|
|
634
581
|
/**
|
|
635
582
|
* Get an option's value when it could be a plain value, or a handler that provides
|
|
636
583
|
* the value.
|
|
@@ -638,16 +585,12 @@ var findIndex = function findIndex(arr, fn) {
|
|
|
638
585
|
* @param {...*} [params] Any parameters to pass to the handler, if `value` is a function.
|
|
639
586
|
* @returns {*} The `value`, or the handler's returned value.
|
|
640
587
|
*/
|
|
641
|
-
|
|
642
|
-
|
|
643
588
|
var valueOrHandler = function valueOrHandler(value) {
|
|
644
589
|
for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
645
590
|
params[_key - 1] = arguments[_key];
|
|
646
591
|
}
|
|
647
|
-
|
|
648
592
|
return typeof value === 'function' ? value.apply(void 0, params) : value;
|
|
649
593
|
};
|
|
650
|
-
|
|
651
594
|
var getActualTarget = function getActualTarget(event) {
|
|
652
595
|
// NOTE: If the trap is _inside_ a shadow DOM, event.target will always be the
|
|
653
596
|
// shadow host. However, event.target.composedPath() will be an array of
|
|
@@ -659,17 +602,21 @@ var getActualTarget = function getActualTarget(event) {
|
|
|
659
602
|
return event.target.shadowRoot && typeof event.composedPath === 'function' ? event.composedPath()[0] : event.target;
|
|
660
603
|
};
|
|
661
604
|
|
|
605
|
+
// NOTE: this must be _outside_ `createFocusTrap()` to make sure all traps in this
|
|
606
|
+
// current instance use the same stack if `userOptions.trapStack` isn't specified
|
|
607
|
+
var internalTrapStack = [];
|
|
662
608
|
var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
663
609
|
// SSR: a live trap shouldn't be created in this type of environment so this
|
|
664
610
|
// should be safe code to execute if the `document` option isn't specified
|
|
665
611
|
var doc = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.document) || document;
|
|
666
|
-
|
|
612
|
+
var trapStack = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.trapStack) || internalTrapStack;
|
|
667
613
|
var config = _objectSpread2({
|
|
668
614
|
returnFocusOnDeactivate: true,
|
|
669
615
|
escapeDeactivates: true,
|
|
670
|
-
delayInitialFocus: true
|
|
616
|
+
delayInitialFocus: true,
|
|
617
|
+
isKeyForward: isKeyForward,
|
|
618
|
+
isKeyBackward: isKeyBackward
|
|
671
619
|
}, userOptions);
|
|
672
|
-
|
|
673
620
|
var state = {
|
|
674
621
|
// containers given to createFocusTrap()
|
|
675
622
|
// @type {Array<HTMLElement>}
|
|
@@ -689,6 +636,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
689
636
|
// }>}
|
|
690
637
|
containerGroups: [],
|
|
691
638
|
// same order/length as `containers` list
|
|
639
|
+
|
|
692
640
|
// references to objects in `containerGroups`, but only those that actually have
|
|
693
641
|
// tabbable nodes in them
|
|
694
642
|
// NOTE: same order as `containers` and `containerGroups`, but __not necessarily__
|
|
@@ -712,10 +660,10 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
712
660
|
* @param {string|undefined} [configOptionName] Name of option to use __instead of__ `optionName`
|
|
713
661
|
* IIF `configOverrideOptions` is not defined. Otherwise, `optionName` is used.
|
|
714
662
|
*/
|
|
715
|
-
|
|
716
663
|
var getOption = function getOption(configOverrideOptions, optionName, configOptionName) {
|
|
717
664
|
return configOverrideOptions && configOverrideOptions[optionName] !== undefined ? configOverrideOptions[optionName] : config[configOptionName || optionName];
|
|
718
665
|
};
|
|
666
|
+
|
|
719
667
|
/**
|
|
720
668
|
* Finds the index of the container that contains the element.
|
|
721
669
|
* @param {HTMLElement} element
|
|
@@ -723,16 +671,15 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
723
671
|
* `state.containerGroups` (the order/length of these lists are the same); -1
|
|
724
672
|
* if the element isn't found.
|
|
725
673
|
*/
|
|
726
|
-
|
|
727
|
-
|
|
728
674
|
var findContainerIndex = function findContainerIndex(element) {
|
|
729
675
|
// NOTE: search `containerGroups` because it's possible a group contains no tabbable
|
|
730
676
|
// nodes, but still contains focusable nodes (e.g. if they all have `tabindex=-1`)
|
|
731
677
|
// and we still need to find the element in there
|
|
732
678
|
return state.containerGroups.findIndex(function (_ref) {
|
|
733
679
|
var container = _ref.container,
|
|
734
|
-
|
|
735
|
-
return container.contains(element) ||
|
|
680
|
+
tabbableNodes = _ref.tabbableNodes;
|
|
681
|
+
return container.contains(element) ||
|
|
682
|
+
// fall back to explicit tabbable search which will take into consideration any
|
|
736
683
|
// web components if the `tabbableOptions.getShadowRoot` option was used for
|
|
737
684
|
// the trap, enabling shadow DOM support in tabbable (`Node.contains()` doesn't
|
|
738
685
|
// look inside web components even if open)
|
|
@@ -741,6 +688,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
741
688
|
});
|
|
742
689
|
});
|
|
743
690
|
};
|
|
691
|
+
|
|
744
692
|
/**
|
|
745
693
|
* Gets the node for the given option, which is expected to be an option that
|
|
746
694
|
* can be either a DOM node, a string that is a selector to get a node, `false`
|
|
@@ -754,19 +702,14 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
754
702
|
* @throws {Error} If the option is set, not `false`, and is not, or does not
|
|
755
703
|
* resolve to a node.
|
|
756
704
|
*/
|
|
757
|
-
|
|
758
|
-
|
|
759
705
|
var getNodeForOption = function getNodeForOption(optionName) {
|
|
760
706
|
var optionValue = config[optionName];
|
|
761
|
-
|
|
762
707
|
if (typeof optionValue === 'function') {
|
|
763
708
|
for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
764
709
|
params[_key2 - 1] = arguments[_key2];
|
|
765
710
|
}
|
|
766
|
-
|
|
767
711
|
optionValue = optionValue.apply(void 0, params);
|
|
768
712
|
}
|
|
769
|
-
|
|
770
713
|
if (optionValue === true) {
|
|
771
714
|
optionValue = undefined; // use default value
|
|
772
715
|
}
|
|
@@ -774,56 +717,51 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
774
717
|
if (!optionValue) {
|
|
775
718
|
if (optionValue === undefined || optionValue === false) {
|
|
776
719
|
return optionValue;
|
|
777
|
-
}
|
|
778
|
-
|
|
720
|
+
}
|
|
721
|
+
// else, empty string (invalid), null (invalid), 0 (invalid)
|
|
779
722
|
|
|
780
723
|
throw new Error("`".concat(optionName, "` was specified but was not a node, or did not return a node"));
|
|
781
724
|
}
|
|
782
|
-
|
|
783
725
|
var node = optionValue; // could be HTMLElement, SVGElement, or non-empty string at this point
|
|
784
726
|
|
|
785
727
|
if (typeof optionValue === 'string') {
|
|
786
728
|
node = doc.querySelector(optionValue); // resolve to node, or null if fails
|
|
787
|
-
|
|
788
729
|
if (!node) {
|
|
789
730
|
throw new Error("`".concat(optionName, "` as selector refers to no known node"));
|
|
790
731
|
}
|
|
791
732
|
}
|
|
792
|
-
|
|
793
733
|
return node;
|
|
794
734
|
};
|
|
795
|
-
|
|
796
735
|
var getInitialFocusNode = function getInitialFocusNode() {
|
|
797
|
-
var node = getNodeForOption('initialFocus');
|
|
736
|
+
var node = getNodeForOption('initialFocus');
|
|
798
737
|
|
|
738
|
+
// false explicitly indicates we want no initialFocus at all
|
|
799
739
|
if (node === false) {
|
|
800
740
|
return false;
|
|
801
741
|
}
|
|
802
|
-
|
|
803
742
|
if (node === undefined) {
|
|
804
743
|
// option not specified: use fallback options
|
|
805
744
|
if (findContainerIndex(doc.activeElement) >= 0) {
|
|
806
745
|
node = doc.activeElement;
|
|
807
746
|
} else {
|
|
808
747
|
var firstTabbableGroup = state.tabbableGroups[0];
|
|
809
|
-
var firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode;
|
|
748
|
+
var firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode;
|
|
810
749
|
|
|
750
|
+
// NOTE: `fallbackFocus` option function cannot return `false` (not supported)
|
|
811
751
|
node = firstTabbableNode || getNodeForOption('fallbackFocus');
|
|
812
752
|
}
|
|
813
753
|
}
|
|
814
|
-
|
|
815
754
|
if (!node) {
|
|
816
755
|
throw new Error('Your focus-trap needs to have at least one focusable element');
|
|
817
756
|
}
|
|
818
|
-
|
|
819
757
|
return node;
|
|
820
758
|
};
|
|
821
|
-
|
|
822
759
|
var updateTabbableNodes = function updateTabbableNodes() {
|
|
823
760
|
state.containerGroups = state.containers.map(function (container) {
|
|
824
|
-
var tabbableNodes = tabbable(container, config.tabbableOptions);
|
|
825
|
-
// are a superset of tabbable nodes
|
|
761
|
+
var tabbableNodes = tabbable(container, config.tabbableOptions);
|
|
826
762
|
|
|
763
|
+
// NOTE: if we have tabbable nodes, we must have focusable nodes; focusable nodes
|
|
764
|
+
// are a superset of tabbable nodes
|
|
827
765
|
var focusableNodes = focusable(container, config.tabbableOptions);
|
|
828
766
|
return {
|
|
829
767
|
container: container,
|
|
@@ -831,7 +769,6 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
831
769
|
focusableNodes: focusableNodes,
|
|
832
770
|
firstTabbableNode: tabbableNodes.length > 0 ? tabbableNodes[0] : null,
|
|
833
771
|
lastTabbableNode: tabbableNodes.length > 0 ? tabbableNodes[tabbableNodes.length - 1] : null,
|
|
834
|
-
|
|
835
772
|
/**
|
|
836
773
|
* Finds the __tabbable__ node that follows the given node in the specified direction,
|
|
837
774
|
* in this container, if any.
|
|
@@ -855,17 +792,14 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
855
792
|
var nodeIdx = focusableNodes.findIndex(function (n) {
|
|
856
793
|
return n === node;
|
|
857
794
|
});
|
|
858
|
-
|
|
859
795
|
if (nodeIdx < 0) {
|
|
860
796
|
return undefined;
|
|
861
797
|
}
|
|
862
|
-
|
|
863
798
|
if (forward) {
|
|
864
799
|
return focusableNodes.slice(nodeIdx + 1).find(function (n) {
|
|
865
800
|
return isTabbable(n, config.tabbableOptions);
|
|
866
801
|
});
|
|
867
802
|
}
|
|
868
|
-
|
|
869
803
|
return focusableNodes.slice(0, nodeIdx).reverse().find(function (n) {
|
|
870
804
|
return isTabbable(n, config.tabbableOptions);
|
|
871
805
|
});
|
|
@@ -874,53 +808,46 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
874
808
|
});
|
|
875
809
|
state.tabbableGroups = state.containerGroups.filter(function (group) {
|
|
876
810
|
return group.tabbableNodes.length > 0;
|
|
877
|
-
});
|
|
811
|
+
});
|
|
878
812
|
|
|
813
|
+
// throw if no groups have tabbable nodes and we don't have a fallback focus node either
|
|
879
814
|
if (state.tabbableGroups.length <= 0 && !getNodeForOption('fallbackFocus') // returning false not supported for this option
|
|
880
815
|
) {
|
|
881
816
|
throw new Error('Your focus-trap must have at least one container with at least one tabbable node in it at all times');
|
|
882
817
|
}
|
|
883
818
|
};
|
|
884
|
-
|
|
885
819
|
var tryFocus = function tryFocus(node) {
|
|
886
820
|
if (node === false) {
|
|
887
821
|
return;
|
|
888
822
|
}
|
|
889
|
-
|
|
890
823
|
if (node === doc.activeElement) {
|
|
891
824
|
return;
|
|
892
825
|
}
|
|
893
|
-
|
|
894
826
|
if (!node || !node.focus) {
|
|
895
827
|
tryFocus(getInitialFocusNode());
|
|
896
828
|
return;
|
|
897
829
|
}
|
|
898
|
-
|
|
899
830
|
node.focus({
|
|
900
831
|
preventScroll: !!config.preventScroll
|
|
901
832
|
});
|
|
902
833
|
state.mostRecentlyFocusedNode = node;
|
|
903
|
-
|
|
904
834
|
if (isSelectableInput(node)) {
|
|
905
835
|
node.select();
|
|
906
836
|
}
|
|
907
837
|
};
|
|
908
|
-
|
|
909
838
|
var getReturnFocusNode = function getReturnFocusNode(previousActiveElement) {
|
|
910
839
|
var node = getNodeForOption('setReturnFocus', previousActiveElement);
|
|
911
840
|
return node ? node : node === false ? false : previousActiveElement;
|
|
912
|
-
};
|
|
913
|
-
// so that it precedes the focus event.
|
|
914
|
-
|
|
841
|
+
};
|
|
915
842
|
|
|
843
|
+
// This needs to be done on mousedown and touchstart instead of click
|
|
844
|
+
// so that it precedes the focus event.
|
|
916
845
|
var checkPointerDown = function checkPointerDown(e) {
|
|
917
846
|
var target = getActualTarget(e);
|
|
918
|
-
|
|
919
847
|
if (findContainerIndex(target) >= 0) {
|
|
920
848
|
// allow the click since it ocurred inside the trap
|
|
921
849
|
return;
|
|
922
850
|
}
|
|
923
|
-
|
|
924
851
|
if (valueOrHandler(config.clickOutsideDeactivates, e)) {
|
|
925
852
|
// immediately deactivate the trap
|
|
926
853
|
trap.deactivate({
|
|
@@ -938,25 +865,26 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
938
865
|
returnFocus: config.returnFocusOnDeactivate && !isFocusable(target, config.tabbableOptions)
|
|
939
866
|
});
|
|
940
867
|
return;
|
|
941
|
-
}
|
|
868
|
+
}
|
|
869
|
+
|
|
870
|
+
// This is needed for mobile devices.
|
|
942
871
|
// (If we'll only let `click` events through,
|
|
943
872
|
// then on mobile they will be blocked anyways if `touchstart` is blocked.)
|
|
944
|
-
|
|
945
|
-
|
|
946
873
|
if (valueOrHandler(config.allowOutsideClick, e)) {
|
|
947
874
|
// allow the click outside the trap to take place
|
|
948
875
|
return;
|
|
949
|
-
}
|
|
950
|
-
|
|
876
|
+
}
|
|
951
877
|
|
|
878
|
+
// otherwise, prevent the click
|
|
952
879
|
e.preventDefault();
|
|
953
|
-
};
|
|
954
|
-
|
|
880
|
+
};
|
|
955
881
|
|
|
882
|
+
// In case focus escapes the trap for some strange reason, pull it back in.
|
|
956
883
|
var checkFocusIn = function checkFocusIn(e) {
|
|
957
884
|
var target = getActualTarget(e);
|
|
958
|
-
var targetContained = findContainerIndex(target) >= 0;
|
|
885
|
+
var targetContained = findContainerIndex(target) >= 0;
|
|
959
886
|
|
|
887
|
+
// In Firefox when you Tab out of an iframe the Document is briefly focused.
|
|
960
888
|
if (targetContained || target instanceof Document) {
|
|
961
889
|
if (targetContained) {
|
|
962
890
|
state.mostRecentlyFocusedNode = target;
|
|
@@ -966,42 +894,41 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
966
894
|
e.stopImmediatePropagation();
|
|
967
895
|
tryFocus(state.mostRecentlyFocusedNode || getInitialFocusNode());
|
|
968
896
|
}
|
|
969
|
-
};
|
|
897
|
+
};
|
|
898
|
+
|
|
899
|
+
// Hijack key nav events on the first and last focusable nodes of the trap,
|
|
970
900
|
// in order to prevent focus from escaping. If it escapes for even a
|
|
971
901
|
// moment it can end up scrolling the page and causing confusion so we
|
|
972
902
|
// kind of need to capture the action at the keydown phase.
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
var target = getActualTarget(e);
|
|
903
|
+
var checkKeyNav = function checkKeyNav(event) {
|
|
904
|
+
var isBackward = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
905
|
+
var target = getActualTarget(event);
|
|
977
906
|
updateTabbableNodes();
|
|
978
907
|
var destinationNode = null;
|
|
979
|
-
|
|
980
908
|
if (state.tabbableGroups.length > 0) {
|
|
981
909
|
// make sure the target is actually contained in a group
|
|
982
910
|
// NOTE: the target may also be the container itself if it's focusable
|
|
983
911
|
// with tabIndex='-1' and was given initial focus
|
|
984
912
|
var containerIndex = findContainerIndex(target);
|
|
985
913
|
var containerGroup = containerIndex >= 0 ? state.containerGroups[containerIndex] : undefined;
|
|
986
|
-
|
|
987
914
|
if (containerIndex < 0) {
|
|
988
915
|
// target not found in any group: quite possible focus has escaped the trap,
|
|
989
|
-
// so bring it back
|
|
990
|
-
if (
|
|
916
|
+
// so bring it back into...
|
|
917
|
+
if (isBackward) {
|
|
991
918
|
// ...the last node in the last group
|
|
992
919
|
destinationNode = state.tabbableGroups[state.tabbableGroups.length - 1].lastTabbableNode;
|
|
993
920
|
} else {
|
|
994
921
|
// ...the first node in the first group
|
|
995
922
|
destinationNode = state.tabbableGroups[0].firstTabbableNode;
|
|
996
923
|
}
|
|
997
|
-
} else if (
|
|
924
|
+
} else if (isBackward) {
|
|
998
925
|
// REVERSE
|
|
926
|
+
|
|
999
927
|
// is the target the first tabbable node in a group?
|
|
1000
928
|
var startOfGroupIndex = findIndex(state.tabbableGroups, function (_ref2) {
|
|
1001
929
|
var firstTabbableNode = _ref2.firstTabbableNode;
|
|
1002
930
|
return target === firstTabbableNode;
|
|
1003
931
|
});
|
|
1004
|
-
|
|
1005
932
|
if (startOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target, false))) {
|
|
1006
933
|
// an exception case where the target is either the container itself, or
|
|
1007
934
|
// a non-tabbable node that was given focus (i.e. tabindex is negative
|
|
@@ -1011,7 +938,6 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1011
938
|
// first tabbable node, and go to the last tabbable node of the LAST group
|
|
1012
939
|
startOfGroupIndex = containerIndex;
|
|
1013
940
|
}
|
|
1014
|
-
|
|
1015
941
|
if (startOfGroupIndex >= 0) {
|
|
1016
942
|
// YES: then shift+tab should go to the last tabbable node in the
|
|
1017
943
|
// previous group (and wrap around to the last tabbable node of
|
|
@@ -1019,15 +945,19 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1019
945
|
var destinationGroupIndex = startOfGroupIndex === 0 ? state.tabbableGroups.length - 1 : startOfGroupIndex - 1;
|
|
1020
946
|
var destinationGroup = state.tabbableGroups[destinationGroupIndex];
|
|
1021
947
|
destinationNode = destinationGroup.lastTabbableNode;
|
|
948
|
+
} else if (!isTabEvent(event)) {
|
|
949
|
+
// user must have customized the nav keys so we have to move focus manually _within_
|
|
950
|
+
// the active group: do this based on the order determined by tabbable()
|
|
951
|
+
destinationNode = containerGroup.nextTabbableNode(target, false);
|
|
1022
952
|
}
|
|
1023
953
|
} else {
|
|
1024
954
|
// FORWARD
|
|
955
|
+
|
|
1025
956
|
// is the target the last tabbable node in a group?
|
|
1026
957
|
var lastOfGroupIndex = findIndex(state.tabbableGroups, function (_ref3) {
|
|
1027
958
|
var lastTabbableNode = _ref3.lastTabbableNode;
|
|
1028
959
|
return target === lastTabbableNode;
|
|
1029
960
|
});
|
|
1030
|
-
|
|
1031
961
|
if (lastOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target))) {
|
|
1032
962
|
// an exception case where the target is the container itself, or
|
|
1033
963
|
// a non-tabbable node that was given focus (i.e. tabindex is negative
|
|
@@ -1037,73 +967,76 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1037
967
|
// last tabbable node, and go to the first tabbable node of the FIRST group
|
|
1038
968
|
lastOfGroupIndex = containerIndex;
|
|
1039
969
|
}
|
|
1040
|
-
|
|
1041
970
|
if (lastOfGroupIndex >= 0) {
|
|
1042
971
|
// YES: then tab should go to the first tabbable node in the next
|
|
1043
972
|
// group (and wrap around to the first tabbable node of the FIRST
|
|
1044
973
|
// group if it's the last tabbable node of the LAST group)
|
|
1045
974
|
var _destinationGroupIndex = lastOfGroupIndex === state.tabbableGroups.length - 1 ? 0 : lastOfGroupIndex + 1;
|
|
1046
|
-
|
|
1047
975
|
var _destinationGroup = state.tabbableGroups[_destinationGroupIndex];
|
|
1048
976
|
destinationNode = _destinationGroup.firstTabbableNode;
|
|
977
|
+
} else if (!isTabEvent(event)) {
|
|
978
|
+
// user must have customized the nav keys so we have to move focus manually _within_
|
|
979
|
+
// the active group: do this based on the order determined by tabbable()
|
|
980
|
+
destinationNode = containerGroup.nextTabbableNode(target);
|
|
1049
981
|
}
|
|
1050
982
|
}
|
|
1051
983
|
} else {
|
|
984
|
+
// no groups available
|
|
1052
985
|
// NOTE: the fallbackFocus option does not support returning false to opt-out
|
|
1053
986
|
destinationNode = getNodeForOption('fallbackFocus');
|
|
1054
987
|
}
|
|
1055
|
-
|
|
1056
988
|
if (destinationNode) {
|
|
1057
|
-
|
|
989
|
+
if (isTabEvent(event)) {
|
|
990
|
+
// since tab natively moves focus, we wouldn't have a destination node unless we
|
|
991
|
+
// were on the edge of a container and had to move to the next/previous edge, in
|
|
992
|
+
// which case we want to prevent default to keep the browser from moving focus
|
|
993
|
+
// to where it normally would
|
|
994
|
+
event.preventDefault();
|
|
995
|
+
}
|
|
1058
996
|
tryFocus(destinationNode);
|
|
1059
|
-
}
|
|
1060
|
-
|
|
997
|
+
}
|
|
998
|
+
// else, let the browser take care of [shift+]tab and move the focus
|
|
1061
999
|
};
|
|
1062
1000
|
|
|
1063
|
-
var checkKey = function checkKey(
|
|
1064
|
-
if (isEscapeEvent(
|
|
1065
|
-
|
|
1001
|
+
var checkKey = function checkKey(event) {
|
|
1002
|
+
if (isEscapeEvent(event) && valueOrHandler(config.escapeDeactivates, event) !== false) {
|
|
1003
|
+
event.preventDefault();
|
|
1066
1004
|
trap.deactivate();
|
|
1067
1005
|
return;
|
|
1068
1006
|
}
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
checkTab(e);
|
|
1072
|
-
return;
|
|
1007
|
+
if (config.isKeyForward(event) || config.isKeyBackward(event)) {
|
|
1008
|
+
checkKeyNav(event, config.isKeyBackward(event));
|
|
1073
1009
|
}
|
|
1074
1010
|
};
|
|
1075
|
-
|
|
1076
1011
|
var checkClick = function checkClick(e) {
|
|
1077
1012
|
var target = getActualTarget(e);
|
|
1078
|
-
|
|
1079
1013
|
if (findContainerIndex(target) >= 0) {
|
|
1080
1014
|
return;
|
|
1081
1015
|
}
|
|
1082
|
-
|
|
1083
1016
|
if (valueOrHandler(config.clickOutsideDeactivates, e)) {
|
|
1084
1017
|
return;
|
|
1085
1018
|
}
|
|
1086
|
-
|
|
1087
1019
|
if (valueOrHandler(config.allowOutsideClick, e)) {
|
|
1088
1020
|
return;
|
|
1089
1021
|
}
|
|
1090
|
-
|
|
1091
1022
|
e.preventDefault();
|
|
1092
1023
|
e.stopImmediatePropagation();
|
|
1093
|
-
};
|
|
1024
|
+
};
|
|
1025
|
+
|
|
1026
|
+
//
|
|
1094
1027
|
// EVENT LISTENERS
|
|
1095
1028
|
//
|
|
1096
1029
|
|
|
1097
|
-
|
|
1098
1030
|
var addListeners = function addListeners() {
|
|
1099
1031
|
if (!state.active) {
|
|
1100
1032
|
return;
|
|
1101
|
-
}
|
|
1033
|
+
}
|
|
1102
1034
|
|
|
1035
|
+
// There can be only one listening focus trap at a time
|
|
1036
|
+
activeFocusTraps.activateTrap(trapStack, trap);
|
|
1103
1037
|
|
|
1104
|
-
|
|
1038
|
+
// Delay ensures that the focused element doesn't capture the event
|
|
1105
1039
|
// that caused the focus trap activation.
|
|
1106
|
-
|
|
1107
1040
|
state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function () {
|
|
1108
1041
|
tryFocus(getInitialFocusNode());
|
|
1109
1042
|
}) : tryFocus(getInitialFocusNode());
|
|
@@ -1126,70 +1059,58 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1126
1059
|
});
|
|
1127
1060
|
return trap;
|
|
1128
1061
|
};
|
|
1129
|
-
|
|
1130
1062
|
var removeListeners = function removeListeners() {
|
|
1131
1063
|
if (!state.active) {
|
|
1132
1064
|
return;
|
|
1133
1065
|
}
|
|
1134
|
-
|
|
1135
1066
|
doc.removeEventListener('focusin', checkFocusIn, true);
|
|
1136
1067
|
doc.removeEventListener('mousedown', checkPointerDown, true);
|
|
1137
1068
|
doc.removeEventListener('touchstart', checkPointerDown, true);
|
|
1138
1069
|
doc.removeEventListener('click', checkClick, true);
|
|
1139
1070
|
doc.removeEventListener('keydown', checkKey, true);
|
|
1140
1071
|
return trap;
|
|
1141
|
-
};
|
|
1072
|
+
};
|
|
1073
|
+
|
|
1074
|
+
//
|
|
1142
1075
|
// TRAP DEFINITION
|
|
1143
1076
|
//
|
|
1144
1077
|
|
|
1145
|
-
|
|
1146
1078
|
trap = {
|
|
1147
1079
|
get active() {
|
|
1148
1080
|
return state.active;
|
|
1149
1081
|
},
|
|
1150
|
-
|
|
1151
1082
|
get paused() {
|
|
1152
1083
|
return state.paused;
|
|
1153
1084
|
},
|
|
1154
|
-
|
|
1155
1085
|
activate: function activate(activateOptions) {
|
|
1156
1086
|
if (state.active) {
|
|
1157
1087
|
return this;
|
|
1158
1088
|
}
|
|
1159
|
-
|
|
1160
1089
|
var onActivate = getOption(activateOptions, 'onActivate');
|
|
1161
1090
|
var onPostActivate = getOption(activateOptions, 'onPostActivate');
|
|
1162
1091
|
var checkCanFocusTrap = getOption(activateOptions, 'checkCanFocusTrap');
|
|
1163
|
-
|
|
1164
1092
|
if (!checkCanFocusTrap) {
|
|
1165
1093
|
updateTabbableNodes();
|
|
1166
1094
|
}
|
|
1167
|
-
|
|
1168
1095
|
state.active = true;
|
|
1169
1096
|
state.paused = false;
|
|
1170
1097
|
state.nodeFocusedBeforeActivation = doc.activeElement;
|
|
1171
|
-
|
|
1172
1098
|
if (onActivate) {
|
|
1173
1099
|
onActivate();
|
|
1174
1100
|
}
|
|
1175
|
-
|
|
1176
1101
|
var finishActivation = function finishActivation() {
|
|
1177
1102
|
if (checkCanFocusTrap) {
|
|
1178
1103
|
updateTabbableNodes();
|
|
1179
1104
|
}
|
|
1180
|
-
|
|
1181
1105
|
addListeners();
|
|
1182
|
-
|
|
1183
1106
|
if (onPostActivate) {
|
|
1184
1107
|
onPostActivate();
|
|
1185
1108
|
}
|
|
1186
1109
|
};
|
|
1187
|
-
|
|
1188
1110
|
if (checkCanFocusTrap) {
|
|
1189
1111
|
checkCanFocusTrap(state.containers.concat()).then(finishActivation, finishActivation);
|
|
1190
1112
|
return this;
|
|
1191
1113
|
}
|
|
1192
|
-
|
|
1193
1114
|
finishActivation();
|
|
1194
1115
|
return this;
|
|
1195
1116
|
},
|
|
@@ -1197,46 +1118,38 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1197
1118
|
if (!state.active) {
|
|
1198
1119
|
return this;
|
|
1199
1120
|
}
|
|
1200
|
-
|
|
1201
1121
|
var options = _objectSpread2({
|
|
1202
1122
|
onDeactivate: config.onDeactivate,
|
|
1203
1123
|
onPostDeactivate: config.onPostDeactivate,
|
|
1204
1124
|
checkCanReturnFocus: config.checkCanReturnFocus
|
|
1205
1125
|
}, deactivateOptions);
|
|
1206
|
-
|
|
1207
1126
|
clearTimeout(state.delayInitialFocusTimer); // noop if undefined
|
|
1208
|
-
|
|
1209
1127
|
state.delayInitialFocusTimer = undefined;
|
|
1210
1128
|
removeListeners();
|
|
1211
1129
|
state.active = false;
|
|
1212
1130
|
state.paused = false;
|
|
1213
|
-
activeFocusTraps.deactivateTrap(trap);
|
|
1131
|
+
activeFocusTraps.deactivateTrap(trapStack, trap);
|
|
1214
1132
|
var onDeactivate = getOption(options, 'onDeactivate');
|
|
1215
1133
|
var onPostDeactivate = getOption(options, 'onPostDeactivate');
|
|
1216
1134
|
var checkCanReturnFocus = getOption(options, 'checkCanReturnFocus');
|
|
1217
1135
|
var returnFocus = getOption(options, 'returnFocus', 'returnFocusOnDeactivate');
|
|
1218
|
-
|
|
1219
1136
|
if (onDeactivate) {
|
|
1220
1137
|
onDeactivate();
|
|
1221
1138
|
}
|
|
1222
|
-
|
|
1223
1139
|
var finishDeactivation = function finishDeactivation() {
|
|
1224
1140
|
delay(function () {
|
|
1225
1141
|
if (returnFocus) {
|
|
1226
1142
|
tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation));
|
|
1227
1143
|
}
|
|
1228
|
-
|
|
1229
1144
|
if (onPostDeactivate) {
|
|
1230
1145
|
onPostDeactivate();
|
|
1231
1146
|
}
|
|
1232
1147
|
});
|
|
1233
1148
|
};
|
|
1234
|
-
|
|
1235
1149
|
if (returnFocus && checkCanReturnFocus) {
|
|
1236
1150
|
checkCanReturnFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)).then(finishDeactivation, finishDeactivation);
|
|
1237
1151
|
return this;
|
|
1238
1152
|
}
|
|
1239
|
-
|
|
1240
1153
|
finishDeactivation();
|
|
1241
1154
|
return this;
|
|
1242
1155
|
},
|
|
@@ -1244,7 +1157,6 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1244
1157
|
if (state.paused || !state.active) {
|
|
1245
1158
|
return this;
|
|
1246
1159
|
}
|
|
1247
|
-
|
|
1248
1160
|
state.paused = true;
|
|
1249
1161
|
removeListeners();
|
|
1250
1162
|
return this;
|
|
@@ -1253,7 +1165,6 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1253
1165
|
if (!state.paused || !state.active) {
|
|
1254
1166
|
return this;
|
|
1255
1167
|
}
|
|
1256
|
-
|
|
1257
1168
|
state.paused = false;
|
|
1258
1169
|
updateTabbableNodes();
|
|
1259
1170
|
addListeners();
|
|
@@ -1264,15 +1175,14 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
1264
1175
|
state.containers = elementsAsArray.map(function (element) {
|
|
1265
1176
|
return typeof element === 'string' ? doc.querySelector(element) : element;
|
|
1266
1177
|
});
|
|
1267
|
-
|
|
1268
1178
|
if (state.active) {
|
|
1269
1179
|
updateTabbableNodes();
|
|
1270
1180
|
}
|
|
1271
|
-
|
|
1272
1181
|
return this;
|
|
1273
1182
|
}
|
|
1274
|
-
};
|
|
1183
|
+
};
|
|
1275
1184
|
|
|
1185
|
+
// initialize container elements
|
|
1276
1186
|
trap.updateContainerElements(elements);
|
|
1277
1187
|
return trap;
|
|
1278
1188
|
};
|