@duetds/components 10.0.0-alpha.13 → 10.0.0-alpha.14
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/hydrate/index.d.ts +38 -7
- package/hydrate/index.js +7554 -3237
- package/hydrate/index.mjs +45083 -0
- package/lib/cjs/_commonjsHelpers-4N64IRaP.js +10 -0
- package/lib/cjs/{a11y-utils-afeb2485.js → a11y-utils-CrefuUbk.js} +1 -1
- package/lib/cjs/action-arrow-down-small-CDsSJFvZ.js +21 -0
- package/lib/cjs/action-new-window-small-BWlVx6YN.js +21 -0
- package/lib/cjs/{app-globals-540cd51d.js → app-globals-CkySA1aW.js} +2 -2
- package/lib/cjs/duet-action-button.cjs.entry.js +83 -28
- package/lib/cjs/duet-alert.cjs.entry.js +72 -30
- package/lib/cjs/duet-badge.cjs.entry.js +16 -6
- package/lib/cjs/duet-banner.cjs.entry.js +49 -23
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +32 -12
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +17 -11
- package/lib/cjs/duet-button_2.cjs.entry.js +147 -54
- package/lib/cjs/duet-callout.cjs.entry.js +10 -7
- package/lib/cjs/duet-caption_4.cjs.entry.js +175 -34
- package/lib/cjs/duet-card.cjs.entry.js +80 -30
- package/lib/cjs/duet-checkbox.cjs.entry.js +65 -29
- package/lib/cjs/duet-checkmark.cjs.entry.js +18 -6
- package/lib/cjs/duet-chip.cjs.entry.js +49 -29
- package/lib/cjs/duet-choice_2.cjs.entry.js +212 -74
- package/lib/cjs/duet-collapsible.cjs.entry.js +67 -25
- package/lib/cjs/duet-combobox.cjs.entry.js +79 -46
- package/lib/cjs/duet-contact-card.cjs.entry.js +14 -15
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +12 -9
- package/lib/cjs/duet-date-picker.cjs.entry.js +142 -52
- package/lib/cjs/duet-divider_2.cjs.entry.js +26 -10
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +477 -198
- package/lib/cjs/duet-empty-state.cjs.entry.js +12 -6
- package/lib/cjs/duet-fieldset.cjs.entry.js +38 -19
- package/lib/cjs/duet-file-chooser.cjs.entry.js +16 -9
- package/lib/cjs/duet-footer.cjs.entry.js +52 -26
- package/lib/cjs/duet-grid_2.cjs.entry.js +65 -12
- package/lib/cjs/duet-header_2.cjs.entry.js +250 -85
- package/lib/cjs/duet-hero.cjs.entry.js +110 -26
- package/lib/cjs/duet-icon.cjs.entry.js +50 -11
- package/lib/cjs/duet-input_2.cjs.entry.js +181 -69
- package/lib/cjs/duet-layout.cjs.entry.js +27 -7
- package/lib/cjs/duet-list_2.cjs.entry.js +44 -9
- package/lib/cjs/duet-menu-bar-button.cjs.entry.js +21 -13
- package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +16 -11
- package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +16 -11
- package/lib/cjs/duet-menu-bar-item.cjs.entry.js +37 -16
- package/lib/cjs/duet-menu-bar-link.cjs.entry.js +15 -7
- package/lib/cjs/duet-menu-bar.cjs.entry.js +32 -22
- package/lib/cjs/duet-modal.cjs.entry.js +74 -18
- package/lib/cjs/duet-multiselect.cjs.entry.js +85 -39
- package/lib/cjs/duet-nav.cjs.entry.js +10 -6
- package/lib/cjs/duet-notification_2.cjs.entry.js +83 -27
- package/lib/cjs/duet-number-input.cjs.entry.js +175 -65
- package/lib/cjs/duet-overlay.cjs.entry.js +33 -12
- package/lib/cjs/duet-page-heading.cjs.entry.js +13 -8
- package/lib/cjs/duet-pagination_2.cjs.entry.js +147 -72
- package/lib/cjs/duet-phone-input.cjs.entry.js +76 -35
- package/lib/cjs/duet-popup-menu_2.cjs.entry.js +108 -54
- package/lib/cjs/duet-progress.cjs.entry.js +31 -12
- package/lib/cjs/duet-promo-card.cjs.entry.js +24 -10
- package/lib/cjs/duet-radio_2.cjs.entry.js +100 -47
- package/lib/cjs/duet-range-slider.cjs.entry.js +70 -34
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +172 -59
- package/lib/cjs/duet-section-layout.cjs.entry.js +13 -6
- package/lib/cjs/duet-select.cjs.entry.js +79 -37
- package/lib/cjs/duet-shaped-image.cjs.entry.js +13 -8
- package/lib/cjs/duet-show-more.cjs.entry.js +77 -35
- package/lib/cjs/duet-slideout-lang.cjs.entry.js +8 -8
- package/lib/cjs/duet-slideout-link.cjs.entry.js +47 -14
- package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +18 -9
- package/lib/cjs/duet-slideout-panel.cjs.entry.js +40 -23
- package/lib/cjs/duet-slideout.cjs.entry.js +37 -23
- package/lib/cjs/duet-status-icon.cjs.entry.js +14 -4
- package/lib/cjs/duet-step_2.cjs.entry.js +52 -18
- package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +22 -7
- package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +22 -13
- package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +38 -17
- package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +16 -7
- package/lib/cjs/duet-submenu-bar.cjs.entry.js +21 -15
- package/lib/cjs/duet-textarea.cjs.entry.js +98 -45
- package/lib/cjs/duet-toggle.cjs.entry.js +47 -26
- package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +19 -8
- package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +22 -11
- package/lib/cjs/duet-toolbar-item.cjs.entry.js +43 -16
- package/lib/cjs/duet-toolbar-link.cjs.entry.js +18 -7
- package/lib/cjs/duet-toolbar.cjs.entry.js +9 -7
- package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +11 -20
- package/lib/cjs/duet-tooltip.cjs.entry.js +91 -45
- package/lib/cjs/duet-tray.cjs.entry.js +60 -21
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +29 -10
- package/lib/cjs/duet-upload-item.cjs.entry.js +10 -20
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -5
- package/lib/cjs/duet.cjs.js +8 -8
- package/lib/cjs/{errorcodes.utils-b47aaa45.js → errorcodes.utils-mZFkq5Tt.js} +2 -2
- package/lib/cjs/floating-ui.dom.browser.min-Cj0r5YDz.js +709 -0
- package/lib/cjs/{focus-utils-c4163f8f.js → focus-utils-dqd59YI6.js} +1 -1
- package/lib/cjs/form-search-CzPfHB80.js +21 -0
- package/lib/cjs/{index-00821d28.js → index-CdC7dzZ-.js} +1845 -1369
- package/lib/cjs/{label-3ce3ebad.js → label-BQpxsrOR.js} +1 -1
- package/lib/cjs/{language-utils-77bf1c27.js → language-utils-A7DfQayC.js} +2 -2
- package/lib/cjs/loader.cjs.js +3 -5
- package/lib/cjs/{slot-utils-acd4cc20.js → slot-utils-DgJchaT4.js} +1 -1
- package/lib/cjs/{token-utils-5000595c.js → token-utils-BcI9qaMX.js} +2 -2
- package/lib/cjs/{tokens-57e06fe4.js → tokens-Qt4x7zcB.js} +4 -4
- package/lib/cjs/{tokens.module-7c947029.js → tokens.module-Dzg9dTSm.js} +1 -1
- package/lib/collection/collection-manifest.json +1 -1
- package/lib/collection/components/duet-action-button/duet-action-button.js +92 -33
- package/lib/collection/components/duet-alert/duet-alert.js +77 -32
- package/lib/collection/components/duet-badge/duet-badge.js +17 -4
- package/lib/collection/components/duet-banner/duet-banner.js +52 -23
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +18 -7
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +13 -4
- package/lib/collection/components/duet-button/duet-button.js +164 -80
- package/lib/collection/components/duet-callout/duet-callout.js +8 -2
- package/lib/collection/components/duet-caption/duet-caption.js +16 -4
- package/lib/collection/components/duet-card/duet-card.js +73 -32
- package/lib/collection/components/duet-checkbox/duet-checkbox.js +83 -44
- package/lib/collection/components/duet-chip/duet-chip.js +56 -33
- package/lib/collection/components/duet-choice/duet-checkmark.js +20 -5
- package/lib/collection/components/duet-choice/duet-choice.js +162 -75
- package/lib/collection/components/duet-choice-group/duet-choice-group.js +75 -32
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +68 -24
- package/lib/collection/components/duet-combobox/duet-combobox.js +83 -45
- package/lib/collection/components/duet-contact-card/duet-contact-card.js +19 -17
- package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +10 -4
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +149 -67
- package/lib/collection/components/duet-divider/duet-divider.js +13 -3
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +81 -24
- package/lib/collection/components/duet-empty-state/duet-empty-state.js +12 -3
- package/lib/collection/components/duet-fieldset/duet-fieldset.js +42 -20
- package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +16 -6
- package/lib/collection/components/duet-footer/duet-footer.js +51 -23
- package/lib/collection/components/duet-grid/duet-grid.js +38 -8
- package/lib/collection/components/duet-grid-item/duet-grid-item.js +38 -11
- package/lib/collection/components/duet-header/duet-header.js +162 -74
- package/lib/collection/components/duet-heading/duet-heading.js +36 -12
- package/lib/collection/components/duet-hero/duet-hero.js +128 -41
- package/lib/collection/components/duet-icon/duet-icon.js +58 -16
- package/lib/collection/components/duet-input/duet-input.js +183 -93
- package/lib/collection/components/duet-label/duet-label.js +22 -7
- package/lib/collection/components/duet-layout/duet-layout.js +30 -7
- package/lib/collection/components/duet-link/duet-link.js +84 -26
- package/lib/collection/components/duet-list/duet-list.js +37 -8
- package/lib/collection/components/duet-list-item/duet-list-item.js +12 -2
- package/lib/collection/components/duet-logo/duet-logo.js +34 -7
- package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +33 -20
- package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +31 -20
- package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +16 -8
- package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +16 -8
- package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +37 -14
- package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +17 -6
- package/lib/collection/components/duet-modal/duet-modal.js +82 -23
- package/lib/collection/components/duet-multiselect/duet-multiselect.js +95 -45
- package/lib/collection/components/duet-nav/duet-nav.js +9 -2
- package/lib/collection/components/duet-notification/duet-notification.js +37 -7
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +52 -22
- package/lib/collection/components/duet-number-input/duet-number-input.js +177 -87
- package/lib/collection/components/duet-overlay/duet-overlay.js +38 -14
- package/lib/collection/components/duet-page-heading/duet-page-heading.js +15 -7
- package/lib/collection/components/duet-pagination/duet-pagination.js +119 -65
- package/lib/collection/components/duet-paragraph/duet-paragraph.js +25 -6
- package/lib/collection/components/duet-phone-input/duet-phone-input.js +89 -44
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +58 -33
- package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +59 -27
- package/lib/collection/components/duet-progress/duet-progress.js +36 -14
- package/lib/collection/components/duet-promo-card/duet-promo-card.js +25 -8
- package/lib/collection/components/duet-radio/duet-radio.js +63 -45
- package/lib/collection/components/duet-radio-group/duet-radio-group.js +67 -28
- package/lib/collection/components/duet-range-slider/duet-range-slider.js +83 -44
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +41 -12
- package/lib/collection/components/duet-scrollable/duet-scrollable.js +55 -18
- package/lib/collection/components/duet-section-layout/duet-section-layout.js +13 -3
- package/lib/collection/components/duet-select/duet-select.js +98 -53
- package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +15 -7
- package/lib/collection/components/duet-show-more/duet-show-more.js +84 -35
- package/lib/collection/components/duet-slideout/duet-slideout.js +32 -15
- package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +4 -1
- package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +48 -13
- package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +37 -17
- package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +19 -7
- package/lib/collection/components/duet-spacer/duet-spacer.js +13 -3
- package/lib/collection/components/duet-spinner/duet-spinner.js +18 -5
- package/lib/collection/components/duet-status-icon/duet-status-icon.js +16 -4
- package/lib/collection/components/duet-step/duet-step.js +23 -14
- package/lib/collection/components/duet-stepper/duet-stepper.js +22 -5
- package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +20 -11
- package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +21 -9
- package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +24 -6
- package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +37 -14
- package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +16 -4
- package/lib/collection/components/duet-tab/duet-tab.js +35 -21
- package/lib/collection/components/duet-tab-group/duet-tab-group.js +107 -40
- package/lib/collection/components/duet-table/duet-table.js +40 -11
- package/lib/collection/components/duet-textarea/duet-textarea.js +122 -66
- package/lib/collection/components/duet-toggle/duet-toggle.js +60 -36
- package/lib/collection/components/duet-toolbar/duet-toolbar.js +9 -4
- package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +24 -10
- package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +21 -7
- package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +45 -16
- package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +21 -7
- package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +6 -9
- package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +10 -11
- package/lib/collection/components/duet-tooltip/duet-tooltip.js +93 -44
- package/lib/collection/components/duet-tray/duet-tray.js +61 -19
- package/lib/collection/components/duet-upload/duet-upload.js +417 -211
- package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +34 -12
- package/lib/collection/components/duet-upload-item/duet-upload-item.js +15 -16
- package/lib/collection/index.js +1 -0
- package/lib/collection/utils/test-utils.js +2 -2
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/{p-7a41a208.entry.js → p-022a948c.entry.js} +1 -1
- package/lib/duet/p-09fe69e4.entry.js +4 -0
- package/lib/duet/p-0e72751a.entry.js +4 -0
- package/lib/duet/p-138538b8.entry.js +4 -0
- package/lib/duet/{p-fa070e35.entry.js → p-15f95fae.entry.js} +1 -1
- package/lib/duet/p-190b9ab3.entry.js +4 -0
- package/lib/duet/{p-feda74a6.entry.js → p-1af2ca54.entry.js} +1 -1
- package/lib/duet/p-1e769f0d.entry.js +4 -0
- package/lib/duet/p-1f5989b6.entry.js +4 -0
- package/lib/duet/{p-76b4b8b8.entry.js → p-1f8695a5.entry.js} +1 -1
- package/lib/duet/p-29e1d491.entry.js +4 -0
- package/lib/duet/p-2cbe593b.entry.js +4 -0
- package/lib/duet/p-32f7b711.entry.js +4 -0
- package/lib/duet/p-362f6fc2.entry.js +4 -0
- package/lib/duet/p-38b70269.entry.js +4 -0
- package/lib/duet/p-3fca2738.entry.js +4 -0
- package/lib/duet/p-44f37fb5.entry.js +4 -0
- package/lib/duet/{p-0e04987f.entry.js → p-48af1ecb.entry.js} +1 -1
- package/lib/duet/{p-2013ff49.entry.js → p-4aa49986.entry.js} +1 -1
- package/lib/duet/p-4c281745.entry.js +4 -0
- package/lib/duet/{p-c41397de.entry.js → p-4e945a94.entry.js} +1 -1
- package/lib/duet/p-56354b6a.entry.js +4 -0
- package/lib/duet/p-56cb675d.entry.js +4 -0
- package/lib/duet/p-5a75c2dd.entry.js +4 -0
- package/lib/duet/p-5d8d8118.entry.js +4 -0
- package/lib/duet/p-5f5bcada.entry.js +4 -0
- package/lib/duet/p-5iZMFvpJ.js +4 -0
- package/lib/duet/p-64021c0d.entry.js +4 -0
- package/lib/duet/p-64419d69.entry.js +4 -0
- package/lib/duet/p-6b17ff88.entry.js +4 -0
- package/lib/duet/p-6e621f1a.entry.js +4 -0
- package/lib/duet/p-740f6f1f.entry.js +4 -0
- package/lib/duet/{p-b76c9a8c.entry.js → p-7699005d.entry.js} +1 -1
- package/lib/duet/p-79255eb6.entry.js +4 -0
- package/lib/duet/p-7a319135.entry.js +4 -0
- package/lib/duet/p-82f7e5b7.entry.js +4 -0
- package/lib/duet/{p-323de867.entry.js → p-839e770e.entry.js} +1 -1
- package/lib/duet/p-85316d42.entry.js +4 -0
- package/lib/duet/p-885c2f54.entry.js +4 -0
- package/lib/duet/p-893e65fc.entry.js +4 -0
- package/lib/duet/p-8ca095ab.entry.js +4 -0
- package/lib/duet/p-8fd3fed6.entry.js +4 -0
- package/lib/duet/{p-279fd0c9.entry.js → p-93336ef6.entry.js} +1 -1
- package/lib/duet/p-95f64c62.entry.js +4 -0
- package/lib/duet/{p-46df9e4b.entry.js → p-96f19678.entry.js} +1 -1
- package/lib/duet/p-98088a03.entry.js +4 -0
- package/lib/duet/{p-12674919.entry.js → p-9a05eda1.entry.js} +1 -1
- package/lib/duet/p-9c942b69.entry.js +4 -0
- package/lib/duet/{p-38d6a55c.entry.js → p-9ee7773f.entry.js} +1 -1
- package/lib/duet/p-BGuG-JHD.js +5 -0
- package/lib/duet/p-BSVeUfs_.js +4 -0
- package/lib/duet/p-BVgBUIYF.js +4 -0
- package/lib/duet/{p-81287261.js → p-B_NkY9T0.js} +1 -1
- package/lib/duet/{p-465be57f.js → p-CKWzhSi1.js} +1 -1
- package/lib/duet/p-CwQkRqt4.js +4 -0
- package/lib/duet/p-DJ_0Rwfo.js +4 -0
- package/lib/duet/{p-744b8ee1.js → p-DQNSmB4A.js} +1 -1
- package/lib/duet/p-DWTFQwbu.js +4 -0
- package/lib/duet/{p-12b49f6f.js → p-DXDaS3zE.js} +1 -1
- package/lib/duet/{p-a45e3f8b.js → p-Db8rvjPI.js} +1 -1
- package/lib/duet/p-DkXykZBx.js +4 -0
- package/lib/duet/p-DvwKrUS6.js +4 -0
- package/lib/duet/p-ObNrEFDJ.js +4 -0
- package/lib/duet/p-UQH7pb1d.js +4 -0
- package/lib/duet/{p-05a9d58f.entry.js → p-a0c26d74.entry.js} +1 -1
- package/lib/duet/{p-25109796.entry.js → p-a4613009.entry.js} +1 -1
- package/lib/duet/p-a57b80f6.entry.js +4 -0
- package/lib/duet/{p-d4dd9fea.entry.js → p-a7dc80d5.entry.js} +1 -1
- package/lib/duet/{p-0febcf5b.entry.js → p-a893d1f9.entry.js} +1 -1
- package/lib/duet/p-a95a9a4d.entry.js +4 -0
- package/lib/duet/p-a9b45f8b.entry.js +4 -0
- package/lib/duet/{p-29e6f9b7.entry.js → p-aadd810c.entry.js} +1 -1
- package/lib/duet/p-ae4af39c.entry.js +4 -0
- package/lib/duet/p-ae5e487c.entry.js +4 -0
- package/lib/duet/p-b6517bc0.entry.js +4 -0
- package/lib/duet/p-b96af1da.entry.js +4 -0
- package/lib/duet/{p-0d045bb2.entry.js → p-be665fb2.entry.js} +1 -1
- package/lib/duet/{p-c2f40f22.entry.js → p-be70c5b0.entry.js} +1 -1
- package/lib/duet/p-bfc2e504.entry.js +4 -0
- package/lib/duet/p-c00040f7.entry.js +4 -0
- package/lib/duet/p-c03603ba.entry.js +4 -0
- package/lib/duet/{p-23435148.entry.js → p-c089e413.entry.js} +1 -1
- package/lib/duet/p-c3aa1f9b.entry.js +4 -0
- package/lib/duet/p-c489f228.entry.js +4 -0
- package/lib/duet/p-c4d0a7f2.entry.js +4 -0
- package/lib/duet/p-c5dbeb9d.entry.js +4 -0
- package/lib/duet/p-c6237212.entry.js +4 -0
- package/lib/duet/p-cf728e59.entry.js +4 -0
- package/lib/duet/{p-760e5874.entry.js → p-d155856d.entry.js} +1 -1
- package/lib/duet/p-d1f5b0cb.entry.js +4 -0
- package/lib/duet/p-d386eb3c.entry.js +4 -0
- package/lib/duet/p-d8ceab90.entry.js +4 -0
- package/lib/duet/{p-750d4767.entry.js → p-dac62f09.entry.js} +1 -1
- package/lib/duet/p-e4156276.entry.js +4 -0
- package/lib/duet/p-e6b06321.entry.js +4 -0
- package/lib/duet/p-e6d38c72.entry.js +4 -0
- package/lib/duet/{p-5fb4ac45.entry.js → p-ec552dc7.entry.js} +1 -1
- package/lib/duet/p-ff5188ab.entry.js +4 -0
- package/lib/duet/p-vVCYtBMj.js +4 -0
- package/lib/esm/_commonjsHelpers-DvwKrUS6.js +8 -0
- package/lib/{dist-custom-elements/p-afb6f7fb.js → esm/a11y-utils-Bdgp_pLF.js} +1 -1
- package/lib/esm/action-arrow-down-small-Bk3GShyI.js +19 -0
- package/lib/esm/action-new-window-small-EH8_HdAm.js +19 -0
- package/lib/esm/{app-globals-2c6c1103.js → app-globals-BM3P_KO9.js} +2 -2
- package/lib/esm/duet-action-button.entry.js +83 -26
- package/lib/esm/duet-alert.entry.js +72 -28
- package/lib/esm/duet-badge.entry.js +16 -4
- package/lib/esm/duet-banner.entry.js +49 -21
- package/lib/esm/duet-breadcrumb.entry.js +33 -11
- package/lib/esm/duet-breadcrumbs.entry.js +17 -9
- package/lib/esm/duet-button_2.entry.js +147 -52
- package/lib/esm/duet-callout.entry.js +10 -5
- package/lib/esm/duet-caption_4.entry.js +175 -32
- package/lib/esm/duet-card.entry.js +80 -28
- package/lib/esm/duet-checkbox.entry.js +65 -27
- package/lib/esm/duet-checkmark.entry.js +18 -4
- package/lib/esm/duet-chip.entry.js +49 -27
- package/lib/esm/duet-choice_2.entry.js +213 -73
- package/lib/esm/duet-collapsible.entry.js +67 -23
- package/lib/esm/duet-combobox.entry.js +79 -44
- package/lib/esm/duet-contact-card.entry.js +14 -13
- package/lib/esm/duet-cookie-consent.entry.js +12 -7
- package/lib/esm/duet-date-picker.entry.js +142 -50
- package/lib/esm/duet-divider_2.entry.js +26 -8
- package/lib/esm/duet-editable-table_3.entry.js +477 -196
- package/lib/esm/duet-empty-state.entry.js +12 -4
- package/lib/esm/duet-fieldset.entry.js +38 -17
- package/lib/esm/duet-file-chooser.entry.js +16 -7
- package/lib/esm/duet-footer.entry.js +52 -24
- package/lib/esm/duet-grid_2.entry.js +65 -10
- package/lib/esm/duet-header_2.entry.js +251 -84
- package/lib/esm/duet-hero.entry.js +110 -24
- package/lib/esm/duet-icon.entry.js +50 -9
- package/lib/esm/duet-input_2.entry.js +182 -68
- package/lib/esm/duet-layout.entry.js +27 -5
- package/lib/esm/duet-list_2.entry.js +44 -7
- package/lib/esm/duet-menu-bar-button.entry.js +21 -11
- package/lib/esm/duet-menu-bar-dropdown-link.entry.js +16 -9
- package/lib/esm/duet-menu-bar-dropdown.entry.js +16 -9
- package/lib/esm/duet-menu-bar-item.entry.js +37 -14
- package/lib/esm/duet-menu-bar-link.entry.js +15 -5
- package/lib/esm/duet-menu-bar.entry.js +32 -20
- package/lib/esm/duet-modal.entry.js +74 -16
- package/lib/esm/duet-multiselect.entry.js +85 -37
- package/lib/esm/duet-nav.entry.js +10 -4
- package/lib/esm/duet-notification_2.entry.js +83 -25
- package/lib/esm/duet-number-input.entry.js +176 -64
- package/lib/esm/duet-overlay.entry.js +33 -10
- package/lib/esm/duet-page-heading.entry.js +13 -6
- package/lib/esm/duet-pagination_2.entry.js +147 -70
- package/lib/esm/duet-phone-input.entry.js +76 -33
- package/lib/esm/duet-popup-menu_2.entry.js +105 -49
- package/lib/esm/duet-progress.entry.js +31 -10
- package/lib/esm/duet-promo-card.entry.js +24 -8
- package/lib/esm/duet-radio_2.entry.js +100 -45
- package/lib/esm/duet-range-slider.entry.js +70 -32
- package/lib/esm/duet-scrollable_3.entry.js +172 -57
- package/lib/esm/duet-section-layout.entry.js +13 -4
- package/lib/esm/duet-select.entry.js +79 -35
- package/lib/esm/duet-shaped-image.entry.js +13 -6
- package/lib/esm/duet-show-more.entry.js +77 -33
- package/lib/esm/duet-slideout-lang.entry.js +8 -6
- package/lib/esm/duet-slideout-link.entry.js +47 -12
- package/lib/esm/duet-slideout-panel-dropdown.entry.js +18 -7
- package/lib/esm/duet-slideout-panel.entry.js +40 -21
- package/lib/esm/duet-slideout.entry.js +37 -21
- package/lib/esm/duet-status-icon.entry.js +14 -2
- package/lib/esm/duet-step_2.entry.js +53 -17
- package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +22 -5
- package/lib/esm/duet-submenu-bar-dropdown.entry.js +22 -11
- package/lib/esm/duet-submenu-bar-item.entry.js +38 -15
- package/lib/esm/duet-submenu-bar-link.entry.js +16 -5
- package/lib/esm/duet-submenu-bar.entry.js +21 -13
- package/lib/esm/duet-textarea.entry.js +98 -43
- package/lib/esm/duet-toggle.entry.js +47 -24
- package/lib/esm/duet-toolbar-dropdown-link.entry.js +19 -6
- package/lib/esm/duet-toolbar-dropdown.entry.js +22 -9
- package/lib/esm/duet-toolbar-item.entry.js +43 -14
- package/lib/esm/duet-toolbar-link.entry.js +18 -5
- package/lib/esm/duet-toolbar.entry.js +9 -5
- package/lib/esm/duet-tooltip-button_2.entry.js +11 -18
- package/lib/esm/duet-tooltip.entry.js +90 -42
- package/lib/esm/duet-tray.entry.js +60 -19
- package/lib/esm/duet-upload-aria-status.entry.js +29 -8
- package/lib/esm/duet-upload-item.entry.js +10 -18
- package/lib/esm/duet-visually-hidden.entry.js +2 -3
- package/lib/esm/duet.js +7 -6
- package/lib/esm/{errorcodes.utils-86af68b7.js → errorcodes.utils-BgVG3eUP.js} +3 -3
- package/lib/esm/floating-ui.dom.browser.min-B_NkY9T0.js +702 -0
- package/lib/{dist-custom-elements/p-e30dc66d.js → esm/focus-utils-B1AOXMlP.js} +1 -1
- package/lib/esm/form-search-CevX33LA.js +19 -0
- package/lib/esm/{index-a830b2de.js → index-BGuG-JHD.js} +1843 -1365
- package/lib/{dist-custom-elements/p-8db11326.js → esm/keyboard-utils-Db8rvjPI.js} +1 -1
- package/lib/{dist-custom-elements/p-42619f94.js → esm/label-BrSxwvH-.js} +1 -1
- package/lib/esm/{language-utils-40caac4f.js → language-utils-BxXgd2r7.js} +2 -2
- package/lib/esm/loader.js +4 -4
- package/lib/{dist-custom-elements/p-ad615991.js → esm/slot-utils-B1zQ6tzO.js} +2 -2
- package/lib/{dist-custom-elements/p-0562173d.js → esm/token-utils-D2bU4zM_.js} +2 -2
- package/lib/esm/{tokens-84fb2357.js → tokens-DkXykZBx.js} +5 -5
- package/lib/{dist-custom-elements/p-cea716f7.js → esm/tokens.module-UQH7pb1d.js} +2 -2
- package/lib/index.js +1 -1
- package/lib/loader/cdn.js +1 -2
- package/lib/loader/index.cjs.js +1 -2
- package/lib/loader/index.es2017.js +0 -1
- package/lib/loader/index.js +1 -2
- package/lib/types/components.d.ts +1611 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/stencil-public-runtime.d.ts +35 -6
- package/package.json +23 -9
- package/lib/cjs/action-arrow-down-small-ef77a2d1.js +0 -8
- package/lib/cjs/action-new-window-small-fa51dfb9.js +0 -8
- package/lib/cjs/floating-ui.dom.esm-806e7c53.js +0 -1355
- package/lib/cjs/form-search-d61b2843.js +0 -8
- package/lib/dist-custom-elements/duet-action-button.d.ts +0 -11
- package/lib/dist-custom-elements/duet-action-button.js +0 -9
- package/lib/dist-custom-elements/duet-alert.d.ts +0 -11
- package/lib/dist-custom-elements/duet-alert.js +0 -9
- package/lib/dist-custom-elements/duet-badge.d.ts +0 -11
- package/lib/dist-custom-elements/duet-badge.js +0 -9
- package/lib/dist-custom-elements/duet-banner.d.ts +0 -11
- package/lib/dist-custom-elements/duet-banner.js +0 -157
- package/lib/dist-custom-elements/duet-breadcrumb.d.ts +0 -11
- package/lib/dist-custom-elements/duet-breadcrumb.js +0 -101
- package/lib/dist-custom-elements/duet-breadcrumbs.d.ts +0 -11
- package/lib/dist-custom-elements/duet-breadcrumbs.js +0 -88
- package/lib/dist-custom-elements/duet-button.d.ts +0 -11
- package/lib/dist-custom-elements/duet-button.js +0 -9
- package/lib/dist-custom-elements/duet-callout.d.ts +0 -11
- package/lib/dist-custom-elements/duet-callout.js +0 -72
- package/lib/dist-custom-elements/duet-caption.d.ts +0 -11
- package/lib/dist-custom-elements/duet-caption.js +0 -9
- package/lib/dist-custom-elements/duet-card.d.ts +0 -11
- package/lib/dist-custom-elements/duet-card.js +0 -174
- package/lib/dist-custom-elements/duet-checkbox.d.ts +0 -11
- package/lib/dist-custom-elements/duet-checkbox.js +0 -9
- package/lib/dist-custom-elements/duet-checkmark.d.ts +0 -11
- package/lib/dist-custom-elements/duet-checkmark.js +0 -9
- package/lib/dist-custom-elements/duet-chip.d.ts +0 -11
- package/lib/dist-custom-elements/duet-chip.js +0 -9
- package/lib/dist-custom-elements/duet-choice-group.d.ts +0 -11
- package/lib/dist-custom-elements/duet-choice-group.js +0 -228
- package/lib/dist-custom-elements/duet-choice.d.ts +0 -11
- package/lib/dist-custom-elements/duet-choice.js +0 -454
- package/lib/dist-custom-elements/duet-collapsible.d.ts +0 -11
- package/lib/dist-custom-elements/duet-collapsible.js +0 -176
- package/lib/dist-custom-elements/duet-combobox.d.ts +0 -11
- package/lib/dist-custom-elements/duet-combobox.js +0 -706
- package/lib/dist-custom-elements/duet-contact-card.d.ts +0 -11
- package/lib/dist-custom-elements/duet-contact-card.js +0 -134
- package/lib/dist-custom-elements/duet-cookie-consent.d.ts +0 -11
- package/lib/dist-custom-elements/duet-cookie-consent.js +0 -106
- package/lib/dist-custom-elements/duet-date-picker.d.ts +0 -11
- package/lib/dist-custom-elements/duet-date-picker.js +0 -939
- package/lib/dist-custom-elements/duet-divider.d.ts +0 -11
- package/lib/dist-custom-elements/duet-divider.js +0 -9
- package/lib/dist-custom-elements/duet-editable-table.d.ts +0 -11
- package/lib/dist-custom-elements/duet-editable-table.js +0 -258
- package/lib/dist-custom-elements/duet-empty-state.d.ts +0 -11
- package/lib/dist-custom-elements/duet-empty-state.js +0 -9
- package/lib/dist-custom-elements/duet-fieldset.d.ts +0 -11
- package/lib/dist-custom-elements/duet-fieldset.js +0 -9
- package/lib/dist-custom-elements/duet-file-chooser.d.ts +0 -11
- package/lib/dist-custom-elements/duet-file-chooser.js +0 -86
- package/lib/dist-custom-elements/duet-footer.d.ts +0 -11
- package/lib/dist-custom-elements/duet-footer.js +0 -223
- package/lib/dist-custom-elements/duet-grid-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-grid-item.js +0 -9
- package/lib/dist-custom-elements/duet-grid.d.ts +0 -11
- package/lib/dist-custom-elements/duet-grid.js +0 -9
- package/lib/dist-custom-elements/duet-header.d.ts +0 -11
- package/lib/dist-custom-elements/duet-header.js +0 -698
- package/lib/dist-custom-elements/duet-heading.d.ts +0 -11
- package/lib/dist-custom-elements/duet-heading.js +0 -9
- package/lib/dist-custom-elements/duet-hero.d.ts +0 -11
- package/lib/dist-custom-elements/duet-hero.js +0 -299
- package/lib/dist-custom-elements/duet-icon.d.ts +0 -11
- package/lib/dist-custom-elements/duet-icon.js +0 -9
- package/lib/dist-custom-elements/duet-input.d.ts +0 -11
- package/lib/dist-custom-elements/duet-input.js +0 -9
- package/lib/dist-custom-elements/duet-label.d.ts +0 -11
- package/lib/dist-custom-elements/duet-label.js +0 -70
- package/lib/dist-custom-elements/duet-layout.d.ts +0 -11
- package/lib/dist-custom-elements/duet-layout.js +0 -94
- package/lib/dist-custom-elements/duet-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-link.js +0 -9
- package/lib/dist-custom-elements/duet-list-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-list-item.js +0 -9
- package/lib/dist-custom-elements/duet-list.d.ts +0 -11
- package/lib/dist-custom-elements/duet-list.js +0 -9
- package/lib/dist-custom-elements/duet-logo.d.ts +0 -11
- package/lib/dist-custom-elements/duet-logo.js +0 -9
- package/lib/dist-custom-elements/duet-menu-bar-button.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar-button.js +0 -94
- package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +0 -87
- package/lib/dist-custom-elements/duet-menu-bar-dropdown.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +0 -108
- package/lib/dist-custom-elements/duet-menu-bar-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar-item.js +0 -108
- package/lib/dist-custom-elements/duet-menu-bar-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar-link.js +0 -70
- package/lib/dist-custom-elements/duet-menu-bar.d.ts +0 -11
- package/lib/dist-custom-elements/duet-menu-bar.js +0 -207
- package/lib/dist-custom-elements/duet-modal.d.ts +0 -11
- package/lib/dist-custom-elements/duet-modal.js +0 -382
- package/lib/dist-custom-elements/duet-multiselect.d.ts +0 -11
- package/lib/dist-custom-elements/duet-multiselect.js +0 -346
- package/lib/dist-custom-elements/duet-nav.d.ts +0 -11
- package/lib/dist-custom-elements/duet-nav.js +0 -54
- package/lib/dist-custom-elements/duet-notification-drawer.d.ts +0 -11
- package/lib/dist-custom-elements/duet-notification-drawer.js +0 -168
- package/lib/dist-custom-elements/duet-notification.d.ts +0 -11
- package/lib/dist-custom-elements/duet-notification.js +0 -95
- package/lib/dist-custom-elements/duet-number-input.d.ts +0 -11
- package/lib/dist-custom-elements/duet-number-input.js +0 -484
- package/lib/dist-custom-elements/duet-overlay.d.ts +0 -11
- package/lib/dist-custom-elements/duet-overlay.js +0 -9
- package/lib/dist-custom-elements/duet-page-heading.d.ts +0 -11
- package/lib/dist-custom-elements/duet-page-heading.js +0 -87
- package/lib/dist-custom-elements/duet-pagination.d.ts +0 -11
- package/lib/dist-custom-elements/duet-pagination.js +0 -493
- package/lib/dist-custom-elements/duet-paragraph.d.ts +0 -11
- package/lib/dist-custom-elements/duet-paragraph.js +0 -9
- package/lib/dist-custom-elements/duet-phone-input.d.ts +0 -11
- package/lib/dist-custom-elements/duet-phone-input.js +0 -2136
- package/lib/dist-custom-elements/duet-popup-menu-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-popup-menu-item.js +0 -9
- package/lib/dist-custom-elements/duet-popup-menu.d.ts +0 -11
- package/lib/dist-custom-elements/duet-popup-menu.js +0 -9
- package/lib/dist-custom-elements/duet-progress.d.ts +0 -11
- package/lib/dist-custom-elements/duet-progress.js +0 -9
- package/lib/dist-custom-elements/duet-promo-card.d.ts +0 -11
- package/lib/dist-custom-elements/duet-promo-card.js +0 -105
- package/lib/dist-custom-elements/duet-radio-group.d.ts +0 -11
- package/lib/dist-custom-elements/duet-radio-group.js +0 -213
- package/lib/dist-custom-elements/duet-radio.d.ts +0 -11
- package/lib/dist-custom-elements/duet-radio.js +0 -230
- package/lib/dist-custom-elements/duet-range-slider.d.ts +0 -11
- package/lib/dist-custom-elements/duet-range-slider.js +0 -181
- package/lib/dist-custom-elements/duet-range-stepper.d.ts +0 -11
- package/lib/dist-custom-elements/duet-range-stepper.js +0 -234
- package/lib/dist-custom-elements/duet-scrollable.d.ts +0 -11
- package/lib/dist-custom-elements/duet-scrollable.js +0 -9
- package/lib/dist-custom-elements/duet-section-layout.d.ts +0 -11
- package/lib/dist-custom-elements/duet-section-layout.js +0 -56
- package/lib/dist-custom-elements/duet-select.d.ts +0 -11
- package/lib/dist-custom-elements/duet-select.js +0 -9
- package/lib/dist-custom-elements/duet-shaped-image.d.ts +0 -11
- package/lib/dist-custom-elements/duet-shaped-image.js +0 -64
- package/lib/dist-custom-elements/duet-show-more.d.ts +0 -11
- package/lib/dist-custom-elements/duet-show-more.js +0 -9
- package/lib/dist-custom-elements/duet-slideout-lang.d.ts +0 -11
- package/lib/dist-custom-elements/duet-slideout-lang.js +0 -76
- package/lib/dist-custom-elements/duet-slideout-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-slideout-link.js +0 -98
- package/lib/dist-custom-elements/duet-slideout-panel-dropdown.d.ts +0 -11
- package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +0 -93
- package/lib/dist-custom-elements/duet-slideout-panel.d.ts +0 -11
- package/lib/dist-custom-elements/duet-slideout-panel.js +0 -224
- package/lib/dist-custom-elements/duet-slideout.d.ts +0 -11
- package/lib/dist-custom-elements/duet-slideout.js +0 -328
- package/lib/dist-custom-elements/duet-spacer.d.ts +0 -11
- package/lib/dist-custom-elements/duet-spacer.js +0 -9
- package/lib/dist-custom-elements/duet-spinner.d.ts +0 -11
- package/lib/dist-custom-elements/duet-spinner.js +0 -9
- package/lib/dist-custom-elements/duet-status-icon.d.ts +0 -11
- package/lib/dist-custom-elements/duet-status-icon.js +0 -9
- package/lib/dist-custom-elements/duet-step.d.ts +0 -11
- package/lib/dist-custom-elements/duet-step.js +0 -147
- package/lib/dist-custom-elements/duet-stepper.d.ts +0 -11
- package/lib/dist-custom-elements/duet-stepper.js +0 -151
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +0 -81
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown.d.ts +0 -11
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +0 -152
- package/lib/dist-custom-elements/duet-submenu-bar-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-submenu-bar-item.js +0 -113
- package/lib/dist-custom-elements/duet-submenu-bar-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-submenu-bar-link.js +0 -72
- package/lib/dist-custom-elements/duet-submenu-bar.d.ts +0 -11
- package/lib/dist-custom-elements/duet-submenu-bar.js +0 -192
- package/lib/dist-custom-elements/duet-tab-group.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tab-group.js +0 -321
- package/lib/dist-custom-elements/duet-tab.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tab.js +0 -150
- package/lib/dist-custom-elements/duet-table.d.ts +0 -11
- package/lib/dist-custom-elements/duet-table.js +0 -9
- package/lib/dist-custom-elements/duet-textarea.d.ts +0 -11
- package/lib/dist-custom-elements/duet-textarea.js +0 -301
- package/lib/dist-custom-elements/duet-toggle.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toggle.js +0 -146
- package/lib/dist-custom-elements/duet-toolbar-dropdown-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +0 -80
- package/lib/dist-custom-elements/duet-toolbar-dropdown.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toolbar-dropdown.js +0 -107
- package/lib/dist-custom-elements/duet-toolbar-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toolbar-item.js +0 -120
- package/lib/dist-custom-elements/duet-toolbar-link.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toolbar-link.js +0 -74
- package/lib/dist-custom-elements/duet-toolbar.d.ts +0 -11
- package/lib/dist-custom-elements/duet-toolbar.js +0 -67
- package/lib/dist-custom-elements/duet-tooltip-button.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tooltip-button.js +0 -9
- package/lib/dist-custom-elements/duet-tooltip-popup.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tooltip-popup.js +0 -9
- package/lib/dist-custom-elements/duet-tooltip.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tooltip.js +0 -9
- package/lib/dist-custom-elements/duet-tray.d.ts +0 -11
- package/lib/dist-custom-elements/duet-tray.js +0 -146
- package/lib/dist-custom-elements/duet-upload-aria-status.d.ts +0 -11
- package/lib/dist-custom-elements/duet-upload-aria-status.js +0 -9
- package/lib/dist-custom-elements/duet-upload-item.d.ts +0 -11
- package/lib/dist-custom-elements/duet-upload-item.js +0 -9
- package/lib/dist-custom-elements/duet-upload.d.ts +0 -11
- package/lib/dist-custom-elements/duet-upload.js +0 -1450
- package/lib/dist-custom-elements/duet-visually-hidden.d.ts +0 -11
- package/lib/dist-custom-elements/duet-visually-hidden.js +0 -9
- package/lib/dist-custom-elements/index.d.ts +0 -33
- package/lib/dist-custom-elements/index.js +0 -29
- package/lib/dist-custom-elements/p-0cd28b7b.js +0 -102
- package/lib/dist-custom-elements/p-0fb1efbc.js +0 -317
- package/lib/dist-custom-elements/p-115c79b6.js +0 -6
- package/lib/dist-custom-elements/p-15809286.js +0 -50
- package/lib/dist-custom-elements/p-18dee42a.js +0 -124
- package/lib/dist-custom-elements/p-1d115447.js +0 -268
- package/lib/dist-custom-elements/p-28c85b1c.js +0 -166
- package/lib/dist-custom-elements/p-35375593.js +0 -161
- package/lib/dist-custom-elements/p-3695c0cf.js +0 -614
- package/lib/dist-custom-elements/p-42c1fc90.js +0 -321
- package/lib/dist-custom-elements/p-44ae5535.js +0 -370
- package/lib/dist-custom-elements/p-49b8ef8e.js +0 -55
- package/lib/dist-custom-elements/p-4f6ac36d.js +0 -39
- package/lib/dist-custom-elements/p-605c5b0f.js +0 -61
- package/lib/dist-custom-elements/p-61a64a72.js +0 -110
- package/lib/dist-custom-elements/p-63200e87.js +0 -105
- package/lib/dist-custom-elements/p-65398a24.js +0 -63
- package/lib/dist-custom-elements/p-7b6a89e9.js +0 -237
- package/lib/dist-custom-elements/p-821de204.js +0 -1630
- package/lib/dist-custom-elements/p-83e0135b.js +0 -82
- package/lib/dist-custom-elements/p-861771fa.js +0 -73
- package/lib/dist-custom-elements/p-91688dd8.js +0 -84
- package/lib/dist-custom-elements/p-92d1b72f.js +0 -194
- package/lib/dist-custom-elements/p-959f2240.js +0 -645
- package/lib/dist-custom-elements/p-993aea39.js +0 -175
- package/lib/dist-custom-elements/p-999222a2.js +0 -154
- package/lib/dist-custom-elements/p-9a9b1ce5.js +0 -81
- package/lib/dist-custom-elements/p-9df4cfa4.js +0 -25
- package/lib/dist-custom-elements/p-a1b0454c.js +0 -56
- package/lib/dist-custom-elements/p-a39af5e2.js +0 -108
- package/lib/dist-custom-elements/p-a3d3c420.js +0 -60
- package/lib/dist-custom-elements/p-a95a6fb7.js +0 -453
- package/lib/dist-custom-elements/p-a9727b6a.js +0 -213
- package/lib/dist-custom-elements/p-b71858bd.js +0 -214
- package/lib/dist-custom-elements/p-c1e56f9a.js +0 -206
- package/lib/dist-custom-elements/p-cd328521.js +0 -80
- package/lib/dist-custom-elements/p-cde80d94.js +0 -198
- package/lib/dist-custom-elements/p-d004da5f.js +0 -6
- package/lib/dist-custom-elements/p-d5644004.js +0 -124
- package/lib/dist-custom-elements/p-ef48f2c7.js +0 -61
- package/lib/dist-custom-elements/p-f11208c3.js +0 -6
- package/lib/dist-custom-elements/p-f2c2f3d2.js +0 -2130
- package/lib/dist-custom-elements/p-f6000a03.js +0 -753
- package/lib/dist-custom-elements/p-f8ba399b.js +0 -63
- package/lib/dist-custom-elements/p-fb43ee87.js +0 -127
- package/lib/dist-custom-elements/p-fb723dff.js +0 -100
- package/lib/duet/duet.js +0 -127
- package/lib/duet/p-010dd6d5.entry.js +0 -4
- package/lib/duet/p-01ef338b.system.entry.js +0 -4
- package/lib/duet/p-020f583d.entry.js +0 -4
- package/lib/duet/p-03c96847.system.entry.js +0 -4
- package/lib/duet/p-04aad5a1.entry.js +0 -4
- package/lib/duet/p-0511fd26.system.js +0 -4
- package/lib/duet/p-05225696.system.entry.js +0 -4
- package/lib/duet/p-053b71e6.system.js +0 -4
- package/lib/duet/p-0562616e.system.entry.js +0 -4
- package/lib/duet/p-068cf3e6.system.entry.js +0 -4
- package/lib/duet/p-096ca5f2.system.entry.js +0 -4
- package/lib/duet/p-0a407ea6.entry.js +0 -4
- package/lib/duet/p-0c4bbd65.system.js +0 -4
- package/lib/duet/p-0c91e827.system.entry.js +0 -4
- package/lib/duet/p-0d738a25.entry.js +0 -4
- package/lib/duet/p-0d7da85a.js +0 -4
- package/lib/duet/p-0dc9089b.system.js +0 -4
- package/lib/duet/p-0f75edd4.system.entry.js +0 -4
- package/lib/duet/p-1047a738.system.entry.js +0 -4
- package/lib/duet/p-1054dba4.system.entry.js +0 -4
- package/lib/duet/p-10e56ab2.entry.js +0 -4
- package/lib/duet/p-115c79b6.js +0 -4
- package/lib/duet/p-145c3b24.entry.js +0 -4
- package/lib/duet/p-17004202.system.entry.js +0 -4
- package/lib/duet/p-18060b9c.system.entry.js +0 -4
- package/lib/duet/p-18e8baae.system.entry.js +0 -4
- package/lib/duet/p-19a0cdc0.system.entry.js +0 -4
- package/lib/duet/p-19c0e251.system.entry.js +0 -4
- package/lib/duet/p-1a1d3f9e.entry.js +0 -4
- package/lib/duet/p-1d6153e1.system.entry.js +0 -4
- package/lib/duet/p-201ec410.entry.js +0 -4
- package/lib/duet/p-205d2384.system.entry.js +0 -4
- package/lib/duet/p-21500424.entry.js +0 -4
- package/lib/duet/p-215bd94e.entry.js +0 -4
- package/lib/duet/p-217c18b8.entry.js +0 -4
- package/lib/duet/p-269e2b32.system.entry.js +0 -4
- package/lib/duet/p-2af64b95.system.entry.js +0 -4
- package/lib/duet/p-2ed426d9.system.entry.js +0 -4
- package/lib/duet/p-2f7a111a.entry.js +0 -4
- package/lib/duet/p-30e15c0b.system.entry.js +0 -4
- package/lib/duet/p-3214f981.system.entry.js +0 -4
- package/lib/duet/p-32f3a8fc.system.entry.js +0 -4
- package/lib/duet/p-361082c8.entry.js +0 -4
- package/lib/duet/p-372b9ced.system.entry.js +0 -4
- package/lib/duet/p-3767d0d2.system.entry.js +0 -4
- package/lib/duet/p-3c0d9ecf.system.entry.js +0 -4
- package/lib/duet/p-3dd22609.entry.js +0 -4
- package/lib/duet/p-3e2dceb1.entry.js +0 -4
- package/lib/duet/p-3f0f2506.system.entry.js +0 -4
- package/lib/duet/p-411babaf.entry.js +0 -4
- package/lib/duet/p-414698d0.system.entry.js +0 -4
- package/lib/duet/p-41982d26.system.js +0 -4
- package/lib/duet/p-44b36dbf.js +0 -5
- package/lib/duet/p-45700c8c.entry.js +0 -4
- package/lib/duet/p-46b1437a.system.entry.js +0 -4
- package/lib/duet/p-47dfb7d9.system.entry.js +0 -4
- package/lib/duet/p-49957220.system.js +0 -4
- package/lib/duet/p-4a3dae6f.js +0 -4
- package/lib/duet/p-4a836db3.entry.js +0 -4
- package/lib/duet/p-4aadd927.entry.js +0 -4
- package/lib/duet/p-4cff3036.system.js +0 -4
- package/lib/duet/p-4d81fd4b.system.entry.js +0 -4
- package/lib/duet/p-4e97bc75.entry.js +0 -4
- package/lib/duet/p-50b6d86c.system.entry.js +0 -4
- package/lib/duet/p-528fd238.entry.js +0 -4
- package/lib/duet/p-52d44078.entry.js +0 -4
- package/lib/duet/p-533f6503.system.entry.js +0 -4
- package/lib/duet/p-53ccc61f.entry.js +0 -4
- package/lib/duet/p-553e83f7.system.entry.js +0 -4
- package/lib/duet/p-5577da59.system.js +0 -4
- package/lib/duet/p-560c69af.system.entry.js +0 -4
- package/lib/duet/p-56ad7189.system.js +0 -4
- package/lib/duet/p-590a4048.system.entry.js +0 -4
- package/lib/duet/p-5a27a619.system.entry.js +0 -4
- package/lib/duet/p-5cf25ba2.entry.js +0 -4
- package/lib/duet/p-5e0654cc.system.js +0 -4
- package/lib/duet/p-5e3f9cd1.entry.js +0 -4
- package/lib/duet/p-5ed29c82.system.entry.js +0 -4
- package/lib/duet/p-6324b774.entry.js +0 -4
- package/lib/duet/p-63fef46e.system.entry.js +0 -4
- package/lib/duet/p-64a58c4a.entry.js +0 -4
- package/lib/duet/p-654b234a.system.entry.js +0 -4
- package/lib/duet/p-6970fc5d.entry.js +0 -4
- package/lib/duet/p-6ffbffc7.entry.js +0 -4
- package/lib/duet/p-707c7490.entry.js +0 -4
- package/lib/duet/p-72650200.system.entry.js +0 -4
- package/lib/duet/p-734350ef.system.js +0 -4
- package/lib/duet/p-737740f7.system.entry.js +0 -4
- package/lib/duet/p-739af934.entry.js +0 -4
- package/lib/duet/p-752fa0fc.system.js +0 -4
- package/lib/duet/p-7556653d.system.entry.js +0 -4
- package/lib/duet/p-76dc7014.system.entry.js +0 -4
- package/lib/duet/p-798f979f.system.js +0 -4
- package/lib/duet/p-7aa146c1.system.entry.js +0 -4
- package/lib/duet/p-7be1d938.entry.js +0 -4
- package/lib/duet/p-7c66ce9f.entry.js +0 -4
- package/lib/duet/p-7f6cbb90.entry.js +0 -4
- package/lib/duet/p-810d4680.entry.js +0 -4
- package/lib/duet/p-858b17a7.system.entry.js +0 -4
- package/lib/duet/p-85f6e856.system.entry.js +0 -4
- package/lib/duet/p-8c6f575c.system.entry.js +0 -4
- package/lib/duet/p-8dfc3a30.entry.js +0 -4
- package/lib/duet/p-8ea8b678.entry.js +0 -4
- package/lib/duet/p-8f477bd6.system.js +0 -4
- package/lib/duet/p-8faaaf5f.system.js +0 -4
- package/lib/duet/p-8fb2b5b5.entry.js +0 -4
- package/lib/duet/p-92757eb7.system.entry.js +0 -4
- package/lib/duet/p-928662aa.system.entry.js +0 -4
- package/lib/duet/p-96643444.system.entry.js +0 -4
- package/lib/duet/p-98535abd.entry.js +0 -4
- package/lib/duet/p-98636086.system.js +0 -4
- package/lib/duet/p-9a43132b.system.js +0 -4
- package/lib/duet/p-a20b744b.entry.js +0 -4
- package/lib/duet/p-a5eea99b.system.entry.js +0 -4
- package/lib/duet/p-a76b6eef.system.entry.js +0 -4
- package/lib/duet/p-a924233f.system.entry.js +0 -4
- package/lib/duet/p-a943a02a.entry.js +0 -4
- package/lib/duet/p-aa80ef8a.entry.js +0 -4
- package/lib/duet/p-aa885518.system.entry.js +0 -4
- package/lib/duet/p-abaf6d0e.entry.js +0 -4
- package/lib/duet/p-ad1c40f5.js +0 -4
- package/lib/duet/p-afad5fd3.system.js +0 -4
- package/lib/duet/p-afd43870.entry.js +0 -4
- package/lib/duet/p-b0e2884d.system.entry.js +0 -4
- package/lib/duet/p-b1f33063.system.js +0 -4
- package/lib/duet/p-b503bcdd.system.entry.js +0 -4
- package/lib/duet/p-b50ea79d.system.entry.js +0 -4
- package/lib/duet/p-b54723a9.system.entry.js +0 -4
- package/lib/duet/p-b7a34bd4.entry.js +0 -4
- package/lib/duet/p-b7f6339f.system.entry.js +0 -4
- package/lib/duet/p-b864159a.system.js +0 -4
- package/lib/duet/p-b8b21423.system.entry.js +0 -4
- package/lib/duet/p-b9e2b3ba.entry.js +0 -4
- package/lib/duet/p-ba03d034.system.js +0 -4
- package/lib/duet/p-c3a69e37.js +0 -4
- package/lib/duet/p-c5839bf5.entry.js +0 -4
- package/lib/duet/p-c7654999.entry.js +0 -4
- package/lib/duet/p-cbf629b3.system.entry.js +0 -4
- package/lib/duet/p-cc5e6288.system.js +0 -4
- package/lib/duet/p-cc67e773.js +0 -4
- package/lib/duet/p-cd0785ee.system.entry.js +0 -4
- package/lib/duet/p-cf6b88ae.entry.js +0 -4
- package/lib/duet/p-cff8b063.entry.js +0 -4
- package/lib/duet/p-d004da5f.js +0 -4
- package/lib/duet/p-d07eec56.system.entry.js +0 -4
- package/lib/duet/p-d35ab8b7.system.entry.js +0 -4
- package/lib/duet/p-d50d03f7.system.entry.js +0 -4
- package/lib/duet/p-d53d7fd5.entry.js +0 -4
- package/lib/duet/p-d55299c9.entry.js +0 -4
- package/lib/duet/p-d61d7080.entry.js +0 -4
- package/lib/duet/p-d6ed2033.system.entry.js +0 -4
- package/lib/duet/p-d90e530c.system.entry.js +0 -4
- package/lib/duet/p-db2ccb9d.system.js +0 -4
- package/lib/duet/p-e07ee017.system.entry.js +0 -4
- package/lib/duet/p-e12066c8.system.js +0 -4
- package/lib/duet/p-e17c5d6a.entry.js +0 -4
- package/lib/duet/p-e1c09dd8.system.entry.js +0 -4
- package/lib/duet/p-e216bea4.system.js +0 -4
- package/lib/duet/p-e4af314b.system.entry.js +0 -4
- package/lib/duet/p-e4c8559c.system.js +0 -4
- package/lib/duet/p-e5aecda6.system.entry.js +0 -4
- package/lib/duet/p-e6b5a1c7.system.js +0 -4
- package/lib/duet/p-e9cbe789.system.entry.js +0 -4
- package/lib/duet/p-ea787ed0.entry.js +0 -4
- package/lib/duet/p-eb463133.system.entry.js +0 -4
- package/lib/duet/p-eb83b46d.system.entry.js +0 -4
- package/lib/duet/p-ec581904.entry.js +0 -4
- package/lib/duet/p-ed3748dc.js +0 -4
- package/lib/duet/p-eecd1b93.system.entry.js +0 -4
- package/lib/duet/p-f0ee9aae.system.entry.js +0 -4
- package/lib/duet/p-f0fc3170.system.entry.js +0 -4
- package/lib/duet/p-f11208c3.js +0 -4
- package/lib/duet/p-f11e0e46.system.entry.js +0 -4
- package/lib/duet/p-f1273093.system.entry.js +0 -4
- package/lib/duet/p-f218ec0e.system.entry.js +0 -4
- package/lib/duet/p-f2d5c69e.system.js +0 -5
- package/lib/duet/p-f5f6aed8.system.js +0 -4
- package/lib/duet/p-f6000a03.js +0 -4
- package/lib/duet/p-f732fde1.entry.js +0 -4
- package/lib/duet/p-fe8cfa01.system.entry.js +0 -4
- package/lib/esm/a11y-utils-42080d56.js +0 -23
- package/lib/esm/action-arrow-down-small-82273dc8.js +0 -6
- package/lib/esm/action-new-window-small-1945be91.js +0 -6
- package/lib/esm/body-scroll-46854769.js +0 -234
- package/lib/esm/bodyScrollLock.es6-ecbf187e.js +0 -184
- package/lib/esm/create-id-149a1b6d.js +0 -11
- package/lib/esm/floating-ui.dom.esm-ebc91b33.js +0 -1348
- package/lib/esm/focus-utils-9bbe977f.js +0 -18
- package/lib/esm/form-search-ea8e19ae.js +0 -6
- package/lib/esm/input-utils-85681162.js +0 -53
- package/lib/esm/is-internet-explorer-2c48f686.js +0 -9
- package/lib/esm/js-utils-9b9e0039.js +0 -47
- package/lib/esm/keyboard-utils-daf80d44.js +0 -58
- package/lib/esm/label-52e2e3f9.js +0 -20
- package/lib/esm/polyfills/core-js.js +0 -11
- package/lib/esm/polyfills/dom.js +0 -79
- package/lib/esm/polyfills/es5-html-element.js +0 -1
- package/lib/esm/polyfills/index.js +0 -34
- package/lib/esm/polyfills/system.js +0 -6
- package/lib/esm/slot-utils-4096ff0d.js +0 -115
- package/lib/esm/string-utils-192eb3c8.js +0 -61
- package/lib/esm/teleport-aa27d5f9.js +0 -116
- package/lib/esm/themeable-component-860041c5.js +0 -13
- package/lib/esm/token-utils-b9ba8c5e.js +0 -138
- package/lib/esm/tokens.module-2d02f5ff.js +0 -503
- package/lib/esm/watch-options-e96ecd92.js +0 -57
- package/lib/esm-es5/a11y-utils-42080d56.js +0 -4
- package/lib/esm-es5/action-arrow-down-small-82273dc8.js +0 -4
- package/lib/esm-es5/action-new-window-small-1945be91.js +0 -4
- package/lib/esm-es5/app-globals-2c6c1103.js +0 -4
- package/lib/esm-es5/body-scroll-46854769.js +0 -4
- package/lib/esm-es5/bodyScrollLock.es6-ecbf187e.js +0 -4
- package/lib/esm-es5/common-strings-af765cad.js +0 -4
- package/lib/esm-es5/create-id-149a1b6d.js +0 -4
- package/lib/esm-es5/duet-action-button.entry.js +0 -4
- package/lib/esm-es5/duet-alert.entry.js +0 -4
- package/lib/esm-es5/duet-badge.entry.js +0 -4
- package/lib/esm-es5/duet-banner.entry.js +0 -4
- package/lib/esm-es5/duet-breadcrumb.entry.js +0 -4
- package/lib/esm-es5/duet-breadcrumbs.entry.js +0 -4
- package/lib/esm-es5/duet-button_2.entry.js +0 -4
- package/lib/esm-es5/duet-callout.entry.js +0 -4
- package/lib/esm-es5/duet-caption_4.entry.js +0 -4
- package/lib/esm-es5/duet-card.entry.js +0 -4
- package/lib/esm-es5/duet-checkbox.entry.js +0 -4
- package/lib/esm-es5/duet-checkmark.entry.js +0 -4
- package/lib/esm-es5/duet-chip.entry.js +0 -4
- package/lib/esm-es5/duet-choice_2.entry.js +0 -4
- package/lib/esm-es5/duet-collapsible.entry.js +0 -4
- package/lib/esm-es5/duet-combobox.entry.js +0 -4
- package/lib/esm-es5/duet-contact-card.entry.js +0 -4
- package/lib/esm-es5/duet-cookie-consent.entry.js +0 -4
- package/lib/esm-es5/duet-date-picker.entry.js +0 -4
- package/lib/esm-es5/duet-divider_2.entry.js +0 -4
- package/lib/esm-es5/duet-editable-table_3.entry.js +0 -4
- package/lib/esm-es5/duet-empty-state.entry.js +0 -4
- package/lib/esm-es5/duet-fieldset.entry.js +0 -4
- package/lib/esm-es5/duet-file-chooser.entry.js +0 -4
- package/lib/esm-es5/duet-footer.entry.js +0 -4
- package/lib/esm-es5/duet-grid_2.entry.js +0 -4
- package/lib/esm-es5/duet-header_2.entry.js +0 -4
- package/lib/esm-es5/duet-hero.entry.js +0 -4
- package/lib/esm-es5/duet-icon.entry.js +0 -4
- package/lib/esm-es5/duet-input_2.entry.js +0 -4
- package/lib/esm-es5/duet-layout.entry.js +0 -4
- package/lib/esm-es5/duet-list_2.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar-button.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar-item.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar-link.entry.js +0 -4
- package/lib/esm-es5/duet-menu-bar.entry.js +0 -4
- package/lib/esm-es5/duet-modal.entry.js +0 -4
- package/lib/esm-es5/duet-multiselect.entry.js +0 -4
- package/lib/esm-es5/duet-nav.entry.js +0 -4
- package/lib/esm-es5/duet-notification_2.entry.js +0 -4
- package/lib/esm-es5/duet-number-input.entry.js +0 -4
- package/lib/esm-es5/duet-overlay.entry.js +0 -4
- package/lib/esm-es5/duet-page-heading.entry.js +0 -4
- package/lib/esm-es5/duet-pagination_2.entry.js +0 -4
- package/lib/esm-es5/duet-phone-input.entry.js +0 -4
- package/lib/esm-es5/duet-popup-menu_2.entry.js +0 -4
- package/lib/esm-es5/duet-progress.entry.js +0 -4
- package/lib/esm-es5/duet-promo-card.entry.js +0 -4
- package/lib/esm-es5/duet-radio_2.entry.js +0 -4
- package/lib/esm-es5/duet-range-slider.entry.js +0 -4
- package/lib/esm-es5/duet-scrollable_3.entry.js +0 -4
- package/lib/esm-es5/duet-section-layout.entry.js +0 -4
- package/lib/esm-es5/duet-select.entry.js +0 -4
- package/lib/esm-es5/duet-shaped-image.entry.js +0 -4
- package/lib/esm-es5/duet-show-more.entry.js +0 -4
- package/lib/esm-es5/duet-slideout-lang.entry.js +0 -4
- package/lib/esm-es5/duet-slideout-link.entry.js +0 -4
- package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +0 -4
- package/lib/esm-es5/duet-slideout-panel.entry.js +0 -4
- package/lib/esm-es5/duet-slideout.entry.js +0 -4
- package/lib/esm-es5/duet-status-icon.entry.js +0 -4
- package/lib/esm-es5/duet-step_2.entry.js +0 -4
- package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +0 -4
- package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +0 -4
- package/lib/esm-es5/duet-submenu-bar-item.entry.js +0 -4
- package/lib/esm-es5/duet-submenu-bar-link.entry.js +0 -4
- package/lib/esm-es5/duet-submenu-bar.entry.js +0 -4
- package/lib/esm-es5/duet-textarea.entry.js +0 -4
- package/lib/esm-es5/duet-toggle.entry.js +0 -4
- package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +0 -4
- package/lib/esm-es5/duet-toolbar-dropdown.entry.js +0 -4
- package/lib/esm-es5/duet-toolbar-item.entry.js +0 -4
- package/lib/esm-es5/duet-toolbar-link.entry.js +0 -4
- package/lib/esm-es5/duet-toolbar.entry.js +0 -4
- package/lib/esm-es5/duet-tooltip-button_2.entry.js +0 -4
- package/lib/esm-es5/duet-tooltip.entry.js +0 -4
- package/lib/esm-es5/duet-tray.entry.js +0 -4
- package/lib/esm-es5/duet-upload-aria-status.entry.js +0 -4
- package/lib/esm-es5/duet-upload-item.entry.js +0 -4
- package/lib/esm-es5/duet-visually-hidden.entry.js +0 -4
- package/lib/esm-es5/duet.js +0 -4
- package/lib/esm-es5/errorcodes.utils-86af68b7.js +0 -4
- package/lib/esm-es5/floating-ui.dom.esm-ebc91b33.js +0 -4
- package/lib/esm-es5/focus-utils-9bbe977f.js +0 -4
- package/lib/esm-es5/form-search-ea8e19ae.js +0 -4
- package/lib/esm-es5/index-a830b2de.js +0 -4
- package/lib/esm-es5/index.js +0 -3
- package/lib/esm-es5/input-utils-85681162.js +0 -4
- package/lib/esm-es5/is-internet-explorer-2c48f686.js +0 -4
- package/lib/esm-es5/js-utils-9b9e0039.js +0 -4
- package/lib/esm-es5/keyboard-utils-daf80d44.js +0 -4
- package/lib/esm-es5/label-52e2e3f9.js +0 -4
- package/lib/esm-es5/language-utils-40caac4f.js +0 -4
- package/lib/esm-es5/loader.js +0 -4
- package/lib/esm-es5/slot-utils-4096ff0d.js +0 -4
- package/lib/esm-es5/string-utils-192eb3c8.js +0 -4
- package/lib/esm-es5/teleport-aa27d5f9.js +0 -4
- package/lib/esm-es5/themeable-component-860041c5.js +0 -4
- package/lib/esm-es5/token-utils-b9ba8c5e.js +0 -4
- package/lib/esm-es5/tokens-84fb2357.js +0 -4
- package/lib/esm-es5/tokens.module-2d02f5ff.js +0 -4
- package/lib/esm-es5/watch-options-e96ecd92.js +0 -4
- package/lib/loader/package.json +0 -11
- /package/lib/cjs/{body-scroll-dba42314.js → body-scroll-FWPe3_T_.js} +0 -0
- /package/lib/cjs/{bodyScrollLock.es6-dd2d7d91.js → bodyScrollLock.es6-B2sCDud5.js} +0 -0
- /package/lib/cjs/{common-strings-2984301e.js → common-strings-BhhnIQp3.js} +0 -0
- /package/lib/cjs/{create-id-1f8c438f.js → create-id-DtslnIOq.js} +0 -0
- /package/lib/cjs/{input-utils-1096a2c5.js → input-utils-DUKdslOM.js} +0 -0
- /package/lib/cjs/{is-internet-explorer-e7f58ebc.js → is-internet-explorer-BTLb_loH.js} +0 -0
- /package/lib/cjs/{js-utils-92e24ba1.js → js-utils-hJ4A2edy.js} +0 -0
- /package/lib/cjs/{keyboard-utils-f7c9f980.js → keyboard-utils-D9UlHbik.js} +0 -0
- /package/lib/cjs/{string-utils-7b13c16e.js → string-utils-B35hEUBv.js} +0 -0
- /package/lib/cjs/{teleport-c0eede18.js → teleport-BIcrl_KV.js} +0 -0
- /package/lib/cjs/{themeable-component-996b489c.js → themeable-component-C57DSx5w.js} +0 -0
- /package/lib/cjs/{watch-options-30a12622.js → watch-options-CTB_6VOA.js} +0 -0
- /package/lib/duet/{p-8354d1f1.js → p-B1B-PPrh.js} +0 -0
- /package/lib/duet/{p-7d8a2628.js → p-BgyaCAyh.js} +0 -0
- /package/lib/duet/{p-9e371678.js → p-BlUsLmbQ.js} +0 -0
- /package/lib/duet/{p-fc09c464.js → p-C6CAT054.js} +0 -0
- /package/lib/duet/{p-9c3c64b9.js → p-C6E9F6QT.js} +0 -0
- /package/lib/duet/{p-df7874f9.js → p-CLDy7YaM.js} +0 -0
- /package/lib/duet/{p-5e59e970.js → p-Cfr_DJqU.js} +0 -0
- /package/lib/duet/{p-beeb12f1.js → p-D6YBFNe9.js} +0 -0
- /package/lib/duet/{p-8cb0e6bd.js → p-DWuCOI7R.js} +0 -0
- /package/lib/duet/{p-43b89e38.js → p-DxESMgwA.js} +0 -0
- /package/lib/duet/{p-aaa7a7bd.js → p-WhCDf9tt.js} +0 -0
- /package/lib/{dist-custom-elements/p-fc09c464.js → esm/body-scroll-C6CAT054.js} +0 -0
- /package/lib/{dist-custom-elements/p-8354d1f1.js → esm/bodyScrollLock.es6-B1B-PPrh.js} +0 -0
- /package/lib/esm/{common-strings-af765cad.js → common-strings-D6YBFNe9.js} +0 -0
- /package/lib/{dist-custom-elements/p-5e59e970.js → esm/create-id-Cfr_DJqU.js} +0 -0
- /package/lib/{dist-custom-elements/p-df7874f9.js → esm/input-utils-CLDy7YaM.js} +0 -0
- /package/lib/{dist-custom-elements/p-43b89e38.js → esm/is-internet-explorer-DxESMgwA.js} +0 -0
- /package/lib/{dist-custom-elements/p-9e371678.js → esm/js-utils-BlUsLmbQ.js} +0 -0
- /package/lib/{dist-custom-elements/p-9c3c64b9.js → esm/string-utils-C6E9F6QT.js} +0 -0
- /package/lib/{dist-custom-elements/p-8cb0e6bd.js → esm/teleport-DWuCOI7R.js} +0 -0
- /package/lib/{dist-custom-elements/p-aaa7a7bd.js → esm/themeable-component-WhCDf9tt.js} +0 -0
- /package/lib/{dist-custom-elements/p-7d8a2628.js → esm/watch-options-BgyaCAyh.js} +0 -0
|
@@ -1,1630 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Duet Design System
|
|
3
|
-
*/
|
|
4
|
-
import { p as proxyCustomElement, H, h, d as Host } from './p-f2c2f3d2.js';
|
|
5
|
-
import { m as media_query_medium, a as media_query_large } from './p-f6000a03.js';
|
|
6
|
-
import { i as inheritGlobalTheme } from './p-aaa7a7bd.js';
|
|
7
|
-
import { c as createID } from './p-5e59e970.js';
|
|
8
|
-
import { b as isEscapeKey } from './p-8db11326.js';
|
|
9
|
-
import { a as getLanguage, g as getLocaleString, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver } from './p-35375593.js';
|
|
10
|
-
import { a as cloneDefaultSlotContent } from './p-ad615991.js';
|
|
11
|
-
import { d as defineCustomElement$4 } from './p-7b6a89e9.js';
|
|
12
|
-
import { d as defineCustomElement$3 } from './p-91688dd8.js';
|
|
13
|
-
import { d as defineCustomElement$2 } from './p-0cd28b7b.js';
|
|
14
|
-
import { d as defineCustomElement$1 } from './p-4f6ac36d.js';
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Custom positioning reference element.
|
|
18
|
-
* @see https://floating-ui.com/docs/virtual-elements
|
|
19
|
-
*/
|
|
20
|
-
const min$1 = Math.min;
|
|
21
|
-
const max$1 = Math.max;
|
|
22
|
-
const oppositeSideMap = {
|
|
23
|
-
left: 'right',
|
|
24
|
-
right: 'left',
|
|
25
|
-
bottom: 'top',
|
|
26
|
-
top: 'bottom'
|
|
27
|
-
};
|
|
28
|
-
const oppositeAlignmentMap = {
|
|
29
|
-
start: 'end',
|
|
30
|
-
end: 'start'
|
|
31
|
-
};
|
|
32
|
-
function clamp(start, value, end) {
|
|
33
|
-
return max$1(start, min$1(value, end));
|
|
34
|
-
}
|
|
35
|
-
function evaluate(value, param) {
|
|
36
|
-
return typeof value === 'function' ? value(param) : value;
|
|
37
|
-
}
|
|
38
|
-
function getSide(placement) {
|
|
39
|
-
return placement.split('-')[0];
|
|
40
|
-
}
|
|
41
|
-
function getAlignment(placement) {
|
|
42
|
-
return placement.split('-')[1];
|
|
43
|
-
}
|
|
44
|
-
function getOppositeAxis(axis) {
|
|
45
|
-
return axis === 'x' ? 'y' : 'x';
|
|
46
|
-
}
|
|
47
|
-
function getAxisLength(axis) {
|
|
48
|
-
return axis === 'y' ? 'height' : 'width';
|
|
49
|
-
}
|
|
50
|
-
function getSideAxis(placement) {
|
|
51
|
-
return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
|
|
52
|
-
}
|
|
53
|
-
function getAlignmentAxis(placement) {
|
|
54
|
-
return getOppositeAxis(getSideAxis(placement));
|
|
55
|
-
}
|
|
56
|
-
function getAlignmentSides(placement, rects, rtl) {
|
|
57
|
-
if (rtl === void 0) {
|
|
58
|
-
rtl = false;
|
|
59
|
-
}
|
|
60
|
-
const alignment = getAlignment(placement);
|
|
61
|
-
const alignmentAxis = getAlignmentAxis(placement);
|
|
62
|
-
const length = getAxisLength(alignmentAxis);
|
|
63
|
-
let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
|
|
64
|
-
if (rects.reference[length] > rects.floating[length]) {
|
|
65
|
-
mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
|
|
66
|
-
}
|
|
67
|
-
return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
|
|
68
|
-
}
|
|
69
|
-
function getExpandedPlacements(placement) {
|
|
70
|
-
const oppositePlacement = getOppositePlacement(placement);
|
|
71
|
-
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
|
72
|
-
}
|
|
73
|
-
function getOppositeAlignmentPlacement(placement) {
|
|
74
|
-
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
|
75
|
-
}
|
|
76
|
-
function getSideList(side, isStart, rtl) {
|
|
77
|
-
const lr = ['left', 'right'];
|
|
78
|
-
const rl = ['right', 'left'];
|
|
79
|
-
const tb = ['top', 'bottom'];
|
|
80
|
-
const bt = ['bottom', 'top'];
|
|
81
|
-
switch (side) {
|
|
82
|
-
case 'top':
|
|
83
|
-
case 'bottom':
|
|
84
|
-
if (rtl) return isStart ? rl : lr;
|
|
85
|
-
return isStart ? lr : rl;
|
|
86
|
-
case 'left':
|
|
87
|
-
case 'right':
|
|
88
|
-
return isStart ? tb : bt;
|
|
89
|
-
default:
|
|
90
|
-
return [];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
|
94
|
-
const alignment = getAlignment(placement);
|
|
95
|
-
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
|
96
|
-
if (alignment) {
|
|
97
|
-
list = list.map(side => side + "-" + alignment);
|
|
98
|
-
if (flipAlignment) {
|
|
99
|
-
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return list;
|
|
103
|
-
}
|
|
104
|
-
function getOppositePlacement(placement) {
|
|
105
|
-
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
|
106
|
-
}
|
|
107
|
-
function expandPaddingObject(padding) {
|
|
108
|
-
return {
|
|
109
|
-
top: 0,
|
|
110
|
-
right: 0,
|
|
111
|
-
bottom: 0,
|
|
112
|
-
left: 0,
|
|
113
|
-
...padding
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
function getPaddingObject(padding) {
|
|
117
|
-
return typeof padding !== 'number' ? expandPaddingObject(padding) : {
|
|
118
|
-
top: padding,
|
|
119
|
-
right: padding,
|
|
120
|
-
bottom: padding,
|
|
121
|
-
left: padding
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
function rectToClientRect(rect) {
|
|
125
|
-
const {
|
|
126
|
-
x,
|
|
127
|
-
y,
|
|
128
|
-
width,
|
|
129
|
-
height
|
|
130
|
-
} = rect;
|
|
131
|
-
return {
|
|
132
|
-
width,
|
|
133
|
-
height,
|
|
134
|
-
top: y,
|
|
135
|
-
left: x,
|
|
136
|
-
right: x + width,
|
|
137
|
-
bottom: y + height,
|
|
138
|
-
x,
|
|
139
|
-
y
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
144
|
-
let {
|
|
145
|
-
reference,
|
|
146
|
-
floating
|
|
147
|
-
} = _ref;
|
|
148
|
-
const sideAxis = getSideAxis(placement);
|
|
149
|
-
const alignmentAxis = getAlignmentAxis(placement);
|
|
150
|
-
const alignLength = getAxisLength(alignmentAxis);
|
|
151
|
-
const side = getSide(placement);
|
|
152
|
-
const isVertical = sideAxis === 'y';
|
|
153
|
-
const commonX = reference.x + reference.width / 2 - floating.width / 2;
|
|
154
|
-
const commonY = reference.y + reference.height / 2 - floating.height / 2;
|
|
155
|
-
const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
|
|
156
|
-
let coords;
|
|
157
|
-
switch (side) {
|
|
158
|
-
case 'top':
|
|
159
|
-
coords = {
|
|
160
|
-
x: commonX,
|
|
161
|
-
y: reference.y - floating.height
|
|
162
|
-
};
|
|
163
|
-
break;
|
|
164
|
-
case 'bottom':
|
|
165
|
-
coords = {
|
|
166
|
-
x: commonX,
|
|
167
|
-
y: reference.y + reference.height
|
|
168
|
-
};
|
|
169
|
-
break;
|
|
170
|
-
case 'right':
|
|
171
|
-
coords = {
|
|
172
|
-
x: reference.x + reference.width,
|
|
173
|
-
y: commonY
|
|
174
|
-
};
|
|
175
|
-
break;
|
|
176
|
-
case 'left':
|
|
177
|
-
coords = {
|
|
178
|
-
x: reference.x - floating.width,
|
|
179
|
-
y: commonY
|
|
180
|
-
};
|
|
181
|
-
break;
|
|
182
|
-
default:
|
|
183
|
-
coords = {
|
|
184
|
-
x: reference.x,
|
|
185
|
-
y: reference.y
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
switch (getAlignment(placement)) {
|
|
189
|
-
case 'start':
|
|
190
|
-
coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
|
|
191
|
-
break;
|
|
192
|
-
case 'end':
|
|
193
|
-
coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
|
|
194
|
-
break;
|
|
195
|
-
}
|
|
196
|
-
return coords;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* Computes the `x` and `y` coordinates that will place the floating element
|
|
201
|
-
* next to a given reference element.
|
|
202
|
-
*
|
|
203
|
-
* This export does not have any `platform` interface logic. You will need to
|
|
204
|
-
* write one for the platform you are using Floating UI with.
|
|
205
|
-
*/
|
|
206
|
-
const computePosition$1 = async (reference, floating, config) => {
|
|
207
|
-
const {
|
|
208
|
-
placement = 'bottom',
|
|
209
|
-
strategy = 'absolute',
|
|
210
|
-
middleware = [],
|
|
211
|
-
platform
|
|
212
|
-
} = config;
|
|
213
|
-
const validMiddleware = middleware.filter(Boolean);
|
|
214
|
-
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));
|
|
215
|
-
let rects = await platform.getElementRects({
|
|
216
|
-
reference,
|
|
217
|
-
floating,
|
|
218
|
-
strategy
|
|
219
|
-
});
|
|
220
|
-
let {
|
|
221
|
-
x,
|
|
222
|
-
y
|
|
223
|
-
} = computeCoordsFromPlacement(rects, placement, rtl);
|
|
224
|
-
let statefulPlacement = placement;
|
|
225
|
-
let middlewareData = {};
|
|
226
|
-
let resetCount = 0;
|
|
227
|
-
for (let i = 0; i < validMiddleware.length; i++) {
|
|
228
|
-
const {
|
|
229
|
-
name,
|
|
230
|
-
fn
|
|
231
|
-
} = validMiddleware[i];
|
|
232
|
-
const {
|
|
233
|
-
x: nextX,
|
|
234
|
-
y: nextY,
|
|
235
|
-
data,
|
|
236
|
-
reset
|
|
237
|
-
} = await fn({
|
|
238
|
-
x,
|
|
239
|
-
y,
|
|
240
|
-
initialPlacement: placement,
|
|
241
|
-
placement: statefulPlacement,
|
|
242
|
-
strategy,
|
|
243
|
-
middlewareData,
|
|
244
|
-
rects,
|
|
245
|
-
platform,
|
|
246
|
-
elements: {
|
|
247
|
-
reference,
|
|
248
|
-
floating
|
|
249
|
-
}
|
|
250
|
-
});
|
|
251
|
-
x = nextX != null ? nextX : x;
|
|
252
|
-
y = nextY != null ? nextY : y;
|
|
253
|
-
middlewareData = {
|
|
254
|
-
...middlewareData,
|
|
255
|
-
[name]: {
|
|
256
|
-
...middlewareData[name],
|
|
257
|
-
...data
|
|
258
|
-
}
|
|
259
|
-
};
|
|
260
|
-
if (reset && resetCount <= 50) {
|
|
261
|
-
resetCount++;
|
|
262
|
-
if (typeof reset === 'object') {
|
|
263
|
-
if (reset.placement) {
|
|
264
|
-
statefulPlacement = reset.placement;
|
|
265
|
-
}
|
|
266
|
-
if (reset.rects) {
|
|
267
|
-
rects = reset.rects === true ? await platform.getElementRects({
|
|
268
|
-
reference,
|
|
269
|
-
floating,
|
|
270
|
-
strategy
|
|
271
|
-
}) : reset.rects;
|
|
272
|
-
}
|
|
273
|
-
({
|
|
274
|
-
x,
|
|
275
|
-
y
|
|
276
|
-
} = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
|
|
277
|
-
}
|
|
278
|
-
i = -1;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
return {
|
|
282
|
-
x,
|
|
283
|
-
y,
|
|
284
|
-
placement: statefulPlacement,
|
|
285
|
-
strategy,
|
|
286
|
-
middlewareData
|
|
287
|
-
};
|
|
288
|
-
};
|
|
289
|
-
|
|
290
|
-
/**
|
|
291
|
-
* Resolves with an object of overflow side offsets that determine how much the
|
|
292
|
-
* element is overflowing a given clipping boundary on each side.
|
|
293
|
-
* - positive = overflowing the boundary by that number of pixels
|
|
294
|
-
* - negative = how many pixels left before it will overflow
|
|
295
|
-
* - 0 = lies flush with the boundary
|
|
296
|
-
* @see https://floating-ui.com/docs/detectOverflow
|
|
297
|
-
*/
|
|
298
|
-
async function detectOverflow(state, options) {
|
|
299
|
-
var _await$platform$isEle;
|
|
300
|
-
if (options === void 0) {
|
|
301
|
-
options = {};
|
|
302
|
-
}
|
|
303
|
-
const {
|
|
304
|
-
x,
|
|
305
|
-
y,
|
|
306
|
-
platform,
|
|
307
|
-
rects,
|
|
308
|
-
elements,
|
|
309
|
-
strategy
|
|
310
|
-
} = state;
|
|
311
|
-
const {
|
|
312
|
-
boundary = 'clippingAncestors',
|
|
313
|
-
rootBoundary = 'viewport',
|
|
314
|
-
elementContext = 'floating',
|
|
315
|
-
altBoundary = false,
|
|
316
|
-
padding = 0
|
|
317
|
-
} = evaluate(options, state);
|
|
318
|
-
const paddingObject = getPaddingObject(padding);
|
|
319
|
-
const altContext = elementContext === 'floating' ? 'reference' : 'floating';
|
|
320
|
-
const element = elements[altBoundary ? altContext : elementContext];
|
|
321
|
-
const clippingClientRect = rectToClientRect(await platform.getClippingRect({
|
|
322
|
-
element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),
|
|
323
|
-
boundary,
|
|
324
|
-
rootBoundary,
|
|
325
|
-
strategy
|
|
326
|
-
}));
|
|
327
|
-
const rect = elementContext === 'floating' ? {
|
|
328
|
-
x,
|
|
329
|
-
y,
|
|
330
|
-
width: rects.floating.width,
|
|
331
|
-
height: rects.floating.height
|
|
332
|
-
} : rects.reference;
|
|
333
|
-
const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
|
|
334
|
-
const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
|
|
335
|
-
x: 1,
|
|
336
|
-
y: 1
|
|
337
|
-
} : {
|
|
338
|
-
x: 1,
|
|
339
|
-
y: 1
|
|
340
|
-
};
|
|
341
|
-
const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
|
|
342
|
-
elements,
|
|
343
|
-
rect,
|
|
344
|
-
offsetParent,
|
|
345
|
-
strategy
|
|
346
|
-
}) : rect);
|
|
347
|
-
return {
|
|
348
|
-
top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
|
|
349
|
-
bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
|
|
350
|
-
left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
|
|
351
|
-
right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
|
|
352
|
-
};
|
|
353
|
-
}
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
* Provides data to position an inner element of the floating element so that it
|
|
357
|
-
* appears centered to the reference element.
|
|
358
|
-
* @see https://floating-ui.com/docs/arrow
|
|
359
|
-
*/
|
|
360
|
-
const arrow = options => ({
|
|
361
|
-
name: 'arrow',
|
|
362
|
-
options,
|
|
363
|
-
async fn(state) {
|
|
364
|
-
const {
|
|
365
|
-
x,
|
|
366
|
-
y,
|
|
367
|
-
placement,
|
|
368
|
-
rects,
|
|
369
|
-
platform,
|
|
370
|
-
elements,
|
|
371
|
-
middlewareData
|
|
372
|
-
} = state;
|
|
373
|
-
// Since `element` is required, we don't Partial<> the type.
|
|
374
|
-
const {
|
|
375
|
-
element,
|
|
376
|
-
padding = 0
|
|
377
|
-
} = evaluate(options, state) || {};
|
|
378
|
-
if (element == null) {
|
|
379
|
-
return {};
|
|
380
|
-
}
|
|
381
|
-
const paddingObject = getPaddingObject(padding);
|
|
382
|
-
const coords = {
|
|
383
|
-
x,
|
|
384
|
-
y
|
|
385
|
-
};
|
|
386
|
-
const axis = getAlignmentAxis(placement);
|
|
387
|
-
const length = getAxisLength(axis);
|
|
388
|
-
const arrowDimensions = await platform.getDimensions(element);
|
|
389
|
-
const isYAxis = axis === 'y';
|
|
390
|
-
const minProp = isYAxis ? 'top' : 'left';
|
|
391
|
-
const maxProp = isYAxis ? 'bottom' : 'right';
|
|
392
|
-
const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';
|
|
393
|
-
const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
|
|
394
|
-
const startDiff = coords[axis] - rects.reference[axis];
|
|
395
|
-
const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));
|
|
396
|
-
let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
|
|
397
|
-
|
|
398
|
-
// DOM platform can return `window` as the `offsetParent`.
|
|
399
|
-
if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {
|
|
400
|
-
clientSize = elements.floating[clientProp] || rects.floating[length];
|
|
401
|
-
}
|
|
402
|
-
const centerToReference = endDiff / 2 - startDiff / 2;
|
|
403
|
-
|
|
404
|
-
// If the padding is large enough that it causes the arrow to no longer be
|
|
405
|
-
// centered, modify the padding so that it is centered.
|
|
406
|
-
const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
|
|
407
|
-
const minPadding = min$1(paddingObject[minProp], largestPossiblePadding);
|
|
408
|
-
const maxPadding = min$1(paddingObject[maxProp], largestPossiblePadding);
|
|
409
|
-
|
|
410
|
-
// Make sure the arrow doesn't overflow the floating element if the center
|
|
411
|
-
// point is outside the floating element's bounds.
|
|
412
|
-
const min$1$1 = minPadding;
|
|
413
|
-
const max = clientSize - arrowDimensions[length] - maxPadding;
|
|
414
|
-
const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
|
|
415
|
-
const offset = clamp(min$1$1, center, max);
|
|
416
|
-
|
|
417
|
-
// If the reference is small enough that the arrow's padding causes it to
|
|
418
|
-
// to point to nothing for an aligned placement, adjust the offset of the
|
|
419
|
-
// floating element itself. To ensure `shift()` continues to take action,
|
|
420
|
-
// a single reset is performed when this is true.
|
|
421
|
-
const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
|
|
422
|
-
const alignmentOffset = shouldAddOffset ? center < min$1$1 ? center - min$1$1 : center - max : 0;
|
|
423
|
-
return {
|
|
424
|
-
[axis]: coords[axis] + alignmentOffset,
|
|
425
|
-
data: {
|
|
426
|
-
[axis]: offset,
|
|
427
|
-
centerOffset: center - offset - alignmentOffset,
|
|
428
|
-
...(shouldAddOffset && {
|
|
429
|
-
alignmentOffset
|
|
430
|
-
})
|
|
431
|
-
},
|
|
432
|
-
reset: shouldAddOffset
|
|
433
|
-
};
|
|
434
|
-
}
|
|
435
|
-
});
|
|
436
|
-
|
|
437
|
-
/**
|
|
438
|
-
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
439
|
-
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
440
|
-
* clipping boundary. Alternative to `autoPlacement`.
|
|
441
|
-
* @see https://floating-ui.com/docs/flip
|
|
442
|
-
*/
|
|
443
|
-
const flip = function (options) {
|
|
444
|
-
if (options === void 0) {
|
|
445
|
-
options = {};
|
|
446
|
-
}
|
|
447
|
-
return {
|
|
448
|
-
name: 'flip',
|
|
449
|
-
options,
|
|
450
|
-
async fn(state) {
|
|
451
|
-
var _middlewareData$arrow, _middlewareData$flip;
|
|
452
|
-
const {
|
|
453
|
-
placement,
|
|
454
|
-
middlewareData,
|
|
455
|
-
rects,
|
|
456
|
-
initialPlacement,
|
|
457
|
-
platform,
|
|
458
|
-
elements
|
|
459
|
-
} = state;
|
|
460
|
-
const {
|
|
461
|
-
mainAxis: checkMainAxis = true,
|
|
462
|
-
crossAxis: checkCrossAxis = true,
|
|
463
|
-
fallbackPlacements: specifiedFallbackPlacements,
|
|
464
|
-
fallbackStrategy = 'bestFit',
|
|
465
|
-
fallbackAxisSideDirection = 'none',
|
|
466
|
-
flipAlignment = true,
|
|
467
|
-
...detectOverflowOptions
|
|
468
|
-
} = evaluate(options, state);
|
|
469
|
-
|
|
470
|
-
// If a reset by the arrow was caused due to an alignment offset being
|
|
471
|
-
// added, we should skip any logic now since `flip()` has already done its
|
|
472
|
-
// work.
|
|
473
|
-
// https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643
|
|
474
|
-
if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
|
|
475
|
-
return {};
|
|
476
|
-
}
|
|
477
|
-
const side = getSide(placement);
|
|
478
|
-
const isBasePlacement = getSide(initialPlacement) === initialPlacement;
|
|
479
|
-
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
480
|
-
const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
|
|
481
|
-
if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {
|
|
482
|
-
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
483
|
-
}
|
|
484
|
-
const placements = [initialPlacement, ...fallbackPlacements];
|
|
485
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
486
|
-
const overflows = [];
|
|
487
|
-
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
488
|
-
if (checkMainAxis) {
|
|
489
|
-
overflows.push(overflow[side]);
|
|
490
|
-
}
|
|
491
|
-
if (checkCrossAxis) {
|
|
492
|
-
const sides = getAlignmentSides(placement, rects, rtl);
|
|
493
|
-
overflows.push(overflow[sides[0]], overflow[sides[1]]);
|
|
494
|
-
}
|
|
495
|
-
overflowsData = [...overflowsData, {
|
|
496
|
-
placement,
|
|
497
|
-
overflows
|
|
498
|
-
}];
|
|
499
|
-
|
|
500
|
-
// One or more sides is overflowing.
|
|
501
|
-
if (!overflows.every(side => side <= 0)) {
|
|
502
|
-
var _middlewareData$flip2, _overflowsData$filter;
|
|
503
|
-
const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
|
|
504
|
-
const nextPlacement = placements[nextIndex];
|
|
505
|
-
if (nextPlacement) {
|
|
506
|
-
// Try next placement and re-run the lifecycle.
|
|
507
|
-
return {
|
|
508
|
-
data: {
|
|
509
|
-
index: nextIndex,
|
|
510
|
-
overflows: overflowsData
|
|
511
|
-
},
|
|
512
|
-
reset: {
|
|
513
|
-
placement: nextPlacement
|
|
514
|
-
}
|
|
515
|
-
};
|
|
516
|
-
}
|
|
517
|
-
|
|
518
|
-
// First, find the candidates that fit on the mainAxis side of overflow,
|
|
519
|
-
// then find the placement that fits the best on the main crossAxis side.
|
|
520
|
-
let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;
|
|
521
|
-
|
|
522
|
-
// Otherwise fallback.
|
|
523
|
-
if (!resetPlacement) {
|
|
524
|
-
switch (fallbackStrategy) {
|
|
525
|
-
case 'bestFit':
|
|
526
|
-
{
|
|
527
|
-
var _overflowsData$map$so;
|
|
528
|
-
const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];
|
|
529
|
-
if (placement) {
|
|
530
|
-
resetPlacement = placement;
|
|
531
|
-
}
|
|
532
|
-
break;
|
|
533
|
-
}
|
|
534
|
-
case 'initialPlacement':
|
|
535
|
-
resetPlacement = initialPlacement;
|
|
536
|
-
break;
|
|
537
|
-
}
|
|
538
|
-
}
|
|
539
|
-
if (placement !== resetPlacement) {
|
|
540
|
-
return {
|
|
541
|
-
reset: {
|
|
542
|
-
placement: resetPlacement
|
|
543
|
-
}
|
|
544
|
-
};
|
|
545
|
-
}
|
|
546
|
-
}
|
|
547
|
-
return {};
|
|
548
|
-
}
|
|
549
|
-
};
|
|
550
|
-
};
|
|
551
|
-
|
|
552
|
-
// For type backwards-compatibility, the `OffsetOptions` type was also
|
|
553
|
-
// Derivable.
|
|
554
|
-
|
|
555
|
-
async function convertValueToCoords(state, options) {
|
|
556
|
-
const {
|
|
557
|
-
placement,
|
|
558
|
-
platform,
|
|
559
|
-
elements
|
|
560
|
-
} = state;
|
|
561
|
-
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
562
|
-
const side = getSide(placement);
|
|
563
|
-
const alignment = getAlignment(placement);
|
|
564
|
-
const isVertical = getSideAxis(placement) === 'y';
|
|
565
|
-
const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
|
|
566
|
-
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
567
|
-
const rawValue = evaluate(options, state);
|
|
568
|
-
|
|
569
|
-
// eslint-disable-next-line prefer-const
|
|
570
|
-
let {
|
|
571
|
-
mainAxis,
|
|
572
|
-
crossAxis,
|
|
573
|
-
alignmentAxis
|
|
574
|
-
} = typeof rawValue === 'number' ? {
|
|
575
|
-
mainAxis: rawValue,
|
|
576
|
-
crossAxis: 0,
|
|
577
|
-
alignmentAxis: null
|
|
578
|
-
} : {
|
|
579
|
-
mainAxis: 0,
|
|
580
|
-
crossAxis: 0,
|
|
581
|
-
alignmentAxis: null,
|
|
582
|
-
...rawValue
|
|
583
|
-
};
|
|
584
|
-
if (alignment && typeof alignmentAxis === 'number') {
|
|
585
|
-
crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;
|
|
586
|
-
}
|
|
587
|
-
return isVertical ? {
|
|
588
|
-
x: crossAxis * crossAxisMulti,
|
|
589
|
-
y: mainAxis * mainAxisMulti
|
|
590
|
-
} : {
|
|
591
|
-
x: mainAxis * mainAxisMulti,
|
|
592
|
-
y: crossAxis * crossAxisMulti
|
|
593
|
-
};
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
/**
|
|
597
|
-
* Modifies the placement by translating the floating element along the
|
|
598
|
-
* specified axes.
|
|
599
|
-
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
600
|
-
* object may be passed.
|
|
601
|
-
* @see https://floating-ui.com/docs/offset
|
|
602
|
-
*/
|
|
603
|
-
const offset = function (options) {
|
|
604
|
-
if (options === void 0) {
|
|
605
|
-
options = 0;
|
|
606
|
-
}
|
|
607
|
-
return {
|
|
608
|
-
name: 'offset',
|
|
609
|
-
options,
|
|
610
|
-
async fn(state) {
|
|
611
|
-
var _middlewareData$offse, _middlewareData$arrow;
|
|
612
|
-
const {
|
|
613
|
-
x,
|
|
614
|
-
y,
|
|
615
|
-
placement,
|
|
616
|
-
middlewareData
|
|
617
|
-
} = state;
|
|
618
|
-
const diffCoords = await convertValueToCoords(state, options);
|
|
619
|
-
|
|
620
|
-
// If the placement is the same and the arrow caused an alignment offset
|
|
621
|
-
// then we don't need to change the positioning coordinates.
|
|
622
|
-
if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
|
|
623
|
-
return {};
|
|
624
|
-
}
|
|
625
|
-
return {
|
|
626
|
-
x: x + diffCoords.x,
|
|
627
|
-
y: y + diffCoords.y,
|
|
628
|
-
data: {
|
|
629
|
-
...diffCoords,
|
|
630
|
-
placement
|
|
631
|
-
}
|
|
632
|
-
};
|
|
633
|
-
}
|
|
634
|
-
};
|
|
635
|
-
};
|
|
636
|
-
|
|
637
|
-
/**
|
|
638
|
-
* Optimizes the visibility of the floating element by shifting it in order to
|
|
639
|
-
* keep it in view when it will overflow the clipping boundary.
|
|
640
|
-
* @see https://floating-ui.com/docs/shift
|
|
641
|
-
*/
|
|
642
|
-
const shift = function (options) {
|
|
643
|
-
if (options === void 0) {
|
|
644
|
-
options = {};
|
|
645
|
-
}
|
|
646
|
-
return {
|
|
647
|
-
name: 'shift',
|
|
648
|
-
options,
|
|
649
|
-
async fn(state) {
|
|
650
|
-
const {
|
|
651
|
-
x,
|
|
652
|
-
y,
|
|
653
|
-
placement
|
|
654
|
-
} = state;
|
|
655
|
-
const {
|
|
656
|
-
mainAxis: checkMainAxis = true,
|
|
657
|
-
crossAxis: checkCrossAxis = false,
|
|
658
|
-
limiter = {
|
|
659
|
-
fn: _ref => {
|
|
660
|
-
let {
|
|
661
|
-
x,
|
|
662
|
-
y
|
|
663
|
-
} = _ref;
|
|
664
|
-
return {
|
|
665
|
-
x,
|
|
666
|
-
y
|
|
667
|
-
};
|
|
668
|
-
}
|
|
669
|
-
},
|
|
670
|
-
...detectOverflowOptions
|
|
671
|
-
} = evaluate(options, state);
|
|
672
|
-
const coords = {
|
|
673
|
-
x,
|
|
674
|
-
y
|
|
675
|
-
};
|
|
676
|
-
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
677
|
-
const crossAxis = getSideAxis(getSide(placement));
|
|
678
|
-
const mainAxis = getOppositeAxis(crossAxis);
|
|
679
|
-
let mainAxisCoord = coords[mainAxis];
|
|
680
|
-
let crossAxisCoord = coords[crossAxis];
|
|
681
|
-
if (checkMainAxis) {
|
|
682
|
-
const minSide = mainAxis === 'y' ? 'top' : 'left';
|
|
683
|
-
const maxSide = mainAxis === 'y' ? 'bottom' : 'right';
|
|
684
|
-
const min = mainAxisCoord + overflow[minSide];
|
|
685
|
-
const max = mainAxisCoord - overflow[maxSide];
|
|
686
|
-
mainAxisCoord = clamp(min, mainAxisCoord, max);
|
|
687
|
-
}
|
|
688
|
-
if (checkCrossAxis) {
|
|
689
|
-
const minSide = crossAxis === 'y' ? 'top' : 'left';
|
|
690
|
-
const maxSide = crossAxis === 'y' ? 'bottom' : 'right';
|
|
691
|
-
const min = crossAxisCoord + overflow[minSide];
|
|
692
|
-
const max = crossAxisCoord - overflow[maxSide];
|
|
693
|
-
crossAxisCoord = clamp(min, crossAxisCoord, max);
|
|
694
|
-
}
|
|
695
|
-
const limitedCoords = limiter.fn({
|
|
696
|
-
...state,
|
|
697
|
-
[mainAxis]: mainAxisCoord,
|
|
698
|
-
[crossAxis]: crossAxisCoord
|
|
699
|
-
});
|
|
700
|
-
return {
|
|
701
|
-
...limitedCoords,
|
|
702
|
-
data: {
|
|
703
|
-
x: limitedCoords.x - x,
|
|
704
|
-
y: limitedCoords.y - y
|
|
705
|
-
}
|
|
706
|
-
};
|
|
707
|
-
}
|
|
708
|
-
};
|
|
709
|
-
};
|
|
710
|
-
|
|
711
|
-
function getWindow(node) {
|
|
712
|
-
var _node$ownerDocument;
|
|
713
|
-
return ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
function getComputedStyle$1(element) {
|
|
717
|
-
return getWindow(element).getComputedStyle(element);
|
|
718
|
-
}
|
|
719
|
-
|
|
720
|
-
function isNode(value) {
|
|
721
|
-
return value instanceof getWindow(value).Node;
|
|
722
|
-
}
|
|
723
|
-
function getNodeName(node) {
|
|
724
|
-
return isNode(node) ? (node.nodeName || '').toLowerCase() : '';
|
|
725
|
-
}
|
|
726
|
-
|
|
727
|
-
function isHTMLElement(value) {
|
|
728
|
-
return value instanceof getWindow(value).HTMLElement;
|
|
729
|
-
}
|
|
730
|
-
function isElement(value) {
|
|
731
|
-
return value instanceof getWindow(value).Element;
|
|
732
|
-
}
|
|
733
|
-
function isShadowRoot(node) {
|
|
734
|
-
// Browsers without `ShadowRoot` support.
|
|
735
|
-
if (typeof ShadowRoot === 'undefined') {
|
|
736
|
-
return false;
|
|
737
|
-
}
|
|
738
|
-
const OwnElement = getWindow(node).ShadowRoot;
|
|
739
|
-
return node instanceof OwnElement || node instanceof ShadowRoot;
|
|
740
|
-
}
|
|
741
|
-
function isOverflowElement(element) {
|
|
742
|
-
const {
|
|
743
|
-
overflow,
|
|
744
|
-
overflowX,
|
|
745
|
-
overflowY,
|
|
746
|
-
display
|
|
747
|
-
} = getComputedStyle$1(element);
|
|
748
|
-
return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
|
|
749
|
-
}
|
|
750
|
-
function isTableElement(element) {
|
|
751
|
-
return ['table', 'td', 'th'].includes(getNodeName(element));
|
|
752
|
-
}
|
|
753
|
-
function isContainingBlock(element) {
|
|
754
|
-
const safari = isSafari();
|
|
755
|
-
const css = getComputedStyle$1(element);
|
|
756
|
-
|
|
757
|
-
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
758
|
-
return css.transform !== 'none' || css.perspective !== 'none' || !safari && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !safari && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
|
|
759
|
-
}
|
|
760
|
-
function isSafari() {
|
|
761
|
-
if (typeof CSS === 'undefined' || !CSS.supports) return false;
|
|
762
|
-
return CSS.supports('-webkit-backdrop-filter', 'none');
|
|
763
|
-
}
|
|
764
|
-
function isLastTraversableNode(node) {
|
|
765
|
-
return ['html', 'body', '#document'].includes(getNodeName(node));
|
|
766
|
-
}
|
|
767
|
-
|
|
768
|
-
const min = Math.min;
|
|
769
|
-
const max = Math.max;
|
|
770
|
-
const round = Math.round;
|
|
771
|
-
|
|
772
|
-
function getCssDimensions(element) {
|
|
773
|
-
const css = getComputedStyle$1(element);
|
|
774
|
-
// In testing environments, the `width` and `height` properties are empty
|
|
775
|
-
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
776
|
-
let width = parseFloat(css.width) || 0;
|
|
777
|
-
let height = parseFloat(css.height) || 0;
|
|
778
|
-
const hasOffset = isHTMLElement(element);
|
|
779
|
-
const offsetWidth = hasOffset ? element.offsetWidth : width;
|
|
780
|
-
const offsetHeight = hasOffset ? element.offsetHeight : height;
|
|
781
|
-
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
782
|
-
if (shouldFallback) {
|
|
783
|
-
width = offsetWidth;
|
|
784
|
-
height = offsetHeight;
|
|
785
|
-
}
|
|
786
|
-
return {
|
|
787
|
-
width,
|
|
788
|
-
height,
|
|
789
|
-
fallback: shouldFallback
|
|
790
|
-
};
|
|
791
|
-
}
|
|
792
|
-
|
|
793
|
-
function unwrapElement(element) {
|
|
794
|
-
return !isElement(element) ? element.contextElement : element;
|
|
795
|
-
}
|
|
796
|
-
|
|
797
|
-
const FALLBACK_SCALE = {
|
|
798
|
-
x: 1,
|
|
799
|
-
y: 1
|
|
800
|
-
};
|
|
801
|
-
function getScale(element) {
|
|
802
|
-
const domElement = unwrapElement(element);
|
|
803
|
-
if (!isHTMLElement(domElement)) {
|
|
804
|
-
return FALLBACK_SCALE;
|
|
805
|
-
}
|
|
806
|
-
const rect = domElement.getBoundingClientRect();
|
|
807
|
-
const {
|
|
808
|
-
width,
|
|
809
|
-
height,
|
|
810
|
-
fallback
|
|
811
|
-
} = getCssDimensions(domElement);
|
|
812
|
-
let x = (fallback ? round(rect.width) : rect.width) / width;
|
|
813
|
-
let y = (fallback ? round(rect.height) : rect.height) / height;
|
|
814
|
-
|
|
815
|
-
// 0, NaN, or Infinity should always fallback to 1.
|
|
816
|
-
|
|
817
|
-
if (!x || !Number.isFinite(x)) {
|
|
818
|
-
x = 1;
|
|
819
|
-
}
|
|
820
|
-
if (!y || !Number.isFinite(y)) {
|
|
821
|
-
y = 1;
|
|
822
|
-
}
|
|
823
|
-
return {
|
|
824
|
-
x,
|
|
825
|
-
y
|
|
826
|
-
};
|
|
827
|
-
}
|
|
828
|
-
|
|
829
|
-
const noOffsets = {
|
|
830
|
-
x: 0,
|
|
831
|
-
y: 0
|
|
832
|
-
};
|
|
833
|
-
function getVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
834
|
-
var _win$visualViewport, _win$visualViewport2;
|
|
835
|
-
if (isFixed === void 0) {
|
|
836
|
-
isFixed = true;
|
|
837
|
-
}
|
|
838
|
-
if (!isSafari()) {
|
|
839
|
-
return noOffsets;
|
|
840
|
-
}
|
|
841
|
-
const win = element ? getWindow(element) : window;
|
|
842
|
-
if (!floatingOffsetParent || isFixed && floatingOffsetParent !== win) {
|
|
843
|
-
return noOffsets;
|
|
844
|
-
}
|
|
845
|
-
return {
|
|
846
|
-
x: ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0,
|
|
847
|
-
y: ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0
|
|
848
|
-
};
|
|
849
|
-
}
|
|
850
|
-
|
|
851
|
-
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
852
|
-
if (includeScale === void 0) {
|
|
853
|
-
includeScale = false;
|
|
854
|
-
}
|
|
855
|
-
if (isFixedStrategy === void 0) {
|
|
856
|
-
isFixedStrategy = false;
|
|
857
|
-
}
|
|
858
|
-
const clientRect = element.getBoundingClientRect();
|
|
859
|
-
const domElement = unwrapElement(element);
|
|
860
|
-
let scale = FALLBACK_SCALE;
|
|
861
|
-
if (includeScale) {
|
|
862
|
-
if (offsetParent) {
|
|
863
|
-
if (isElement(offsetParent)) {
|
|
864
|
-
scale = getScale(offsetParent);
|
|
865
|
-
}
|
|
866
|
-
} else {
|
|
867
|
-
scale = getScale(element);
|
|
868
|
-
}
|
|
869
|
-
}
|
|
870
|
-
const visualOffsets = getVisualOffsets(domElement, isFixedStrategy, offsetParent);
|
|
871
|
-
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
872
|
-
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
873
|
-
let width = clientRect.width / scale.x;
|
|
874
|
-
let height = clientRect.height / scale.y;
|
|
875
|
-
if (domElement) {
|
|
876
|
-
const win = getWindow(domElement);
|
|
877
|
-
const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
878
|
-
let currentIFrame = win.frameElement;
|
|
879
|
-
while (currentIFrame && offsetParent && offsetWin !== win) {
|
|
880
|
-
const iframeScale = getScale(currentIFrame);
|
|
881
|
-
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
882
|
-
const css = getComputedStyle(currentIFrame);
|
|
883
|
-
iframeRect.x += (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
884
|
-
iframeRect.y += (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
|
|
885
|
-
x *= iframeScale.x;
|
|
886
|
-
y *= iframeScale.y;
|
|
887
|
-
width *= iframeScale.x;
|
|
888
|
-
height *= iframeScale.y;
|
|
889
|
-
x += iframeRect.x;
|
|
890
|
-
y += iframeRect.y;
|
|
891
|
-
currentIFrame = getWindow(currentIFrame).frameElement;
|
|
892
|
-
}
|
|
893
|
-
}
|
|
894
|
-
return rectToClientRect({
|
|
895
|
-
width,
|
|
896
|
-
height,
|
|
897
|
-
x,
|
|
898
|
-
y
|
|
899
|
-
});
|
|
900
|
-
}
|
|
901
|
-
|
|
902
|
-
function getDocumentElement(node) {
|
|
903
|
-
return ((isNode(node) ? node.ownerDocument : node.document) || window.document).documentElement;
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
function getNodeScroll(element) {
|
|
907
|
-
if (isElement(element)) {
|
|
908
|
-
return {
|
|
909
|
-
scrollLeft: element.scrollLeft,
|
|
910
|
-
scrollTop: element.scrollTop
|
|
911
|
-
};
|
|
912
|
-
}
|
|
913
|
-
return {
|
|
914
|
-
scrollLeft: element.pageXOffset,
|
|
915
|
-
scrollTop: element.pageYOffset
|
|
916
|
-
};
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
920
|
-
let {
|
|
921
|
-
rect,
|
|
922
|
-
offsetParent,
|
|
923
|
-
strategy
|
|
924
|
-
} = _ref;
|
|
925
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
926
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
927
|
-
if (offsetParent === documentElement) {
|
|
928
|
-
return rect;
|
|
929
|
-
}
|
|
930
|
-
let scroll = {
|
|
931
|
-
scrollLeft: 0,
|
|
932
|
-
scrollTop: 0
|
|
933
|
-
};
|
|
934
|
-
let scale = {
|
|
935
|
-
x: 1,
|
|
936
|
-
y: 1
|
|
937
|
-
};
|
|
938
|
-
const offsets = {
|
|
939
|
-
x: 0,
|
|
940
|
-
y: 0
|
|
941
|
-
};
|
|
942
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
943
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
944
|
-
scroll = getNodeScroll(offsetParent);
|
|
945
|
-
}
|
|
946
|
-
if (isHTMLElement(offsetParent)) {
|
|
947
|
-
const offsetRect = getBoundingClientRect(offsetParent);
|
|
948
|
-
scale = getScale(offsetParent);
|
|
949
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
950
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
951
|
-
}
|
|
952
|
-
}
|
|
953
|
-
return {
|
|
954
|
-
width: rect.width * scale.x,
|
|
955
|
-
height: rect.height * scale.y,
|
|
956
|
-
x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,
|
|
957
|
-
y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y
|
|
958
|
-
};
|
|
959
|
-
}
|
|
960
|
-
|
|
961
|
-
function getWindowScrollBarX(element) {
|
|
962
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
963
|
-
// incorrect for RTL.
|
|
964
|
-
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
965
|
-
}
|
|
966
|
-
|
|
967
|
-
// Gets the entire size of the scrollable document area, even extending outside
|
|
968
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
969
|
-
function getDocumentRect(element) {
|
|
970
|
-
const html = getDocumentElement(element);
|
|
971
|
-
const scroll = getNodeScroll(element);
|
|
972
|
-
const body = element.ownerDocument.body;
|
|
973
|
-
const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
974
|
-
const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
975
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX(element);
|
|
976
|
-
const y = -scroll.scrollTop;
|
|
977
|
-
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
978
|
-
x += max(html.clientWidth, body.clientWidth) - width;
|
|
979
|
-
}
|
|
980
|
-
return {
|
|
981
|
-
width,
|
|
982
|
-
height,
|
|
983
|
-
x,
|
|
984
|
-
y
|
|
985
|
-
};
|
|
986
|
-
}
|
|
987
|
-
|
|
988
|
-
function getParentNode(node) {
|
|
989
|
-
if (getNodeName(node) === 'html') {
|
|
990
|
-
return node;
|
|
991
|
-
}
|
|
992
|
-
const result =
|
|
993
|
-
// Step into the shadow DOM of the parent of a slotted node.
|
|
994
|
-
node.assignedSlot ||
|
|
995
|
-
// DOM Element detected.
|
|
996
|
-
node.parentNode ||
|
|
997
|
-
// ShadowRoot detected.
|
|
998
|
-
isShadowRoot(node) && node.host ||
|
|
999
|
-
// Fallback.
|
|
1000
|
-
getDocumentElement(node);
|
|
1001
|
-
return isShadowRoot(result) ? result.host : result;
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
|
-
function getNearestOverflowAncestor(node) {
|
|
1005
|
-
const parentNode = getParentNode(node);
|
|
1006
|
-
if (isLastTraversableNode(parentNode)) {
|
|
1007
|
-
// `getParentNode` will never return a `Document` due to the fallback
|
|
1008
|
-
// check, so it's either the <html> or <body> element.
|
|
1009
|
-
return parentNode.ownerDocument.body;
|
|
1010
|
-
}
|
|
1011
|
-
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
|
1012
|
-
return parentNode;
|
|
1013
|
-
}
|
|
1014
|
-
return getNearestOverflowAncestor(parentNode);
|
|
1015
|
-
}
|
|
1016
|
-
|
|
1017
|
-
function getOverflowAncestors(node, list) {
|
|
1018
|
-
var _node$ownerDocument;
|
|
1019
|
-
if (list === void 0) {
|
|
1020
|
-
list = [];
|
|
1021
|
-
}
|
|
1022
|
-
const scrollableAncestor = getNearestOverflowAncestor(node);
|
|
1023
|
-
const isBody = scrollableAncestor === ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.body);
|
|
1024
|
-
const win = getWindow(scrollableAncestor);
|
|
1025
|
-
if (isBody) {
|
|
1026
|
-
return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);
|
|
1027
|
-
}
|
|
1028
|
-
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
|
|
1029
|
-
}
|
|
1030
|
-
|
|
1031
|
-
function getViewportRect(element, strategy) {
|
|
1032
|
-
const win = getWindow(element);
|
|
1033
|
-
const html = getDocumentElement(element);
|
|
1034
|
-
const visualViewport = win.visualViewport;
|
|
1035
|
-
let width = html.clientWidth;
|
|
1036
|
-
let height = html.clientHeight;
|
|
1037
|
-
let x = 0;
|
|
1038
|
-
let y = 0;
|
|
1039
|
-
if (visualViewport) {
|
|
1040
|
-
width = visualViewport.width;
|
|
1041
|
-
height = visualViewport.height;
|
|
1042
|
-
const visualViewportBased = isSafari();
|
|
1043
|
-
if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
|
|
1044
|
-
x = visualViewport.offsetLeft;
|
|
1045
|
-
y = visualViewport.offsetTop;
|
|
1046
|
-
}
|
|
1047
|
-
}
|
|
1048
|
-
return {
|
|
1049
|
-
width,
|
|
1050
|
-
height,
|
|
1051
|
-
x,
|
|
1052
|
-
y
|
|
1053
|
-
};
|
|
1054
|
-
}
|
|
1055
|
-
|
|
1056
|
-
// Returns the inner client rect, subtracting scrollbars if present.
|
|
1057
|
-
function getInnerBoundingClientRect(element, strategy) {
|
|
1058
|
-
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
1059
|
-
const top = clientRect.top + element.clientTop;
|
|
1060
|
-
const left = clientRect.left + element.clientLeft;
|
|
1061
|
-
const scale = isHTMLElement(element) ? getScale(element) : {
|
|
1062
|
-
x: 1,
|
|
1063
|
-
y: 1
|
|
1064
|
-
};
|
|
1065
|
-
const width = element.clientWidth * scale.x;
|
|
1066
|
-
const height = element.clientHeight * scale.y;
|
|
1067
|
-
const x = left * scale.x;
|
|
1068
|
-
const y = top * scale.y;
|
|
1069
|
-
return {
|
|
1070
|
-
width,
|
|
1071
|
-
height,
|
|
1072
|
-
x,
|
|
1073
|
-
y
|
|
1074
|
-
};
|
|
1075
|
-
}
|
|
1076
|
-
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
1077
|
-
let rect;
|
|
1078
|
-
if (clippingAncestor === 'viewport') {
|
|
1079
|
-
rect = getViewportRect(element, strategy);
|
|
1080
|
-
} else if (clippingAncestor === 'document') {
|
|
1081
|
-
rect = getDocumentRect(getDocumentElement(element));
|
|
1082
|
-
} else if (isElement(clippingAncestor)) {
|
|
1083
|
-
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
1084
|
-
} else {
|
|
1085
|
-
const visualOffsets = getVisualOffsets(element);
|
|
1086
|
-
rect = {
|
|
1087
|
-
...clippingAncestor,
|
|
1088
|
-
x: clippingAncestor.x - visualOffsets.x,
|
|
1089
|
-
y: clippingAncestor.y - visualOffsets.y
|
|
1090
|
-
};
|
|
1091
|
-
}
|
|
1092
|
-
return rectToClientRect(rect);
|
|
1093
|
-
}
|
|
1094
|
-
function hasFixedPositionAncestor(element, stopNode) {
|
|
1095
|
-
const parentNode = getParentNode(element);
|
|
1096
|
-
if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
|
|
1097
|
-
return false;
|
|
1098
|
-
}
|
|
1099
|
-
return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
|
|
1100
|
-
}
|
|
1101
|
-
|
|
1102
|
-
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
1103
|
-
// clipping (or hiding) child elements. This returns all clipping ancestors
|
|
1104
|
-
// of the given element up the tree.
|
|
1105
|
-
function getClippingElementAncestors(element, cache) {
|
|
1106
|
-
const cachedResult = cache.get(element);
|
|
1107
|
-
if (cachedResult) {
|
|
1108
|
-
return cachedResult;
|
|
1109
|
-
}
|
|
1110
|
-
let result = getOverflowAncestors(element).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
1111
|
-
let currentContainingBlockComputedStyle = null;
|
|
1112
|
-
const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
|
|
1113
|
-
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
1114
|
-
|
|
1115
|
-
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
1116
|
-
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1117
|
-
const computedStyle = getComputedStyle$1(currentNode);
|
|
1118
|
-
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
1119
|
-
if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
|
|
1120
|
-
currentContainingBlockComputedStyle = null;
|
|
1121
|
-
}
|
|
1122
|
-
const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
|
|
1123
|
-
if (shouldDropCurrentNode) {
|
|
1124
|
-
// Drop non-containing blocks.
|
|
1125
|
-
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1126
|
-
} else {
|
|
1127
|
-
// Record last containing block for next iteration.
|
|
1128
|
-
currentContainingBlockComputedStyle = computedStyle;
|
|
1129
|
-
}
|
|
1130
|
-
currentNode = getParentNode(currentNode);
|
|
1131
|
-
}
|
|
1132
|
-
cache.set(element, result);
|
|
1133
|
-
return result;
|
|
1134
|
-
}
|
|
1135
|
-
|
|
1136
|
-
// Gets the maximum area that the element is visible in due to any number of
|
|
1137
|
-
// clipping ancestors.
|
|
1138
|
-
function getClippingRect(_ref) {
|
|
1139
|
-
let {
|
|
1140
|
-
element,
|
|
1141
|
-
boundary,
|
|
1142
|
-
rootBoundary,
|
|
1143
|
-
strategy
|
|
1144
|
-
} = _ref;
|
|
1145
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
1146
|
-
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
1147
|
-
const firstClippingAncestor = clippingAncestors[0];
|
|
1148
|
-
const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
|
|
1149
|
-
const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);
|
|
1150
|
-
accRect.top = max(rect.top, accRect.top);
|
|
1151
|
-
accRect.right = min(rect.right, accRect.right);
|
|
1152
|
-
accRect.bottom = min(rect.bottom, accRect.bottom);
|
|
1153
|
-
accRect.left = max(rect.left, accRect.left);
|
|
1154
|
-
return accRect;
|
|
1155
|
-
}, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));
|
|
1156
|
-
return {
|
|
1157
|
-
width: clippingRect.right - clippingRect.left,
|
|
1158
|
-
height: clippingRect.bottom - clippingRect.top,
|
|
1159
|
-
x: clippingRect.left,
|
|
1160
|
-
y: clippingRect.top
|
|
1161
|
-
};
|
|
1162
|
-
}
|
|
1163
|
-
|
|
1164
|
-
function getDimensions(element) {
|
|
1165
|
-
return getCssDimensions(element);
|
|
1166
|
-
}
|
|
1167
|
-
|
|
1168
|
-
function getTrueOffsetParent(element, polyfill) {
|
|
1169
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1170
|
-
return null;
|
|
1171
|
-
}
|
|
1172
|
-
if (polyfill) {
|
|
1173
|
-
return polyfill(element);
|
|
1174
|
-
}
|
|
1175
|
-
return element.offsetParent;
|
|
1176
|
-
}
|
|
1177
|
-
function getContainingBlock(element) {
|
|
1178
|
-
let currentNode = getParentNode(element);
|
|
1179
|
-
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1180
|
-
if (isContainingBlock(currentNode)) {
|
|
1181
|
-
return currentNode;
|
|
1182
|
-
} else {
|
|
1183
|
-
currentNode = getParentNode(currentNode);
|
|
1184
|
-
}
|
|
1185
|
-
}
|
|
1186
|
-
return null;
|
|
1187
|
-
}
|
|
1188
|
-
|
|
1189
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1190
|
-
// such as table ancestors and cross browser bugs.
|
|
1191
|
-
function getOffsetParent(element, polyfill) {
|
|
1192
|
-
const window = getWindow(element);
|
|
1193
|
-
if (!isHTMLElement(element)) {
|
|
1194
|
-
return window;
|
|
1195
|
-
}
|
|
1196
|
-
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
1197
|
-
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1198
|
-
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
1199
|
-
}
|
|
1200
|
-
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1201
|
-
return window;
|
|
1202
|
-
}
|
|
1203
|
-
return offsetParent || getContainingBlock(element) || window;
|
|
1204
|
-
}
|
|
1205
|
-
|
|
1206
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1207
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1208
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
1209
|
-
const isFixed = strategy === 'fixed';
|
|
1210
|
-
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
1211
|
-
let scroll = {
|
|
1212
|
-
scrollLeft: 0,
|
|
1213
|
-
scrollTop: 0
|
|
1214
|
-
};
|
|
1215
|
-
const offsets = {
|
|
1216
|
-
x: 0,
|
|
1217
|
-
y: 0
|
|
1218
|
-
};
|
|
1219
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
|
|
1220
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1221
|
-
scroll = getNodeScroll(offsetParent);
|
|
1222
|
-
}
|
|
1223
|
-
if (isHTMLElement(offsetParent)) {
|
|
1224
|
-
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
1225
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1226
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1227
|
-
} else if (documentElement) {
|
|
1228
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
1229
|
-
}
|
|
1230
|
-
}
|
|
1231
|
-
return {
|
|
1232
|
-
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1233
|
-
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1234
|
-
width: rect.width,
|
|
1235
|
-
height: rect.height
|
|
1236
|
-
};
|
|
1237
|
-
}
|
|
1238
|
-
|
|
1239
|
-
const platform = {
|
|
1240
|
-
getClippingRect,
|
|
1241
|
-
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
1242
|
-
isElement,
|
|
1243
|
-
getDimensions,
|
|
1244
|
-
getOffsetParent,
|
|
1245
|
-
getDocumentElement,
|
|
1246
|
-
getScale,
|
|
1247
|
-
async getElementRects(_ref) {
|
|
1248
|
-
let {
|
|
1249
|
-
reference,
|
|
1250
|
-
floating,
|
|
1251
|
-
strategy
|
|
1252
|
-
} = _ref;
|
|
1253
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
1254
|
-
const getDimensionsFn = this.getDimensions;
|
|
1255
|
-
return {
|
|
1256
|
-
reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
|
|
1257
|
-
floating: {
|
|
1258
|
-
x: 0,
|
|
1259
|
-
y: 0,
|
|
1260
|
-
...(await getDimensionsFn(floating))
|
|
1261
|
-
}
|
|
1262
|
-
};
|
|
1263
|
-
},
|
|
1264
|
-
getClientRects: element => Array.from(element.getClientRects()),
|
|
1265
|
-
isRTL: element => getComputedStyle$1(element).direction === 'rtl'
|
|
1266
|
-
};
|
|
1267
|
-
|
|
1268
|
-
/**
|
|
1269
|
-
* Automatically updates the position of the floating element when necessary.
|
|
1270
|
-
* Should only be called when the floating element is mounted on the DOM or
|
|
1271
|
-
* visible on the screen.
|
|
1272
|
-
* @returns cleanup function that should be invoked when the floating element is
|
|
1273
|
-
* removed from the DOM or hidden from the screen.
|
|
1274
|
-
* @see https://floating-ui.com/docs/autoUpdate
|
|
1275
|
-
*/
|
|
1276
|
-
function autoUpdate(reference, floating, update, options) {
|
|
1277
|
-
if (options === void 0) {
|
|
1278
|
-
options = {};
|
|
1279
|
-
}
|
|
1280
|
-
const {
|
|
1281
|
-
ancestorScroll = true,
|
|
1282
|
-
ancestorResize = true,
|
|
1283
|
-
elementResize = true,
|
|
1284
|
-
animationFrame = false
|
|
1285
|
-
} = options;
|
|
1286
|
-
const ancestors = ancestorScroll || ancestorResize ? [...(isElement(reference) ? getOverflowAncestors(reference) : reference.contextElement ? getOverflowAncestors(reference.contextElement) : []), ...getOverflowAncestors(floating)] : [];
|
|
1287
|
-
ancestors.forEach(ancestor => {
|
|
1288
|
-
// ignores Window, checks for [object VisualViewport]
|
|
1289
|
-
const isVisualViewport = !isElement(ancestor) && ancestor.toString().includes('V');
|
|
1290
|
-
if (ancestorScroll && (animationFrame ? isVisualViewport : true)) {
|
|
1291
|
-
ancestor.addEventListener('scroll', update, {
|
|
1292
|
-
passive: true
|
|
1293
|
-
});
|
|
1294
|
-
}
|
|
1295
|
-
ancestorResize && ancestor.addEventListener('resize', update);
|
|
1296
|
-
});
|
|
1297
|
-
let observer = null;
|
|
1298
|
-
if (elementResize) {
|
|
1299
|
-
observer = new ResizeObserver(() => {
|
|
1300
|
-
update();
|
|
1301
|
-
});
|
|
1302
|
-
isElement(reference) && !animationFrame && observer.observe(reference);
|
|
1303
|
-
if (!isElement(reference) && reference.contextElement && !animationFrame) {
|
|
1304
|
-
observer.observe(reference.contextElement);
|
|
1305
|
-
}
|
|
1306
|
-
observer.observe(floating);
|
|
1307
|
-
}
|
|
1308
|
-
let frameId;
|
|
1309
|
-
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
1310
|
-
if (animationFrame) {
|
|
1311
|
-
frameLoop();
|
|
1312
|
-
}
|
|
1313
|
-
function frameLoop() {
|
|
1314
|
-
const nextRefRect = getBoundingClientRect(reference);
|
|
1315
|
-
if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {
|
|
1316
|
-
update();
|
|
1317
|
-
}
|
|
1318
|
-
prevRefRect = nextRefRect;
|
|
1319
|
-
frameId = requestAnimationFrame(frameLoop);
|
|
1320
|
-
}
|
|
1321
|
-
update();
|
|
1322
|
-
return () => {
|
|
1323
|
-
var _observer;
|
|
1324
|
-
ancestors.forEach(ancestor => {
|
|
1325
|
-
ancestorScroll && ancestor.removeEventListener('scroll', update);
|
|
1326
|
-
ancestorResize && ancestor.removeEventListener('resize', update);
|
|
1327
|
-
});
|
|
1328
|
-
(_observer = observer) == null ? void 0 : _observer.disconnect();
|
|
1329
|
-
observer = null;
|
|
1330
|
-
if (animationFrame) {
|
|
1331
|
-
cancelAnimationFrame(frameId);
|
|
1332
|
-
}
|
|
1333
|
-
};
|
|
1334
|
-
}
|
|
1335
|
-
|
|
1336
|
-
/**
|
|
1337
|
-
* Computes the `x` and `y` coordinates that will place the floating element
|
|
1338
|
-
* next to a reference element when it is given a certain CSS positioning
|
|
1339
|
-
* strategy.
|
|
1340
|
-
*/
|
|
1341
|
-
const computePosition = (reference, floating, options) => {
|
|
1342
|
-
// This caches the expensive `getClippingElementAncestors` function so that
|
|
1343
|
-
// multiple lifecycle resets re-use the same result. It only lives for a
|
|
1344
|
-
// single call. If other functions become expensive, we can add them as well.
|
|
1345
|
-
const cache = new Map();
|
|
1346
|
-
const mergedOptions = {
|
|
1347
|
-
platform,
|
|
1348
|
-
...options
|
|
1349
|
-
};
|
|
1350
|
-
const platformWithCache = {
|
|
1351
|
-
...mergedOptions.platform,
|
|
1352
|
-
_c: cache
|
|
1353
|
-
};
|
|
1354
|
-
return computePosition$1(reference, floating, {
|
|
1355
|
-
...mergedOptions,
|
|
1356
|
-
platform: platformWithCache
|
|
1357
|
-
});
|
|
1358
|
-
};
|
|
1359
|
-
|
|
1360
|
-
const duetTooltipCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;z-index:200;display:inline-flex;width:auto;margin-top:-16px !important;margin-left:-3px !important;-webkit-tap-highlight-color:transparent}duet-tooltip-button{position:relative}duet-tooltip-popup{position:absolute}";
|
|
1361
|
-
const DuetTooltipStyle0 = duetTooltipCss;
|
|
1362
|
-
|
|
1363
|
-
const DuetTooltip = /*@__PURE__*/ proxyCustomElement(class DuetTooltip extends H {
|
|
1364
|
-
constructor() {
|
|
1365
|
-
super();
|
|
1366
|
-
this.__registerHost();
|
|
1367
|
-
this.__attachShadow();
|
|
1368
|
-
/**
|
|
1369
|
-
* Own Properties.
|
|
1370
|
-
*/
|
|
1371
|
-
this.firstRender = true;
|
|
1372
|
-
this.mql = [
|
|
1373
|
-
window.matchMedia(media_query_medium.replace(/'/g, "")),
|
|
1374
|
-
window.matchMedia(media_query_large.replace(/'/g, "")),
|
|
1375
|
-
];
|
|
1376
|
-
this.tooltipId = createID("DuetTooltip");
|
|
1377
|
-
this.aboutString = {
|
|
1378
|
-
fi: "aiheesta",
|
|
1379
|
-
en: "about",
|
|
1380
|
-
sv: "om",
|
|
1381
|
-
};
|
|
1382
|
-
/**
|
|
1383
|
-
* Local methods
|
|
1384
|
-
*/
|
|
1385
|
-
this.openTooltip = () => {
|
|
1386
|
-
this.active = true;
|
|
1387
|
-
setTimeout(() => {
|
|
1388
|
-
this.contentEl.focus({ preventScroll: true });
|
|
1389
|
-
this.buttonActive = true;
|
|
1390
|
-
}, 200);
|
|
1391
|
-
};
|
|
1392
|
-
this.closeTooltip = (moveFocusToButton = false) => {
|
|
1393
|
-
this.active = false;
|
|
1394
|
-
if (moveFocusToButton) {
|
|
1395
|
-
setTimeout(() => {
|
|
1396
|
-
this.buttonEl.setFocus({ preventScroll: true });
|
|
1397
|
-
}, 200);
|
|
1398
|
-
}
|
|
1399
|
-
setTimeout(() => {
|
|
1400
|
-
this.buttonActive = false;
|
|
1401
|
-
});
|
|
1402
|
-
setTimeout(() => {
|
|
1403
|
-
this.updatePlacement();
|
|
1404
|
-
}, 200);
|
|
1405
|
-
};
|
|
1406
|
-
this.toggleOpen = () => {
|
|
1407
|
-
this.active ? this.closeTooltip() : this.openTooltip();
|
|
1408
|
-
};
|
|
1409
|
-
this.updatePlacement = async () => {
|
|
1410
|
-
var _a, _b;
|
|
1411
|
-
let preferRight = true;
|
|
1412
|
-
if (this.breakpoint === "large" && !this.mql[1].matches) {
|
|
1413
|
-
preferRight = false;
|
|
1414
|
-
}
|
|
1415
|
-
else if (this.breakpoint === "medium" && !this.mql[0].matches) {
|
|
1416
|
-
preferRight = false;
|
|
1417
|
-
}
|
|
1418
|
-
let placement = preferRight ? "top-start" : "top-end";
|
|
1419
|
-
if (this.direction === "left") {
|
|
1420
|
-
placement = "top-end";
|
|
1421
|
-
}
|
|
1422
|
-
else if (this.direction === "right") {
|
|
1423
|
-
placement = "top-start";
|
|
1424
|
-
}
|
|
1425
|
-
const position = await computePosition(this.buttonEl, this.popupElement, {
|
|
1426
|
-
placement,
|
|
1427
|
-
middleware: [flip(), shift({ padding: 5 }), arrow({ element: this.arrowEl })],
|
|
1428
|
-
});
|
|
1429
|
-
this.tooltipY = position.y;
|
|
1430
|
-
this.tooltipX = position.x;
|
|
1431
|
-
this.placement = position.placement;
|
|
1432
|
-
this.arrowY = (_a = position.middlewareData.arrow) === null || _a === void 0 ? void 0 : _a.y;
|
|
1433
|
-
this.arrowX = (_b = position.middlewareData.arrow) === null || _b === void 0 ? void 0 : _b.x;
|
|
1434
|
-
};
|
|
1435
|
-
this.placement = "bottom";
|
|
1436
|
-
this.tooltipY = undefined;
|
|
1437
|
-
this.tooltipX = undefined;
|
|
1438
|
-
this.arrowX = undefined;
|
|
1439
|
-
this.arrowY = undefined;
|
|
1440
|
-
this.buttonActive = undefined;
|
|
1441
|
-
this.theme = "";
|
|
1442
|
-
this.language = getLanguage();
|
|
1443
|
-
this.accessibleLabelDefault = {
|
|
1444
|
-
fi: "Näytä lisätietoja",
|
|
1445
|
-
en: "Show more information",
|
|
1446
|
-
sv: "Visa mer tilläggsuppgifter",
|
|
1447
|
-
};
|
|
1448
|
-
this.accessibleLabel = getLocaleString(this.accessibleLabelDefault, this.language);
|
|
1449
|
-
this.accessibleAboutLabel = undefined;
|
|
1450
|
-
this.accessibleInputLabel = undefined;
|
|
1451
|
-
this.accessibleCloseLabelDefault = {
|
|
1452
|
-
fi: "Sulje lisätiedot",
|
|
1453
|
-
en: "Close details",
|
|
1454
|
-
sv: "Stäng tilläggsuppgifter",
|
|
1455
|
-
};
|
|
1456
|
-
this.accessibleCloseLabel = getLocaleString(this.accessibleCloseLabelDefault, this.language);
|
|
1457
|
-
this.label = "";
|
|
1458
|
-
this.breakpoint = "medium";
|
|
1459
|
-
this.direction = "auto";
|
|
1460
|
-
this.positionVertical = "0";
|
|
1461
|
-
this.positionHorizontal = "0";
|
|
1462
|
-
this.active = false;
|
|
1463
|
-
this.negative = false;
|
|
1464
|
-
}
|
|
1465
|
-
/**
|
|
1466
|
-
* Component lifecycle events.
|
|
1467
|
-
*/
|
|
1468
|
-
componentWillLoad() {
|
|
1469
|
-
inheritGlobalTheme(this);
|
|
1470
|
-
this.buttonActive = this.active;
|
|
1471
|
-
}
|
|
1472
|
-
async componentDidLoad() {
|
|
1473
|
-
this.arrowEl = await this.popupElement.getArrowElement();
|
|
1474
|
-
this.contentEl = await this.popupElement.getContentElement();
|
|
1475
|
-
this.updatePlacement();
|
|
1476
|
-
if (this.active) {
|
|
1477
|
-
this.openTooltip();
|
|
1478
|
-
await this.handleActiveChange(this.active);
|
|
1479
|
-
}
|
|
1480
|
-
this.intersectionObserver = new IntersectionObserver(this.updatePlacement, { root: document.body });
|
|
1481
|
-
this.intersectionObserver.observe(this.element);
|
|
1482
|
-
}
|
|
1483
|
-
connectedCallback() {
|
|
1484
|
-
connectLanguageChangeObserver(this, [
|
|
1485
|
-
{ prop: "accessibleLabel", defaults: "accessibleLabelDefault" },
|
|
1486
|
-
{ prop: "accessibleCloseLabel", defaults: "accessibleCloseLabelDefault" },
|
|
1487
|
-
]);
|
|
1488
|
-
if (typeof MutationObserver !== "undefined") {
|
|
1489
|
-
this.mutationO = new MutationObserver(() => {
|
|
1490
|
-
cloneDefaultSlotContent(this.element, this.popupElement);
|
|
1491
|
-
});
|
|
1492
|
-
this.mutationO.observe(this.element, {
|
|
1493
|
-
childList: true,
|
|
1494
|
-
characterData: true,
|
|
1495
|
-
subtree: true,
|
|
1496
|
-
});
|
|
1497
|
-
}
|
|
1498
|
-
}
|
|
1499
|
-
componentDidRender() {
|
|
1500
|
-
if (this.firstRender) {
|
|
1501
|
-
cloneDefaultSlotContent(this.element, this.popupElement);
|
|
1502
|
-
this.firstRender = false;
|
|
1503
|
-
}
|
|
1504
|
-
}
|
|
1505
|
-
disconnectedCallback() {
|
|
1506
|
-
disconnectLanguageChangeObserver(this);
|
|
1507
|
-
}
|
|
1508
|
-
handleDocumentClick(e) {
|
|
1509
|
-
if (!this.active) {
|
|
1510
|
-
return;
|
|
1511
|
-
}
|
|
1512
|
-
const path = e.composedPath();
|
|
1513
|
-
const isClickOutside = path.every(el => el !== this.element && el !== this.contentEl);
|
|
1514
|
-
if (isClickOutside) {
|
|
1515
|
-
this.closeTooltip();
|
|
1516
|
-
}
|
|
1517
|
-
}
|
|
1518
|
-
handleKeyDown(e) {
|
|
1519
|
-
if (this.active && isEscapeKey(e)) {
|
|
1520
|
-
this.closeTooltip(true);
|
|
1521
|
-
}
|
|
1522
|
-
}
|
|
1523
|
-
handlePopupClose() {
|
|
1524
|
-
if (this.active) {
|
|
1525
|
-
this.closeTooltip(true);
|
|
1526
|
-
}
|
|
1527
|
-
}
|
|
1528
|
-
async handleActiveChange(newActiveValue) {
|
|
1529
|
-
if (newActiveValue) {
|
|
1530
|
-
this.autoUpdateCleanup = autoUpdate(this.buttonEl, this.popupElement, this.updatePlacement);
|
|
1531
|
-
}
|
|
1532
|
-
else {
|
|
1533
|
-
this.autoUpdateCleanup();
|
|
1534
|
-
}
|
|
1535
|
-
}
|
|
1536
|
-
/**
|
|
1537
|
-
* render() function.
|
|
1538
|
-
* Always the last one in the class.
|
|
1539
|
-
*/
|
|
1540
|
-
render() {
|
|
1541
|
-
const tooltipStyles = {
|
|
1542
|
-
transform: `translateY(${this.positionVertical}) translateX(${this.positionHorizontal})`,
|
|
1543
|
-
// This is needed to that the active tooltip stacks on
|
|
1544
|
-
// top of other tooltips and the header.
|
|
1545
|
-
zIndex: this.active ? "201" : "",
|
|
1546
|
-
};
|
|
1547
|
-
const popupContainerStyles = {
|
|
1548
|
-
position: "relative",
|
|
1549
|
-
overflow: this.active ? "visible" : "hidden",
|
|
1550
|
-
};
|
|
1551
|
-
const positionStyles = {
|
|
1552
|
-
top: `${this.tooltipY}px`,
|
|
1553
|
-
left: `${this.tooltipX}px`,
|
|
1554
|
-
display: "block",
|
|
1555
|
-
"pointer-events": this.active ? "auto" : "none",
|
|
1556
|
-
};
|
|
1557
|
-
const arrowStyles = {
|
|
1558
|
-
top: this.arrowY ? `${this.arrowY}px` : undefined,
|
|
1559
|
-
left: this.arrowX ? `${this.arrowX}px` : undefined,
|
|
1560
|
-
};
|
|
1561
|
-
return (h(Host, { style: tooltipStyles }, h("duet-tooltip-button", { ref: element => (this.buttonEl = element), active: this.buttonActive, tooltipId: this.tooltipId, label: this.label, accessibleLabel: (this.accessibleInputLabel && `${this.accessibleInputLabel}, ${this.accessibleLabel}`) ||
|
|
1562
|
-
(this.accessibleAboutLabel &&
|
|
1563
|
-
`${this.accessibleLabel} ${this.aboutString[this.language]} ${this.accessibleAboutLabel}`) ||
|
|
1564
|
-
this.accessibleLabel, onClick: this.toggleOpen, theme: this.theme, negative: this.negative }), h("div", { style: popupContainerStyles }, h("duet-tooltip-popup", { ref: element => (this.popupElement = element), active: this.active, tooltipId: this.tooltipId, arrowStyles: arrowStyles, style: positionStyles, placement: this.placement, accessibleCloseLabel: this.accessibleCloseLabel, theme: this.theme }, h("slot", null)))));
|
|
1565
|
-
}
|
|
1566
|
-
get element() { return this; }
|
|
1567
|
-
static get watchers() { return {
|
|
1568
|
-
"active": ["handleActiveChange"]
|
|
1569
|
-
}; }
|
|
1570
|
-
static get style() { return DuetTooltipStyle0; }
|
|
1571
|
-
}, [1, "duet-tooltip", {
|
|
1572
|
-
"theme": [1025],
|
|
1573
|
-
"language": [1025],
|
|
1574
|
-
"accessibleLabelDefault": [1, "accessible-label-default"],
|
|
1575
|
-
"accessibleLabel": [1025, "accessible-label"],
|
|
1576
|
-
"accessibleAboutLabel": [1, "accessible-about-label"],
|
|
1577
|
-
"accessibleInputLabel": [1, "accessible-input-label"],
|
|
1578
|
-
"accessibleCloseLabelDefault": [1, "accessible-close-label-default"],
|
|
1579
|
-
"accessibleCloseLabel": [1025, "accessible-close-label"],
|
|
1580
|
-
"label": [1],
|
|
1581
|
-
"breakpoint": [1],
|
|
1582
|
-
"direction": [1],
|
|
1583
|
-
"positionVertical": [513, "position-vertical"],
|
|
1584
|
-
"positionHorizontal": [513, "position-horizontal"],
|
|
1585
|
-
"active": [1540],
|
|
1586
|
-
"negative": [4],
|
|
1587
|
-
"placement": [32],
|
|
1588
|
-
"tooltipY": [32],
|
|
1589
|
-
"tooltipX": [32],
|
|
1590
|
-
"arrowX": [32],
|
|
1591
|
-
"arrowY": [32],
|
|
1592
|
-
"buttonActive": [32]
|
|
1593
|
-
}, [[4, "click", "handleDocumentClick"], [4, "keydown", "handleKeyDown"], [4, "tooltipPopupClosed", "handlePopupClose"]], {
|
|
1594
|
-
"active": ["handleActiveChange"]
|
|
1595
|
-
}]);
|
|
1596
|
-
function defineCustomElement() {
|
|
1597
|
-
if (typeof customElements === "undefined") {
|
|
1598
|
-
return;
|
|
1599
|
-
}
|
|
1600
|
-
const components = ["duet-tooltip", "duet-icon", "duet-tooltip-button", "duet-tooltip-popup", "duet-visually-hidden"];
|
|
1601
|
-
components.forEach(tagName => { switch (tagName) {
|
|
1602
|
-
case "duet-tooltip":
|
|
1603
|
-
if (!customElements.get(tagName)) {
|
|
1604
|
-
customElements.define(tagName, DuetTooltip);
|
|
1605
|
-
}
|
|
1606
|
-
break;
|
|
1607
|
-
case "duet-icon":
|
|
1608
|
-
if (!customElements.get(tagName)) {
|
|
1609
|
-
defineCustomElement$4();
|
|
1610
|
-
}
|
|
1611
|
-
break;
|
|
1612
|
-
case "duet-tooltip-button":
|
|
1613
|
-
if (!customElements.get(tagName)) {
|
|
1614
|
-
defineCustomElement$3();
|
|
1615
|
-
}
|
|
1616
|
-
break;
|
|
1617
|
-
case "duet-tooltip-popup":
|
|
1618
|
-
if (!customElements.get(tagName)) {
|
|
1619
|
-
defineCustomElement$2();
|
|
1620
|
-
}
|
|
1621
|
-
break;
|
|
1622
|
-
case "duet-visually-hidden":
|
|
1623
|
-
if (!customElements.get(tagName)) {
|
|
1624
|
-
defineCustomElement$1();
|
|
1625
|
-
}
|
|
1626
|
-
break;
|
|
1627
|
-
} });
|
|
1628
|
-
}
|
|
1629
|
-
|
|
1630
|
-
export { DuetTooltip as D, autoUpdate as a, computePosition as c, defineCustomElement as d, flip as f, offset as o, shift as s };
|