@duetds/components 10.0.0-alpha.3 → 10.0.0-alpha.31
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 +11811 -4285
- package/hydrate/index.mjs +46055 -0
- package/lib/cjs/_commonjsHelpers-4N64IRaP.js +10 -0
- package/lib/cjs/{a11y-utils-8177cf00.js → a11y-utils-DDfmTUFZ.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-718a3704.js → app-globals-BUWupN9p.js} +2 -2
- package/lib/cjs/{common-strings-2984301e.js → common-strings-CSqtNIxt.js} +29 -0
- package/lib/cjs/duet-action-button.cjs.entry.js +84 -29
- package/lib/cjs/duet-alert.cjs.entry.js +102 -48
- package/lib/cjs/duet-badge.cjs.entry.js +31 -9
- package/lib/cjs/duet-banner.cjs.entry.js +71 -28
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +37 -26
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +20 -14
- package/lib/cjs/duet-button_2.cjs.entry.js +157 -74
- package/lib/cjs/duet-callout.cjs.entry.js +13 -10
- package/lib/cjs/duet-caption_4.cjs.entry.js +211 -75
- package/lib/cjs/duet-card.cjs.entry.js +95 -34
- package/lib/cjs/duet-checkbox.cjs.entry.js +68 -32
- package/lib/cjs/duet-checkmark.cjs.entry.js +21 -9
- package/lib/cjs/duet-chip.cjs.entry.js +356 -0
- package/lib/cjs/duet-choice_2.cjs.entry.js +276 -128
- package/lib/cjs/duet-collapsible.cjs.entry.js +94 -29
- package/lib/cjs/duet-combobox.cjs.entry.js +85 -48
- package/lib/cjs/duet-contact-card.cjs.entry.js +17 -18
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +14 -11
- package/lib/cjs/duet-date-picker.cjs.entry.js +163 -57
- package/lib/cjs/duet-divider_2.cjs.entry.js +30 -14
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +553 -210
- package/lib/cjs/duet-empty-state.cjs.entry.js +15 -9
- package/lib/cjs/duet-fieldset.cjs.entry.js +51 -18
- package/lib/cjs/duet-file-chooser.cjs.entry.js +18 -11
- package/lib/cjs/duet-footer.cjs.entry.js +56 -30
- package/lib/cjs/duet-grid_2.cjs.entry.js +165 -64
- package/lib/cjs/duet-header_2.cjs.entry.js +302 -91
- package/lib/cjs/duet-hero.cjs.entry.js +155 -32
- package/lib/cjs/duet-icon.cjs.entry.js +64 -20
- package/lib/cjs/duet-indicator.cjs.entry.js +61 -0
- package/lib/cjs/duet-input_2.cjs.entry.js +204 -86
- package/lib/cjs/duet-layout.cjs.entry.js +33 -13
- package/lib/cjs/duet-list_2.cjs.entry.js +58 -14
- package/lib/cjs/duet-menu-bar-button.cjs.entry.js +24 -16
- package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +19 -14
- package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +21 -16
- package/lib/cjs/duet-menu-bar-item.cjs.entry.js +40 -19
- package/lib/cjs/duet-menu-bar-link.cjs.entry.js +18 -10
- package/lib/cjs/duet-menu-bar.cjs.entry.js +37 -58
- package/lib/cjs/duet-modal.cjs.entry.js +122 -35
- package/lib/cjs/duet-multiselect.cjs.entry.js +88 -42
- package/lib/cjs/duet-nav.cjs.entry.js +12 -8
- package/lib/cjs/duet-notification_2.cjs.entry.js +98 -32
- package/lib/cjs/duet-number-input.cjs.entry.js +185 -70
- package/lib/cjs/duet-overlay.cjs.entry.js +36 -14
- package/lib/cjs/duet-page-heading.cjs.entry.js +16 -11
- package/lib/cjs/duet-pagination_2.cjs.entry.js +162 -87
- package/lib/cjs/duet-panel.cjs.entry.js +53 -0
- package/lib/cjs/duet-phone-input.cjs.entry.js +2072 -0
- package/lib/cjs/duet-popup-menu_2.cjs.entry.js +552 -0
- package/lib/cjs/duet-progress.cjs.entry.js +32 -13
- package/lib/cjs/duet-promo-card.cjs.entry.js +27 -13
- package/lib/cjs/duet-radio_2.cjs.entry.js +114 -55
- package/lib/cjs/duet-range-slider.cjs.entry.js +73 -37
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +269 -130
- package/lib/cjs/duet-section-layout.cjs.entry.js +17 -10
- package/lib/cjs/duet-select.cjs.entry.js +89 -43
- package/lib/cjs/duet-shaped-image.cjs.entry.js +16 -11
- package/lib/cjs/duet-share-chart-item.cjs.entry.js +22 -0
- package/lib/cjs/duet-share-chart.cjs.entry.js +85 -0
- package/lib/cjs/duet-show-more.cjs.entry.js +81 -38
- package/lib/cjs/duet-slideout-lang.cjs.entry.js +10 -10
- package/lib/cjs/duet-slideout-link.cjs.entry.js +61 -10
- package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +25 -14
- package/lib/cjs/duet-slideout-panel.cjs.entry.js +50 -36
- package/lib/cjs/duet-slideout.cjs.entry.js +110 -60
- package/lib/cjs/duet-status-icon.cjs.entry.js +99 -0
- package/lib/cjs/duet-step_2.cjs.entry.js +72 -24
- package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +25 -10
- package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +27 -18
- package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +40 -19
- package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +18 -9
- package/lib/cjs/duet-submenu-bar.cjs.entry.js +27 -21
- package/lib/cjs/duet-textarea.cjs.entry.js +109 -50
- package/lib/cjs/duet-toggle.cjs.entry.js +50 -29
- package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +22 -11
- package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +27 -16
- package/lib/cjs/duet-toolbar-item.cjs.entry.js +46 -19
- package/lib/cjs/duet-toolbar-link.cjs.entry.js +21 -10
- package/lib/cjs/duet-toolbar.cjs.entry.js +12 -10
- package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +24 -27
- package/lib/cjs/duet-tooltip.cjs.entry.js +98 -46
- package/lib/cjs/duet-tray.cjs.entry.js +63 -24
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +30 -11
- package/lib/cjs/duet-upload-item.cjs.entry.js +12 -22
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +4 -7
- package/lib/cjs/duet.cjs.js +8 -8
- package/lib/cjs/{errorcodes.utils-4e8a9de4.js → errorcodes.utils-HU_3reMl.js} +2 -2
- package/lib/cjs/floating-ui.dom.browser.min-Cj0r5YDz.js +709 -0
- package/lib/cjs/{focus-utils-2a0030aa.js → focus-utils-DHGNKs9U.js} +1 -1
- package/lib/cjs/form-search-CzPfHB80.js +21 -0
- package/lib/cjs/index-CKsfMbRW.js +3107 -0
- package/lib/cjs/{keyboard-utils-681e11ec.js → keyboard-utils-D9UlHbik.js} +4 -0
- package/lib/cjs/{label-2abeac23.js → label-DbnS5tex.js} +1 -1
- package/lib/cjs/{language-utils-b5940c7b.js → language-utils-CYOjMfnd.js} +10 -2
- package/lib/cjs/loader.cjs.js +3 -5
- package/lib/cjs/{slot-utils-382633cf.js → slot-utils-D4QyzHw3.js} +6 -1
- package/lib/cjs/{teleport-c6f8391a.js → teleport-D5NDbuu0.js} +22 -7
- package/lib/cjs/themeable-component-BuC0WY98.js +74 -0
- package/lib/cjs/{token-utils-5000595c.js → token-utils-COKjUxmn.js} +80 -9
- package/lib/cjs/{tokens-57e06fe4.js → tokens-9aevMbB1.js} +150 -8
- package/lib/cjs/{tokens.module-7c947029.js → tokens.module-Bhh9B2g8.js} +99 -3
- package/lib/cjs/{watch-options-30a12622.js → watch-options-D4JNsU3B.js} +0 -20
- package/lib/collection/collection-manifest.json +7 -1
- package/lib/collection/common/themeable-component.js +61 -3
- package/lib/collection/common-strings.js +27 -0
- package/lib/collection/components/duet-action-button/duet-action-button.css +29 -12
- package/lib/collection/components/duet-action-button/duet-action-button.js +92 -33
- package/lib/collection/components/duet-alert/duet-alert.css +88 -59
- package/lib/collection/components/duet-alert/duet-alert.js +141 -57
- package/lib/collection/components/duet-badge/duet-badge.css +24 -9
- package/lib/collection/components/duet-badge/duet-badge.js +30 -6
- package/lib/collection/components/duet-banner/duet-banner.css +50 -24
- package/lib/collection/components/duet-banner/duet-banner.js +94 -29
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.css +10 -8
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +26 -28
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.css +18 -7
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +15 -6
- package/lib/collection/components/duet-button/duet-button.css +166 -48
- package/lib/collection/components/duet-button/duet-button.js +175 -91
- package/lib/collection/components/duet-callout/duet-callout.css +7 -2
- package/lib/collection/components/duet-callout/duet-callout.js +10 -4
- package/lib/collection/components/duet-caption/duet-caption.css +7 -3
- package/lib/collection/components/duet-caption/duet-caption.js +18 -6
- package/lib/collection/components/duet-card/duet-card.css +48 -16
- package/lib/collection/components/duet-card/duet-card.js +134 -37
- package/lib/collection/components/duet-checkbox/duet-checkbox.css +26 -8
- package/lib/collection/components/duet-checkbox/duet-checkbox.js +86 -47
- package/lib/collection/components/duet-chip/duet-chip.css +66 -25
- package/lib/collection/components/duet-chip/duet-chip.js +70 -36
- package/lib/collection/components/duet-choice/duet-checkmark.css +4 -0
- package/lib/collection/components/duet-choice/duet-checkmark.js +22 -7
- package/lib/collection/components/duet-choice/duet-choice.css +96 -38
- package/lib/collection/components/duet-choice/duet-choice.js +228 -133
- package/lib/collection/components/duet-choice-group/duet-choice-group.css +4 -4
- package/lib/collection/components/duet-choice-group/duet-choice-group.js +108 -47
- package/lib/collection/components/duet-collapsible/duet-collapsible.css +52 -13
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +116 -28
- package/lib/collection/components/duet-combobox/duet-combobox.css +9 -2
- package/lib/collection/components/duet-combobox/duet-combobox.js +88 -46
- package/lib/collection/components/duet-contact-card/duet-contact-card.css +8 -4
- package/lib/collection/components/duet-contact-card/duet-contact-card.js +21 -19
- package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.css +23 -14
- package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +11 -5
- package/lib/collection/components/duet-date-picker/date-picker-day.js +6 -1
- package/lib/collection/components/duet-date-picker/date-utils.js +6 -1
- package/lib/collection/components/duet-date-picker/duet-date-picker.css +99 -46
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +177 -69
- package/lib/collection/components/duet-divider/duet-divider.css +12 -6
- package/lib/collection/components/duet-divider/duet-divider.js +14 -4
- package/lib/collection/components/duet-editable-table/duet-editable-table.css +2 -2
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +83 -26
- package/lib/collection/components/duet-empty-state/duet-empty-state.css +11 -6
- package/lib/collection/components/duet-empty-state/duet-empty-state.js +14 -5
- package/lib/collection/components/duet-fieldset/duet-fieldset.css +13 -6
- package/lib/collection/components/duet-fieldset/duet-fieldset.js +58 -20
- package/lib/collection/components/duet-file-chooser/duet-file-chooser.css +2 -2
- package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +17 -7
- package/lib/collection/components/duet-footer/duet-footer.css +43 -14
- package/lib/collection/components/duet-footer/duet-footer.js +55 -27
- package/lib/collection/components/duet-grid/duet-grid.css +2 -6
- package/lib/collection/components/duet-grid/duet-grid.js +144 -67
- package/lib/collection/components/duet-grid-item/duet-grid-item.css +6 -2
- package/lib/collection/components/duet-grid-item/duet-grid-item.js +40 -13
- package/lib/collection/components/duet-header/duet-header.css +165 -65
- package/lib/collection/components/duet-header/duet-header.js +165 -76
- package/lib/collection/components/duet-heading/duet-heading.css +11 -5
- package/lib/collection/components/duet-heading/duet-heading.js +56 -12
- package/lib/collection/components/duet-hero/duet-hero.css +326 -18
- package/lib/collection/components/duet-hero/duet-hero.js +195 -53
- package/lib/collection/components/duet-icon/duet-icon.css +17 -5
- package/lib/collection/components/duet-icon/duet-icon.js +71 -24
- package/lib/collection/components/duet-indicator/duet-indicator.css +50 -0
- package/lib/collection/components/duet-indicator/duet-indicator.js +138 -0
- package/lib/collection/components/duet-input/duet-input.css +155 -53
- package/lib/collection/components/duet-input/duet-input.js +241 -138
- package/lib/collection/components/duet-label/duet-label.css +8 -4
- package/lib/collection/components/duet-label/duet-label.js +23 -8
- package/lib/collection/components/duet-layout/duet-layout.css +4 -7
- package/lib/collection/components/duet-layout/duet-layout.js +35 -12
- package/lib/collection/components/duet-link/duet-link.css +169 -22
- package/lib/collection/components/duet-link/duet-link.js +121 -70
- package/lib/collection/components/duet-list/duet-list.css +4 -4
- package/lib/collection/components/duet-list/duet-list.js +38 -9
- package/lib/collection/components/duet-list-item/duet-list-item.css +25 -5
- package/lib/collection/components/duet-list-item/duet-list-item.js +50 -4
- package/lib/collection/components/duet-logo/duet-logo.css +36 -8
- package/lib/collection/components/duet-logo/duet-logo.js +111 -11
- package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +110 -8
- package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +59 -57
- package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.css +17 -8
- package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +33 -22
- package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.css +28 -12
- package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +20 -12
- package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.css +19 -9
- package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +18 -10
- package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.css +28 -10
- package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +39 -16
- package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +25 -10
- package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +19 -8
- package/lib/collection/components/duet-modal/duet-modal.css +23 -25
- package/lib/collection/components/duet-modal/duet-modal.js +193 -39
- package/lib/collection/components/duet-multiselect/duet-multiselect.css +70 -29
- package/lib/collection/components/duet-multiselect/duet-multiselect.js +98 -48
- package/lib/collection/components/duet-nav/duet-nav.css +8 -4
- package/lib/collection/components/duet-nav/duet-nav.js +10 -3
- package/lib/collection/components/duet-notification/duet-notification.css +33 -26
- package/lib/collection/components/duet-notification/duet-notification.js +46 -9
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +38 -36
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +57 -24
- package/lib/collection/components/duet-number-input/duet-number-input.css +29 -14
- package/lib/collection/components/duet-number-input/duet-number-input.js +190 -95
- package/lib/collection/components/duet-overlay/duet-overlay.css +5 -1
- package/lib/collection/components/duet-overlay/duet-overlay.js +40 -15
- package/lib/collection/components/duet-page-heading/duet-page-heading.css +44 -16
- package/lib/collection/components/duet-page-heading/duet-page-heading.js +17 -9
- package/lib/collection/components/duet-pagination/duet-pagination.css +8 -4
- package/lib/collection/components/duet-pagination/duet-pagination.js +130 -76
- package/lib/collection/components/duet-panel/duet-panel.css +98 -0
- package/lib/collection/components/duet-panel/duet-panel.js +234 -0
- package/lib/collection/components/duet-paragraph/duet-paragraph.css +19 -6
- package/lib/collection/components/duet-paragraph/duet-paragraph.js +29 -8
- package/lib/collection/components/duet-phone-input/duet-phone-input.css +64 -0
- package/lib/collection/components/duet-phone-input/duet-phone-input.js +930 -0
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.css +14 -6
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +235 -76
- package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.css +30 -12
- package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +64 -29
- package/lib/collection/components/duet-progress/duet-progress.css +27 -8
- package/lib/collection/components/duet-progress/duet-progress.js +36 -14
- package/lib/collection/components/duet-promo-card/duet-promo-card.css +18 -12
- package/lib/collection/components/duet-promo-card/duet-promo-card.js +47 -11
- package/lib/collection/components/duet-radio/duet-radio.css +41 -8
- package/lib/collection/components/duet-radio/duet-radio.js +67 -49
- package/lib/collection/components/duet-radio-group/duet-radio-group.css +4 -4
- package/lib/collection/components/duet-radio-group/duet-radio-group.js +78 -30
- package/lib/collection/components/duet-range-slider/duet-range-slider.css +63 -18
- package/lib/collection/components/duet-range-slider/duet-range-slider.js +85 -46
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +8 -4
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +43 -14
- package/lib/collection/components/duet-scrollable/duet-scrollable.css +84 -47
- package/lib/collection/components/duet-scrollable/duet-scrollable.js +160 -43
- package/lib/collection/components/duet-section-layout/duet-section-layout.css +4 -7
- package/lib/collection/components/duet-section-layout/duet-section-layout.js +16 -6
- package/lib/collection/components/duet-select/duet-select.css +54 -23
- package/lib/collection/components/duet-select/duet-select.js +109 -60
- package/lib/collection/components/duet-shaped-image/duet-shaped-image.css +6 -6
- package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +17 -9
- package/lib/collection/components/duet-share-chart/duet-share-chart.css +82 -0
- package/lib/collection/components/duet-share-chart/duet-share-chart.js +141 -0
- package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +67 -0
- package/lib/collection/components/duet-show-more/duet-show-more.css +15 -8
- package/lib/collection/components/duet-show-more/duet-show-more.js +87 -37
- package/lib/collection/components/duet-slideout/duet-slideout.css +72 -40
- package/lib/collection/components/duet-slideout/duet-slideout.js +109 -54
- package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.css +10 -6
- package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +5 -2
- package/lib/collection/components/duet-slideout-link/duet-slideout-link.css +41 -13
- package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +135 -12
- package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.css +63 -40
- package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +47 -30
- package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.css +29 -16
- package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +25 -11
- package/lib/collection/components/duet-spacer/duet-spacer.css +2 -2
- package/lib/collection/components/duet-spacer/duet-spacer.js +14 -4
- package/lib/collection/components/duet-spinner/duet-spinner.css +10 -16
- package/lib/collection/components/duet-spinner/duet-spinner.js +21 -23
- package/lib/collection/components/duet-status-icon/duet-status-icon.js +197 -0
- package/lib/collection/components/duet-step/duet-step.css +28 -13
- package/lib/collection/components/duet-step/duet-step.js +25 -16
- package/lib/collection/components/duet-stepper/duet-stepper.css +4 -4
- package/lib/collection/components/duet-stepper/duet-stepper.js +45 -10
- package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +34 -16
- package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +25 -16
- package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css +49 -15
- package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +25 -13
- package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css +29 -8
- package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +26 -8
- package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.css +33 -10
- package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +38 -15
- package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.css +34 -9
- package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +17 -5
- package/lib/collection/components/duet-tab/duet-tab.css +15 -11
- package/lib/collection/components/duet-tab/duet-tab.js +88 -24
- package/lib/collection/components/duet-tab-group/duet-tab-group.css +218 -129
- package/lib/collection/components/duet-tab-group/duet-tab-group.js +228 -83
- package/lib/collection/components/duet-table/duet-table-styles.js +68 -4
- package/lib/collection/components/duet-table/duet-table.js +42 -13
- package/lib/collection/components/duet-textarea/duet-textarea.css +64 -22
- package/lib/collection/components/duet-textarea/duet-textarea.js +159 -74
- package/lib/collection/components/duet-toggle/duet-toggle.css +26 -10
- package/lib/collection/components/duet-toggle/duet-toggle.js +62 -38
- package/lib/collection/components/duet-toolbar/duet-toolbar.css +11 -4
- package/lib/collection/components/duet-toolbar/duet-toolbar.js +11 -6
- package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +36 -12
- package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +28 -14
- package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.css +21 -8
- package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +23 -9
- package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.css +52 -30
- package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +48 -19
- package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.css +42 -10
- package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +23 -9
- package/lib/collection/components/duet-tooltip/duet-tooltip-button.css +24 -14
- package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +9 -11
- package/lib/collection/components/duet-tooltip/duet-tooltip-popup.css +48 -16
- package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +18 -14
- package/lib/collection/components/duet-tooltip/duet-tooltip.css +4 -4
- package/lib/collection/components/duet-tooltip/duet-tooltip.js +100 -45
- package/lib/collection/components/duet-tray/duet-tray.css +43 -27
- package/lib/collection/components/duet-tray/duet-tray.js +63 -21
- package/lib/collection/components/duet-upload/duet-upload.css +6 -6
- package/lib/collection/components/duet-upload/duet-upload.js +419 -213
- package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +35 -13
- package/lib/collection/components/duet-upload-item/duet-upload-item.js +17 -18
- package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.css +3 -3
- package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
- package/lib/collection/data/countries.js +1762 -0
- package/lib/collection/index.js +1 -0
- package/lib/collection/utils/keyboard-utils.js +3 -0
- package/lib/collection/utils/language-utils.js +7 -0
- package/lib/collection/utils/slot-utils.js +4 -0
- package/lib/collection/utils/teleport.js +22 -7
- package/lib/collection/utils/test-utils.js +2 -2
- package/lib/collection/utils/token-utils.js +59 -7
- package/lib/collection/utils/turva2-color-tokens.js +42 -0
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/p-06db096d.entry.js +4 -0
- package/lib/duet/p-0d373228.entry.js +4 -0
- package/lib/duet/p-15d39d1f.entry.js +4 -0
- package/lib/duet/p-16caa5b6.entry.js +4 -0
- package/lib/duet/p-18c37a64.entry.js +4 -0
- package/lib/duet/p-1e78e2c1.entry.js +4 -0
- package/lib/duet/p-1ff6c95a.entry.js +4 -0
- package/lib/duet/p-208c5266.entry.js +4 -0
- package/lib/duet/p-22297e2c.entry.js +4 -0
- package/lib/duet/p-23ab5f9a.entry.js +4 -0
- package/lib/duet/p-26948251.entry.js +4 -0
- package/lib/duet/p-28568a2e.entry.js +4 -0
- package/lib/duet/p-2892dd48.entry.js +4 -0
- package/lib/duet/p-2a1cbe32.entry.js +4 -0
- package/lib/duet/p-309afd7a.entry.js +4 -0
- package/lib/duet/p-3555559c.entry.js +4 -0
- package/lib/duet/p-391d7483.entry.js +4 -0
- package/lib/duet/{p-6be341c4.entry.js → p-3aecdd96.entry.js} +1 -1
- package/lib/duet/p-3d6a1cbd.entry.js +4 -0
- package/lib/duet/{p-ff4f7076.entry.js → p-4266fbf1.entry.js} +1 -1
- package/lib/duet/p-49cec27c.entry.js +4 -0
- package/lib/duet/p-4a54f0ec.entry.js +4 -0
- package/lib/duet/p-4a6a79ac.entry.js +4 -0
- package/lib/duet/p-4b6399eb.entry.js +4 -0
- package/lib/duet/p-4e05a8a2.entry.js +4 -0
- package/lib/duet/p-509d502b.entry.js +4 -0
- package/lib/duet/p-534e3e7e.entry.js +4 -0
- package/lib/duet/p-53eddd20.entry.js +4 -0
- package/lib/duet/p-5470d3ee.entry.js +4 -0
- package/lib/duet/p-5540e106.entry.js +4 -0
- package/lib/duet/p-581bd1e2.entry.js +4 -0
- package/lib/duet/p-594e10ea.entry.js +4 -0
- package/lib/duet/p-5c0847ed.entry.js +4 -0
- package/lib/duet/p-5eaf6c14.entry.js +4 -0
- package/lib/duet/p-5iZMFvpJ.js +4 -0
- package/lib/duet/p-60102fbf.entry.js +4 -0
- package/lib/duet/p-6952b6c4.entry.js +4 -0
- package/lib/duet/p-69fcd700.entry.js +4 -0
- package/lib/duet/p-7159567b.entry.js +4 -0
- package/lib/duet/p-72c34073.entry.js +4 -0
- package/lib/duet/p-7587023c.entry.js +4 -0
- package/lib/duet/p-75a6c4ea.entry.js +4 -0
- package/lib/duet/p-76906326.entry.js +4 -0
- package/lib/duet/p-7d8a853a.entry.js +4 -0
- package/lib/duet/p-7def72b6.entry.js +4 -0
- package/lib/duet/p-7e14f2af.entry.js +4 -0
- package/lib/duet/p-82a8d1b8.entry.js +4 -0
- package/lib/duet/p-83471afa.entry.js +4 -0
- package/lib/duet/p-83ea7a2c.entry.js +4 -0
- package/lib/duet/p-8c4cf422.entry.js +4 -0
- package/lib/duet/p-8fc3ee0c.entry.js +4 -0
- package/lib/duet/p-91f53c07.entry.js +4 -0
- package/lib/duet/p-93e08345.entry.js +4 -0
- package/lib/duet/p-94e4dcc5.entry.js +4 -0
- package/lib/duet/p-987f395f.entry.js +4 -0
- package/lib/duet/p-9e0e21eb.entry.js +4 -0
- package/lib/duet/p-9f038082.entry.js +4 -0
- package/lib/duet/p-B0SZpElh.js +4 -0
- package/lib/duet/p-BO8h6fkS.js +4 -0
- package/lib/duet/p-BVAkfiYN.js +5 -0
- package/lib/duet/p-BVgBUIYF.js +4 -0
- package/lib/duet/p-BWvtXbhA.js +4 -0
- package/lib/duet/{p-81287261.js → p-B_NkY9T0.js} +1 -1
- package/lib/duet/p-Bh9dkusU.js +4 -0
- package/lib/duet/p-BmMFVM-y.js +4 -0
- package/lib/duet/p-Bpx9VxA7.js +4 -0
- package/lib/duet/{p-8c9eb171.js → p-CSVmZZ1n.js} +1 -1
- package/lib/duet/p-CooAqTCj.js +4 -0
- package/lib/duet/{p-2eae4a0b.js → p-D8ISRP9m.js} +1 -1
- package/lib/duet/p-Db8rvjPI.js +4 -0
- package/lib/duet/p-DcQPCCbT.js +4 -0
- package/lib/duet/p-Df3Doz7n.js +4 -0
- package/lib/duet/p-DvwKrUS6.js +4 -0
- package/lib/duet/{p-2b6a7397.js → p-J96UYMqg.js} +1 -1
- package/lib/duet/p-b171fbba.entry.js +4 -0
- package/lib/duet/p-b95c5ccf.entry.js +4 -0
- package/lib/duet/p-b9869df2.entry.js +4 -0
- package/lib/duet/p-c05e4dae.entry.js +4 -0
- package/lib/duet/p-c0942782.entry.js +4 -0
- package/lib/duet/p-c2ca49c2.entry.js +4 -0
- package/lib/duet/p-c392eb8d.entry.js +4 -0
- package/lib/duet/p-c6b031aa.entry.js +4 -0
- package/lib/duet/p-c9000a76.entry.js +4 -0
- package/lib/duet/p-cbc310dc.entry.js +4 -0
- package/lib/duet/p-d3812b9c.entry.js +4 -0
- package/lib/duet/p-d3edd251.entry.js +4 -0
- package/lib/duet/p-d618c7d5.entry.js +4 -0
- package/lib/duet/p-ddcc5283.entry.js +4 -0
- package/lib/duet/p-e05b9e89.entry.js +4 -0
- package/lib/duet/p-e16141aa.entry.js +4 -0
- package/lib/duet/p-e2a75d7e.entry.js +4 -0
- package/lib/duet/p-e59a56b9.entry.js +4 -0
- package/lib/duet/p-e6f0473b.entry.js +4 -0
- package/lib/duet/p-e71cd888.entry.js +4 -0
- package/lib/duet/p-e832a646.entry.js +4 -0
- package/lib/duet/p-e9a32cd5.entry.js +4 -0
- package/lib/duet/p-ea010c0c.entry.js +4 -0
- package/lib/duet/p-ea333ff9.entry.js +4 -0
- package/lib/duet/p-eadd1f00.entry.js +4 -0
- package/lib/duet/p-f1e8ef6c.entry.js +4 -0
- package/lib/duet/p-f9010948.entry.js +4 -0
- package/lib/duet/p-fcd416b7.entry.js +4 -0
- package/lib/duet/p-fe5f6bf5.entry.js +4 -0
- package/lib/duet/p-ff8f848e.entry.js +4 -0
- package/lib/duet/p-s4mQ--kV.js +4 -0
- package/lib/duet/p-vVCYtBMj.js +4 -0
- package/lib/duet/p-zqnwKSPV.js +4 -0
- package/lib/esm/_commonjsHelpers-DvwKrUS6.js +8 -0
- package/lib/{dist-custom-elements/p-afb6f7fb.js → esm/a11y-utils-Cm7NmtQF.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-00959ca9.js → app-globals-BfoWvhn6.js} +2 -2
- package/lib/esm/common-strings-BWvtXbhA.js +52 -0
- package/lib/esm/duet-action-button.entry.js +84 -27
- package/lib/esm/duet-alert.entry.js +102 -46
- package/lib/esm/duet-badge.entry.js +31 -7
- package/lib/esm/duet-banner.entry.js +71 -26
- package/lib/esm/duet-breadcrumb.entry.js +38 -25
- package/lib/esm/duet-breadcrumbs.entry.js +20 -12
- package/lib/esm/duet-button_2.entry.js +157 -72
- package/lib/esm/duet-callout.entry.js +13 -8
- package/lib/esm/duet-caption_4.entry.js +211 -73
- package/lib/esm/duet-card.entry.js +95 -32
- package/lib/esm/duet-checkbox.entry.js +68 -30
- package/lib/esm/duet-checkmark.entry.js +21 -7
- package/lib/esm/duet-chip.entry.js +354 -0
- package/lib/esm/duet-choice_2.entry.js +277 -127
- package/lib/esm/duet-collapsible.entry.js +94 -27
- package/lib/esm/duet-combobox.entry.js +85 -46
- package/lib/esm/duet-contact-card.entry.js +17 -16
- package/lib/esm/duet-cookie-consent.entry.js +14 -9
- package/lib/esm/duet-date-picker.entry.js +163 -55
- package/lib/esm/duet-divider_2.entry.js +30 -12
- package/lib/esm/duet-editable-table_3.entry.js +553 -208
- package/lib/esm/duet-empty-state.entry.js +15 -7
- package/lib/esm/duet-fieldset.entry.js +51 -16
- package/lib/esm/duet-file-chooser.entry.js +18 -9
- package/lib/esm/duet-footer.entry.js +56 -28
- package/lib/esm/duet-grid_2.entry.js +165 -62
- package/lib/esm/duet-header_2.entry.js +303 -90
- package/lib/esm/duet-hero.entry.js +155 -30
- package/lib/esm/duet-icon.entry.js +64 -18
- package/lib/esm/duet-indicator.entry.js +59 -0
- package/lib/esm/duet-input_2.entry.js +205 -85
- package/lib/esm/duet-layout.entry.js +33 -11
- package/lib/esm/duet-list_2.entry.js +58 -12
- package/lib/esm/duet-menu-bar-button.entry.js +24 -14
- package/lib/esm/duet-menu-bar-dropdown-link.entry.js +19 -12
- package/lib/esm/duet-menu-bar-dropdown.entry.js +21 -14
- package/lib/esm/duet-menu-bar-item.entry.js +40 -17
- package/lib/esm/duet-menu-bar-link.entry.js +18 -8
- package/lib/esm/duet-menu-bar.entry.js +37 -56
- package/lib/esm/duet-modal.entry.js +122 -33
- package/lib/esm/duet-multiselect.entry.js +88 -40
- package/lib/esm/duet-nav.entry.js +12 -6
- package/lib/esm/duet-notification_2.entry.js +98 -30
- package/lib/esm/duet-number-input.entry.js +186 -69
- package/lib/esm/duet-overlay.entry.js +36 -12
- package/lib/esm/duet-page-heading.entry.js +16 -9
- package/lib/esm/duet-pagination_2.entry.js +162 -85
- package/lib/esm/duet-panel.entry.js +51 -0
- package/lib/esm/duet-phone-input.entry.js +2070 -0
- package/lib/esm/duet-popup-menu_2.entry.js +549 -0
- package/lib/esm/duet-progress.entry.js +32 -11
- package/lib/esm/duet-promo-card.entry.js +27 -11
- package/lib/esm/duet-radio_2.entry.js +114 -53
- package/lib/esm/duet-range-slider.entry.js +73 -35
- package/lib/esm/duet-scrollable_3.entry.js +269 -128
- package/lib/esm/duet-section-layout.entry.js +17 -8
- package/lib/esm/duet-select.entry.js +89 -41
- package/lib/esm/duet-shaped-image.entry.js +16 -9
- package/lib/esm/duet-share-chart-item.entry.js +20 -0
- package/lib/esm/duet-share-chart.entry.js +83 -0
- package/lib/esm/duet-show-more.entry.js +81 -36
- package/lib/esm/duet-slideout-lang.entry.js +10 -8
- package/lib/esm/duet-slideout-link.entry.js +61 -8
- package/lib/esm/duet-slideout-panel-dropdown.entry.js +25 -12
- package/lib/esm/duet-slideout-panel.entry.js +50 -34
- package/lib/esm/duet-slideout.entry.js +110 -58
- package/lib/esm/duet-status-icon.entry.js +97 -0
- package/lib/esm/duet-step_2.entry.js +73 -23
- package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +25 -8
- package/lib/esm/duet-submenu-bar-dropdown.entry.js +27 -16
- package/lib/esm/duet-submenu-bar-item.entry.js +40 -17
- package/lib/esm/duet-submenu-bar-link.entry.js +18 -7
- package/lib/esm/duet-submenu-bar.entry.js +27 -19
- package/lib/esm/duet-textarea.entry.js +109 -48
- package/lib/esm/duet-toggle.entry.js +50 -27
- package/lib/esm/duet-toolbar-dropdown-link.entry.js +22 -9
- package/lib/esm/duet-toolbar-dropdown.entry.js +27 -14
- package/lib/esm/duet-toolbar-item.entry.js +46 -17
- package/lib/esm/duet-toolbar-link.entry.js +21 -8
- package/lib/esm/duet-toolbar.entry.js +12 -8
- package/lib/esm/duet-tooltip-button_2.entry.js +24 -25
- package/lib/esm/duet-tooltip.entry.js +97 -43
- package/lib/esm/duet-tray.entry.js +63 -22
- package/lib/esm/duet-upload-aria-status.entry.js +30 -9
- package/lib/esm/duet-upload-item.entry.js +12 -20
- package/lib/esm/duet-visually-hidden.entry.js +4 -5
- package/lib/esm/duet.js +7 -6
- package/lib/esm/{errorcodes.utils-d9431251.js → errorcodes.utils-DCSMydPz.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-C8cj1ygp.js} +1 -1
- package/lib/esm/form-search-CevX33LA.js +19 -0
- package/lib/esm/{index-1d0b7c66.js → index-BVAkfiYN.js} +2069 -1238
- package/lib/esm/{keyboard-utils-439bcc8b.js → keyboard-utils-Db8rvjPI.js} +4 -1
- package/lib/{dist-custom-elements/p-42619f94.js → esm/label-Cqxj4RVo.js} +1 -1
- package/lib/esm/{language-utils-14969cef.js → language-utils-uFQZRSPE.js} +10 -3
- package/lib/esm/loader.js +4 -4
- package/lib/esm/{slot-utils-4e5ed4eb.js → slot-utils-D8NnYUf2.js} +6 -2
- package/lib/{dist-custom-elements/p-ca3cb21e.js → esm/teleport-CooAqTCj.js} +22 -7
- package/lib/esm/themeable-component-B8TGOi99.js +72 -0
- package/lib/esm/{token-utils-b9ba8c5e.js → token-utils-Dw-GA7-4.js} +80 -10
- package/lib/{dist-custom-elements/p-f6000a03.js → esm/tokens-DcQPCCbT.js} +151 -7
- package/lib/{dist-custom-elements/p-cea716f7.js → esm/tokens.module-Bh9dkusU.js} +100 -4
- package/lib/{dist-custom-elements/p-7d8a2628.js → esm/watch-options-BmMFVM-y.js} +1 -20
- 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/common-strings.d.ts +3 -0
- package/lib/types/common-types.d.ts +1 -1
- package/lib/types/components/duet-alert/duet-alert.d.ts +20 -10
- package/lib/types/components/duet-badge/duet-badge.d.ts +1 -0
- package/lib/types/components/duet-banner/duet-banner.d.ts +6 -0
- package/lib/types/components/duet-breadcrumbs/duet-breadcrumb.d.ts +2 -4
- package/lib/types/components/duet-button/duet-button.d.ts +1 -1
- package/lib/types/components/duet-card/duet-card.d.ts +10 -0
- package/lib/types/components/duet-chip/duet-chip.d.ts +1 -0
- package/lib/types/components/duet-choice/duet-choice.d.ts +1 -5
- package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +3 -2
- package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +8 -1
- package/lib/types/components/duet-combobox/duet-combobox.d.ts +1 -0
- package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +4 -0
- package/lib/types/components/duet-fieldset/duet-fieldset.d.ts +3 -0
- package/lib/types/components/duet-grid/duet-grid.d.ts +9 -7
- package/lib/types/components/duet-heading/duet-heading.d.ts +6 -0
- package/lib/types/components/duet-hero/duet-hero.d.ts +10 -2
- package/lib/types/components/duet-indicator/duet-indicator.d.ts +24 -0
- package/lib/types/components/duet-input/duet-input.d.ts +13 -15
- package/lib/types/components/duet-link/duet-link.d.ts +3 -7
- package/lib/types/components/duet-list-item/duet-list-item.d.ts +9 -3
- package/lib/types/components/duet-logo/duet-logo.d.ts +8 -0
- package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +5 -4
- package/lib/types/components/duet-modal/duet-modal.d.ts +17 -1
- package/lib/types/components/duet-notification/duet-notification.d.ts +1 -0
- package/lib/types/components/duet-number-input/duet-number-input.d.ts +5 -2
- package/lib/types/components/duet-overlay/duet-overlay.d.ts +4 -0
- package/lib/types/components/duet-panel/duet-panel.d.ts +47 -0
- package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +1 -0
- package/lib/types/components/duet-phone-input/duet-phone-input.d.ts +178 -0
- package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +19 -5
- package/lib/types/components/duet-popup-menu-item/duet-popup-menu-item.d.ts +1 -0
- package/lib/types/components/duet-promo-card/duet-promo-card.d.ts +4 -0
- package/lib/types/components/duet-radio-group/duet-radio-group.d.ts +1 -0
- package/lib/types/components/duet-scrollable/duet-scrollable.d.ts +18 -1
- package/lib/types/components/duet-select/duet-select.d.ts +2 -0
- package/lib/types/components/duet-share-chart/duet-share-chart.d.ts +34 -0
- package/lib/types/components/duet-share-chart-item/duet-share-chart-item.d.ts +13 -0
- package/lib/types/components/duet-show-more/duet-show-more.d.ts +1 -0
- package/lib/types/components/duet-slideout/duet-slideout.d.ts +4 -3
- package/lib/types/components/duet-slideout-link/duet-slideout-link.d.ts +17 -0
- package/lib/types/components/duet-spinner/duet-spinner.d.ts +6 -3
- package/lib/types/components/duet-status-icon/duet-status-icon.d.ts +27 -0
- package/lib/types/components/duet-stepper/duet-stepper.d.ts +5 -2
- package/lib/types/components/duet-tab/duet-tab.d.ts +10 -0
- package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +24 -4
- package/lib/types/components/duet-textarea/duet-textarea.d.ts +4 -2
- package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +1 -1
- package/lib/types/components.d.ts +2392 -56
- package/lib/types/data/countries.d.ts +22 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/stencil-public-runtime.d.ts +35 -6
- package/lib/types/utils/keyboard-utils.d.ts +1 -0
- package/lib/types/utils/language-utils.d.ts +1 -0
- package/lib/types/utils/slot-utils.d.ts +1 -0
- package/lib/types/utils/teleport.d.ts +4 -1
- package/lib/types/utils/token-utils.d.ts +4 -0
- package/lib/types/utils/turva2-color-tokens.d.ts +39 -0
- package/package.json +30 -16
- 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/duet-chip_3.cjs.entry.js +0 -699
- package/lib/cjs/floating-ui.dom.esm-806e7c53.js +0 -1355
- package/lib/cjs/form-search-d61b2843.js +0 -8
- package/lib/cjs/index-21e67ab3.js +0 -2278
- package/lib/cjs/themeable-component-996b489c.js +0 -15
- 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 -171
- 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 -158
- package/lib/dist-custom-elements/duet-combobox.d.ts +0 -11
- package/lib/dist-custom-elements/duet-combobox.js +0 -702
- 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 -932
- 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 -206
- 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-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 -79
- 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 -311
- 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-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 -339
- 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 -1444
- 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-02f97b91.js +0 -39
- package/lib/dist-custom-elements/p-087d8c5a.js +0 -60
- package/lib/dist-custom-elements/p-115c79b6.js +0 -6
- package/lib/dist-custom-elements/p-1296f851.js +0 -63
- package/lib/dist-custom-elements/p-174a9d1d.js +0 -73
- package/lib/dist-custom-elements/p-1ccd7c39.js +0 -80
- package/lib/dist-custom-elements/p-1f4fbc7a.js +0 -138
- package/lib/dist-custom-elements/p-22147601.js +0 -642
- package/lib/dist-custom-elements/p-29be247b.js +0 -80
- package/lib/dist-custom-elements/p-2c70b9f4.js +0 -50
- package/lib/dist-custom-elements/p-2f25dfb3.js +0 -154
- package/lib/dist-custom-elements/p-330bcf1d.js +0 -205
- package/lib/dist-custom-elements/p-3431b690.js +0 -368
- package/lib/dist-custom-elements/p-35375593.js +0 -161
- package/lib/dist-custom-elements/p-36ab2d57.js +0 -83
- package/lib/dist-custom-elements/p-3ce1f7b8.js +0 -214
- package/lib/dist-custom-elements/p-41dca9e4.js +0 -63
- package/lib/dist-custom-elements/p-430f3778.js +0 -100
- package/lib/dist-custom-elements/p-43c4a1af.js +0 -81
- package/lib/dist-custom-elements/p-4da43fbc.js +0 -232
- package/lib/dist-custom-elements/p-68c629a8.js +0 -127
- package/lib/dist-custom-elements/p-6b77d4d3.js +0 -338
- package/lib/dist-custom-elements/p-81287261.js +0 -1348
- package/lib/dist-custom-elements/p-89b10856.js +0 -102
- package/lib/dist-custom-elements/p-956e3bce.js +0 -110
- package/lib/dist-custom-elements/p-993aea39.js +0 -175
- package/lib/dist-custom-elements/p-9df4cfa4.js +0 -25
- package/lib/dist-custom-elements/p-9f9423c6.js +0 -56
- package/lib/dist-custom-elements/p-9fa4eb51.js +0 -94
- package/lib/dist-custom-elements/p-a2147aff.js +0 -268
- package/lib/dist-custom-elements/p-aaa7a7bd.js +0 -13
- package/lib/dist-custom-elements/p-ab34075b.js +0 -124
- package/lib/dist-custom-elements/p-ad615991.js +0 -115
- package/lib/dist-custom-elements/p-b0925e24.js +0 -318
- package/lib/dist-custom-elements/p-b8de9a9c.js +0 -165
- package/lib/dist-custom-elements/p-c7d815f6.js +0 -194
- package/lib/dist-custom-elements/p-ca700701.js +0 -55
- package/lib/dist-custom-elements/p-d004da5f.js +0 -6
- package/lib/dist-custom-elements/p-d1f89e90.js +0 -124
- package/lib/dist-custom-elements/p-d2a5148f.js +0 -61
- package/lib/dist-custom-elements/p-d77db171.js +0 -2130
- package/lib/dist-custom-elements/p-dad518a5.js +0 -303
- package/lib/dist-custom-elements/p-de4ee016.js +0 -209
- package/lib/dist-custom-elements/p-de8f018a.js +0 -55
- package/lib/dist-custom-elements/p-df2042f8.js +0 -206
- package/lib/dist-custom-elements/p-e176f419.js +0 -61
- package/lib/dist-custom-elements/p-e37d189b.js +0 -607
- package/lib/dist-custom-elements/p-f11208c3.js +0 -6
- package/lib/dist-custom-elements/p-fe9e47d9.js +0 -287
- package/lib/duet/duet.js +0 -127
- package/lib/duet/p-021a4763.system.entry.js +0 -4
- package/lib/duet/p-031167a1.system.entry.js +0 -4
- package/lib/duet/p-051c4536.entry.js +0 -4
- package/lib/duet/p-053b71e6.system.js +0 -4
- package/lib/duet/p-05ca5aea.entry.js +0 -4
- package/lib/duet/p-07847129.system.entry.js +0 -4
- package/lib/duet/p-0a305aee.entry.js +0 -4
- package/lib/duet/p-0c4bbd65.system.js +0 -4
- package/lib/duet/p-0d7da85a.js +0 -4
- package/lib/duet/p-0dc9089b.system.js +0 -4
- package/lib/duet/p-0e348f96.system.entry.js +0 -4
- package/lib/duet/p-0e8e80b1.entry.js +0 -4
- package/lib/duet/p-0ee85b71.entry.js +0 -4
- package/lib/duet/p-115c79b6.js +0 -4
- package/lib/duet/p-1183d305.system.entry.js +0 -4
- package/lib/duet/p-1268b5a0.system.entry.js +0 -4
- package/lib/duet/p-153b6150.system.entry.js +0 -4
- package/lib/duet/p-192bba35.system.entry.js +0 -4
- package/lib/duet/p-1e17463d.system.js +0 -4
- package/lib/duet/p-1e904342.entry.js +0 -4
- package/lib/duet/p-1e9e887d.entry.js +0 -4
- package/lib/duet/p-209d6065.system.entry.js +0 -4
- package/lib/duet/p-20d056ac.entry.js +0 -4
- package/lib/duet/p-20eaf445.system.entry.js +0 -4
- package/lib/duet/p-215f4257.system.entry.js +0 -4
- package/lib/duet/p-237efb0c.system.entry.js +0 -4
- package/lib/duet/p-2437b4cb.js +0 -4
- package/lib/duet/p-250fb070.entry.js +0 -4
- package/lib/duet/p-25af4a6c.entry.js +0 -4
- package/lib/duet/p-25d79094.entry.js +0 -4
- package/lib/duet/p-27260106.entry.js +0 -4
- package/lib/duet/p-27ed5ca7.system.entry.js +0 -4
- package/lib/duet/p-2810c6dc.system.entry.js +0 -4
- package/lib/duet/p-2814473c.system.entry.js +0 -4
- package/lib/duet/p-29152853.entry.js +0 -4
- package/lib/duet/p-2a0ad29c.system.entry.js +0 -4
- package/lib/duet/p-2a979523.entry.js +0 -4
- package/lib/duet/p-2b2cd3be.entry.js +0 -4
- package/lib/duet/p-2b35de7b.entry.js +0 -4
- package/lib/duet/p-2b45d2e4.entry.js +0 -4
- package/lib/duet/p-2bf17427.entry.js +0 -4
- package/lib/duet/p-2dc360ee.entry.js +0 -4
- package/lib/duet/p-2de0ab3d.system.entry.js +0 -4
- package/lib/duet/p-2fa7ecef.entry.js +0 -4
- package/lib/duet/p-2fb96333.entry.js +0 -4
- package/lib/duet/p-3106c658.entry.js +0 -4
- package/lib/duet/p-34024554.system.entry.js +0 -4
- package/lib/duet/p-34d7dd10.system.js +0 -4
- package/lib/duet/p-380f74e8.system.entry.js +0 -4
- package/lib/duet/p-3810c7dc.entry.js +0 -4
- package/lib/duet/p-3c64dab9.entry.js +0 -4
- package/lib/duet/p-3d826a58.system.entry.js +0 -4
- package/lib/duet/p-3d96186f.system.entry.js +0 -4
- package/lib/duet/p-3df2981e.system.entry.js +0 -4
- package/lib/duet/p-3faaa469.entry.js +0 -4
- package/lib/duet/p-3fe7e109.system.entry.js +0 -4
- package/lib/duet/p-40bab9a0.system.entry.js +0 -4
- package/lib/duet/p-41552571.system.entry.js +0 -4
- package/lib/duet/p-41982d26.system.js +0 -4
- package/lib/duet/p-43cc4ad9.system.entry.js +0 -4
- package/lib/duet/p-43d16748.system.entry.js +0 -4
- package/lib/duet/p-44ee649f.system.entry.js +0 -4
- package/lib/duet/p-486576ee.entry.js +0 -4
- package/lib/duet/p-49957220.system.js +0 -4
- package/lib/duet/p-49fa4a07.entry.js +0 -4
- package/lib/duet/p-4a9978a4.entry.js +0 -4
- package/lib/duet/p-4cff3036.system.js +0 -4
- package/lib/duet/p-4e7f27d8.entry.js +0 -4
- package/lib/duet/p-4e9052cd.entry.js +0 -4
- package/lib/duet/p-4ee7eb8a.entry.js +0 -4
- package/lib/duet/p-5170726b.system.entry.js +0 -4
- package/lib/duet/p-55674524.entry.js +0 -4
- package/lib/duet/p-58caf53a.system.entry.js +0 -4
- package/lib/duet/p-5b927db3.entry.js +0 -4
- package/lib/duet/p-5db9497a.entry.js +0 -4
- package/lib/duet/p-5dbd1202.entry.js +0 -4
- package/lib/duet/p-5e25b406.entry.js +0 -4
- package/lib/duet/p-60547899.system.entry.js +0 -4
- package/lib/duet/p-605e69c8.system.js +0 -4
- package/lib/duet/p-612fbfcc.entry.js +0 -4
- package/lib/duet/p-620d4575.system.entry.js +0 -4
- package/lib/duet/p-629a9c13.entry.js +0 -4
- package/lib/duet/p-62bdecfb.system.entry.js +0 -4
- package/lib/duet/p-6324514a.system.entry.js +0 -4
- package/lib/duet/p-6447f20d.system.entry.js +0 -4
- package/lib/duet/p-6537159a.system.entry.js +0 -4
- package/lib/duet/p-670bd483.system.entry.js +0 -4
- package/lib/duet/p-6b436ca9.entry.js +0 -4
- package/lib/duet/p-7483d86c.entry.js +0 -4
- package/lib/duet/p-76563c02.entry.js +0 -4
- package/lib/duet/p-769a3309.system.entry.js +0 -4
- package/lib/duet/p-76b42e90.entry.js +0 -4
- package/lib/duet/p-76b84b22.entry.js +0 -4
- package/lib/duet/p-76d69a18.system.js +0 -4
- package/lib/duet/p-7972306f.entry.js +0 -4
- package/lib/duet/p-79dfc8e6.system.entry.js +0 -4
- package/lib/duet/p-7a67ce10.system.entry.js +0 -4
- package/lib/duet/p-7acabaa7.system.js +0 -4
- package/lib/duet/p-7cce22af.system.js +0 -4
- package/lib/duet/p-7d2fffc2.entry.js +0 -4
- package/lib/duet/p-7d8a2628.js +0 -4
- package/lib/duet/p-7dd3b7d1.entry.js +0 -4
- package/lib/duet/p-7f5c1da2.entry.js +0 -4
- package/lib/duet/p-8142169f.system.entry.js +0 -4
- package/lib/duet/p-8481bbda.entry.js +0 -4
- package/lib/duet/p-871d7ca1.system.entry.js +0 -4
- package/lib/duet/p-894c1be1.system.entry.js +0 -4
- package/lib/duet/p-8abb0984.js +0 -5
- package/lib/duet/p-8f477bd6.system.js +0 -4
- package/lib/duet/p-8f4cdf46.system.entry.js +0 -4
- package/lib/duet/p-8faaaf5f.system.js +0 -4
- package/lib/duet/p-9253e832.system.entry.js +0 -4
- package/lib/duet/p-965e597c.system.js +0 -4
- package/lib/duet/p-966bd64a.entry.js +0 -4
- package/lib/duet/p-98636086.system.js +0 -4
- package/lib/duet/p-9b04e4a2.entry.js +0 -4
- package/lib/duet/p-9fb9ba73.entry.js +0 -4
- package/lib/duet/p-a19244e5.system.js +0 -5
- package/lib/duet/p-a1b7f2a0.js +0 -4
- package/lib/duet/p-a2aa619b.system.entry.js +0 -4
- package/lib/duet/p-a2b93336.system.entry.js +0 -4
- package/lib/duet/p-a3341588.entry.js +0 -4
- package/lib/duet/p-a47047f2.entry.js +0 -4
- package/lib/duet/p-a51e1b9e.entry.js +0 -4
- package/lib/duet/p-a600451a.entry.js +0 -4
- package/lib/duet/p-a7d809b4.system.entry.js +0 -4
- package/lib/duet/p-a8a381c9.system.entry.js +0 -4
- package/lib/duet/p-aa82f9a1.entry.js +0 -4
- package/lib/duet/p-aaa7a7bd.js +0 -4
- package/lib/duet/p-ac9460ca.entry.js +0 -4
- package/lib/duet/p-aca3a5a9.entry.js +0 -4
- package/lib/duet/p-af209330.entry.js +0 -4
- package/lib/duet/p-afad5fd3.system.js +0 -4
- package/lib/duet/p-b010f56b.system.entry.js +0 -4
- package/lib/duet/p-b69f3d9d.system.entry.js +0 -4
- package/lib/duet/p-b6c584b6.entry.js +0 -4
- package/lib/duet/p-b765710e.entry.js +0 -4
- package/lib/duet/p-b864159a.system.js +0 -4
- package/lib/duet/p-ba03d034.system.js +0 -4
- package/lib/duet/p-bcc40139.system.entry.js +0 -4
- package/lib/duet/p-beeb12f1.js +0 -4
- package/lib/duet/p-c15cd383.system.entry.js +0 -4
- package/lib/duet/p-c22935bf.system.entry.js +0 -4
- package/lib/duet/p-c2dd561e.entry.js +0 -4
- package/lib/duet/p-c3ba8e74.system.entry.js +0 -4
- package/lib/duet/p-c52e8007.entry.js +0 -4
- package/lib/duet/p-c6894b07.system.entry.js +0 -4
- package/lib/duet/p-c694f12d.system.entry.js +0 -4
- package/lib/duet/p-c79cbfdb.entry.js +0 -4
- package/lib/duet/p-c8421271.system.entry.js +0 -4
- package/lib/duet/p-c8d3cb52.entry.js +0 -4
- package/lib/duet/p-c8e22ae2.system.entry.js +0 -4
- package/lib/duet/p-ca3cb21e.js +0 -4
- package/lib/duet/p-cbedbd77.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-ce543cc1.system.entry.js +0 -4
- package/lib/duet/p-cf30c088.entry.js +0 -4
- package/lib/duet/p-d004da5f.js +0 -4
- package/lib/duet/p-d3c304b5.system.js +0 -4
- package/lib/duet/p-d43fc5e9.system.entry.js +0 -4
- package/lib/duet/p-d6dc9819.system.entry.js +0 -4
- package/lib/duet/p-d7d86092.js +0 -4
- package/lib/duet/p-d86d8491.system.entry.js +0 -4
- package/lib/duet/p-db2ccb9d.system.js +0 -4
- package/lib/duet/p-dfd223d9.entry.js +0 -4
- package/lib/duet/p-e0536bb5.entry.js +0 -4
- package/lib/duet/p-e12066c8.system.js +0 -4
- package/lib/duet/p-e1c881da.system.js +0 -4
- package/lib/duet/p-e216bea4.system.js +0 -4
- package/lib/duet/p-e258270f.entry.js +0 -4
- package/lib/duet/p-e2daf94c.entry.js +0 -4
- package/lib/duet/p-e38edd16.system.entry.js +0 -4
- package/lib/duet/p-e44da0ff.system.entry.js +0 -4
- package/lib/duet/p-e4c8559c.system.js +0 -4
- package/lib/duet/p-e6b5a1c7.system.js +0 -4
- package/lib/duet/p-e8dd29e7.entry.js +0 -4
- package/lib/duet/p-e93849fd.system.entry.js +0 -4
- package/lib/duet/p-e9d2f4a1.entry.js +0 -4
- package/lib/duet/p-eca03d5e.js +0 -4
- package/lib/duet/p-ee1eb7cb.system.entry.js +0 -4
- package/lib/duet/p-efa5ec67.entry.js +0 -4
- package/lib/duet/p-f0b0e2b2.system.entry.js +0 -4
- package/lib/duet/p-f105f32a.system.entry.js +0 -4
- package/lib/duet/p-f11208c3.js +0 -4
- package/lib/duet/p-f3633004.entry.js +0 -4
- package/lib/duet/p-f3cf6b50.entry.js +0 -4
- package/lib/duet/p-f43e134e.system.entry.js +0 -4
- package/lib/duet/p-f5dd7e7e.system.entry.js +0 -4
- package/lib/duet/p-f6000a03.js +0 -4
- package/lib/duet/p-f6b21d17.system.js +0 -4
- package/lib/duet/p-f6bd2d4f.system.entry.js +0 -4
- package/lib/duet/p-f75a6d54.system.entry.js +0 -4
- package/lib/duet/p-f97500ff.system.entry.js +0 -4
- package/lib/duet/p-fa3b3dbc.system.entry.js +0 -4
- package/lib/duet/p-fbc396a7.system.entry.js +0 -4
- package/lib/duet/p-fbf89657.system.entry.js +0 -4
- package/lib/duet/p-fcb14b31.system.entry.js +0 -4
- package/lib/duet/p-fd2299b4.entry.js +0 -4
- package/lib/duet/p-fd78f61a.js +0 -4
- package/lib/duet/p-fee25f59.entry.js +0 -4
- package/lib/esm/a11y-utils-8fc393f6.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/common-strings-af765cad.js +0 -25
- package/lib/esm/create-id-149a1b6d.js +0 -11
- package/lib/esm/duet-chip_3.entry.js +0 -693
- package/lib/esm/floating-ui.dom.esm-ebc91b33.js +0 -1348
- package/lib/esm/focus-utils-adcd9463.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/label-ce262202.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/string-utils-192eb3c8.js +0 -61
- package/lib/esm/teleport-546f382d.js +0 -116
- package/lib/esm/themeable-component-860041c5.js +0 -13
- package/lib/esm/tokens-84fb2357.js +0 -753
- package/lib/esm/tokens.module-2d02f5ff.js +0 -503
- package/lib/esm/watch-options-e96ecd92.js +0 -57
- package/lib/esm-es5/a11y-utils-8fc393f6.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-00959ca9.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_3.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-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-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-d9431251.js +0 -4
- package/lib/esm-es5/floating-ui.dom.esm-ebc91b33.js +0 -4
- package/lib/esm-es5/focus-utils-adcd9463.js +0 -4
- package/lib/esm-es5/form-search-ea8e19ae.js +0 -4
- package/lib/esm-es5/index-1d0b7c66.js +0 -5
- 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-439bcc8b.js +0 -4
- package/lib/esm-es5/label-ce262202.js +0 -4
- package/lib/esm-es5/language-utils-14969cef.js +0 -4
- package/lib/esm-es5/loader.js +0 -4
- package/lib/esm-es5/slot-utils-4e5ed4eb.js +0 -4
- package/lib/esm-es5/string-utils-192eb3c8.js +0 -4
- package/lib/esm-es5/teleport-546f382d.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/{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/{string-utils-7b13c16e.js → string-utils-B35hEUBv.js} +0 -0
- /package/lib/duet/{p-8354d1f1.js → p-B1B-PPrh.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-43b89e38.js → p-DxESMgwA.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/{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
|
@@ -1,1444 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Duet Design System
|
|
3
|
-
*/
|
|
4
|
-
import { p as proxyCustomElement, H, c as createEvent, h as h$1, F as Fragment, d as Host } from './p-d77db171.js';
|
|
5
|
-
import { i as inheritGlobalTheme } from './p-aaa7a7bd.js';
|
|
6
|
-
import { c as createID } from './p-5e59e970.js';
|
|
7
|
-
import { d as debounce } from './p-9e371678.js';
|
|
8
|
-
import { g as getLocaleString, s as sanitizeString } from './p-35375593.js';
|
|
9
|
-
import { p as parsePossibleJSON } from './p-9c3c64b9.js';
|
|
10
|
-
import { g as getError, a as getI18nError, d as defineCustomElement$3 } from './p-3ce1f7b8.js';
|
|
11
|
-
import { h } from './p-993aea39.js';
|
|
12
|
-
import { d as defineCustomElement$j } from './p-df2042f8.js';
|
|
13
|
-
import { d as defineCustomElement$i } from './p-330bcf1d.js';
|
|
14
|
-
import { d as defineCustomElement$h } from './p-e176f419.js';
|
|
15
|
-
import { d as defineCustomElement$g } from './p-b0925e24.js';
|
|
16
|
-
import { d as defineCustomElement$f } from './p-d2a5148f.js';
|
|
17
|
-
import { d as defineCustomElement$e } from './p-1296f851.js';
|
|
18
|
-
import { d as defineCustomElement$d } from './p-9fa4eb51.js';
|
|
19
|
-
import { d as defineCustomElement$c } from './p-1ccd7c39.js';
|
|
20
|
-
import { d as defineCustomElement$b } from './p-4da43fbc.js';
|
|
21
|
-
import { d as defineCustomElement$a } from './p-de4ee016.js';
|
|
22
|
-
import { d as defineCustomElement$9 } from './p-174a9d1d.js';
|
|
23
|
-
import { d as defineCustomElement$8 } from './p-430f3778.js';
|
|
24
|
-
import { d as defineCustomElement$7 } from './p-b8de9a9c.js';
|
|
25
|
-
import { d as defineCustomElement$6 } from './p-9f9423c6.js';
|
|
26
|
-
import { d as defineCustomElement$5 } from './p-41dca9e4.js';
|
|
27
|
-
import { d as defineCustomElement$4 } from './p-956e3bce.js';
|
|
28
|
-
import { d as defineCustomElement$2 } from './p-02f97b91.js';
|
|
29
|
-
|
|
30
|
-
const errorCodes = [
|
|
31
|
-
{
|
|
32
|
-
type: "default",
|
|
33
|
-
system_message: "unknown error",
|
|
34
|
-
message: {
|
|
35
|
-
fi: "Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",
|
|
36
|
-
sv: "Ett okänt fel uppstod, försök igen.",
|
|
37
|
-
en: "An unknown error occured, please try again."
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
type: "400",
|
|
42
|
-
system_message: "Bad Request: The server could not understand the request due to invalid syntax.",
|
|
43
|
-
message: {
|
|
44
|
-
fi: "Tiedostoa ei hyväksytty.",
|
|
45
|
-
sv: "Servern avvisade din fil.",
|
|
46
|
-
en: "The server rejected your file."
|
|
47
|
-
}
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
type: "401",
|
|
51
|
-
system_message: "Not Authenticated: The client must authenticate itself to get the requested response...",
|
|
52
|
-
message: {
|
|
53
|
-
fi: "Vain kirjautunut käyttäjä voi lähettää tiedostoja.",
|
|
54
|
-
sv: "Du måste vara inloggad för att ladda upp filer.",
|
|
55
|
-
en: "You need to be logged in to upload files."
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
type: "403",
|
|
60
|
-
system_message: "No Access: The client does not have access rights to the content.",
|
|
61
|
-
message: {
|
|
62
|
-
fi: "Ei oikeuksia lähettää tiedostoja.",
|
|
63
|
-
sv: "Du har inte rätt åtkomsträttigheter för att ladda upp filer.",
|
|
64
|
-
en: "You do not have the correct access rights to upload files."
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
type: "413",
|
|
69
|
-
system_message: "Payload too large",
|
|
70
|
-
message: {
|
|
71
|
-
fi: "Tiedosto oli liian vastaanotettavaksi.",
|
|
72
|
-
sv: "Filen var för stor för servern att hantera.",
|
|
73
|
-
en: "The file was to large for the server to handle."
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
type: "415",
|
|
78
|
-
system_message: "Unsupported media type",
|
|
79
|
-
message: {
|
|
80
|
-
fi: "Tiedoston tyyppi oli väärä.",
|
|
81
|
-
sv: "Servern avvisade filen eftersom den hade fel typ.",
|
|
82
|
-
en: "The server rejected the file because it had the wrong type."
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
type: "429",
|
|
87
|
-
system_message: "Too many request from same address",
|
|
88
|
-
message: {
|
|
89
|
-
fi: "Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",
|
|
90
|
-
sv: "Servern har fått många förfrågningar från dig, försök igen senare.",
|
|
91
|
-
en: "The server has received to many request from you, please try again later."
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
type: "500",
|
|
96
|
-
system_message: "Internal Server Error",
|
|
97
|
-
message: {
|
|
98
|
-
fi: "Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",
|
|
99
|
-
sv: "Servern rapporterade ett okänt fel och uppladdningen misslyckades.",
|
|
100
|
-
en: "The server reported an unknown error and the upload failed."
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
type: "duet-upload-100",
|
|
105
|
-
system_message: "File extension not allowed",
|
|
106
|
-
message: {
|
|
107
|
-
fi: "Tiedoston tyyppi ei ole sallittu.",
|
|
108
|
-
sv: "Du kan inte ladda upp filer av den type.",
|
|
109
|
-
en: "You cannot upload files with that extension."
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: "duet-upload-001",
|
|
114
|
-
system_message: "File transfer failed",
|
|
115
|
-
message: {
|
|
116
|
-
fi: "Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",
|
|
117
|
-
sv: "Din anslutning till servern avbröts, försök igen.",
|
|
118
|
-
en: "Your connection to the server was interrupted, try again."
|
|
119
|
-
}
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: "duet-upload-101",
|
|
123
|
-
system_message: "File mimetype not allowed",
|
|
124
|
-
message: {
|
|
125
|
-
fi: "Tiedoston tyyppi ei ole sallittu.",
|
|
126
|
-
sv: "Du kan inte ladda upp filer av den typ.",
|
|
127
|
-
en: "You cannot upload files of that type."
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: "duet-upload-201",
|
|
132
|
-
system_message: "File is too large",
|
|
133
|
-
message: {
|
|
134
|
-
fi: "Tiedosto on liian iso.",
|
|
135
|
-
sv: "Filen är större än tillåtet.",
|
|
136
|
-
en: "The file is larger than permitted."
|
|
137
|
-
}
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
type: "duet-upload-202",
|
|
141
|
-
system_message: "The combined size of all files is too large",
|
|
142
|
-
message: {
|
|
143
|
-
fi: "Tiedostojen yhteenlaskettu koko on liian iso.",
|
|
144
|
-
sv: "Du har nått den maximala kombinerade filstorleken.",
|
|
145
|
-
en: "You have reached the maximum combined filesize."
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
type: "duet-upload-203",
|
|
150
|
-
system_message: "Files to upload exceed total byte size limit",
|
|
151
|
-
message: {
|
|
152
|
-
fi: "Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",
|
|
153
|
-
sv: "Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",
|
|
154
|
-
en: "You tried to add files that would exceed the maximum combined size."
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
type: "duet-upload-301",
|
|
159
|
-
system_message: "The maximum file limit has been reached",
|
|
160
|
-
message: {
|
|
161
|
-
fi: "Liitteiden maksimimäärä saavutettu.",
|
|
162
|
-
sv: "Maximalt antal bilagor har uppnåtts.",
|
|
163
|
-
en: "Maximum number of attachments reached."
|
|
164
|
-
}
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
type: "duet-upload-302",
|
|
168
|
-
system_message: "Files to upload exceeds limits",
|
|
169
|
-
message: {
|
|
170
|
-
fi: "Et voi lähettää enempää kuin enimmäismäärän liitteitä.",
|
|
171
|
-
sv: "Du kan inte ladda upp fler än det maximala antalet bilagor.",
|
|
172
|
-
en: "You can't upload more than maximum number of attachments."
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
];
|
|
176
|
-
|
|
177
|
-
const headerAriaLabel = {
|
|
178
|
-
fi: "Liiteluettelo",
|
|
179
|
-
sv: "Lista över bilagor",
|
|
180
|
-
en: "Attachments list",
|
|
181
|
-
};
|
|
182
|
-
const UploadItemHeader = ({ label, categoryLabel }) => {
|
|
183
|
-
return (h("div", { class: "items-header", tabindex: "-1", "aria-label": getLocaleString(headerAriaLabel) },
|
|
184
|
-
categoryLabel && (h("duet-heading", { class: "category-header", border: "solid", color: "gray-darker", level: "h3", "visual-level": "h6", weight: "semibold", margin: "none", "aria-hidden": "true" }, getLocaleString(categoryLabel))),
|
|
185
|
-
h("duet-heading", { class: { "filename-header": true, "no-category": !categoryLabel }, border: "solid", color: "gray-darker", level: "h3", "visual-level": "h6", weight: "semibold", margin: "none", "aria-hidden": "true" }, getLocaleString(label))));
|
|
186
|
-
};
|
|
187
|
-
|
|
188
|
-
const validateFileExtension = (name, allowedExtensions) => {
|
|
189
|
-
if (!allowedExtensions) {
|
|
190
|
-
return true;
|
|
191
|
-
}
|
|
192
|
-
const ext = name.split(".");
|
|
193
|
-
const validExtension = allowedExtensions.split(",");
|
|
194
|
-
const extension = ext[ext.length - 1];
|
|
195
|
-
return validExtension.includes(extension);
|
|
196
|
-
};
|
|
197
|
-
const validateFileMime = (type, allowedMimetypes) => {
|
|
198
|
-
if (!allowedMimetypes || !type) {
|
|
199
|
-
return true;
|
|
200
|
-
}
|
|
201
|
-
const validMimeTypes = allowedMimetypes.split(",");
|
|
202
|
-
let valid = false;
|
|
203
|
-
validMimeTypes.forEach(mimeType => {
|
|
204
|
-
const allowedTypes = mimeType.split("/");
|
|
205
|
-
const fileType = type.split("/");
|
|
206
|
-
if (allowedTypes[0] === fileType[0] && (allowedTypes[1] === fileType[1] || allowedTypes[1] === "*")) {
|
|
207
|
-
valid = true;
|
|
208
|
-
}
|
|
209
|
-
});
|
|
210
|
-
return valid;
|
|
211
|
-
};
|
|
212
|
-
const validateFileSize = (size, maxBytes) => {
|
|
213
|
-
if (!maxBytes || !size) {
|
|
214
|
-
return true;
|
|
215
|
-
}
|
|
216
|
-
return maxBytes >= size;
|
|
217
|
-
};
|
|
218
|
-
const validateFile = (item, validators, errorCodes) => {
|
|
219
|
-
const { allowedMimetypes, allowedExtensions, maxBytes } = validators;
|
|
220
|
-
let valid = false;
|
|
221
|
-
let errorMessage = getError("default", errorCodes);
|
|
222
|
-
if (item) {
|
|
223
|
-
const { name, type, size } = item;
|
|
224
|
-
const mime = validateFileMime(type, allowedMimetypes);
|
|
225
|
-
const ext = allowedExtensions === "all" ||
|
|
226
|
-
allowedExtensions === "" ||
|
|
227
|
-
allowedExtensions === " " ||
|
|
228
|
-
allowedExtensions === undefined
|
|
229
|
-
? true
|
|
230
|
-
: validateFileExtension(name.toLowerCase(), allowedExtensions);
|
|
231
|
-
const bytes = validateFileSize(size, maxBytes);
|
|
232
|
-
if (!mime) {
|
|
233
|
-
errorMessage = getError("duet-upload-101", errorCodes);
|
|
234
|
-
}
|
|
235
|
-
if (!ext) {
|
|
236
|
-
errorMessage = getError("duet-upload-100", errorCodes);
|
|
237
|
-
}
|
|
238
|
-
if (!bytes) {
|
|
239
|
-
errorMessage = getError("duet-upload-201", errorCodes);
|
|
240
|
-
}
|
|
241
|
-
valid = mime && ext && bytes;
|
|
242
|
-
}
|
|
243
|
-
else {
|
|
244
|
-
valid = false;
|
|
245
|
-
}
|
|
246
|
-
return {
|
|
247
|
-
valid,
|
|
248
|
-
errorMessage: valid ? undefined : getLocaleString(errorMessage.message),
|
|
249
|
-
errorSystem: valid ? undefined : errorMessage.system_message,
|
|
250
|
-
errorType: valid ? undefined : errorMessage.type,
|
|
251
|
-
};
|
|
252
|
-
};
|
|
253
|
-
const validateTotalSizeIsAboveMax = (filelist, maxTotalBytes) => {
|
|
254
|
-
let total = 0;
|
|
255
|
-
if (maxTotalBytes) {
|
|
256
|
-
filelist.forEach(item => {
|
|
257
|
-
if (item.valid && item.size) {
|
|
258
|
-
total += item.size;
|
|
259
|
-
}
|
|
260
|
-
});
|
|
261
|
-
if (total >= maxTotalBytes) {
|
|
262
|
-
return true;
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
return false;
|
|
266
|
-
};
|
|
267
|
-
const validateTotalAmountIsAboveMax = (filelist, maxFiles) => {
|
|
268
|
-
let total = 0;
|
|
269
|
-
if (maxFiles) {
|
|
270
|
-
filelist.forEach(item => {
|
|
271
|
-
if (item.valid) {
|
|
272
|
-
total++;
|
|
273
|
-
}
|
|
274
|
-
});
|
|
275
|
-
if (total >= maxFiles) {
|
|
276
|
-
return true;
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
return false;
|
|
280
|
-
};
|
|
281
|
-
const filesToUploadCountAboveMax = (currentFilesCount, filesToUploadCount, maxFiles) => {
|
|
282
|
-
if (currentFilesCount + filesToUploadCount > maxFiles) {
|
|
283
|
-
return true;
|
|
284
|
-
}
|
|
285
|
-
return false;
|
|
286
|
-
};
|
|
287
|
-
const filesToUploadTotalSizeIsAboveMax = (currentFiles, filesToUpload, maxTotalBytes) => {
|
|
288
|
-
let total = 0;
|
|
289
|
-
if (maxTotalBytes) {
|
|
290
|
-
currentFiles.forEach(item => {
|
|
291
|
-
if (item.valid && item.size) {
|
|
292
|
-
total += item.size;
|
|
293
|
-
}
|
|
294
|
-
});
|
|
295
|
-
filesToUpload.forEach(item => {
|
|
296
|
-
if (item.size) {
|
|
297
|
-
total += item.size;
|
|
298
|
-
}
|
|
299
|
-
});
|
|
300
|
-
if (total >= maxTotalBytes) {
|
|
301
|
-
return true;
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
return false;
|
|
305
|
-
};
|
|
306
|
-
|
|
307
|
-
const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress }) => {
|
|
308
|
-
// @ts-ignore
|
|
309
|
-
const { type = "POST", xhr, uri, argument = null, headers = null } = options;
|
|
310
|
-
xhr.open(type, `${uri}${argument || ""}`, true);
|
|
311
|
-
const { data, name } = payload;
|
|
312
|
-
// headers must be added after open
|
|
313
|
-
if (headers) {
|
|
314
|
-
Object.keys(headers).forEach(key => {
|
|
315
|
-
xhr.setRequestHeader(key, headers[key]);
|
|
316
|
-
});
|
|
317
|
-
}
|
|
318
|
-
if (type === "POST") {
|
|
319
|
-
xhr.onreadystatechange = () => {
|
|
320
|
-
// Call a function when the state changes.
|
|
321
|
-
if (xhr.readyState === XMLHttpRequest.DONE && xhr.status >= 200 && xhr.status < 300) {
|
|
322
|
-
// Request finished without errors
|
|
323
|
-
onSuccess(xhr, name, xhr.status);
|
|
324
|
-
}
|
|
325
|
-
if (xhr.readyState === XMLHttpRequest.DONE && xhr.status >= 300 && xhr.status < 999) {
|
|
326
|
-
// Request finished with errors
|
|
327
|
-
onFailure(xhr, name, xhr.status);
|
|
328
|
-
}
|
|
329
|
-
};
|
|
330
|
-
onProgress(name);
|
|
331
|
-
}
|
|
332
|
-
xhr.send(data);
|
|
333
|
-
return xhr;
|
|
334
|
-
};
|
|
335
|
-
|
|
336
|
-
const duetUploadCss = "*,*::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}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}::slotted([slot=uploadfooter]){margin-top:20px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:rgb(245, 248, 250)}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}duet-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:16px;line-height:1.4rem}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(212, 223, 229)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";
|
|
337
|
-
const DuetUploadStyle0 = duetUploadCss;
|
|
338
|
-
|
|
339
|
-
const DuetUpload$1 = /*@__PURE__*/ proxyCustomElement(class DuetUpload extends H {
|
|
340
|
-
constructor() {
|
|
341
|
-
super();
|
|
342
|
-
this.__registerHost();
|
|
343
|
-
this.__attachShadow();
|
|
344
|
-
this.duetChange = createEvent(this, "duetChange", 3);
|
|
345
|
-
this.duetBlur = createEvent(this, "duetBlur", 7);
|
|
346
|
-
this.duetFocus = createEvent(this, "duetFocus", 7);
|
|
347
|
-
this.duetReady = createEvent(this, "duetReady", 7);
|
|
348
|
-
this.duetDone = createEvent(this, "duetDone", 3);
|
|
349
|
-
this.duetState = createEvent(this, "duetState", 3);
|
|
350
|
-
this.duetDelete = createEvent(this, "duetDelete", 3);
|
|
351
|
-
this.duetCancel = createEvent(this, "duetCancel", 3);
|
|
352
|
-
this.duetProgress = createEvent(this, "duetProgress", 3);
|
|
353
|
-
this.duetUpload = createEvent(this, "duetUpload", 3);
|
|
354
|
-
this.linkClick = createEvent(this, "linkClick", 3);
|
|
355
|
-
/**
|
|
356
|
-
* Own Properties
|
|
357
|
-
*/
|
|
358
|
-
this.buttonId = createID("DuetButton");
|
|
359
|
-
this.labelId = createID("DuetLabel");
|
|
360
|
-
this.uploadId = createID("DuetUpload");
|
|
361
|
-
this.filesInProgress = new Map();
|
|
362
|
-
this.fileMaxReached = false;
|
|
363
|
-
this.bytesMaxReached = false;
|
|
364
|
-
this.filesToUploadExceedsLimit = false;
|
|
365
|
-
this.filesToUploadTotalSizeIsAboveMax = false;
|
|
366
|
-
this.internalStatusMessageLabel = undefined;
|
|
367
|
-
this.itemRefs = new Map();
|
|
368
|
-
/**
|
|
369
|
-
* Properties
|
|
370
|
-
*/
|
|
371
|
-
this.DefaultGroups = {
|
|
372
|
-
inprogress: "inprogress",
|
|
373
|
-
success: "success",
|
|
374
|
-
pending: "pending",
|
|
375
|
-
failure: "failure",
|
|
376
|
-
};
|
|
377
|
-
this.kick = debounce(() => {
|
|
378
|
-
this.tick = Date.now();
|
|
379
|
-
}, 30); // will trigger re-render
|
|
380
|
-
this.categoryLabel = {
|
|
381
|
-
en: "Category",
|
|
382
|
-
sv: "Filtyp",
|
|
383
|
-
fi: "Tiedostotyyppi",
|
|
384
|
-
};
|
|
385
|
-
/**
|
|
386
|
-
* Private functions
|
|
387
|
-
*/
|
|
388
|
-
this.listenForActionEvents = () => {
|
|
389
|
-
this.element.addEventListener("duetActionEvent", (e) => {
|
|
390
|
-
const detail = e.detail;
|
|
391
|
-
const { action, id, originalEvent } = detail;
|
|
392
|
-
switch (action) {
|
|
393
|
-
case "delete":
|
|
394
|
-
this.onDelete(id, originalEvent);
|
|
395
|
-
break;
|
|
396
|
-
case "cancel":
|
|
397
|
-
this.onCancel(id, originalEvent);
|
|
398
|
-
break;
|
|
399
|
-
// code block
|
|
400
|
-
}
|
|
401
|
-
});
|
|
402
|
-
};
|
|
403
|
-
this.verifyValidity = () => {
|
|
404
|
-
const { invalid, valid } = this.getFilesAsArray();
|
|
405
|
-
const oldValid = this.valid;
|
|
406
|
-
this.valid = invalid.length === 0 && valid.length !== 0;
|
|
407
|
-
if (this.valid !== oldValid) {
|
|
408
|
-
this.duetState.emit({
|
|
409
|
-
originalEvent: undefined,
|
|
410
|
-
data: { valid: this.valid, from: "componentWillRender" },
|
|
411
|
-
component: "duet-upload",
|
|
412
|
-
});
|
|
413
|
-
}
|
|
414
|
-
};
|
|
415
|
-
this.getGroupFromItemData = (item) => {
|
|
416
|
-
if (item.valid && item.progress === 100) {
|
|
417
|
-
// if the item has a group, move the file to that group instead
|
|
418
|
-
// of into the standard success group
|
|
419
|
-
return this.DefaultGroups.success;
|
|
420
|
-
}
|
|
421
|
-
else if (item.progress > 0 && item.progress !== 100) {
|
|
422
|
-
return this.DefaultGroups.inprogress;
|
|
423
|
-
}
|
|
424
|
-
else if (!item.valid) {
|
|
425
|
-
return this.DefaultGroups.failure;
|
|
426
|
-
}
|
|
427
|
-
else if (item.pending) {
|
|
428
|
-
return this.DefaultGroups.pending;
|
|
429
|
-
}
|
|
430
|
-
else if (item.group) {
|
|
431
|
-
return item.group;
|
|
432
|
-
}
|
|
433
|
-
else {
|
|
434
|
-
return "none";
|
|
435
|
-
}
|
|
436
|
-
};
|
|
437
|
-
this.mapFilesToUploadItems = (data, group, showCategory, filteredActions) => {
|
|
438
|
-
if (group === this.DefaultGroups.success) {
|
|
439
|
-
return (h$1("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 => {
|
|
440
|
-
this.itemRefs.set(data.uid, item);
|
|
441
|
-
} }));
|
|
442
|
-
}
|
|
443
|
-
else if (group === this.DefaultGroups.inprogress) {
|
|
444
|
-
return (h$1("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 => {
|
|
445
|
-
this.itemRefs.set(data.uid, item);
|
|
446
|
-
} }));
|
|
447
|
-
}
|
|
448
|
-
else if (group === this.DefaultGroups.pending) {
|
|
449
|
-
return (h$1("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 => {
|
|
450
|
-
this.itemRefs.set(data.uid, item);
|
|
451
|
-
} }));
|
|
452
|
-
}
|
|
453
|
-
else if (group === this.DefaultGroups.failure) {
|
|
454
|
-
return (h$1("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 => {
|
|
455
|
-
this.itemRefs.set(data.uid, item);
|
|
456
|
-
} }));
|
|
457
|
-
}
|
|
458
|
-
else if (data.group) {
|
|
459
|
-
return data.html;
|
|
460
|
-
}
|
|
461
|
-
else {
|
|
462
|
-
return "none";
|
|
463
|
-
}
|
|
464
|
-
};
|
|
465
|
-
this.genHashName = () => Date.now().toString(36) + Math.random();
|
|
466
|
-
this.updateValueInMap = (item, key, value, kick = true) => {
|
|
467
|
-
try {
|
|
468
|
-
const fileItem = this.files.get(item);
|
|
469
|
-
fileItem[key] = value;
|
|
470
|
-
this.files.set(item, fileItem);
|
|
471
|
-
if (this.external && key !== "url") {
|
|
472
|
-
this.trackProgress(item, key === "uploaded");
|
|
473
|
-
}
|
|
474
|
-
}
|
|
475
|
-
catch (e) {
|
|
476
|
-
// if a users tries to update entries on a file that doesn't exist,
|
|
477
|
-
// this will blow up - so we're swallowing the errors here on purpose
|
|
478
|
-
// console.warn("operation on missing items")
|
|
479
|
-
}
|
|
480
|
-
if (kick) {
|
|
481
|
-
this.kick();
|
|
482
|
-
}
|
|
483
|
-
};
|
|
484
|
-
this.updateProgress = (ev, name) => {
|
|
485
|
-
const updateProgressHelper = percentComplete => {
|
|
486
|
-
this.updateValueInMap(name, "progress", percentComplete);
|
|
487
|
-
this.onProgress(name, percentComplete, ev);
|
|
488
|
-
};
|
|
489
|
-
if (ev.lengthComputable) {
|
|
490
|
-
const percentComplete = (ev.loaded / ev.total) * 100;
|
|
491
|
-
updateProgressHelper(percentComplete);
|
|
492
|
-
}
|
|
493
|
-
else {
|
|
494
|
-
console.log("cant read progress");
|
|
495
|
-
}
|
|
496
|
-
};
|
|
497
|
-
this.trackProgress = (name, remove = false) => {
|
|
498
|
-
if (remove) {
|
|
499
|
-
this.filesInProgress.delete(name);
|
|
500
|
-
}
|
|
501
|
-
else {
|
|
502
|
-
this.filesInProgress.set(name, "inprogress");
|
|
503
|
-
}
|
|
504
|
-
if (this.filesInProgress.size === 0) {
|
|
505
|
-
this.onDone();
|
|
506
|
-
}
|
|
507
|
-
};
|
|
508
|
-
this.getFilesAsArray = () => {
|
|
509
|
-
const filesInQueue = [];
|
|
510
|
-
const filesInError = [];
|
|
511
|
-
this.files.forEach(value => {
|
|
512
|
-
if (value.valid && !value.deleted) {
|
|
513
|
-
filesInQueue.push(value);
|
|
514
|
-
}
|
|
515
|
-
else if (!value.valid && !value.deleted) {
|
|
516
|
-
filesInError.push(value);
|
|
517
|
-
}
|
|
518
|
-
});
|
|
519
|
-
return { valid: filesInQueue, invalid: filesInError };
|
|
520
|
-
};
|
|
521
|
-
this.resetFormFields = () => {
|
|
522
|
-
/**
|
|
523
|
-
* You cannot modify a FileList, nor remove single items from it
|
|
524
|
-
* This completely removes all items in the FileList
|
|
525
|
-
* We reset the form fields to always be able to re-upload files
|
|
526
|
-
* and because we handle all uploads and states internally in the component (not relying on native form elements)
|
|
527
|
-
*/
|
|
528
|
-
/* TODO: it may be a good idea to just update the list so that this always matches what is in the files map,
|
|
529
|
-
* TODO: this would remove the capability of Re-uploading, unless we can catch and remove the user file from the form filelist before the upload is canceled by the browser
|
|
530
|
-
* TODO: but for now we'll just reset the form fields
|
|
531
|
-
*/
|
|
532
|
-
this.nativeInput.value = "";
|
|
533
|
-
};
|
|
534
|
-
this.startUpload = async (ev, metaData = undefined) => {
|
|
535
|
-
// validate that we haven't hit any maxfiles or maxbytes limits before we upload
|
|
536
|
-
const { bytesMaxReached, fileMaxReached } = this.validateTotals();
|
|
537
|
-
if (bytesMaxReached || fileMaxReached) {
|
|
538
|
-
this.kick();
|
|
539
|
-
return;
|
|
540
|
-
}
|
|
541
|
-
this.metaData = metaData;
|
|
542
|
-
this.nativeInput.click();
|
|
543
|
-
this.onUpload(ev, metaData);
|
|
544
|
-
ev.stopPropagation();
|
|
545
|
-
ev.preventDefault();
|
|
546
|
-
return;
|
|
547
|
-
};
|
|
548
|
-
/**
|
|
549
|
-
* Eventlisteners for the XHR requests
|
|
550
|
-
*/
|
|
551
|
-
this.transferComplete = name => {
|
|
552
|
-
this.updateValueInMap(name, "progress", 100, false);
|
|
553
|
-
this.trackProgress(name, true);
|
|
554
|
-
};
|
|
555
|
-
this.transferDone = (xhr, name, status) => {
|
|
556
|
-
this.updateValueInMap(name, "status", status, false);
|
|
557
|
-
this.updateValueInMap(name, "uploaded", true, false);
|
|
558
|
-
try {
|
|
559
|
-
const response = JSON.parse(xhr.response);
|
|
560
|
-
this.updateValueInMap(name, "url", response.url);
|
|
561
|
-
}
|
|
562
|
-
catch (e) {
|
|
563
|
-
this.updateValueInMap(name, "url", null);
|
|
564
|
-
console.error("Server did not respond with expected response {url: string}");
|
|
565
|
-
}
|
|
566
|
-
return;
|
|
567
|
-
};
|
|
568
|
-
this.transferDoneWithFailure = (xhr, name, status) => {
|
|
569
|
-
try {
|
|
570
|
-
const { error } = JSON.parse(xhr.response);
|
|
571
|
-
this.updateValueInMap(name, "error", { message: error.message, type: error.type }, false);
|
|
572
|
-
}
|
|
573
|
-
catch (e) {
|
|
574
|
-
console.error("Server did not respond with expected response error:{message: string, type: int}");
|
|
575
|
-
this.updateValueInMap(name, "error", { type: status }, false);
|
|
576
|
-
}
|
|
577
|
-
this.updateValueInMap(name, "valid", false, true);
|
|
578
|
-
};
|
|
579
|
-
this.transferFailed = name => {
|
|
580
|
-
this.updateValueInMap(name, "error", getI18nError("duet-upload-001", this.errorCodes));
|
|
581
|
-
};
|
|
582
|
-
this.transferCanceled = name => {
|
|
583
|
-
this.files.delete(name);
|
|
584
|
-
this.validateTotals(name);
|
|
585
|
-
this.kick();
|
|
586
|
-
};
|
|
587
|
-
this.validateTotals = (name) => {
|
|
588
|
-
const isTotalSizeOverMaxSize = validateTotalSizeIsAboveMax(this.files, this.maxBytesTotal);
|
|
589
|
-
const isTotalFileAmountAboveMax = validateTotalAmountIsAboveMax(this.files, this.maxFiles);
|
|
590
|
-
if (isTotalSizeOverMaxSize && name) {
|
|
591
|
-
this.updateValueInMap(name, "error", getI18nError("duet-upload-202", this.errorCodes), false);
|
|
592
|
-
}
|
|
593
|
-
if (isTotalFileAmountAboveMax && name) {
|
|
594
|
-
this.updateValueInMap(name, "error", getI18nError("duet-upload-301", this.errorCodes), false);
|
|
595
|
-
}
|
|
596
|
-
this.bytesMaxReached = isTotalSizeOverMaxSize;
|
|
597
|
-
this.fileMaxReached = isTotalFileAmountAboveMax;
|
|
598
|
-
return {
|
|
599
|
-
bytesMaxReached: isTotalSizeOverMaxSize,
|
|
600
|
-
fileMaxReached: isTotalFileAmountAboveMax,
|
|
601
|
-
};
|
|
602
|
-
};
|
|
603
|
-
this.uploadFile = async (fileListItem, force = false, key) => {
|
|
604
|
-
if (!force && this.deferUpload) {
|
|
605
|
-
this.updateValueInMap(fileListItem.item.name, "pending", true, false);
|
|
606
|
-
this.updateValueInMap(fileListItem.item.name, "group", "pending", true);
|
|
607
|
-
}
|
|
608
|
-
else if (force) {
|
|
609
|
-
this.updateValueInMap(fileListItem.item.name, "pending", false, false);
|
|
610
|
-
this.updateValueInMap(fileListItem.item.name, "group", undefined, true);
|
|
611
|
-
}
|
|
612
|
-
try {
|
|
613
|
-
if (!this.deferUpload || force) {
|
|
614
|
-
// if all is well AND external file upload handling has not been set, start upload
|
|
615
|
-
const data = new FormData();
|
|
616
|
-
data.append("file", fileListItem.item);
|
|
617
|
-
if (key) {
|
|
618
|
-
data.append("key", key);
|
|
619
|
-
}
|
|
620
|
-
data.append("uid", fileListItem.uid);
|
|
621
|
-
data.append("name", fileListItem.item.name);
|
|
622
|
-
data.append("metadata", JSON.stringify({
|
|
623
|
-
uid: fileListItem.uid,
|
|
624
|
-
url: this.uri,
|
|
625
|
-
size: fileListItem.item.size,
|
|
626
|
-
meta: fileListItem.meta,
|
|
627
|
-
}));
|
|
628
|
-
fileListItem.xhr = await this.makeXHRPostRequest(data);
|
|
629
|
-
}
|
|
630
|
-
}
|
|
631
|
-
catch (e) {
|
|
632
|
-
// in case one of the global maxes have been reached, invalidate the file
|
|
633
|
-
this.updateValueInMap(fileListItem.item.name, "valid", false, false);
|
|
634
|
-
}
|
|
635
|
-
};
|
|
636
|
-
this.uploadPendingFiles = () => {
|
|
637
|
-
for (const [key, value] of Array.from(this.files.entries())) {
|
|
638
|
-
if (value.group === "pending" && value.pending === true) {
|
|
639
|
-
this.uploadFile(value, true, key);
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
};
|
|
643
|
-
this.getItemFromUID = (uid) => {
|
|
644
|
-
for (const [key, value] of Array.from(this.files.entries())) {
|
|
645
|
-
if (value.uid === uid) {
|
|
646
|
-
return { value, key };
|
|
647
|
-
}
|
|
648
|
-
}
|
|
649
|
-
return null;
|
|
650
|
-
};
|
|
651
|
-
this.handleExternalUploadButton = (bytesMaxReached, fileMaxReached) => {
|
|
652
|
-
if (this.externalUploadButton) {
|
|
653
|
-
if (bytesMaxReached || fileMaxReached) {
|
|
654
|
-
this.externalUploadButton.disabled = true;
|
|
655
|
-
}
|
|
656
|
-
else {
|
|
657
|
-
this.externalUploadButton.disabled = false;
|
|
658
|
-
}
|
|
659
|
-
}
|
|
660
|
-
};
|
|
661
|
-
this.onDelete = (key, ev) => {
|
|
662
|
-
const item = this.getItemFromUID(key);
|
|
663
|
-
const retrievedKey = item.key;
|
|
664
|
-
const deletedItem = this.files.get(retrievedKey);
|
|
665
|
-
this.files.delete(retrievedKey);
|
|
666
|
-
const { bytesMaxReached, fileMaxReached } = this.validateTotals();
|
|
667
|
-
this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
|
|
668
|
-
this.kick();
|
|
669
|
-
this.duetDelete.emit({
|
|
670
|
-
originalEvent: ev,
|
|
671
|
-
data: { deletion: deletedItem },
|
|
672
|
-
component: "duet-upload",
|
|
673
|
-
});
|
|
674
|
-
// don't send a xhr request if the item was pending, just remove it from the list
|
|
675
|
-
if (!this.external && !deletedItem.pending) {
|
|
676
|
-
this.makeXHRDeleteRequest(deletedItem);
|
|
677
|
-
}
|
|
678
|
-
this.resetFormFields();
|
|
679
|
-
};
|
|
680
|
-
this.onCancel = (key, ev) => {
|
|
681
|
-
const retrievedKey = this.getItemFromUID(key).key;
|
|
682
|
-
const cancelledItem = this.files.get(retrievedKey);
|
|
683
|
-
this.files.delete(retrievedKey);
|
|
684
|
-
const { bytesMaxReached, fileMaxReached } = this.validateTotals();
|
|
685
|
-
this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
|
|
686
|
-
if (!this.external) {
|
|
687
|
-
const { xhr } = cancelledItem;
|
|
688
|
-
if (xhr) {
|
|
689
|
-
xhr.abort();
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
|
-
this.kick();
|
|
693
|
-
this.resetFormFields();
|
|
694
|
-
this.duetCancel.emit({
|
|
695
|
-
originalEvent: ev,
|
|
696
|
-
data: { cancelled: cancelledItem },
|
|
697
|
-
component: "duet-upload",
|
|
698
|
-
});
|
|
699
|
-
};
|
|
700
|
-
this.onUpload = (ev, metaData) => {
|
|
701
|
-
this.duetUpload.emit({
|
|
702
|
-
originalEvent: ev,
|
|
703
|
-
metaData,
|
|
704
|
-
component: "duet-upload",
|
|
705
|
-
});
|
|
706
|
-
};
|
|
707
|
-
this.onBlur = (ev) => {
|
|
708
|
-
this.duetBlur.emit({
|
|
709
|
-
originalEvent: ev,
|
|
710
|
-
component: "duet-upload",
|
|
711
|
-
});
|
|
712
|
-
};
|
|
713
|
-
this.onProgress = (key, percentComplete, ev) => {
|
|
714
|
-
this.duetChange.emit({
|
|
715
|
-
originalEvent: ev,
|
|
716
|
-
data: {
|
|
717
|
-
key,
|
|
718
|
-
percentComplete,
|
|
719
|
-
},
|
|
720
|
-
component: "duet-upload",
|
|
721
|
-
});
|
|
722
|
-
};
|
|
723
|
-
this.onFocus = (ev) => {
|
|
724
|
-
this.duetFocus.emit({
|
|
725
|
-
originalEvent: ev,
|
|
726
|
-
component: "duet-upload",
|
|
727
|
-
});
|
|
728
|
-
};
|
|
729
|
-
this.onReady = () => {
|
|
730
|
-
this.duetReady.emit({
|
|
731
|
-
component: "duet-upload",
|
|
732
|
-
});
|
|
733
|
-
};
|
|
734
|
-
this.onDone = () => {
|
|
735
|
-
this.duetDone.emit({
|
|
736
|
-
component: "duet-upload",
|
|
737
|
-
data: { files: this.files },
|
|
738
|
-
});
|
|
739
|
-
};
|
|
740
|
-
/**
|
|
741
|
-
* @description This functions return sorted map items byg condition which are:
|
|
742
|
-
*/
|
|
743
|
-
this.filterMap = () => {
|
|
744
|
-
const all = Array.from(this.files.values());
|
|
745
|
-
const inprogress = [];
|
|
746
|
-
const failure = [];
|
|
747
|
-
const pending = [];
|
|
748
|
-
const success = [];
|
|
749
|
-
let hasCategory = false;
|
|
750
|
-
all.forEach(data => {
|
|
751
|
-
const group = this.getGroupFromItemData(data);
|
|
752
|
-
// const item = mapFn(data, group)
|
|
753
|
-
// const category = <UploadCategory meta={data.meta} />
|
|
754
|
-
// const categories = data.meta?.badges?.join(",")
|
|
755
|
-
if (data.meta && !!data.meta.badges) {
|
|
756
|
-
hasCategory = true;
|
|
757
|
-
}
|
|
758
|
-
if (group === this.DefaultGroups.success) {
|
|
759
|
-
success.push({
|
|
760
|
-
uid: data.uid,
|
|
761
|
-
data,
|
|
762
|
-
});
|
|
763
|
-
}
|
|
764
|
-
else if (group === this.DefaultGroups.inprogress) {
|
|
765
|
-
inprogress.push({
|
|
766
|
-
uid: data.uid,
|
|
767
|
-
data,
|
|
768
|
-
});
|
|
769
|
-
}
|
|
770
|
-
else if (group === this.DefaultGroups.pending) {
|
|
771
|
-
pending.push({
|
|
772
|
-
uid: data.uid,
|
|
773
|
-
data,
|
|
774
|
-
});
|
|
775
|
-
}
|
|
776
|
-
else if (group === this.DefaultGroups.failure) {
|
|
777
|
-
failure.push({
|
|
778
|
-
uid: data.uid,
|
|
779
|
-
data,
|
|
780
|
-
});
|
|
781
|
-
}
|
|
782
|
-
else if (data.group) {
|
|
783
|
-
inprogress.push({
|
|
784
|
-
uid: data.uid,
|
|
785
|
-
data,
|
|
786
|
-
});
|
|
787
|
-
}
|
|
788
|
-
});
|
|
789
|
-
return {
|
|
790
|
-
pending,
|
|
791
|
-
failure,
|
|
792
|
-
success,
|
|
793
|
-
inprogress,
|
|
794
|
-
hasCategory,
|
|
795
|
-
};
|
|
796
|
-
};
|
|
797
|
-
this.getActions = (id, actions) => {
|
|
798
|
-
return actions.filter(item => item.map.includes(id));
|
|
799
|
-
};
|
|
800
|
-
this.renderUploadedItems = () => {
|
|
801
|
-
this.itemRefs.clear();
|
|
802
|
-
const filteredItems = this.filterMap();
|
|
803
|
-
const hasCategory = filteredItems.hasCategory;
|
|
804
|
-
const filteredActions = this.hideCancelButton
|
|
805
|
-
? this.actions.filter(action => action.name !== "cancel")
|
|
806
|
-
: this.actions;
|
|
807
|
-
const ItemRows = this.groups.map(group => {
|
|
808
|
-
const currentItems = filteredItems[group.id];
|
|
809
|
-
if (!(currentItems === null || currentItems === void 0 ? void 0 : currentItems.length)) {
|
|
810
|
-
return;
|
|
811
|
-
}
|
|
812
|
-
return (h$1(Fragment, null, !this.hideGroups && (h$1(UploadItemHeader, { categoryLabel: hasCategory ? this.categoryLabel : undefined, label: group.label })), currentItems.map(item => this.mapFilesToUploadItems(item.data, group.id, hasCategory, filteredActions))));
|
|
813
|
-
});
|
|
814
|
-
return (h$1(Fragment, null, this.showUploadedItemsHeader && (h$1(UploadItemHeader, { categoryLabel: hasCategory ? this.categoryLabel : undefined, label: this.uploadedItemsHeaderLabel })), ItemRows));
|
|
815
|
-
};
|
|
816
|
-
this.tick = Date.now();
|
|
817
|
-
this.accessibleActiveDescendant = undefined;
|
|
818
|
-
this.accessibleDescribedBy = undefined;
|
|
819
|
-
this.accessibleControls = undefined;
|
|
820
|
-
this.accessibleOwns = undefined;
|
|
821
|
-
this.external = false;
|
|
822
|
-
this.middleware = null;
|
|
823
|
-
this.deferUpload = false;
|
|
824
|
-
this.hideButton = false;
|
|
825
|
-
this.actions = [
|
|
826
|
-
{
|
|
827
|
-
icon: "action-delete",
|
|
828
|
-
color: "color-danger",
|
|
829
|
-
size: "x-small",
|
|
830
|
-
background: "gray-lightest",
|
|
831
|
-
name: "delete",
|
|
832
|
-
map: ["success", "failure"],
|
|
833
|
-
label: {
|
|
834
|
-
fi: "Poista tiedosto",
|
|
835
|
-
en: "Delete the file",
|
|
836
|
-
sv: "Ta bort filen",
|
|
837
|
-
},
|
|
838
|
-
},
|
|
839
|
-
{
|
|
840
|
-
icon: "navigation-close",
|
|
841
|
-
color: "primary",
|
|
842
|
-
size: "x-small",
|
|
843
|
-
background: "gray-lightest",
|
|
844
|
-
name: "cancel",
|
|
845
|
-
map: ["inprogress", "pending"],
|
|
846
|
-
label: {
|
|
847
|
-
fi: "Keskeytä lähetys",
|
|
848
|
-
en: "Cancel the upload",
|
|
849
|
-
sv: "Stop överföringen",
|
|
850
|
-
},
|
|
851
|
-
},
|
|
852
|
-
];
|
|
853
|
-
this.uri = undefined;
|
|
854
|
-
this.showLinks = false;
|
|
855
|
-
this.caption = undefined;
|
|
856
|
-
this.statusLabelDefaults = {
|
|
857
|
-
fi: {
|
|
858
|
-
inProgress: "Lähetetään {filesUploaded}, yhteensä lähetettävänä {filesTotal}.",
|
|
859
|
-
inProgressWithErrors: "Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",
|
|
860
|
-
done: "Lähetys valmis, {filesTotal} lisätty onnistuneesti",
|
|
861
|
-
doneWithErrors: "Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",
|
|
862
|
-
files: "tiedostoa",
|
|
863
|
-
file: "tiedosto",
|
|
864
|
-
},
|
|
865
|
-
sv: {
|
|
866
|
-
inProgress: "Laddar upp {filesUploaded} av {filesTotal}",
|
|
867
|
-
inProgressWithErrors: "Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",
|
|
868
|
-
done: "Uppladdningen slutförd, {filesTotal} har lagts till",
|
|
869
|
-
doneWithErrors: "Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",
|
|
870
|
-
files: "filer",
|
|
871
|
-
file: "fil",
|
|
872
|
-
},
|
|
873
|
-
en: {
|
|
874
|
-
inProgress: "Uploading {filesUploaded} of {filesTotal}",
|
|
875
|
-
inProgressWithErrors: "Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",
|
|
876
|
-
done: "Upload completed, {filesTotal} added successfully",
|
|
877
|
-
doneWithErrors: "Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",
|
|
878
|
-
files: "files",
|
|
879
|
-
file: "file",
|
|
880
|
-
},
|
|
881
|
-
};
|
|
882
|
-
this.statusMessageLabel = getLocaleString(this.statusLabelDefaults);
|
|
883
|
-
this.buttonLabelDefaults = {
|
|
884
|
-
fi: "Lisää liite",
|
|
885
|
-
sv: "Lägg till en bilaga",
|
|
886
|
-
en: "Add an attachment",
|
|
887
|
-
};
|
|
888
|
-
this.buttonLabel = getLocaleString(this.buttonLabelDefaults);
|
|
889
|
-
this.accessibleButtonLabel = undefined;
|
|
890
|
-
this.theme = "";
|
|
891
|
-
this.disabled = false;
|
|
892
|
-
this.identifier = undefined;
|
|
893
|
-
this.margin = "auto";
|
|
894
|
-
this.required = false;
|
|
895
|
-
this.alignment = "middle";
|
|
896
|
-
this.hideGroups = false;
|
|
897
|
-
this.files = new Map();
|
|
898
|
-
this.valid = !this.required;
|
|
899
|
-
this.labelDefaults = {
|
|
900
|
-
fi: "Lisää liite",
|
|
901
|
-
sv: "Lägg till en bilaga",
|
|
902
|
-
en: "Add attachments",
|
|
903
|
-
};
|
|
904
|
-
this.label = getLocaleString(this.labelDefaults);
|
|
905
|
-
this.descriptionDefaults = {
|
|
906
|
-
en: "You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",
|
|
907
|
-
sv: "Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",
|
|
908
|
-
fi: "Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena.",
|
|
909
|
-
};
|
|
910
|
-
this.description = getLocaleString(this.descriptionDefaults);
|
|
911
|
-
this.fileListEmptyDefaults = {
|
|
912
|
-
fi: "Ei vielä lisättyjä tiedostoja.",
|
|
913
|
-
sv: "Inga filer har lagts till ännu.",
|
|
914
|
-
en: "No files added yet.",
|
|
915
|
-
};
|
|
916
|
-
this.fileListEmpty = getLocaleString(this.fileListEmptyDefaults);
|
|
917
|
-
this.error = "";
|
|
918
|
-
this.errorCodes = errorCodes;
|
|
919
|
-
this.name = undefined;
|
|
920
|
-
this.maxBytes = 200000000;
|
|
921
|
-
this.maxBytesTotal = undefined;
|
|
922
|
-
this.maxFiles = 99;
|
|
923
|
-
this.allowedExtensions = "all";
|
|
924
|
-
this.allowedMimetypes = "";
|
|
925
|
-
this.multiple = true;
|
|
926
|
-
this.limitSelection = false;
|
|
927
|
-
this.hideCancelButton = false;
|
|
928
|
-
this.value = undefined;
|
|
929
|
-
this.externalUploadButtonId = undefined;
|
|
930
|
-
this.captionOnBottom = false;
|
|
931
|
-
this.showUploadedItemsHeader = false;
|
|
932
|
-
this.uploadedItemsHeaderLabel = {
|
|
933
|
-
fi: "Ladattu tiedosto",
|
|
934
|
-
sv: "Lägg till en bilaga",
|
|
935
|
-
en: "Uploaded file",
|
|
936
|
-
};
|
|
937
|
-
this.headerHeadingLevel = "h3";
|
|
938
|
-
this.hideHeader = false;
|
|
939
|
-
this.emitEvent = false;
|
|
940
|
-
this.actionButtonTitles = {
|
|
941
|
-
cancel: false,
|
|
942
|
-
delete: false,
|
|
943
|
-
};
|
|
944
|
-
this.renameDuplicates = false;
|
|
945
|
-
this.groups = [
|
|
946
|
-
{
|
|
947
|
-
id: this.DefaultGroups.success,
|
|
948
|
-
label: {
|
|
949
|
-
fi: "Valmiit tiedostot",
|
|
950
|
-
sv: "Files success",
|
|
951
|
-
en: "Files success",
|
|
952
|
-
},
|
|
953
|
-
},
|
|
954
|
-
{
|
|
955
|
-
id: this.DefaultGroups.failure,
|
|
956
|
-
label: {
|
|
957
|
-
fi: "Tiedostot, joissa on virheitä",
|
|
958
|
-
sv: "Filer med fel",
|
|
959
|
-
en: "Files with errors",
|
|
960
|
-
},
|
|
961
|
-
},
|
|
962
|
-
{
|
|
963
|
-
id: this.DefaultGroups.inprogress,
|
|
964
|
-
label: {
|
|
965
|
-
fi: "Kesken olevat tiedostot",
|
|
966
|
-
sv: "Filer inprogress",
|
|
967
|
-
en: "Files inprogress",
|
|
968
|
-
},
|
|
969
|
-
},
|
|
970
|
-
{
|
|
971
|
-
id: this.DefaultGroups.pending,
|
|
972
|
-
label: {
|
|
973
|
-
en: "Files to upload",
|
|
974
|
-
sv: "Filer att ladda",
|
|
975
|
-
fi: "Ladattavat tiedostot",
|
|
976
|
-
},
|
|
977
|
-
},
|
|
978
|
-
];
|
|
979
|
-
}
|
|
980
|
-
watchValidHandler(newValue, oldValue) {
|
|
981
|
-
if (newValue !== oldValue) {
|
|
982
|
-
this.kick();
|
|
983
|
-
}
|
|
984
|
-
}
|
|
985
|
-
/**
|
|
986
|
-
* Component lifecycle events.
|
|
987
|
-
*/
|
|
988
|
-
componentWillLoad() {
|
|
989
|
-
if (typeof this.statusMessageLabel === "string") {
|
|
990
|
-
this.internalStatusMessageLabel = sanitizeString(this.groups);
|
|
991
|
-
}
|
|
992
|
-
else {
|
|
993
|
-
this.internalStatusMessageLabel = this.statusMessageLabel;
|
|
994
|
-
}
|
|
995
|
-
inheritGlobalTheme(this);
|
|
996
|
-
this.listenForActionEvents();
|
|
997
|
-
this.onReady();
|
|
998
|
-
this.externalUploadButton = document.querySelector(`#${this.externalUploadButtonId}`);
|
|
999
|
-
this.processedButtonTitles = parsePossibleJSON(this.actionButtonTitles);
|
|
1000
|
-
}
|
|
1001
|
-
componentWillRender() {
|
|
1002
|
-
// listen to the events from the component
|
|
1003
|
-
this.verifyValidity();
|
|
1004
|
-
}
|
|
1005
|
-
/**
|
|
1006
|
-
* Sets focus on the specified `duet-input`. Use this method instead of the global
|
|
1007
|
-
* `input.focus()`.
|
|
1008
|
-
*/
|
|
1009
|
-
async setFocus(options) {
|
|
1010
|
-
if (this.nativeInput) {
|
|
1011
|
-
this.nativeInput.focus(options);
|
|
1012
|
-
}
|
|
1013
|
-
return;
|
|
1014
|
-
}
|
|
1015
|
-
/**
|
|
1016
|
-
* Method for invoking the upload sequence
|
|
1017
|
-
*/
|
|
1018
|
-
async upload(metaData = undefined) {
|
|
1019
|
-
// validate that we haven't hit any maxfiles or maxbytes limits before we upload
|
|
1020
|
-
const { bytesMaxReached, fileMaxReached } = this.validateTotals();
|
|
1021
|
-
if (bytesMaxReached || fileMaxReached) {
|
|
1022
|
-
this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
|
|
1023
|
-
this.kick();
|
|
1024
|
-
return;
|
|
1025
|
-
}
|
|
1026
|
-
this.metaData = metaData;
|
|
1027
|
-
this.nativeInput.click();
|
|
1028
|
-
return;
|
|
1029
|
-
}
|
|
1030
|
-
/**
|
|
1031
|
-
* Method for uploading pending files
|
|
1032
|
-
*/
|
|
1033
|
-
async uploadPending() {
|
|
1034
|
-
this.uploadPendingFiles();
|
|
1035
|
-
}
|
|
1036
|
-
/**
|
|
1037
|
-
* Method for forcing a render of the upload list, element.files can be changed externally
|
|
1038
|
-
* But it will only rerender on a new Map or a top Level change - this can be used to update
|
|
1039
|
-
* the tabular data if the automatic re-render is no sufficient
|
|
1040
|
-
*/
|
|
1041
|
-
async refresh() {
|
|
1042
|
-
this.kick();
|
|
1043
|
-
await this.setFocus();
|
|
1044
|
-
}
|
|
1045
|
-
/**
|
|
1046
|
-
* Get list of files, divided in errors and valid sections
|
|
1047
|
-
*/
|
|
1048
|
-
async getFiles() {
|
|
1049
|
-
if (!this.files || this.files.size === 0) {
|
|
1050
|
-
return false;
|
|
1051
|
-
}
|
|
1052
|
-
return this.getFilesAsArray();
|
|
1053
|
-
}
|
|
1054
|
-
/**
|
|
1055
|
-
* Convenience method for updating the value of a key:value inside an item in the files attribute
|
|
1056
|
-
*/
|
|
1057
|
-
async updateValue(item, key, value) {
|
|
1058
|
-
this.updateValueInMap(item, key, value);
|
|
1059
|
-
}
|
|
1060
|
-
/**
|
|
1061
|
-
* focusActionButton.
|
|
1062
|
-
*/
|
|
1063
|
-
async focusActionButton(uid) {
|
|
1064
|
-
var _a;
|
|
1065
|
-
await ((_a = this.itemRefs.get(uid)) === null || _a === void 0 ? void 0 : _a.focusActionButton());
|
|
1066
|
-
}
|
|
1067
|
-
/**
|
|
1068
|
-
* render() function
|
|
1069
|
-
* Always the last one in the class.
|
|
1070
|
-
*/
|
|
1071
|
-
render() {
|
|
1072
|
-
const identifier = this.identifier || this.uploadId;
|
|
1073
|
-
const maxMegaBytesTotal = Math.round((this.maxBytesTotal ? this.maxBytesTotal : this.maxBytes * this.maxFiles) / 1024 / 1024);
|
|
1074
|
-
const maxMegaBytesPrFile = Math.round(this.maxBytes / 1024 / 1024);
|
|
1075
|
-
let caption = this.description.replace(/{maxfiles}/g, this.maxFiles.toString());
|
|
1076
|
-
caption = caption.replace(/{maxbytes}/g, `${maxMegaBytesPrFile.toString()} MB`);
|
|
1077
|
-
caption = caption.replace(/{maxbytestotal}/g, `${maxMegaBytesTotal.toString()} MB`);
|
|
1078
|
-
caption = caption.replace(/{filetypes}/g, this.allowedExtensions.split(",").join(", "));
|
|
1079
|
-
if (this.externalUploadButton) {
|
|
1080
|
-
this.externalUploadButton.accessibleLabel = `${this.externalUploadButton.innerText}. ${caption}`;
|
|
1081
|
-
}
|
|
1082
|
-
// @ts-ignore
|
|
1083
|
-
return (h$1(Host, { key: 'f22b72ae72f670b1d3b96699cc22b916e44805bb', class: { "duet-m-0": this.margin === "none" } }, h$1("duet-fieldset", { key: 'd9062ebd9b108b426984ea6336014d707816be6a', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, h$1("slot", { key: 'f05cf1d0a76d07a12e0169d4554344860fe8d5e9', name: "header" }), !this.files.size && (h$1("duet-empty-state", { key: '5f6ea952dccd0579fa97ae6e751c727bb2b72383', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, h$1("duet-paragraph", { key: 'b99e0d6949b2377b83a5b8e3ba4fab263685e427', margin: "none" }, this.fileListEmpty))), !!this.files.size && h$1("slot", { key: '0de37444dc62aac38f4ce95cb488cbd9c6485814', name: "fileheader" }), !!this.files.size && (h$1("duet-upload-aria-status", { key: '0d169ad657e0ae9af98769dd2c7b007899826afe', invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && this.renderUploadedItems(), !!this.files.size && h$1("slot", { key: 'a957b0255feb705762d39f4615bd9a49a4569017', name: "filefooter" }), h$1("slot", { key: 'f76b8605d58a7659c2dd0aa29c48a1f34e4a18a9', name: "uploadfooter" }), this.captionOnBottom && (h$1("duet-caption", { key: '3c3b2d1cc4929a960035feb0055c41d435a2cfba', margin: "none", size: "small" }, h$1("div", { key: 'e5f8bd26ec72800dd78794620d3d1dcfb4c55ad8', class: "upload-bottom-caption" }, caption))), h$1("slot", { key: 'c3d1e3f1725fdddfaad3eec7fdc9ed7cb3ef8b5b', name: "afterfooter" }), !this.hideButton && (h$1(Fragment, { key: '25b1dfcfeb51ed4dce30e9dc0dfd4bf3e5adb41e' }, h$1("duet-spacer", { key: 'd19f3991e372c617a6b9509adbc062a03f390090', size: "large" }), h$1("duet-button", { key: '8536bf08e8becf2c50e0fff041facbe975f18ad5', id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel || `${this.buttonLabel}. ${caption}`, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel))), (this.fileMaxReached ||
|
|
1084
|
-
this.bytesMaxReached ||
|
|
1085
|
-
this.filesToUploadExceedsLimit ||
|
|
1086
|
-
this.filesToUploadTotalSizeIsAboveMax) && (h$1(Fragment, { key: '970bfa230702ba75dc8f8ac9e71f4183c4c3c0d7' }, h$1("duet-spacer", { key: '72b8c0c087760db99ce3fdda33e33471b9606d61', size: "medium" }), h$1("duet-alert", { key: '0769bcb8f099a5094dba69584d27909b915a1b18', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && getI18nError("duet-upload-203", this.errorCodes)))), h$1("duet-visually-hidden", { key: 'fba8af1631c5f83e159c7070c9680fb36e5e2d80', "aria-hidden": "true" }, h$1("input", { key: '0c7c75a5a7328dfde2317095e37b363108c6423f', ref: input => {
|
|
1087
|
-
this.nativeInput = input;
|
|
1088
|
-
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
1089
|
-
"duet-upload": true,
|
|
1090
|
-
}, disabled: this.disabled, "aria-hidden": "true", required: this.required, name: this.name, id: this.identifier, multiple: this.multiple, tabIndex: -1 })))));
|
|
1091
|
-
}
|
|
1092
|
-
/**
|
|
1093
|
-
* XHR request utilities
|
|
1094
|
-
*/
|
|
1095
|
-
makeXHRPostRequest(data) {
|
|
1096
|
-
const xhr = new XMLHttpRequest();
|
|
1097
|
-
const name = data.get("name");
|
|
1098
|
-
xhr.upload.addEventListener("progress", ev => {
|
|
1099
|
-
this.updateProgress(ev, name);
|
|
1100
|
-
});
|
|
1101
|
-
xhr.upload.addEventListener("load", () => {
|
|
1102
|
-
this.transferComplete(name);
|
|
1103
|
-
});
|
|
1104
|
-
xhr.upload.addEventListener("error", () => {
|
|
1105
|
-
this.transferFailed(name);
|
|
1106
|
-
});
|
|
1107
|
-
xhr.upload.addEventListener("abort", () => {
|
|
1108
|
-
this.transferCanceled(name);
|
|
1109
|
-
});
|
|
1110
|
-
let options = {
|
|
1111
|
-
payload: { data, name },
|
|
1112
|
-
options: { type: "POST", uri: this.uri, xhr, argument: null, headers: undefined },
|
|
1113
|
-
onFailure: this.transferDoneWithFailure,
|
|
1114
|
-
onSuccess: this.transferDone,
|
|
1115
|
-
onProgress: this.trackProgress,
|
|
1116
|
-
};
|
|
1117
|
-
if (this.middleware) {
|
|
1118
|
-
options = this.middleware(options);
|
|
1119
|
-
}
|
|
1120
|
-
return makeXhrRequest(options);
|
|
1121
|
-
}
|
|
1122
|
-
makeXHRDeleteRequest(data) {
|
|
1123
|
-
const { uid, item } = data;
|
|
1124
|
-
const xhr = new XMLHttpRequest();
|
|
1125
|
-
const headers = {
|
|
1126
|
-
"x-fileuid": uid,
|
|
1127
|
-
"x-filename": item.name,
|
|
1128
|
-
};
|
|
1129
|
-
let options = {
|
|
1130
|
-
payload: { data: null, name },
|
|
1131
|
-
options: {
|
|
1132
|
-
type: "DELETE",
|
|
1133
|
-
xhr,
|
|
1134
|
-
uri: this.uri,
|
|
1135
|
-
argument: `?key=${uid}&name=${item.name}`,
|
|
1136
|
-
headers,
|
|
1137
|
-
},
|
|
1138
|
-
onFailure: this.transferDoneWithFailure,
|
|
1139
|
-
onSuccess: this.transferDone,
|
|
1140
|
-
onProgress: this.trackProgress,
|
|
1141
|
-
};
|
|
1142
|
-
if (this.middleware) {
|
|
1143
|
-
options = this.middleware(options);
|
|
1144
|
-
}
|
|
1145
|
-
// don't present server issues to user on deletes, just remove them from the visible list
|
|
1146
|
-
return makeXhrRequest(options);
|
|
1147
|
-
}
|
|
1148
|
-
escapeSpecialCharacters(str) {
|
|
1149
|
-
return (str + "").replace(/[\\"'(){}\[\]*?$^+]/g, "\\$&").replace(/\u0000/g, "\\0");
|
|
1150
|
-
}
|
|
1151
|
-
getRenamedFileName(newFileName, extension) {
|
|
1152
|
-
const re = new RegExp(`${this.escapeSpecialCharacters(newFileName)} \\(\\d+\\\).${extension}`);
|
|
1153
|
-
const lastFileName = Array.from(this.files.entries())
|
|
1154
|
-
.map(entry => {
|
|
1155
|
-
const [key, _] = entry;
|
|
1156
|
-
return key;
|
|
1157
|
-
})
|
|
1158
|
-
.filter(existingFileName => {
|
|
1159
|
-
return re.test(existingFileName) || existingFileName === `${newFileName}.${extension}`;
|
|
1160
|
-
})
|
|
1161
|
-
.sort((fileOne, fileTwo) => {
|
|
1162
|
-
//needs to be sorted using file names without extension
|
|
1163
|
-
return fileOne.split(".").slice(0, -1).join(".") > fileTwo.split(".").slice(0, -1).join(".") ? 1 : -1;
|
|
1164
|
-
})
|
|
1165
|
-
.pop()
|
|
1166
|
-
.split(".")
|
|
1167
|
-
.slice(0, -1)
|
|
1168
|
-
.join(".");
|
|
1169
|
-
if (lastFileName === newFileName) {
|
|
1170
|
-
return `${newFileName} (1).${extension}`;
|
|
1171
|
-
}
|
|
1172
|
-
const lastFileNumber = parseInt(lastFileName.split("(").pop().slice(0, -1));
|
|
1173
|
-
return `${newFileName} (${lastFileNumber + 1}).${extension}`;
|
|
1174
|
-
}
|
|
1175
|
-
renameFiles(files) {
|
|
1176
|
-
return files.map(file => {
|
|
1177
|
-
if (this.files.get(file.name)) {
|
|
1178
|
-
const splitName = file.name.split(".");
|
|
1179
|
-
const extension = splitName.pop();
|
|
1180
|
-
const nameWithoutExtension = splitName.join(".");
|
|
1181
|
-
const newName = this.getRenamedFileName(nameWithoutExtension, extension);
|
|
1182
|
-
return new File([file], newName, {
|
|
1183
|
-
type: file.type,
|
|
1184
|
-
lastModified: file.lastModified,
|
|
1185
|
-
});
|
|
1186
|
-
}
|
|
1187
|
-
else {
|
|
1188
|
-
return file;
|
|
1189
|
-
}
|
|
1190
|
-
});
|
|
1191
|
-
}
|
|
1192
|
-
/**
|
|
1193
|
-
* Component event handling.
|
|
1194
|
-
*/
|
|
1195
|
-
async onChange(ev) {
|
|
1196
|
-
var _a;
|
|
1197
|
-
let selectedFiles = Array.from((_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.files);
|
|
1198
|
-
// FileList is a nice array like structure but
|
|
1199
|
-
// to ensure uniqueness of files we use a mapping structure and
|
|
1200
|
-
// key to the name (makes it easier to delete as well)
|
|
1201
|
-
this.filesToUploadExceedsLimit = false;
|
|
1202
|
-
if (filesToUploadCountAboveMax(this.files.size, selectedFiles.length, this.maxFiles)) {
|
|
1203
|
-
this.filesToUploadExceedsLimit = true;
|
|
1204
|
-
this.kick();
|
|
1205
|
-
return;
|
|
1206
|
-
}
|
|
1207
|
-
this.filesToUploadTotalSizeIsAboveMax = false;
|
|
1208
|
-
if (filesToUploadTotalSizeIsAboveMax(this.files, selectedFiles, this.maxBytesTotal)) {
|
|
1209
|
-
this.filesToUploadTotalSizeIsAboveMax = true;
|
|
1210
|
-
this.kick();
|
|
1211
|
-
return;
|
|
1212
|
-
}
|
|
1213
|
-
if (selectedFiles) {
|
|
1214
|
-
if (this.renameDuplicates) {
|
|
1215
|
-
selectedFiles = this.renameFiles(selectedFiles);
|
|
1216
|
-
}
|
|
1217
|
-
for (const item of selectedFiles) {
|
|
1218
|
-
const { valid, errorMessage, errorType, errorSystem } = validateFile(item, {
|
|
1219
|
-
maxBytes: this.maxBytes,
|
|
1220
|
-
allowedExtensions: this.allowedExtensions,
|
|
1221
|
-
allowedMimetypes: this.allowedMimetypes,
|
|
1222
|
-
}, this.errorCodes);
|
|
1223
|
-
const uid = this.genHashName();
|
|
1224
|
-
const fileListItem = {
|
|
1225
|
-
uid,
|
|
1226
|
-
item: item,
|
|
1227
|
-
size: item.size,
|
|
1228
|
-
meta: this.metaData,
|
|
1229
|
-
uploaded: false,
|
|
1230
|
-
valid,
|
|
1231
|
-
error: {
|
|
1232
|
-
type: valid ? undefined : errorType,
|
|
1233
|
-
message: valid ? undefined : errorMessage,
|
|
1234
|
-
system_message: valid ? undefined : errorSystem,
|
|
1235
|
-
},
|
|
1236
|
-
progress: 0,
|
|
1237
|
-
deleted: false,
|
|
1238
|
-
xhr: false,
|
|
1239
|
-
url: false,
|
|
1240
|
-
};
|
|
1241
|
-
this.files.set(item.name, fileListItem);
|
|
1242
|
-
if (valid && !this.external) {
|
|
1243
|
-
await this.uploadFile(fileListItem);
|
|
1244
|
-
}
|
|
1245
|
-
else if (valid && this.external) {
|
|
1246
|
-
this.updateValueInMap(fileListItem.item.name, "pending", true, false);
|
|
1247
|
-
this.updateValueInMap(fileListItem.item.name, "group", "pending", true);
|
|
1248
|
-
}
|
|
1249
|
-
else if (!valid) {
|
|
1250
|
-
this.updateValueInMap(item.name, "valid", false, true);
|
|
1251
|
-
}
|
|
1252
|
-
// kick the stat to force update
|
|
1253
|
-
this.kick();
|
|
1254
|
-
}
|
|
1255
|
-
}
|
|
1256
|
-
// reset the form, so that a user may upload a file again (with the same name)
|
|
1257
|
-
this.resetFormFields();
|
|
1258
|
-
// reset the internal metaData state
|
|
1259
|
-
this.metaData = undefined;
|
|
1260
|
-
this.duetChange.emit({
|
|
1261
|
-
originalEvent: ev,
|
|
1262
|
-
data: { files: this.files },
|
|
1263
|
-
component: "duet-upload",
|
|
1264
|
-
});
|
|
1265
|
-
}
|
|
1266
|
-
get element() { return this; }
|
|
1267
|
-
static get watchers() { return {
|
|
1268
|
-
"valid": ["watchValidHandler"]
|
|
1269
|
-
}; }
|
|
1270
|
-
static get style() { return DuetUploadStyle0; }
|
|
1271
|
-
}, [1, "duet-upload", {
|
|
1272
|
-
"accessibleActiveDescendant": [1, "accessible-active-descendant"],
|
|
1273
|
-
"accessibleDescribedBy": [1, "accessible-described-by"],
|
|
1274
|
-
"accessibleControls": [1, "accessible-controls"],
|
|
1275
|
-
"accessibleOwns": [1, "accessible-owns"],
|
|
1276
|
-
"external": [4],
|
|
1277
|
-
"middleware": [16],
|
|
1278
|
-
"deferUpload": [4, "defer-upload"],
|
|
1279
|
-
"hideButton": [4, "hide-upload-button"],
|
|
1280
|
-
"actions": [16],
|
|
1281
|
-
"uri": [1],
|
|
1282
|
-
"showLinks": [4, "show-links"],
|
|
1283
|
-
"caption": [1],
|
|
1284
|
-
"statusLabelDefaults": [1, "status-label-default"],
|
|
1285
|
-
"statusMessageLabel": [1, "status-message-label"],
|
|
1286
|
-
"buttonLabelDefaults": [1, "button-label-default"],
|
|
1287
|
-
"buttonLabel": [1, "button-label"],
|
|
1288
|
-
"accessibleButtonLabel": [1, "accessible-button-label"],
|
|
1289
|
-
"theme": [1025],
|
|
1290
|
-
"disabled": [516],
|
|
1291
|
-
"identifier": [1],
|
|
1292
|
-
"margin": [1],
|
|
1293
|
-
"required": [4],
|
|
1294
|
-
"alignment": [1],
|
|
1295
|
-
"hideGroups": [4, "hide-table-labels"],
|
|
1296
|
-
"files": [1040],
|
|
1297
|
-
"valid": [1540],
|
|
1298
|
-
"labelDefaults": [1, "label-default"],
|
|
1299
|
-
"label": [1],
|
|
1300
|
-
"descriptionDefaults": [1, "description-default"],
|
|
1301
|
-
"description": [1],
|
|
1302
|
-
"fileListEmptyDefaults": [1, "list-empty-default"],
|
|
1303
|
-
"fileListEmpty": [1, "file-list-empty"],
|
|
1304
|
-
"error": [1],
|
|
1305
|
-
"errorCodes": [16],
|
|
1306
|
-
"name": [1],
|
|
1307
|
-
"maxBytes": [2, "max-bytes"],
|
|
1308
|
-
"maxBytesTotal": [2, "max-bytes-total"],
|
|
1309
|
-
"maxFiles": [2, "max-files"],
|
|
1310
|
-
"allowedExtensions": [1, "allowed-extensions"],
|
|
1311
|
-
"allowedMimetypes": [1, "allowed-mimetypes"],
|
|
1312
|
-
"multiple": [4],
|
|
1313
|
-
"limitSelection": [4, "limit-selection"],
|
|
1314
|
-
"hideCancelButton": [4, "hide-cancel-button"],
|
|
1315
|
-
"value": [1025],
|
|
1316
|
-
"externalUploadButtonId": [1, "external-upload-button-id"],
|
|
1317
|
-
"captionOnBottom": [4, "caption-on-bottom"],
|
|
1318
|
-
"showUploadedItemsHeader": [4, "show-uploaded-items-header"],
|
|
1319
|
-
"uploadedItemsHeaderLabel": [16],
|
|
1320
|
-
"headerHeadingLevel": [1, "header-heading-level"],
|
|
1321
|
-
"hideHeader": [4, "hide-header"],
|
|
1322
|
-
"emitEvent": [4, "link-click-event"],
|
|
1323
|
-
"actionButtonTitles": [1, "action-button-titles"],
|
|
1324
|
-
"renameDuplicates": [4, "rename-duplicates"],
|
|
1325
|
-
"groups": [16],
|
|
1326
|
-
"tick": [32],
|
|
1327
|
-
"setFocus": [64],
|
|
1328
|
-
"upload": [64],
|
|
1329
|
-
"uploadPending": [64],
|
|
1330
|
-
"refresh": [64],
|
|
1331
|
-
"getFiles": [64],
|
|
1332
|
-
"updateValue": [64],
|
|
1333
|
-
"focusActionButton": [64]
|
|
1334
|
-
}, undefined, {
|
|
1335
|
-
"valid": ["watchValidHandler"]
|
|
1336
|
-
}]);
|
|
1337
|
-
function defineCustomElement$1() {
|
|
1338
|
-
if (typeof customElements === "undefined") {
|
|
1339
|
-
return;
|
|
1340
|
-
}
|
|
1341
|
-
const components = ["duet-upload", "duet-action-button", "duet-alert", "duet-badge", "duet-button", "duet-caption", "duet-empty-state", "duet-fieldset", "duet-heading", "duet-icon", "duet-link", "duet-paragraph", "duet-progress", "duet-show-more", "duet-spacer", "duet-spinner", "duet-upload-aria-status", "duet-upload-item", "duet-visually-hidden"];
|
|
1342
|
-
components.forEach(tagName => { switch (tagName) {
|
|
1343
|
-
case "duet-upload":
|
|
1344
|
-
if (!customElements.get(tagName)) {
|
|
1345
|
-
customElements.define(tagName, DuetUpload$1);
|
|
1346
|
-
}
|
|
1347
|
-
break;
|
|
1348
|
-
case "duet-action-button":
|
|
1349
|
-
if (!customElements.get(tagName)) {
|
|
1350
|
-
defineCustomElement$j();
|
|
1351
|
-
}
|
|
1352
|
-
break;
|
|
1353
|
-
case "duet-alert":
|
|
1354
|
-
if (!customElements.get(tagName)) {
|
|
1355
|
-
defineCustomElement$i();
|
|
1356
|
-
}
|
|
1357
|
-
break;
|
|
1358
|
-
case "duet-badge":
|
|
1359
|
-
if (!customElements.get(tagName)) {
|
|
1360
|
-
defineCustomElement$h();
|
|
1361
|
-
}
|
|
1362
|
-
break;
|
|
1363
|
-
case "duet-button":
|
|
1364
|
-
if (!customElements.get(tagName)) {
|
|
1365
|
-
defineCustomElement$g();
|
|
1366
|
-
}
|
|
1367
|
-
break;
|
|
1368
|
-
case "duet-caption":
|
|
1369
|
-
if (!customElements.get(tagName)) {
|
|
1370
|
-
defineCustomElement$f();
|
|
1371
|
-
}
|
|
1372
|
-
break;
|
|
1373
|
-
case "duet-empty-state":
|
|
1374
|
-
if (!customElements.get(tagName)) {
|
|
1375
|
-
defineCustomElement$e();
|
|
1376
|
-
}
|
|
1377
|
-
break;
|
|
1378
|
-
case "duet-fieldset":
|
|
1379
|
-
if (!customElements.get(tagName)) {
|
|
1380
|
-
defineCustomElement$d();
|
|
1381
|
-
}
|
|
1382
|
-
break;
|
|
1383
|
-
case "duet-heading":
|
|
1384
|
-
if (!customElements.get(tagName)) {
|
|
1385
|
-
defineCustomElement$c();
|
|
1386
|
-
}
|
|
1387
|
-
break;
|
|
1388
|
-
case "duet-icon":
|
|
1389
|
-
if (!customElements.get(tagName)) {
|
|
1390
|
-
defineCustomElement$b();
|
|
1391
|
-
}
|
|
1392
|
-
break;
|
|
1393
|
-
case "duet-link":
|
|
1394
|
-
if (!customElements.get(tagName)) {
|
|
1395
|
-
defineCustomElement$a();
|
|
1396
|
-
}
|
|
1397
|
-
break;
|
|
1398
|
-
case "duet-paragraph":
|
|
1399
|
-
if (!customElements.get(tagName)) {
|
|
1400
|
-
defineCustomElement$9();
|
|
1401
|
-
}
|
|
1402
|
-
break;
|
|
1403
|
-
case "duet-progress":
|
|
1404
|
-
if (!customElements.get(tagName)) {
|
|
1405
|
-
defineCustomElement$8();
|
|
1406
|
-
}
|
|
1407
|
-
break;
|
|
1408
|
-
case "duet-show-more":
|
|
1409
|
-
if (!customElements.get(tagName)) {
|
|
1410
|
-
defineCustomElement$7();
|
|
1411
|
-
}
|
|
1412
|
-
break;
|
|
1413
|
-
case "duet-spacer":
|
|
1414
|
-
if (!customElements.get(tagName)) {
|
|
1415
|
-
defineCustomElement$6();
|
|
1416
|
-
}
|
|
1417
|
-
break;
|
|
1418
|
-
case "duet-spinner":
|
|
1419
|
-
if (!customElements.get(tagName)) {
|
|
1420
|
-
defineCustomElement$5();
|
|
1421
|
-
}
|
|
1422
|
-
break;
|
|
1423
|
-
case "duet-upload-aria-status":
|
|
1424
|
-
if (!customElements.get(tagName)) {
|
|
1425
|
-
defineCustomElement$4();
|
|
1426
|
-
}
|
|
1427
|
-
break;
|
|
1428
|
-
case "duet-upload-item":
|
|
1429
|
-
if (!customElements.get(tagName)) {
|
|
1430
|
-
defineCustomElement$3();
|
|
1431
|
-
}
|
|
1432
|
-
break;
|
|
1433
|
-
case "duet-visually-hidden":
|
|
1434
|
-
if (!customElements.get(tagName)) {
|
|
1435
|
-
defineCustomElement$2();
|
|
1436
|
-
}
|
|
1437
|
-
break;
|
|
1438
|
-
} });
|
|
1439
|
-
}
|
|
1440
|
-
|
|
1441
|
-
const DuetUpload = DuetUpload$1;
|
|
1442
|
-
const defineCustomElement = defineCustomElement$1;
|
|
1443
|
-
|
|
1444
|
-
export { DuetUpload, defineCustomElement };
|