@duetds/components 8.4.2 → 8.4.4
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.js +183 -47
- package/lib/cjs/action-new-window-50c8aed0.js +11 -0
- package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
- package/lib/cjs/duet-alert.cjs.entry.js +1 -1
- package/lib/cjs/duet-badge.cjs.entry.js +1 -1
- package/lib/cjs/duet-banner.cjs.entry.js +9 -8
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +3 -3
- package/lib/cjs/duet-button_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-callout.cjs.entry.js +1 -1
- package/lib/cjs/duet-caption_4.cjs.entry.js +45 -21
- package/lib/cjs/duet-card.cjs.entry.js +3 -3
- package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
- package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
- package/lib/cjs/duet-chip.cjs.entry.js +1 -1
- package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
- package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
- package/lib/cjs/duet-contact-card.cjs.entry.js +1 -1
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
- package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
- package/lib/cjs/duet-divider_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +56 -9
- package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
- package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
- package/lib/cjs/duet-file-chooser.cjs.entry.js +1 -1
- package/lib/cjs/duet-footer.cjs.entry.js +3 -5
- package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-header_2.cjs.entry.js +4 -4
- package/lib/cjs/duet-hero.cjs.entry.js +1 -1
- package/lib/cjs/duet-icon.cjs.entry.js +3 -3
- package/lib/cjs/duet-input_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-menu-bar-button.cjs.entry.js +2 -2
- package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
- package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
- package/lib/cjs/duet-menu-bar-item.cjs.entry.js +2 -2
- package/lib/cjs/duet-menu-bar-link.cjs.entry.js +2 -2
- package/lib/cjs/duet-menu-bar.cjs.entry.js +2 -2
- package/lib/cjs/duet-modal.cjs.entry.js +4 -4
- package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
- package/lib/cjs/duet-nav.cjs.entry.js +1 -1
- package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
- package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
- package/lib/cjs/duet-pagination_2.cjs.entry.js +4 -4
- package/lib/cjs/duet-popup-menu-item.cjs.entry.js +1 -1
- package/lib/cjs/duet-popup-menu.cjs.entry.js +9 -4
- package/lib/cjs/duet-progress.cjs.entry.js +1 -1
- package/lib/cjs/duet-promo-card.cjs.entry.js +3 -3
- package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +3 -3
- package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-select.cjs.entry.js +1 -1
- package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
- package/lib/cjs/duet-show-more.cjs.entry.js +1 -1
- package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
- package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
- package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
- package/lib/cjs/duet-slideout-panel.cjs.entry.js +4 -4
- package/lib/cjs/duet-slideout.cjs.entry.js +5 -5
- package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
- package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +2 -2
- package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +2 -2
- package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
- package/lib/cjs/duet-submenu-bar.cjs.entry.js +6 -5
- package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
- package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
- package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
- package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
- package/lib/cjs/duet-toolbar-item.cjs.entry.js +1 -1
- package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
- package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
- package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-tooltip.cjs.entry.js +3 -3
- package/lib/cjs/duet-tray.cjs.entry.js +2 -2
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
- package/lib/cjs/duet-upload-item.cjs.entry.js +9 -2
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
- package/lib/cjs/duet.cjs.js +2 -2
- package/lib/cjs/{floating-ui.dom.esm-a7d59d53.js → floating-ui.dom.esm-91f66430.js} +60 -20
- package/lib/cjs/{focus-utils-c103ab0a.js → focus-utils-a2fa36c7.js} +1 -1
- package/lib/cjs/{index-7fe97a5d.js → index-321cd5c2.js} +1 -1
- package/lib/cjs/loader.cjs.js +2 -2
- package/lib/cjs/{token-utils-7a618677.js → token-utils-c8094d1e.js} +1 -1
- package/lib/cjs/{tokens-c3eecae6.js → tokens-5b487d39.js} +3 -0
- package/lib/cjs/{tokens.module-bc323a09.js → tokens.module-450a747b.js} +2 -0
- package/lib/collection/collection-manifest.json +1 -1
- package/lib/collection/components/duet-banner/duet-banner.css +26 -0
- package/lib/collection/components/duet-banner/duet-banner.js +5 -4
- package/lib/collection/components/duet-link/duet-link.css +95 -9
- package/lib/collection/components/duet-link/duet-link.js +73 -20
- package/lib/collection/components/duet-modal/duet-modal.js +1 -1
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +24 -1
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
- package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +3 -2
- package/lib/collection/components/duet-upload/duet-upload.js +95 -5
- package/lib/collection/components/duet-upload-item/duet-upload-item.js +30 -2
- package/lib/collection/utils/string-utils.js +6 -0
- package/lib/dist-custom-elements/duet-action-button.js +1 -1
- package/lib/dist-custom-elements/duet-alert.js +1 -1
- package/lib/dist-custom-elements/duet-badge.js +1 -1
- package/lib/dist-custom-elements/duet-banner.js +11 -10
- package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
- package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
- package/lib/dist-custom-elements/duet-button.js +1 -1
- package/lib/dist-custom-elements/duet-callout.js +2 -2
- package/lib/dist-custom-elements/duet-caption.js +1 -1
- package/lib/dist-custom-elements/duet-card.js +4 -4
- package/lib/dist-custom-elements/duet-checkbox.js +1 -1
- package/lib/dist-custom-elements/duet-checkmark.js +1 -1
- package/lib/dist-custom-elements/duet-chip.js +2 -2
- package/lib/dist-custom-elements/duet-choice-group.js +8 -8
- package/lib/dist-custom-elements/duet-choice.js +6 -6
- package/lib/dist-custom-elements/duet-collapsible.js +3 -3
- package/lib/dist-custom-elements/duet-combobox.js +3 -3
- package/lib/dist-custom-elements/duet-contact-card.js +8 -8
- package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
- package/lib/dist-custom-elements/duet-date-picker.js +14 -14
- package/lib/dist-custom-elements/duet-divider.js +1 -1
- package/lib/dist-custom-elements/duet-editable-table.js +8 -8
- package/lib/dist-custom-elements/duet-empty-state.js +1 -1
- package/lib/dist-custom-elements/duet-fieldset.js +1 -1
- package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
- package/lib/dist-custom-elements/duet-footer.js +5 -7
- package/lib/dist-custom-elements/duet-grid-item.js +1 -1
- package/lib/dist-custom-elements/duet-grid.js +1 -1
- package/lib/dist-custom-elements/duet-header.js +11 -11
- package/lib/dist-custom-elements/duet-heading.js +1 -1
- package/lib/dist-custom-elements/duet-hero.js +9 -9
- package/lib/dist-custom-elements/duet-icon.js +1 -1
- package/lib/dist-custom-elements/duet-input.js +1 -1
- package/lib/dist-custom-elements/duet-label.js +1 -1
- package/lib/dist-custom-elements/duet-layout.js +1 -1
- package/lib/dist-custom-elements/duet-link.js +1 -1
- package/lib/dist-custom-elements/duet-list-item.js +1 -1
- package/lib/dist-custom-elements/duet-list.js +1 -1
- package/lib/dist-custom-elements/duet-logo.js +1 -1
- package/lib/dist-custom-elements/duet-menu-bar-button.js +3 -3
- package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
- package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +3 -3
- package/lib/dist-custom-elements/duet-menu-bar-item.js +3 -3
- package/lib/dist-custom-elements/duet-menu-bar-link.js +3 -3
- package/lib/dist-custom-elements/duet-menu-bar.js +3 -3
- package/lib/dist-custom-elements/duet-modal.js +10 -10
- package/lib/dist-custom-elements/duet-multiselect.js +9 -9
- package/lib/dist-custom-elements/duet-nav.js +1 -1
- package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
- package/lib/dist-custom-elements/duet-notification.js +2 -2
- package/lib/dist-custom-elements/duet-number-input.js +11 -11
- package/lib/dist-custom-elements/duet-page-heading.js +2 -2
- package/lib/dist-custom-elements/duet-pagination.js +14 -14
- package/lib/dist-custom-elements/duet-paragraph.js +1 -1
- package/lib/dist-custom-elements/duet-popup-menu-item.js +2 -2
- package/lib/dist-custom-elements/duet-popup-menu.js +10 -4
- package/lib/dist-custom-elements/duet-progress.js +1 -1
- package/lib/dist-custom-elements/duet-promo-card.js +4 -4
- package/lib/dist-custom-elements/duet-radio-group.js +8 -8
- package/lib/dist-custom-elements/duet-radio.js +1 -1
- package/lib/dist-custom-elements/duet-range-slider.js +3 -3
- package/lib/dist-custom-elements/duet-range-stepper.js +5 -5
- package/lib/dist-custom-elements/duet-scrollable.js +1 -1
- package/lib/dist-custom-elements/duet-section-layout.js +1 -1
- package/lib/dist-custom-elements/duet-select.js +1 -1
- package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
- package/lib/dist-custom-elements/duet-show-more.js +5 -5
- package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
- package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
- package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
- package/lib/dist-custom-elements/duet-slideout-panel.js +4 -4
- package/lib/dist-custom-elements/duet-slideout.js +5 -5
- package/lib/dist-custom-elements/duet-spacer.js +1 -1
- package/lib/dist-custom-elements/duet-spinner.js +1 -1
- package/lib/dist-custom-elements/duet-step.js +4 -4
- package/lib/dist-custom-elements/duet-stepper.js +2 -2
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
- package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +3 -3
- package/lib/dist-custom-elements/duet-submenu-bar-item.js +3 -3
- package/lib/dist-custom-elements/duet-submenu-bar-link.js +3 -3
- package/lib/dist-custom-elements/duet-submenu-bar.js +7 -6
- package/lib/dist-custom-elements/duet-tab-group.js +13 -13
- package/lib/dist-custom-elements/duet-tab.js +2 -2
- package/lib/dist-custom-elements/duet-table.js +1 -1
- package/lib/dist-custom-elements/duet-textarea.js +10 -10
- package/lib/dist-custom-elements/duet-toggle.js +2 -2
- package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
- package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
- package/lib/dist-custom-elements/duet-toolbar-item.js +2 -2
- package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
- package/lib/dist-custom-elements/duet-toolbar.js +1 -1
- package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
- package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
- package/lib/dist-custom-elements/duet-tooltip.js +1 -1
- package/lib/dist-custom-elements/duet-tray.js +4 -4
- package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
- package/lib/dist-custom-elements/duet-upload-item.js +1 -1
- package/lib/dist-custom-elements/duet-upload.js +74 -24
- package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
- package/lib/dist-custom-elements/index.js +1 -1
- package/lib/dist-custom-elements/{p-c1c9234e.js → p-00766c1c.js} +10 -10
- package/lib/dist-custom-elements/{p-d4663c7c.js → p-01cc0070.js} +8 -8
- package/lib/{esm/floating-ui.dom.esm-efad5c89.js → dist-custom-elements/p-11e152cd.js} +60 -20
- package/lib/dist-custom-elements/{p-0d9a20d2.js → p-16110f9e.js} +19 -11
- package/lib/dist-custom-elements/{p-cbac9ed5.js → p-2807b16f.js} +1 -1
- package/lib/dist-custom-elements/{p-d37a3cec.js → p-2f3ee599.js} +2 -0
- package/lib/dist-custom-elements/{p-fa23b7fe.js → p-37ed08ff.js} +5 -5
- package/lib/dist-custom-elements/{p-a48934c3.js → p-37fda12a.js} +1 -1
- package/lib/dist-custom-elements/{p-eef66341.js → p-4bd749d9.js} +1 -1
- package/lib/dist-custom-elements/{p-4f04ad3e.js → p-4ea72812.js} +2 -2
- package/lib/dist-custom-elements/{p-177cbf72.js → p-5d23f8e5.js} +1 -1
- package/lib/dist-custom-elements/{p-0a2e2799.js → p-60825051.js} +1 -1
- package/lib/dist-custom-elements/{p-601b571c.js → p-694eb563.js} +2 -2
- package/lib/dist-custom-elements/{p-6686826d.js → p-6d154d20.js} +1 -1
- package/lib/dist-custom-elements/{p-a0fb1ecb.js → p-6e276517.js} +2 -2
- package/lib/dist-custom-elements/{p-45f0a5c5.js → p-70db33ff.js} +5 -5
- package/lib/dist-custom-elements/{p-131d995f.js → p-769f67db.js} +2 -2
- package/lib/dist-custom-elements/{p-9b65c21f.js → p-7a282561.js} +2 -2
- package/lib/dist-custom-elements/{p-2996bc9b.js → p-80658678.js} +7 -7
- package/lib/dist-custom-elements/p-8855e26a.js +8 -0
- package/lib/dist-custom-elements/{p-61c2577e.js → p-95edd984.js} +4 -4
- package/lib/dist-custom-elements/{p-50ce213d.js → p-9a68c9c3.js} +2 -2
- package/lib/dist-custom-elements/{p-33a89c97.js → p-a0e148ea.js} +2 -2
- package/lib/dist-custom-elements/{p-f5c39ead.js → p-add43228.js} +5 -5
- package/lib/dist-custom-elements/{p-f1f23dbd.js → p-b72908a4.js} +4 -4
- package/lib/dist-custom-elements/{p-12eef2ad.js → p-b8be34fe.js} +3 -3
- package/lib/dist-custom-elements/{p-15c6804a.js → p-bc9b66e3.js} +2 -2
- package/lib/dist-custom-elements/{p-59846fe0.js → p-c3bf10f0.js} +2 -2
- package/lib/dist-custom-elements/{p-3e696237.js → p-c92fc106.js} +2 -2
- package/lib/dist-custom-elements/{p-47e5367a.js → p-c9e9fcdd.js} +1 -1
- package/lib/dist-custom-elements/{p-a15329e0.js → p-cd43ed13.js} +1 -1
- package/lib/dist-custom-elements/p-d0e58f2f.js +195 -0
- package/lib/dist-custom-elements/{p-5b729ba0.js → p-d98e622c.js} +2 -2
- package/lib/dist-custom-elements/{p-57761460.js → p-d9ce7d34.js} +2 -2
- package/lib/dist-custom-elements/{p-7e7a0c10.js → p-e0da6a34.js} +1 -1
- package/lib/dist-custom-elements/{p-d84e09c9.js → p-e20f6c37.js} +1 -1
- package/lib/dist-custom-elements/{p-a41e92cd.js → p-eb8112d7.js} +1 -1
- package/lib/{esm/tokens-30d01e1d.js → dist-custom-elements/p-ed995372.js} +3 -0
- package/lib/dist-custom-elements/{p-2a308935.js → p-f6bb0a14.js} +1 -1
- package/lib/dist-custom-elements/{p-1364c672.js → p-f971e88a.js} +2 -2
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/{p-22d72786.system.entry.js → p-010dd9f1.system.entry.js} +1 -1
- package/lib/duet/{p-9d2d5bb7.entry.js → p-021e6c41.entry.js} +1 -1
- package/lib/duet/{p-bba08afa.entry.js → p-03ecd2e4.entry.js} +1 -1
- package/lib/duet/{p-f2aa1623.js → p-03f6f09a.js} +1 -1
- package/lib/duet/p-04cc1871.entry.js +4 -0
- package/lib/duet/{p-1d44acfe.entry.js → p-0ae402bc.entry.js} +1 -1
- package/lib/duet/{p-0e015dcc.system.entry.js → p-0bbc8e7d.system.entry.js} +1 -1
- package/lib/duet/{p-b46eaf22.system.entry.js → p-0c7b4d0b.system.entry.js} +1 -1
- package/lib/duet/{p-04396632.entry.js → p-0ee178f3.entry.js} +1 -1
- package/lib/duet/{p-ea0114b0.system.entry.js → p-11d504bb.system.entry.js} +1 -1
- package/lib/duet/p-11e152cd.js +4 -0
- package/lib/duet/{p-0b31f281.entry.js → p-14dd96f6.entry.js} +1 -1
- package/lib/duet/{p-4a711595.system.entry.js → p-1a90862e.system.entry.js} +1 -1
- package/lib/duet/{p-cf68eb94.entry.js → p-1b7067b9.entry.js} +1 -1
- package/lib/duet/{p-da3a4563.system.entry.js → p-1c6ac55a.system.entry.js} +1 -1
- package/lib/duet/{p-10098739.system.entry.js → p-1d6732e5.system.entry.js} +1 -1
- package/lib/duet/{p-e8ef41fb.entry.js → p-1f1ea2e1.entry.js} +1 -1
- package/lib/duet/{p-18a5ed57.entry.js → p-1f51448a.entry.js} +1 -1
- package/lib/duet/{p-fe6d6541.entry.js → p-1f6614f2.entry.js} +1 -1
- package/lib/duet/p-1fd2d87d.entry.js +4 -0
- package/lib/duet/{p-0dfacf89.entry.js → p-218929dd.entry.js} +1 -1
- package/lib/duet/{p-5df167ce.entry.js → p-24707dfe.entry.js} +1 -1
- package/lib/duet/p-290fd0ec.entry.js +4 -0
- package/lib/duet/{p-738c2982.entry.js → p-296bce73.entry.js} +1 -1
- package/lib/duet/{p-edbb800c.entry.js → p-2a67d274.entry.js} +1 -1
- package/lib/duet/{p-10221818.system.entry.js → p-2accb711.system.entry.js} +1 -1
- package/lib/duet/{p-c1788410.entry.js → p-2ad9975b.entry.js} +1 -1
- package/lib/duet/{p-68563736.entry.js → p-2c3a0e0b.entry.js} +1 -1
- package/lib/duet/{p-321f5636.system.entry.js → p-2c7a4ccf.system.entry.js} +1 -1
- package/lib/duet/{p-c32fb0ad.system.entry.js → p-2d505c84.system.entry.js} +1 -1
- package/lib/duet/{p-7a62a25c.system.entry.js → p-2d5eea69.system.entry.js} +1 -1
- package/lib/duet/p-2e68af22.system.js +4 -0
- package/lib/duet/{p-846f6107.entry.js → p-30694f50.entry.js} +1 -1
- package/lib/duet/{p-851a2197.system.entry.js → p-30b37984.system.entry.js} +1 -1
- package/lib/duet/{p-70e8e2e8.entry.js → p-324a6828.entry.js} +1 -1
- package/lib/duet/{p-66811869.system.entry.js → p-328a40de.system.entry.js} +1 -1
- package/lib/duet/{p-dd11d532.system.entry.js → p-3350f9aa.system.entry.js} +1 -1
- package/lib/duet/p-34620d0d.entry.js +4 -0
- package/lib/duet/{p-3d1e8d07.system.entry.js → p-350fc5f7.system.entry.js} +1 -1
- package/lib/duet/{p-64d1ea6b.entry.js → p-368a4f49.entry.js} +1 -1
- package/lib/duet/{p-addd5e7e.system.entry.js → p-36cce3f9.system.entry.js} +1 -1
- package/lib/duet/{p-383a91dc.system.entry.js → p-383719e3.system.entry.js} +1 -1
- package/lib/duet/{p-ff73f982.system.entry.js → p-3a7594d3.system.entry.js} +1 -1
- package/lib/duet/{p-78e5a38c.system.entry.js → p-3cd30915.system.entry.js} +1 -1
- package/lib/duet/p-3d88b644.system.entry.js +4 -0
- package/lib/duet/p-3d951794.entry.js +4 -0
- package/lib/duet/{p-71028a1e.entry.js → p-3e26c389.entry.js} +1 -1
- package/lib/duet/{p-3dfbd404.system.entry.js → p-3f0589bb.system.entry.js} +1 -1
- package/lib/duet/{p-407a1728.entry.js → p-40c29b8e.entry.js} +1 -1
- package/lib/duet/{p-abdbce02.system.js → p-41ba30b7.system.js} +1 -1
- package/lib/duet/{p-99b0e6bb.system.entry.js → p-41e13b83.system.entry.js} +1 -1
- package/lib/duet/{p-ffb8996b.system.js → p-42101548.system.js} +1 -1
- package/lib/duet/p-432df72f.system.entry.js +4 -0
- package/lib/duet/{p-230604b9.entry.js → p-43cd9f87.entry.js} +1 -1
- package/lib/duet/{p-551e05af.system.entry.js → p-44c81d6b.system.entry.js} +1 -1
- package/lib/duet/{p-7a98a43c.entry.js → p-460aada9.entry.js} +1 -1
- package/lib/duet/p-4861c4a4.entry.js +4 -0
- package/lib/duet/{p-c46b15ea.entry.js → p-48bd3e10.entry.js} +1 -1
- package/lib/duet/{p-c57afc88.entry.js → p-4f779b7b.entry.js} +1 -1
- package/lib/duet/{p-49e02a59.system.entry.js → p-507f807b.system.entry.js} +1 -1
- package/lib/duet/p-5091eb50.entry.js +4 -0
- package/lib/duet/p-52e38899.system.js +4 -0
- package/lib/duet/{p-d9f35a79.entry.js → p-5555f60d.entry.js} +1 -1
- package/lib/duet/{p-8f916ac7.system.entry.js → p-55b5929c.system.entry.js} +1 -1
- package/lib/duet/{p-b685de1e.js → p-593e28ac.js} +1 -1
- package/lib/duet/{p-42473291.system.entry.js → p-5ca7f7cb.system.entry.js} +1 -1
- package/lib/duet/p-5d5b6fbd.entry.js +4 -0
- package/lib/duet/{p-04d81b55.entry.js → p-5e8c47fe.entry.js} +1 -1
- package/lib/duet/p-5f0c7704.system.entry.js +4 -0
- package/lib/duet/{p-187e0e31.entry.js → p-607be10a.entry.js} +1 -1
- package/lib/duet/{p-514310af.system.entry.js → p-60ca48d1.system.entry.js} +1 -1
- package/lib/duet/{p-2f75a831.system.entry.js → p-62ce745e.system.entry.js} +1 -1
- package/lib/duet/p-650a419d.system.js +4 -0
- package/lib/duet/{p-95575931.entry.js → p-66f4c2bb.entry.js} +1 -1
- package/lib/duet/{p-436828cd.entry.js → p-67956ba7.entry.js} +1 -1
- package/lib/duet/{p-b3fe4d80.system.entry.js → p-6a6136ac.system.entry.js} +1 -1
- package/lib/duet/p-6c3a10a7.system.entry.js +4 -0
- package/lib/duet/{p-bb0d4df8.system.entry.js → p-6cce9324.system.entry.js} +1 -1
- package/lib/duet/{p-69535738.system.entry.js → p-6d5bbd9d.system.entry.js} +1 -1
- package/lib/duet/{p-70192242.system.entry.js → p-6d67ee47.system.entry.js} +1 -1
- package/lib/duet/{p-5855d879.system.entry.js → p-6ef5d34b.system.entry.js} +1 -1
- package/lib/duet/{p-2d679611.entry.js → p-70961fe6.entry.js} +1 -1
- package/lib/duet/{p-428adef7.system.entry.js → p-7329324b.system.entry.js} +1 -1
- package/lib/duet/{p-7de032fc.system.entry.js → p-78c560b1.system.entry.js} +1 -1
- package/lib/duet/{p-c0580b3f.system.entry.js → p-797eaeab.system.entry.js} +1 -1
- package/lib/duet/{p-5a9a1c76.entry.js → p-79f72cff.entry.js} +1 -1
- package/lib/duet/{p-5f87ea3d.js → p-7a66b632.js} +1 -1
- package/lib/duet/{p-301fda37.entry.js → p-7a6ed189.entry.js} +1 -1
- package/lib/duet/{p-04c226e5.entry.js → p-7c0afcee.entry.js} +1 -1
- package/lib/duet/{p-ab0a3192.entry.js → p-7c2ceea1.entry.js} +1 -1
- package/lib/duet/{p-48a63ce5.system.entry.js → p-7e14f80d.system.entry.js} +1 -1
- package/lib/duet/{p-b2387806.entry.js → p-7ecb4a30.entry.js} +1 -1
- package/lib/duet/{p-fe3a3989.entry.js → p-7f0e15ec.entry.js} +1 -1
- package/lib/duet/{p-2fd350b6.entry.js → p-7fd57091.entry.js} +1 -1
- package/lib/duet/p-80dc1362.system.entry.js +4 -0
- package/lib/duet/{p-f5414759.system.entry.js → p-81363d5b.system.entry.js} +1 -1
- package/lib/duet/{p-89ff1726.entry.js → p-81a65ba4.entry.js} +1 -1
- package/lib/duet/{p-24c2902b.entry.js → p-81a72ffe.entry.js} +1 -1
- package/lib/duet/{p-a8da4509.system.entry.js → p-84c8b5a1.system.entry.js} +1 -1
- package/lib/duet/{p-43931eed.system.entry.js → p-86069994.system.entry.js} +1 -1
- package/lib/duet/{p-4afeea09.system.entry.js → p-87c91115.system.entry.js} +2 -2
- package/lib/duet/{p-1d2d899a.system.entry.js → p-87e6b946.system.entry.js} +1 -1
- package/lib/duet/p-8855e26a.js +4 -0
- package/lib/duet/{p-9da0ed12.system.entry.js → p-89310816.system.entry.js} +1 -1
- package/lib/duet/{p-65b7afbd.system.entry.js → p-89daabf5.system.entry.js} +1 -1
- package/lib/duet/p-8a5fcb79.system.entry.js +4 -0
- package/lib/duet/{p-c9ab053d.entry.js → p-8b929d17.entry.js} +1 -1
- package/lib/duet/{p-ff58fdad.system.entry.js → p-8c5009b8.system.entry.js} +1 -1
- package/lib/duet/{p-b40bceab.system.entry.js → p-8cb77e1f.system.entry.js} +1 -1
- package/lib/duet/{p-dc234b3a.entry.js → p-935dbe23.entry.js} +1 -1
- package/lib/duet/{p-17a52ca1.entry.js → p-94ec5a34.entry.js} +1 -1
- package/lib/duet/{p-0a61dd54.system.entry.js → p-97d09535.system.entry.js} +1 -1
- package/lib/duet/p-98c4123d.entry.js +4 -0
- package/lib/duet/{p-d5c5992f.entry.js → p-9b42d132.entry.js} +1 -1
- package/lib/duet/{p-4557d28f.entry.js → p-9c5592a0.entry.js} +1 -1
- package/lib/duet/{p-5688f257.entry.js → p-9e58080f.entry.js} +1 -1
- package/lib/duet/{p-3c42ae99.system.entry.js → p-9f780397.system.entry.js} +1 -1
- package/lib/duet/{p-08e002f8.entry.js → p-a0978112.entry.js} +1 -1
- package/lib/duet/{p-f64f4ff8.system.entry.js → p-a09a9abe.system.entry.js} +1 -1
- package/lib/duet/{p-da7f4cbf.system.entry.js → p-a144a9ba.system.entry.js} +1 -1
- package/lib/duet/{p-12597683.system.entry.js → p-a1c81497.system.entry.js} +1 -1
- package/lib/duet/{p-b0d5f427.system.entry.js → p-a225a097.system.entry.js} +1 -1
- package/lib/duet/{p-93e1f5f7.entry.js → p-a2ab881c.entry.js} +1 -1
- package/lib/duet/{p-fc353103.system.entry.js → p-a2ac806b.system.entry.js} +1 -1
- package/lib/duet/{p-ea92b78c.system.entry.js → p-a2f3f775.system.entry.js} +1 -1
- package/lib/duet/p-a46b4450.system.js +4 -0
- package/lib/duet/{p-757451ff.system.entry.js → p-a5066804.system.entry.js} +1 -1
- package/lib/duet/{p-29301434.system.entry.js → p-ac1cf4f6.system.entry.js} +1 -1
- package/lib/duet/{p-3a63e778.entry.js → p-adf1bd67.entry.js} +1 -1
- package/lib/duet/{p-10d39a4b.system.entry.js → p-afcd0356.system.entry.js} +1 -1
- package/lib/duet/{p-50559904.system.entry.js → p-b8182937.system.entry.js} +1 -1
- package/lib/duet/{p-96783b15.system.entry.js → p-b86feb9d.system.entry.js} +1 -1
- package/lib/duet/{p-a58f1913.system.entry.js → p-bb4a6a02.system.entry.js} +1 -1
- package/lib/duet/{p-b3fac2f5.entry.js → p-bbd94845.entry.js} +1 -1
- package/lib/duet/{p-f99a14a4.system.entry.js → p-bdec8ea8.system.entry.js} +1 -1
- package/lib/duet/{p-e3f76452.entry.js → p-bf2f9155.entry.js} +1 -1
- package/lib/duet/{p-e7bc8481.entry.js → p-bfc33dbb.entry.js} +1 -1
- package/lib/duet/{p-a45fe7ea.system.entry.js → p-c24529b8.system.entry.js} +1 -1
- package/lib/duet/{p-4fe29741.entry.js → p-c4a1468e.entry.js} +1 -1
- package/lib/duet/{p-deff3c18.entry.js → p-c6995ff3.entry.js} +1 -1
- package/lib/duet/{p-f7681856.system.entry.js → p-c7b3d9fd.system.entry.js} +1 -1
- package/lib/duet/p-c8564169.entry.js +4 -0
- package/lib/duet/{p-1f3ff1d7.system.entry.js → p-c9e8f35b.system.entry.js} +1 -1
- package/lib/duet/{p-fce3d5cc.system.entry.js → p-cdb63bbf.system.entry.js} +1 -1
- package/lib/duet/{p-0571c7df.system.entry.js → p-d156e8f9.system.entry.js} +1 -1
- package/lib/duet/{p-cfc901c8.entry.js → p-d547e4b8.entry.js} +1 -1
- package/lib/duet/{p-4f40d4b7.system.entry.js → p-d5e534d5.system.entry.js} +1 -1
- package/lib/duet/{p-cd03ee1c.entry.js → p-d6f9146f.entry.js} +1 -1
- package/lib/duet/{p-65126f35.system.entry.js → p-d76fa43c.system.entry.js} +1 -1
- package/lib/duet/{p-fa5eff27.js → p-d82b4974.js} +1 -1
- package/lib/duet/{p-ea0d7900.entry.js → p-d8d7c90b.entry.js} +1 -1
- package/lib/duet/{p-5935bb9e.system.entry.js → p-d936b946.system.entry.js} +1 -1
- package/lib/duet/{p-71fa6c5f.entry.js → p-da9e040d.entry.js} +1 -1
- package/lib/duet/{p-62d011ba.entry.js → p-db5e6b96.entry.js} +1 -1
- package/lib/duet/{p-df7a726b.entry.js → p-ddb1fc3d.entry.js} +1 -1
- package/lib/duet/{p-f0f494dc.system.js → p-def3d03c.system.js} +1 -1
- package/lib/duet/{p-02064d40.entry.js → p-e0e04af9.entry.js} +1 -1
- package/lib/duet/{p-e6a09596.entry.js → p-e1fbb2f0.entry.js} +1 -1
- package/lib/duet/{p-936894c4.entry.js → p-e31f82e8.entry.js} +1 -1
- package/lib/duet/{p-4aada7ef.system.entry.js → p-e3832e69.system.entry.js} +1 -1
- package/lib/duet/{p-937a64ee.system.entry.js → p-e39b3463.system.entry.js} +1 -1
- package/lib/duet/p-e639b9ee.system.js +4 -0
- package/lib/duet/{p-798d2be8.entry.js → p-eb2092ea.entry.js} +1 -1
- package/lib/duet/{p-ea787367.system.entry.js → p-ebd9d168.system.entry.js} +1 -1
- package/lib/duet/p-ed995372.js +4 -0
- package/lib/duet/{p-a6a2c0c2.entry.js → p-f10c1b71.entry.js} +1 -1
- package/lib/duet/{p-54cbe86f.system.entry.js → p-f11ee829.system.entry.js} +1 -1
- package/lib/duet/{p-01cb4eba.entry.js → p-f442a901.entry.js} +1 -1
- package/lib/duet/{p-b671985e.entry.js → p-f75d4521.entry.js} +1 -1
- package/lib/duet/{p-3611d8db.entry.js → p-f860fa92.entry.js} +1 -1
- package/lib/duet/{p-c8fd77c9.system.entry.js → p-f9567972.system.entry.js} +1 -1
- package/lib/duet/{p-94d25cb5.entry.js → p-f97b0583.entry.js} +1 -1
- package/lib/duet/{p-596fd1f4.entry.js → p-fcda7bb3.entry.js} +1 -1
- package/lib/duet/{p-9f23897e.system.entry.js → p-fdf3ee51.system.entry.js} +1 -1
- package/lib/duet/{p-d26277f5.entry.js → p-ff048b43.entry.js} +1 -1
- package/lib/esm/action-new-window-9c8f7830.js +8 -0
- package/lib/esm/duet-action-button.entry.js +3 -3
- package/lib/esm/duet-alert.entry.js +1 -1
- package/lib/esm/duet-badge.entry.js +1 -1
- package/lib/esm/duet-banner.entry.js +9 -8
- package/lib/esm/duet-breadcrumb.entry.js +1 -1
- package/lib/esm/duet-breadcrumbs.entry.js +3 -3
- package/lib/esm/duet-button_2.entry.js +3 -3
- package/lib/esm/duet-callout.entry.js +1 -1
- package/lib/esm/duet-caption_4.entry.js +45 -21
- package/lib/esm/duet-card.entry.js +3 -3
- package/lib/esm/duet-checkbox.entry.js +1 -1
- package/lib/esm/duet-checkmark.entry.js +1 -1
- package/lib/esm/duet-chip.entry.js +1 -1
- package/lib/esm/duet-choice_2.entry.js +2 -2
- package/lib/esm/duet-collapsible.entry.js +2 -2
- package/lib/esm/duet-combobox.entry.js +1 -1
- package/lib/esm/duet-contact-card.entry.js +1 -1
- package/lib/esm/duet-cookie-consent.entry.js +1 -1
- package/lib/esm/duet-date-picker.entry.js +2 -2
- package/lib/esm/duet-divider_2.entry.js +3 -3
- package/lib/esm/duet-editable-table_3.entry.js +56 -9
- package/lib/esm/duet-empty-state.entry.js +1 -1
- package/lib/esm/duet-fieldset.entry.js +1 -1
- package/lib/esm/duet-file-chooser.entry.js +1 -1
- package/lib/esm/duet-footer.entry.js +2 -4
- package/lib/esm/duet-grid_2.entry.js +2 -2
- package/lib/esm/duet-header_2.entry.js +4 -4
- package/lib/esm/duet-hero.entry.js +1 -1
- package/lib/esm/duet-icon.entry.js +3 -3
- package/lib/esm/duet-input_2.entry.js +3 -3
- package/lib/esm/duet-layout.entry.js +1 -1
- package/lib/esm/duet-list_2.entry.js +1 -1
- package/lib/esm/duet-menu-bar-button.entry.js +2 -2
- package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
- package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
- package/lib/esm/duet-menu-bar-item.entry.js +2 -2
- package/lib/esm/duet-menu-bar-link.entry.js +2 -2
- package/lib/esm/duet-menu-bar.entry.js +2 -2
- package/lib/esm/duet-modal.entry.js +4 -4
- package/lib/esm/duet-multiselect.entry.js +1 -1
- package/lib/esm/duet-nav.entry.js +1 -1
- package/lib/esm/duet-notification_2.entry.js +1 -1
- package/lib/esm/duet-number-input.entry.js +1 -1
- package/lib/esm/duet-page-heading.entry.js +1 -1
- package/lib/esm/duet-pagination_2.entry.js +4 -4
- package/lib/esm/duet-popup-menu-item.entry.js +1 -1
- package/lib/esm/duet-popup-menu.entry.js +9 -4
- package/lib/esm/duet-progress.entry.js +1 -1
- package/lib/esm/duet-promo-card.entry.js +3 -3
- package/lib/esm/duet-radio_2.entry.js +1 -1
- package/lib/esm/duet-range-slider.entry.js +2 -2
- package/lib/esm/duet-scrollable_3.entry.js +3 -3
- package/lib/esm/duet-section-layout.entry.js +1 -1
- package/lib/esm/duet-select.entry.js +1 -1
- package/lib/esm/duet-shaped-image.entry.js +1 -1
- package/lib/esm/duet-show-more.entry.js +1 -1
- package/lib/esm/duet-slideout-lang.entry.js +1 -1
- package/lib/esm/duet-slideout-link.entry.js +1 -1
- package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
- package/lib/esm/duet-slideout-panel.entry.js +4 -4
- package/lib/esm/duet-slideout.entry.js +5 -5
- package/lib/esm/duet-step_2.entry.js +1 -1
- package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
- package/lib/esm/duet-submenu-bar-dropdown.entry.js +2 -2
- package/lib/esm/duet-submenu-bar-item.entry.js +2 -2
- package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
- package/lib/esm/duet-submenu-bar.entry.js +6 -5
- package/lib/esm/duet-textarea.entry.js +1 -1
- package/lib/esm/duet-toggle.entry.js +1 -1
- package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
- package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
- package/lib/esm/duet-toolbar-item.entry.js +1 -1
- package/lib/esm/duet-toolbar-link.entry.js +1 -1
- package/lib/esm/duet-toolbar.entry.js +1 -1
- package/lib/esm/duet-tooltip-button_2.entry.js +2 -2
- package/lib/esm/duet-tooltip.entry.js +3 -3
- package/lib/esm/duet-tray.entry.js +2 -2
- package/lib/esm/duet-upload-aria-status.entry.js +1 -1
- package/lib/esm/duet-upload-item.entry.js +9 -2
- package/lib/esm/duet-visually-hidden.entry.js +1 -1
- package/lib/esm/duet.js +3 -3
- package/lib/{dist-custom-elements/p-00c8a755.js → esm/floating-ui.dom.esm-34e0a5fa.js} +60 -20
- package/lib/esm/{focus-utils-82a898ac.js → focus-utils-c70f9fb9.js} +1 -1
- package/lib/esm/{index-28be88c1.js → index-3c6b5eb8.js} +1 -1
- package/lib/esm/loader.js +3 -3
- package/lib/esm/{token-utils-0c77cb3c.js → token-utils-be83d039.js} +1 -1
- package/lib/{dist-custom-elements/p-d81ec707.js → esm/tokens-94133fa9.js} +3 -0
- package/lib/esm/{tokens.module-c9866649.js → tokens.module-3547915d.js} +2 -0
- package/lib/esm-es5/action-new-window-9c8f7830.js +4 -0
- package/lib/esm-es5/duet-action-button.entry.js +1 -1
- package/lib/esm-es5/duet-alert.entry.js +1 -1
- package/lib/esm-es5/duet-badge.entry.js +1 -1
- package/lib/esm-es5/duet-banner.entry.js +1 -1
- package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
- package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
- package/lib/esm-es5/duet-button_2.entry.js +1 -1
- package/lib/esm-es5/duet-callout.entry.js +1 -1
- package/lib/esm-es5/duet-caption_4.entry.js +2 -2
- package/lib/esm-es5/duet-card.entry.js +1 -1
- package/lib/esm-es5/duet-checkbox.entry.js +1 -1
- package/lib/esm-es5/duet-checkmark.entry.js +1 -1
- package/lib/esm-es5/duet-chip.entry.js +1 -1
- package/lib/esm-es5/duet-choice_2.entry.js +1 -1
- package/lib/esm-es5/duet-collapsible.entry.js +1 -1
- package/lib/esm-es5/duet-combobox.entry.js +1 -1
- package/lib/esm-es5/duet-contact-card.entry.js +1 -1
- package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
- package/lib/esm-es5/duet-date-picker.entry.js +1 -1
- package/lib/esm-es5/duet-divider_2.entry.js +1 -1
- package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
- package/lib/esm-es5/duet-empty-state.entry.js +1 -1
- package/lib/esm-es5/duet-fieldset.entry.js +1 -1
- package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
- package/lib/esm-es5/duet-footer.entry.js +1 -1
- package/lib/esm-es5/duet-grid_2.entry.js +1 -1
- package/lib/esm-es5/duet-header_2.entry.js +1 -1
- package/lib/esm-es5/duet-hero.entry.js +1 -1
- package/lib/esm-es5/duet-icon.entry.js +1 -1
- package/lib/esm-es5/duet-input_2.entry.js +1 -1
- package/lib/esm-es5/duet-layout.entry.js +1 -1
- package/lib/esm-es5/duet-list_2.entry.js +1 -1
- package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
- package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
- package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +2 -2
- package/lib/esm-es5/duet-menu-bar-item.entry.js +1 -1
- package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
- package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
- package/lib/esm-es5/duet-modal.entry.js +1 -1
- package/lib/esm-es5/duet-multiselect.entry.js +1 -1
- package/lib/esm-es5/duet-nav.entry.js +1 -1
- package/lib/esm-es5/duet-notification_2.entry.js +1 -1
- package/lib/esm-es5/duet-number-input.entry.js +1 -1
- package/lib/esm-es5/duet-page-heading.entry.js +1 -1
- package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
- package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
- package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
- package/lib/esm-es5/duet-progress.entry.js +1 -1
- package/lib/esm-es5/duet-promo-card.entry.js +2 -2
- package/lib/esm-es5/duet-radio_2.entry.js +1 -1
- package/lib/esm-es5/duet-range-slider.entry.js +1 -1
- package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
- package/lib/esm-es5/duet-section-layout.entry.js +1 -1
- package/lib/esm-es5/duet-select.entry.js +1 -1
- package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
- package/lib/esm-es5/duet-show-more.entry.js +1 -1
- package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
- package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
- package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
- package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
- package/lib/esm-es5/duet-slideout.entry.js +1 -1
- package/lib/esm-es5/duet-step_2.entry.js +1 -1
- package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
- package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
- package/lib/esm-es5/duet-submenu-bar-item.entry.js +1 -1
- package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
- package/lib/esm-es5/duet-submenu-bar.entry.js +2 -2
- package/lib/esm-es5/duet-textarea.entry.js +1 -1
- package/lib/esm-es5/duet-toggle.entry.js +1 -1
- package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
- package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
- package/lib/esm-es5/duet-toolbar-item.entry.js +1 -1
- package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
- package/lib/esm-es5/duet-toolbar.entry.js +1 -1
- package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
- package/lib/esm-es5/duet-tooltip.entry.js +1 -1
- package/lib/esm-es5/duet-tray.entry.js +1 -1
- package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
- package/lib/esm-es5/duet-upload-item.entry.js +2 -2
- package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
- package/lib/esm-es5/duet.js +1 -1
- package/lib/esm-es5/floating-ui.dom.esm-34e0a5fa.js +4 -0
- package/lib/esm-es5/{focus-utils-82a898ac.js → focus-utils-c70f9fb9.js} +1 -1
- package/lib/esm-es5/{index-28be88c1.js → index-3c6b5eb8.js} +1 -1
- package/lib/esm-es5/loader.js +1 -1
- package/lib/esm-es5/{token-utils-0c77cb3c.js → token-utils-be83d039.js} +1 -1
- package/lib/esm-es5/tokens-94133fa9.js +4 -0
- package/lib/esm-es5/tokens.module-3547915d.js +4 -0
- package/lib/types/common-types.d.ts +1 -1
- package/lib/types/components/duet-link/duet-link.d.ts +13 -5
- package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +4 -0
- package/lib/types/components/duet-upload/duet-upload.d.ts +13 -0
- package/lib/types/components/duet-upload-item/duet-upload-item.d.ts +8 -0
- package/lib/types/components.d.ts +48 -6
- package/lib/types/utils/string-utils.d.ts +4 -0
- package/package.json +7 -6
- package/lib/cjs/action-arrow-right-24fe06be.js +0 -8
- package/lib/dist-custom-elements/p-6fa39608.js +0 -6
- package/lib/dist-custom-elements/p-e052b3b5.js +0 -169
- package/lib/duet/p-00c8a755.js +0 -4
- package/lib/duet/p-04423d37.system.entry.js +0 -4
- package/lib/duet/p-129bd497.system.entry.js +0 -4
- package/lib/duet/p-15fde8cc.system.js +0 -4
- package/lib/duet/p-1cf9481d.entry.js +0 -4
- package/lib/duet/p-1ededd77.system.js +0 -4
- package/lib/duet/p-20a0342c.entry.js +0 -4
- package/lib/duet/p-232940fa.system.js +0 -4
- package/lib/duet/p-2acaaa8b.entry.js +0 -4
- package/lib/duet/p-2ba2a50c.system.entry.js +0 -4
- package/lib/duet/p-3134bfb1.system.entry.js +0 -4
- package/lib/duet/p-5a031276.entry.js +0 -4
- package/lib/duet/p-69aa5532.system.entry.js +0 -4
- package/lib/duet/p-6fa39608.js +0 -4
- package/lib/duet/p-72fd7bb2.entry.js +0 -4
- package/lib/duet/p-81f6a1a9.system.entry.js +0 -4
- package/lib/duet/p-9a056716.entry.js +0 -4
- package/lib/duet/p-c0f44540.entry.js +0 -4
- package/lib/duet/p-c34022cb.entry.js +0 -4
- package/lib/duet/p-d81ec707.js +0 -4
- package/lib/duet/p-dd994793.system.js +0 -4
- package/lib/duet/p-ddd516cc.entry.js +0 -4
- package/lib/duet/p-e1868c94.system.js +0 -4
- package/lib/duet/p-f9932852.entry.js +0 -4
- package/lib/esm/action-arrow-right-f7d56681.js +0 -6
- package/lib/esm-es5/action-arrow-right-f7d56681.js +0 -4
- package/lib/esm-es5/floating-ui.dom.esm-efad5c89.js +0 -4
- package/lib/esm-es5/tokens-30d01e1d.js +0 -4
- package/lib/esm-es5/tokens.module-c9866649.js +0 -4
- /package/lib/cjs/{bodyScrollLock.es6-83f334d1.js → bodyScrollLock.es6-dd2d7d91.js} +0 -0
- /package/lib/dist-custom-elements/{p-62c7d9d4.js → p-33937fd7.js} +0 -0
- /package/lib/dist-custom-elements/{p-141e14d0.js → p-8354d1f1.js} +0 -0
- /package/lib/duet/{p-ed5a5071.system.js → p-49957220.system.js} +0 -0
- /package/lib/duet/{p-141e14d0.js → p-8354d1f1.js} +0 -0
- /package/lib/esm/{bodyScrollLock.es6-8dc7cca7.js → bodyScrollLock.es6-ecbf187e.js} +0 -0
- /package/lib/esm-es5/{bodyScrollLock.es6-8dc7cca7.js → bodyScrollLock.es6-ecbf187e.js} +0 -0
|
@@ -3,12 +3,13 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import chevronIcon from "@duetds/icons/lib/assets/action-arrow-right";
|
|
5
5
|
import downloadIcon from "@duetds/icons/lib/assets/action-download-small";
|
|
6
|
+
import newWindowIconLarge from "@duetds/icons/lib/assets/action-new-window";
|
|
6
7
|
import newWindowIcon from "@duetds/icons/lib/assets/action-new-window-small";
|
|
7
8
|
import { Build, Fragment, h, Host } from "@stencil/core";
|
|
8
9
|
import { DuetStringsDownloadLinkDefaults, DuetStringsExternalDefaults } from "../../common-strings";
|
|
9
10
|
import { inheritGlobalTheme } from "../../common/themeable-component";
|
|
10
11
|
import { connectLanguageChangeObserver, disconnectLanguageChangeObserver, getLanguage, getLocaleString, } from "../../utils/language-utils";
|
|
11
|
-
import { breakpointToToken } from "../../utils/token-utils";
|
|
12
|
+
import { breakpointToToken, getColorByName } from "../../utils/token-utils";
|
|
12
13
|
/**
|
|
13
14
|
* @part duet-link - piercing selector for styling the link
|
|
14
15
|
* @part duet-link-content - piercing selector for styling the link content wrapper
|
|
@@ -31,9 +32,11 @@ export class DuetLink {
|
|
|
31
32
|
this.tabToLink = false;
|
|
32
33
|
this.icon = undefined;
|
|
33
34
|
this.iconColor = "currentColor";
|
|
35
|
+
this.iconBackground = null;
|
|
34
36
|
this.iconResponsive = false;
|
|
35
37
|
this.padding = "auto";
|
|
36
38
|
this.isSmallScreen = false;
|
|
39
|
+
this.isMediumScreen = false;
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* Component lifecycle events.
|
|
@@ -42,6 +45,10 @@ export class DuetLink {
|
|
|
42
45
|
inheritGlobalTheme(this);
|
|
43
46
|
this.initMediaQuery();
|
|
44
47
|
this.resolvedDownload = this.resolveDownload();
|
|
48
|
+
// button variation renders a button element when no url is provided
|
|
49
|
+
if (this.variation === "button" && this.url === "#") {
|
|
50
|
+
this.url = undefined;
|
|
51
|
+
}
|
|
45
52
|
}
|
|
46
53
|
connectedCallback() {
|
|
47
54
|
connectLanguageChangeObserver(this, {
|
|
@@ -65,15 +72,18 @@ export class DuetLink {
|
|
|
65
72
|
return;
|
|
66
73
|
}
|
|
67
74
|
this.screenTestBound = this.screenTest.bind(this);
|
|
68
|
-
this.
|
|
69
|
-
this.
|
|
70
|
-
this.
|
|
75
|
+
this.mediaQuerySmall = window.matchMedia(breakpointToToken["xx-small"]);
|
|
76
|
+
this.mediaQueryMedium = window.matchMedia(breakpointToToken["medium"]);
|
|
77
|
+
this.isSmallScreen = this.mediaQuerySmall.matches;
|
|
78
|
+
this.mediaQuerySmall.addEventListener("change", this.screenTestBound);
|
|
79
|
+
this.mediaQueryMedium.addEventListener("change", this.screenTestBound);
|
|
71
80
|
}
|
|
72
81
|
destroyMediaQuery() {
|
|
73
|
-
if (Build.isServer
|
|
82
|
+
if (Build.isServer) {
|
|
74
83
|
return;
|
|
75
84
|
}
|
|
76
|
-
this.
|
|
85
|
+
this.mediaQuerySmall.removeEventListener("change", this.screenTestBound);
|
|
86
|
+
this.mediaQueryMedium.removeEventListener("change", this.screenTestBound);
|
|
77
87
|
}
|
|
78
88
|
screenTest(event) {
|
|
79
89
|
this.isSmallScreen = event.matches;
|
|
@@ -96,32 +106,50 @@ export class DuetLink {
|
|
|
96
106
|
}
|
|
97
107
|
return this.download;
|
|
98
108
|
}
|
|
99
|
-
|
|
100
|
-
|
|
109
|
+
renderDefaultContent() {
|
|
110
|
+
// Notice that the external icon needs to be placed right after the last word of the link.
|
|
111
|
+
// This is why we use &nbps; to keep everything on the same line.
|
|
112
|
+
return (h(Fragment, null, h("span", { class: "duet-link-content", part: "duet-link-content" }, h("slot", null)), Build.isBrowser && (this.resolvedDownload || this.external) && this.variation === "default" && (h(Fragment, null, h("span", { class: "duet-link-icon-tail" }, "\u00A0", h("duet-icon", { icon: this.resolvedDownload ? downloadIcon.svg : newWindowIcon.svg, size: "xx-small", margin: "none", color: "currentColor" }))))));
|
|
101
113
|
}
|
|
102
|
-
|
|
103
|
-
return (h(Fragment, null, this.icon && (h("span", { class: "block__icon" }, h("duet-icon", { size: this.iconResponsive ? (this.isSmallScreen ? "medium" : "large") : "x-small", name: this.icon, margin: "none", color: this.iconColor }))), h("span", { class: "block__content" }, this.
|
|
114
|
+
renderBlockContent() {
|
|
115
|
+
return (h(Fragment, null, this.icon && (h("span", { class: "block__icon" }, h("duet-icon", { size: this.iconResponsive ? (this.isSmallScreen ? "medium" : "large") : "x-small", name: this.icon, margin: "none", color: this.iconColor }))), h("span", { class: "block__content" }, this.renderDefaultContent()), h("span", { class: "block__chevron", part: "block-chevron" }, h("duet-icon", { class: "block__chevron-icon", icon: this.external ? newWindowIconLarge.svg : chevronIcon.svg, size: "x-small", margin: "none", color: "primary-dark" }))));
|
|
116
|
+
}
|
|
117
|
+
renderButtonContent() {
|
|
118
|
+
const iconWrapStyle = {
|
|
119
|
+
"background-color": getColorByName(this.iconBackground, this.theme),
|
|
120
|
+
};
|
|
121
|
+
return (h(Fragment, null, h("span", { class: "icon-wrap", style: iconWrapStyle }, h("duet-icon", { size: this.isMediumScreen ? "small" : "medium", name: this.icon, margin: "none", color: this.iconColor })), h("span", { class: "duet-link-content", part: "duet-link-content" }, h("slot", null)), h("duet-icon", { class: "block__chevron-icon", icon: this.external ? newWindowIconLarge.svg : chevronIcon.svg, size: "x-small", margin: "none", color: "primary-dark" })));
|
|
122
|
+
}
|
|
123
|
+
renderContent() {
|
|
124
|
+
switch (this.variation) {
|
|
125
|
+
case "default":
|
|
126
|
+
return this.renderDefaultContent();
|
|
127
|
+
case "block":
|
|
128
|
+
return this.renderBlockContent();
|
|
129
|
+
case "button":
|
|
130
|
+
return this.renderButtonContent();
|
|
131
|
+
}
|
|
104
132
|
}
|
|
105
133
|
/**
|
|
106
134
|
* render() function
|
|
107
135
|
* Always the last one in the class.
|
|
108
136
|
*/
|
|
109
137
|
render() {
|
|
110
|
-
|
|
111
|
-
// This is why we use &nbps; to keep everything on the same line.
|
|
138
|
+
const Tag = this.variation === "button" && !this.url ? "button" : "a";
|
|
112
139
|
return (h(Host, { class: {
|
|
113
|
-
|
|
114
|
-
} }, h(
|
|
140
|
+
[`duet-link-${this.variation}`]: true,
|
|
141
|
+
} }, h(Tag, { href: this.url, class: {
|
|
115
142
|
"duet-link": true,
|
|
116
143
|
"duet-link-is-external": this.external,
|
|
117
144
|
"duet-link-is-download": !!this.download,
|
|
118
145
|
"duet-link-has-icon": !!this.icon,
|
|
146
|
+
"duet-link-has-icon-background": !!this.iconBackground,
|
|
119
147
|
"duet-tab-to-link": this.tabToLink,
|
|
120
148
|
"duet-theme-turva": this.theme === "turva",
|
|
121
149
|
"duet-p-0": this.padding === "none",
|
|
122
150
|
[this.padding]: true,
|
|
123
151
|
[this.variation]: true,
|
|
124
|
-
}, target: this.download ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.getAccessibleLabel(), id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, this.
|
|
152
|
+
}, target: this.download || !this.url ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.getAccessibleLabel(), id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, this.renderContent())));
|
|
125
153
|
}
|
|
126
154
|
static get is() { return "duet-link"; }
|
|
127
155
|
static get encapsulation() { return "shadow"; }
|
|
@@ -143,7 +171,7 @@ export class DuetLink {
|
|
|
143
171
|
"mutable": false,
|
|
144
172
|
"complexType": {
|
|
145
173
|
"original": "DuetLinkVariation",
|
|
146
|
-
"resolved": "\"block\" | \"default\"",
|
|
174
|
+
"resolved": "\"block\" | \"button\" | \"default\"",
|
|
147
175
|
"references": {
|
|
148
176
|
"DuetLinkVariation": {
|
|
149
177
|
"location": "import",
|
|
@@ -348,7 +376,7 @@ export class DuetLink {
|
|
|
348
376
|
},
|
|
349
377
|
"url": {
|
|
350
378
|
"type": "string",
|
|
351
|
-
"mutable":
|
|
379
|
+
"mutable": true,
|
|
352
380
|
"complexType": {
|
|
353
381
|
"original": "string",
|
|
354
382
|
"resolved": "string",
|
|
@@ -436,7 +464,7 @@ export class DuetLink {
|
|
|
436
464
|
"optional": false,
|
|
437
465
|
"docs": {
|
|
438
466
|
"tags": [],
|
|
439
|
-
"text": "Icon to display on the left side of the
|
|
467
|
+
"text": "Icon to display on the left side of the link text (only with \"block\" and \"button\" variations)"
|
|
440
468
|
},
|
|
441
469
|
"attribute": "icon",
|
|
442
470
|
"reflect": false
|
|
@@ -459,12 +487,36 @@ export class DuetLink {
|
|
|
459
487
|
"optional": false,
|
|
460
488
|
"docs": {
|
|
461
489
|
"tags": [],
|
|
462
|
-
"text": "Color of the icon to display (only with \"block\"
|
|
490
|
+
"text": "Color of the icon to display (only with \"block\" and \"button\" variations)"
|
|
463
491
|
},
|
|
464
492
|
"attribute": "icon-color",
|
|
465
493
|
"reflect": false,
|
|
466
494
|
"defaultValue": "\"currentColor\""
|
|
467
495
|
},
|
|
496
|
+
"iconBackground": {
|
|
497
|
+
"type": "string",
|
|
498
|
+
"mutable": false,
|
|
499
|
+
"complexType": {
|
|
500
|
+
"original": "DuetColor",
|
|
501
|
+
"resolved": "string",
|
|
502
|
+
"references": {
|
|
503
|
+
"DuetColor": {
|
|
504
|
+
"location": "import",
|
|
505
|
+
"path": "../../common-types",
|
|
506
|
+
"id": "src/common-types.d.ts::DuetColor"
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
},
|
|
510
|
+
"required": false,
|
|
511
|
+
"optional": false,
|
|
512
|
+
"docs": {
|
|
513
|
+
"tags": [],
|
|
514
|
+
"text": "Color of the icon to display (only with \"button\" variation)"
|
|
515
|
+
},
|
|
516
|
+
"attribute": "icon-background",
|
|
517
|
+
"reflect": false,
|
|
518
|
+
"defaultValue": "null"
|
|
519
|
+
},
|
|
468
520
|
"iconResponsive": {
|
|
469
521
|
"type": "boolean",
|
|
470
522
|
"mutable": false,
|
|
@@ -511,7 +563,8 @@ export class DuetLink {
|
|
|
511
563
|
}
|
|
512
564
|
static get states() {
|
|
513
565
|
return {
|
|
514
|
-
"isSmallScreen": {}
|
|
566
|
+
"isSmallScreen": {},
|
|
567
|
+
"isMediumScreen": {}
|
|
515
568
|
};
|
|
516
569
|
}
|
|
517
570
|
static get methods() {
|
|
@@ -210,7 +210,7 @@ export class DuetModal {
|
|
|
210
210
|
"duet-modal-gutter-small": this.gutterSize === "small",
|
|
211
211
|
"duet-modal-gutter-medium": this.gutterSize === "medium",
|
|
212
212
|
"duet-modal-gutter-large": this.gutterSize === "large",
|
|
213
|
-
} }, h("div", { class: "duet-modal-header" }, h("span", { class: "duet-modal-inner-slot-top" }, h("slot", { name: "top" })), this.icon && h("duet-icon", { name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (h("duet-heading", { "visual-level": (_a = this.headingVisualLevel) !== null && _a !== void 0 ? _a : this.headingLevel, level: this.headingLevel, theme: this.theme, id: this.modalId }, this.heading))), h("
|
|
213
|
+
} }, h("div", { class: "duet-modal-header" }, h("span", { class: "duet-modal-inner-slot-top" }, h("slot", { name: "top" })), this.icon && h("duet-icon", { name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (h("duet-heading", { "visual-level": (_a = this.headingVisualLevel) !== null && _a !== void 0 ? _a : this.headingLevel, level: this.headingLevel, theme: this.theme, id: this.modalId }, this.heading))), h("div", { class: "duet-modal-inner-slot-default", id: this.slotDefaultId }, h("slot", null))))), h(FocusGuard, { moveFocusTo: this.buttonEl })));
|
|
214
214
|
}
|
|
215
215
|
static get is() { return "duet-modal"; }
|
|
216
216
|
static get encapsulation() { return "shadow"; }
|
|
@@ -29,8 +29,12 @@ export class DuetPopupMenu {
|
|
|
29
29
|
if (!this.openButton) {
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
|
+
const middleware = [
|
|
33
|
+
offset({ mainAxis: this.mainAxisOffset, crossAxis: this.crossAxisOffset }),
|
|
34
|
+
flip({ mainAxis: !this.forcePlacement }),
|
|
35
|
+
];
|
|
32
36
|
const coordinates = await computePosition(this.openButton, this.menuElement, {
|
|
33
|
-
middleware
|
|
37
|
+
middleware,
|
|
34
38
|
placement: this.placement,
|
|
35
39
|
strategy: this.position,
|
|
36
40
|
});
|
|
@@ -45,6 +49,7 @@ export class DuetPopupMenu {
|
|
|
45
49
|
this.theme = "";
|
|
46
50
|
this.controller = undefined;
|
|
47
51
|
this.placement = "bottom-start";
|
|
52
|
+
this.forcePlacement = false;
|
|
48
53
|
this.position = "absolute";
|
|
49
54
|
this.mainAxisOffset = 0;
|
|
50
55
|
this.crossAxisOffset = 0;
|
|
@@ -341,6 +346,24 @@ export class DuetPopupMenu {
|
|
|
341
346
|
"reflect": false,
|
|
342
347
|
"defaultValue": "\"bottom-start\""
|
|
343
348
|
},
|
|
349
|
+
"forcePlacement": {
|
|
350
|
+
"type": "boolean",
|
|
351
|
+
"mutable": false,
|
|
352
|
+
"complexType": {
|
|
353
|
+
"original": "boolean",
|
|
354
|
+
"resolved": "boolean",
|
|
355
|
+
"references": {}
|
|
356
|
+
},
|
|
357
|
+
"required": false,
|
|
358
|
+
"optional": false,
|
|
359
|
+
"docs": {
|
|
360
|
+
"tags": [],
|
|
361
|
+
"text": "Force placement."
|
|
362
|
+
},
|
|
363
|
+
"attribute": "force-placement",
|
|
364
|
+
"reflect": false,
|
|
365
|
+
"defaultValue": "false"
|
|
366
|
+
},
|
|
344
367
|
"position": {
|
|
345
368
|
"type": "string",
|
|
346
369
|
"mutable": true,
|
|
@@ -166,7 +166,7 @@ export class DuetRangeStepper {
|
|
|
166
166
|
return (h("div", { class: {
|
|
167
167
|
"duet-range-stepper": true,
|
|
168
168
|
"duet-theme-turva": this.theme === "turva",
|
|
169
|
-
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, h("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), h("duet-action-button", { class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small" }), h("duet-action-button", { class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small" })));
|
|
169
|
+
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, h("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), h("duet-action-button", { class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small", title: "" }), h("duet-action-button", { class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small", title: "" })));
|
|
170
170
|
}
|
|
171
171
|
static get is() { return "duet-range-stepper"; }
|
|
172
172
|
static get encapsulation() { return "shadow"; }
|
|
@@ -43,7 +43,8 @@ export class DuetSubmenuBar {
|
|
|
43
43
|
this.checkIfHasItems = () => {
|
|
44
44
|
const hasDropdownLinks = !!this.element.querySelector("duet-submenu-bar-dropdown-link");
|
|
45
45
|
const hasLinks = !!this.element.querySelector("duet-submenu-bar-link");
|
|
46
|
-
|
|
46
|
+
const hasItems = !!this.element.querySelector("duet-submenu-bar-item");
|
|
47
|
+
return hasDropdownLinks || hasLinks || hasItems;
|
|
47
48
|
};
|
|
48
49
|
this.mobile = true;
|
|
49
50
|
this.bodyScroll = true;
|
|
@@ -108,7 +109,7 @@ export class DuetSubmenuBar {
|
|
|
108
109
|
render() {
|
|
109
110
|
return (h(Host, null, h("nav", { class: { "duet-submenu-bar": true, "duet-theme-turva": this.theme === "turva" }, "aria-label": this.accessibleLabel }, this.hasItems && (h("button", { ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
|
|
110
111
|
active: this.open,
|
|
111
|
-
}, onClick: this.onClick }, h("
|
|
112
|
+
}, onClick: this.onClick }, h("span", { class: "label" }, h("slot", { name: "label" }), h("duet-icon", { theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), h("div", { class: {
|
|
112
113
|
"menu-container": true,
|
|
113
114
|
hidden: !this.open,
|
|
114
115
|
}, role: "presentation" }, h("div", { role: this.mobile ? "menu" : null, id: "menu", "aria-labelledby": this.mobile ? "button" : null, "aria-expanded": this.mobile ? (this.open ? "true" : "false") : null, class: {
|
|
@@ -6,6 +6,7 @@ import { inheritGlobalTheme } from "../../common";
|
|
|
6
6
|
import { createID } from "../../utils/create-id";
|
|
7
7
|
import { debounce } from "../../utils/js-utils";
|
|
8
8
|
import { getLocaleString, sanitizeString } from "../../utils/language-utils";
|
|
9
|
+
import { parsePossibleJSON } from "../../utils/string-utils";
|
|
9
10
|
import errorCodes from "./errorcodes.json";
|
|
10
11
|
import { getI18nError } from "./errorcodes.utils";
|
|
11
12
|
import { UploadItemHeader } from "./upload-item-header";
|
|
@@ -108,22 +109,22 @@ export class DuetUpload {
|
|
|
108
109
|
};
|
|
109
110
|
this.mapFilesToUploadItems = (data, group, showCategory, filteredActions) => {
|
|
110
111
|
if (group === this.DefaultGroups.success) {
|
|
111
|
-
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "success", data: data, showLinks: this.showLinks, linkClickEvent: this.emitEvent ? this.linkClick : undefined, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
|
|
112
|
+
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "success", data: data, showLinks: this.showLinks, linkClickEvent: this.emitEvent ? this.linkClick : undefined, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
|
|
112
113
|
this.itemRefs.set(data.uid, item);
|
|
113
114
|
} }));
|
|
114
115
|
}
|
|
115
116
|
else if (group === this.DefaultGroups.inprogress) {
|
|
116
|
-
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "inprogress", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
|
|
117
|
+
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "inprogress", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
|
|
117
118
|
this.itemRefs.set(data.uid, item);
|
|
118
119
|
} }));
|
|
119
120
|
}
|
|
120
121
|
else if (group === this.DefaultGroups.pending) {
|
|
121
|
-
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "pending", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
|
|
122
|
+
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "pending", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
|
|
122
123
|
this.itemRefs.set(data.uid, item);
|
|
123
124
|
} }));
|
|
124
125
|
}
|
|
125
126
|
else if (group === this.DefaultGroups.failure) {
|
|
126
|
-
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "failure", data: data, showLinks: this.showLinks, errorCodes: this.errorCodes, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
|
|
127
|
+
return (h("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "failure", data: data, showLinks: this.showLinks, errorCodes: this.errorCodes, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
|
|
127
128
|
this.itemRefs.set(data.uid, item);
|
|
128
129
|
} }));
|
|
129
130
|
}
|
|
@@ -609,6 +610,11 @@ export class DuetUpload {
|
|
|
609
610
|
this.headerHeadingLevel = "h3";
|
|
610
611
|
this.hideHeader = false;
|
|
611
612
|
this.emitEvent = false;
|
|
613
|
+
this.actionButtonTitles = {
|
|
614
|
+
cancel: false,
|
|
615
|
+
delete: false,
|
|
616
|
+
};
|
|
617
|
+
this.renameDuplicates = false;
|
|
612
618
|
this.groups = [
|
|
613
619
|
{
|
|
614
620
|
id: this.DefaultGroups.success,
|
|
@@ -663,6 +669,7 @@ export class DuetUpload {
|
|
|
663
669
|
this.listenForActionEvents();
|
|
664
670
|
this.onReady();
|
|
665
671
|
this.externalUploadButton = document.querySelector(`#${this.externalUploadButtonId}`);
|
|
672
|
+
this.processedButtonTitles = parsePossibleJSON(this.actionButtonTitles);
|
|
666
673
|
}
|
|
667
674
|
componentWillRender() {
|
|
668
675
|
// listen to the events from the component
|
|
@@ -811,12 +818,50 @@ export class DuetUpload {
|
|
|
811
818
|
// don't present server issues to user on deletes, just remove them from the visible list
|
|
812
819
|
return makeXhrRequest(options);
|
|
813
820
|
}
|
|
821
|
+
getRenamedFileName(newFileName, extension) {
|
|
822
|
+
const re = new RegExp(`${newFileName}_\\d+\\.${extension}`);
|
|
823
|
+
const lastFileName = Array.from(this.files.entries())
|
|
824
|
+
.map(entry => {
|
|
825
|
+
const [key, _] = entry;
|
|
826
|
+
return key;
|
|
827
|
+
})
|
|
828
|
+
.filter(existingFileName => {
|
|
829
|
+
return re.test(existingFileName) || existingFileName === `${newFileName}.${extension}`;
|
|
830
|
+
})
|
|
831
|
+
.sort()
|
|
832
|
+
.pop()
|
|
833
|
+
.split(".")
|
|
834
|
+
.slice(0, -1)
|
|
835
|
+
.join(".");
|
|
836
|
+
if (lastFileName === newFileName) {
|
|
837
|
+
return `${newFileName}_1.${extension}`;
|
|
838
|
+
}
|
|
839
|
+
const lastFileNumber = parseInt(lastFileName.split("_").pop());
|
|
840
|
+
return `${newFileName}_${lastFileNumber + 1}.${extension}`;
|
|
841
|
+
}
|
|
842
|
+
renameFiles(files) {
|
|
843
|
+
return files.map(file => {
|
|
844
|
+
if (this.files.get(file.name)) {
|
|
845
|
+
const splitName = file.name.split(".");
|
|
846
|
+
const extension = splitName.pop();
|
|
847
|
+
const nameWithoutExtension = splitName.join(".");
|
|
848
|
+
const newName = this.getRenamedFileName(nameWithoutExtension, extension);
|
|
849
|
+
return new File([file], newName, {
|
|
850
|
+
type: file.type,
|
|
851
|
+
lastModified: file.lastModified,
|
|
852
|
+
});
|
|
853
|
+
}
|
|
854
|
+
else {
|
|
855
|
+
return file;
|
|
856
|
+
}
|
|
857
|
+
});
|
|
858
|
+
}
|
|
814
859
|
/**
|
|
815
860
|
* Component event handling.
|
|
816
861
|
*/
|
|
817
862
|
async onChange(ev) {
|
|
818
863
|
var _a;
|
|
819
|
-
|
|
864
|
+
let selectedFiles = Array.from((_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.files);
|
|
820
865
|
// FileList is a nice array like structure but
|
|
821
866
|
// to ensure uniqueness of files we use a mapping structure and
|
|
822
867
|
// key to the name (makes it easier to delete as well)
|
|
@@ -833,6 +878,9 @@ export class DuetUpload {
|
|
|
833
878
|
return;
|
|
834
879
|
}
|
|
835
880
|
if (selectedFiles) {
|
|
881
|
+
if (this.renameDuplicates) {
|
|
882
|
+
selectedFiles = this.renameFiles(selectedFiles);
|
|
883
|
+
}
|
|
836
884
|
for (const item of selectedFiles) {
|
|
837
885
|
const { valid, errorMessage, errorType, errorSystem } = validateFile(item, {
|
|
838
886
|
maxBytes: this.maxBytes,
|
|
@@ -1914,6 +1962,48 @@ export class DuetUpload {
|
|
|
1914
1962
|
"reflect": false,
|
|
1915
1963
|
"defaultValue": "false"
|
|
1916
1964
|
},
|
|
1965
|
+
"actionButtonTitles": {
|
|
1966
|
+
"type": "string",
|
|
1967
|
+
"mutable": false,
|
|
1968
|
+
"complexType": {
|
|
1969
|
+
"original": "string | UploadActionButtonTitles",
|
|
1970
|
+
"resolved": "string | { [actionName: string]: boolean | DuetLangObject; }",
|
|
1971
|
+
"references": {
|
|
1972
|
+
"UploadActionButtonTitles": {
|
|
1973
|
+
"location": "import",
|
|
1974
|
+
"path": "../duet-upload-item/duet-upload-item",
|
|
1975
|
+
"id": "src/components/duet-upload-item/duet-upload-item.tsx::UploadActionButtonTitles"
|
|
1976
|
+
}
|
|
1977
|
+
}
|
|
1978
|
+
},
|
|
1979
|
+
"required": false,
|
|
1980
|
+
"optional": false,
|
|
1981
|
+
"docs": {
|
|
1982
|
+
"tags": [],
|
|
1983
|
+
"text": "Map action name to DuetLangObject or boolean. Sets upload item action buttons titles\n(show as DOM tooltip when hovering)."
|
|
1984
|
+
},
|
|
1985
|
+
"attribute": "action-button-titles",
|
|
1986
|
+
"reflect": false,
|
|
1987
|
+
"defaultValue": "{\n cancel: false,\n delete: false,\n }"
|
|
1988
|
+
},
|
|
1989
|
+
"renameDuplicates": {
|
|
1990
|
+
"type": "boolean",
|
|
1991
|
+
"mutable": false,
|
|
1992
|
+
"complexType": {
|
|
1993
|
+
"original": "boolean",
|
|
1994
|
+
"resolved": "boolean",
|
|
1995
|
+
"references": {}
|
|
1996
|
+
},
|
|
1997
|
+
"required": false,
|
|
1998
|
+
"optional": false,
|
|
1999
|
+
"docs": {
|
|
2000
|
+
"tags": [],
|
|
2001
|
+
"text": "Use rename-duplicates to auto rename files with the same name instead of replacing them."
|
|
2002
|
+
},
|
|
2003
|
+
"attribute": "rename-duplicates",
|
|
2004
|
+
"reflect": false,
|
|
2005
|
+
"defaultValue": "false"
|
|
2006
|
+
},
|
|
1917
2007
|
"groups": {
|
|
1918
2008
|
"type": "unknown",
|
|
1919
2009
|
"mutable": false,
|
|
@@ -28,6 +28,7 @@ export class DuetUploadItem {
|
|
|
28
28
|
this.type = undefined;
|
|
29
29
|
this.showLinks = undefined;
|
|
30
30
|
this.actions = undefined;
|
|
31
|
+
this.buttonTitles = undefined;
|
|
31
32
|
this.label = undefined;
|
|
32
33
|
this.categoryLabel = undefined;
|
|
33
34
|
this.errorCodes = undefined;
|
|
@@ -65,6 +66,12 @@ export class DuetUploadItem {
|
|
|
65
66
|
return uploaded && url && this.showLinks ? (h("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" }, h("duet-link", { class: "file-link", onClick: this.onLinkClick, url: url }, ContentName), h("duet-spacer", { size: "xx-small", direction: "horizontal" }), SizeText)) : (h("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" }, ContentName, h("duet-spacer", { size: "xx-small", direction: "horizontal" }), SizeText));
|
|
66
67
|
}
|
|
67
68
|
}
|
|
69
|
+
getActionButtonTitle(actionItem) {
|
|
70
|
+
if (this.buttonTitles[actionItem.name] === true || this.buttonTitles[actionItem.name] === false) {
|
|
71
|
+
return actionItem;
|
|
72
|
+
}
|
|
73
|
+
return getLocaleString(this.buttonTitles[actionItem.name]);
|
|
74
|
+
}
|
|
68
75
|
render() {
|
|
69
76
|
const { uid, meta, item } = this.data;
|
|
70
77
|
const Badges = meta && meta.badges ? (h("span", null, meta.badges.map(badgeText => (h("duet-badge", { color: "primary" }, badgeText))))) : undefined;
|
|
@@ -72,7 +79,7 @@ export class DuetUploadItem {
|
|
|
72
79
|
return (h("div", { class: {
|
|
73
80
|
"upload-item-row": true,
|
|
74
81
|
} }, this.showCategory && (h("div", { class: "item-categories" }, h("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.categoryLabel)), Badges)), h("div", { class: { "item-name": true, "no-category": !this.showCategory } }, !!this.label && (h("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.label))), this.getFileNameLine()), h("div", { class: "item-actions" }, this.actions.map(actionItem => {
|
|
75
|
-
return (h("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle:
|
|
82
|
+
return (h("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle: this.getActionButtonTitle(actionItem), ref: button => (this.actionButton = button) }));
|
|
76
83
|
}))));
|
|
77
84
|
}
|
|
78
85
|
static get is() { return "duet-upload-item"; }
|
|
@@ -190,6 +197,27 @@ export class DuetUploadItem {
|
|
|
190
197
|
"attribute": "actions",
|
|
191
198
|
"reflect": false
|
|
192
199
|
},
|
|
200
|
+
"buttonTitles": {
|
|
201
|
+
"type": "unknown",
|
|
202
|
+
"mutable": false,
|
|
203
|
+
"complexType": {
|
|
204
|
+
"original": "UploadActionButtonTitles",
|
|
205
|
+
"resolved": "{ [actionName: string]: boolean | DuetLangObject; }",
|
|
206
|
+
"references": {
|
|
207
|
+
"UploadActionButtonTitles": {
|
|
208
|
+
"location": "local",
|
|
209
|
+
"path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-upload-item/duet-upload-item.tsx",
|
|
210
|
+
"id": "src/components/duet-upload-item/duet-upload-item.tsx::UploadActionButtonTitles"
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
"required": false,
|
|
215
|
+
"optional": false,
|
|
216
|
+
"docs": {
|
|
217
|
+
"tags": [],
|
|
218
|
+
"text": "buttonTitles."
|
|
219
|
+
}
|
|
220
|
+
},
|
|
193
221
|
"label": {
|
|
194
222
|
"type": "unknown",
|
|
195
223
|
"mutable": false,
|
|
@@ -280,7 +308,7 @@ export class DuetUploadItem {
|
|
|
280
308
|
"EventEmitter": {
|
|
281
309
|
"location": "import",
|
|
282
310
|
"path": "@stencil/core",
|
|
283
|
-
"id": ""
|
|
311
|
+
"id": "../../node_modules/@stencil/core/internal/stencil-core/index.d.ts::EventEmitter"
|
|
284
312
|
},
|
|
285
313
|
"DuetUploadEvent": {
|
|
286
314
|
"location": "import",
|
|
@@ -51,3 +51,9 @@ export const convertHtmlQuotes = string => {
|
|
|
51
51
|
}
|
|
52
52
|
return string;
|
|
53
53
|
};
|
|
54
|
+
/**
|
|
55
|
+
* Converts the first letter of the string to upper case. Note that with non-latin scrips this may not produce expected results
|
|
56
|
+
*/
|
|
57
|
+
export const upperCaseFirst = (string) => {
|
|
58
|
+
return string && `${string[0].toUpperCase()}${string.slice(1)}`;
|
|
59
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import { D as DuetActionButton$1, d as defineCustomElement$1 } from './p-
|
|
4
|
+
import { D as DuetActionButton$1, d as defineCustomElement$1 } from './p-95edd984.js';
|
|
5
5
|
|
|
6
6
|
const DuetActionButton = DuetActionButton$1;
|
|
7
7
|
const defineCustomElement = defineCustomElement$1;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import { D as DuetAlert$1, d as defineCustomElement$1 } from './p-
|
|
4
|
+
import { D as DuetAlert$1, d as defineCustomElement$1 } from './p-70db33ff.js';
|
|
5
5
|
|
|
6
6
|
const DuetAlert = DuetAlert$1;
|
|
7
7
|
const defineCustomElement = defineCustomElement$1;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import { D as DuetBadge$1, d as defineCustomElement$1 } from './p-
|
|
4
|
+
import { D as DuetBadge$1, d as defineCustomElement$1 } from './p-c9e9fcdd.js';
|
|
5
5
|
|
|
6
6
|
const DuetBadge = DuetBadge$1;
|
|
7
7
|
const defineCustomElement = defineCustomElement$1;
|