@duetds/components 10.1.0 → 10.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/hydrate/index.js +342 -265
- package/hydrate/index.mjs +342 -265
- package/lib/cjs/{a11y-utils-DzwEPbds.js → a11y-utils-Dt4L3QkG.js} +1 -1
- package/lib/cjs/{app-globals-BtFYkwDf.js → app-globals-1gECxmAH.js} +1 -1
- package/lib/cjs/{common-strings-CC6Xpjb8.js → common-strings-DMaSb4Ld.js} +8 -1
- package/lib/cjs/duet-action-button.cjs.entry.js +5 -5
- package/lib/cjs/duet-alert.cjs.entry.js +5 -5
- package/lib/cjs/duet-badge.cjs.entry.js +6 -6
- package/lib/cjs/duet-banner.cjs.entry.js +5 -5
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +6 -6
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +7 -7
- package/lib/cjs/duet-button_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-callout.cjs.entry.js +5 -5
- package/lib/cjs/duet-caption_4.cjs.entry.js +22 -16
- package/lib/cjs/duet-card.cjs.entry.js +5 -5
- package/lib/cjs/duet-checkbox.cjs.entry.js +19 -5
- package/lib/cjs/duet-checkmark.cjs.entry.js +4 -4
- package/lib/cjs/duet-chip.cjs.entry.js +4 -4
- package/lib/cjs/duet-choice_2.cjs.entry.js +13 -13
- package/lib/cjs/duet-collapsible.cjs.entry.js +6 -6
- package/lib/cjs/duet-combobox.cjs.entry.js +32 -11
- package/lib/cjs/duet-contact-card.cjs.entry.js +5 -5
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +3 -3
- package/lib/cjs/duet-date-picker.cjs.entry.js +9 -9
- package/lib/cjs/duet-divider_2.cjs.entry.js +6 -6
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +12 -12
- package/lib/cjs/duet-empty-state.cjs.entry.js +4 -4
- package/lib/cjs/duet-fieldset.cjs.entry.js +7 -7
- package/lib/cjs/duet-file-chooser.cjs.entry.js +3 -3
- package/lib/cjs/duet-footer.cjs.entry.js +25 -18
- package/lib/cjs/duet-grid_2.cjs.entry.js +7 -6
- package/lib/cjs/duet-header_2.cjs.entry.js +8 -8
- package/lib/cjs/duet-hero.cjs.entry.js +11 -11
- package/lib/cjs/duet-icon.cjs.entry.js +7 -7
- package/lib/cjs/duet-indicator.cjs.entry.js +4 -4
- package/lib/cjs/duet-input_2.cjs.entry.js +13 -13
- package/lib/cjs/duet-layout.cjs.entry.js +7 -7
- package/lib/cjs/duet-list_2.cjs.entry.js +5 -5
- package/lib/cjs/duet-menu-bar-button.cjs.entry.js +4 -4
- package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +4 -4
- package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +6 -6
- package/lib/cjs/duet-menu-bar-item.cjs.entry.js +8 -8
- package/lib/cjs/duet-menu-bar-link.cjs.entry.js +4 -4
- package/lib/cjs/duet-menu-bar.cjs.entry.js +6 -6
- package/lib/cjs/duet-modal.cjs.entry.js +15 -15
- package/lib/cjs/duet-multiselect.cjs.entry.js +10 -10
- package/lib/cjs/duet-nav.cjs.entry.js +3 -3
- package/lib/cjs/duet-notification_2.cjs.entry.js +9 -9
- package/lib/cjs/duet-number-input.cjs.entry.js +8 -8
- package/lib/cjs/duet-overlay.cjs.entry.js +3 -3
- package/lib/cjs/duet-page-heading.cjs.entry.js +4 -4
- package/lib/cjs/duet-pagination_2.cjs.entry.js +18 -18
- package/lib/cjs/duet-panel.cjs.entry.js +4 -4
- package/lib/cjs/duet-phone-input.cjs.entry.js +4 -4
- package/lib/cjs/duet-popup-menu_2.cjs.entry.js +12 -12
- package/lib/cjs/duet-progress.cjs.entry.js +3 -3
- package/lib/cjs/duet-promo-card.cjs.entry.js +7 -7
- package/lib/cjs/duet-radio_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-range-slider.cjs.entry.js +7 -7
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +17 -17
- package/lib/cjs/duet-section-layout.cjs.entry.js +4 -4
- package/lib/cjs/duet-select.cjs.entry.js +9 -9
- package/lib/cjs/duet-shaped-image.cjs.entry.js +4 -4
- package/lib/cjs/duet-share-chart-item.cjs.entry.js +2 -2
- package/lib/cjs/duet-share-chart.cjs.entry.js +8 -8
- package/lib/cjs/duet-show-more.cjs.entry.js +5 -5
- package/lib/cjs/duet-slideout-lang.cjs.entry.js +4 -4
- package/lib/cjs/duet-slideout-link.cjs.entry.js +8 -8
- package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +6 -6
- package/lib/cjs/duet-slideout-panel.cjs.entry.js +13 -13
- package/lib/cjs/duet-slideout.cjs.entry.js +12 -12
- package/lib/cjs/duet-status-icon.cjs.entry.js +4 -4
- package/lib/cjs/duet-step_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +4 -4
- package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +7 -7
- package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +7 -7
- package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +3 -3
- package/lib/cjs/duet-submenu-bar.cjs.entry.js +8 -8
- package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
- package/lib/cjs/duet-toggle.cjs.entry.js +25 -7
- package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +4 -4
- package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +6 -6
- package/lib/cjs/duet-toolbar-item.cjs.entry.js +9 -9
- package/lib/cjs/duet-toolbar-link.cjs.entry.js +4 -4
- package/lib/cjs/duet-toolbar.cjs.entry.js +4 -4
- package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +9 -9
- package/lib/cjs/duet-tooltip.cjs.entry.js +5 -5
- package/lib/cjs/duet-tray.cjs.entry.js +6 -6
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
- package/lib/cjs/duet-upload-item.cjs.entry.js +6 -6
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
- package/lib/cjs/duet.cjs.js +3 -3
- package/lib/cjs/{errorcodes.utils-BuseNrD9.js → errorcodes.utils-DtuBPKs3.js} +1 -1
- package/lib/cjs/{focus-utils-Cbk0cnOs.js → focus-utils-n84nLLND.js} +1 -1
- package/lib/cjs/{index-blgG8IJB.js → index-BfggyC6D.js} +1 -1
- package/lib/cjs/{label-DeanNJa0.js → label-CFsg_9mi.js} +1 -1
- package/lib/cjs/{language-utils-DWW8tvkB.js → language-utils-UQJMUCLw.js} +1 -1
- package/lib/cjs/loader.cjs.js +3 -3
- package/lib/cjs/{slot-utils-Byx247xX.js → slot-utils-BEQnfNX2.js} +1 -1
- package/lib/cjs/{themeable-component-DcR7DztR.js → themeable-component-BkwBlXGz.js} +1 -1
- package/lib/cjs/{token-utils-BJtlJxnJ.js → token-utils-GXq9O-4F.js} +1 -1
- package/lib/cjs/{tokens-BxWzRxOl.js → tokens-DZMc8s3K.js} +3 -0
- package/lib/cjs/{tokens.module-DJt2h4FX.js → tokens.module-Bc3oSOjD.js} +3 -0
- package/lib/collection/common-strings.js +7 -1
- package/lib/collection/components/duet-badge/duet-badge.js +2 -2
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -4
- package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -2
- package/lib/collection/components/duet-callout/duet-callout.js +2 -2
- package/lib/collection/components/duet-checkbox/duet-checkbox.css +11 -2
- package/lib/collection/components/duet-checkbox/duet-checkbox.js +24 -2
- package/lib/collection/components/duet-chip/duet-chip.js +1 -1
- package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
- package/lib/collection/components/duet-choice/duet-choice.js +6 -6
- package/lib/collection/components/duet-choice-group/duet-choice-group.js +2 -2
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +2 -2
- package/lib/collection/components/duet-combobox/duet-combobox.css +0 -5
- package/lib/collection/components/duet-combobox/duet-combobox.js +27 -6
- package/lib/collection/components/duet-contact-card/duet-contact-card.js +2 -2
- package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
- package/lib/collection/components/duet-date-picker/duet-date-picker.css +2 -2
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +2 -2
- package/lib/collection/components/duet-divider/duet-divider.js +1 -1
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +2 -2
- package/lib/collection/components/duet-empty-state/duet-empty-state.js +2 -2
- package/lib/collection/components/duet-fieldset/duet-fieldset.css +2 -17
- package/lib/collection/components/duet-fieldset/duet-fieldset.js +3 -3
- package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +1 -1
- package/lib/collection/components/duet-footer/duet-footer.js +20 -13
- package/lib/collection/components/duet-grid/duet-grid.js +2 -2
- package/lib/collection/components/duet-grid-item/duet-grid-item.js +3 -2
- package/lib/collection/components/duet-heading/duet-heading.js +2 -2
- package/lib/collection/components/duet-hero/duet-hero.css +1 -0
- package/lib/collection/components/duet-hero/duet-hero.js +5 -5
- package/lib/collection/components/duet-icon/duet-icon.js +3 -3
- package/lib/collection/components/duet-indicator/duet-indicator.js +1 -1
- package/lib/collection/components/duet-input/duet-input.js +6 -6
- package/lib/collection/components/duet-layout/duet-layout.js +5 -5
- package/lib/collection/components/duet-link/duet-link.css +42 -8
- package/lib/collection/components/duet-link/duet-link.js +11 -5
- package/lib/collection/components/duet-list/duet-list.js +1 -1
- package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
- package/lib/collection/components/duet-logo/duet-logo.js +1 -1
- package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +3 -3
- package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +2 -2
- package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +4 -4
- package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -2
- package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +2 -2
- package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -2
- package/lib/collection/components/duet-modal/duet-modal.js +7 -7
- package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
- package/lib/collection/components/duet-nav/duet-nav.js +1 -1
- package/lib/collection/components/duet-notification/duet-notification.js +2 -2
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +3 -3
- package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
- package/lib/collection/components/duet-overlay/duet-overlay.js +1 -1
- package/lib/collection/components/duet-page-heading/duet-page-heading.js +2 -2
- package/lib/collection/components/duet-pagination/duet-pagination.js +11 -11
- package/lib/collection/components/duet-panel/duet-panel.js +2 -2
- package/lib/collection/components/duet-paragraph/duet-paragraph.js +2 -2
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +3 -3
- package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
- package/lib/collection/components/duet-promo-card/duet-promo-card.js +2 -2
- package/lib/collection/components/duet-radio/duet-radio.js +3 -3
- package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
- package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -2
- package/lib/collection/components/duet-scrollable/duet-scrollable.js +5 -5
- package/lib/collection/components/duet-section-layout/duet-section-layout.js +3 -3
- package/lib/collection/components/duet-select/duet-select.js +5 -5
- package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +2 -2
- package/lib/collection/components/duet-share-chart/duet-share-chart.js +2 -2
- package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +1 -1
- package/lib/collection/components/duet-show-more/duet-show-more.js +2 -2
- package/lib/collection/components/duet-slideout/duet-slideout.js +4 -4
- package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +1 -1
- package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -2
- package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +6 -6
- package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +4 -4
- package/lib/collection/components/duet-spacer/duet-spacer.js +1 -1
- package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
- package/lib/collection/components/duet-status-icon/duet-status-icon.js +2 -2
- package/lib/collection/components/duet-step/duet-step.js +2 -2
- package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
- package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +5 -5
- package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +4 -4
- package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -2
- package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +1 -1
- package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +1 -1
- package/lib/collection/components/duet-tab/duet-tab.js +2 -2
- package/lib/collection/components/duet-tab-group/duet-tab-group.js +4 -4
- package/lib/collection/components/duet-table/duet-table.js +2 -2
- package/lib/collection/components/duet-textarea/duet-textarea.js +3 -3
- package/lib/collection/components/duet-toggle/duet-toggle.css +22 -9
- package/lib/collection/components/duet-toggle/duet-toggle.js +84 -2
- package/lib/collection/components/duet-toolbar/duet-toolbar.js +2 -2
- package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +4 -4
- package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -2
- package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +3 -3
- package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -2
- package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +3 -3
- package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +3 -3
- package/lib/collection/components/duet-tray/duet-tray.js +2 -2
- package/lib/collection/components/duet-upload/duet-upload.js +2 -2
- package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +1 -1
- package/lib/collection/components/duet-upload-item/duet-upload-item.js +2 -2
- package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/{p-83c7bfe0.entry.js → p-01ede40e.entry.js} +1 -1
- package/lib/duet/{p-ab74c20e.entry.js → p-0c677bac.entry.js} +1 -1
- package/lib/duet/{p-8f2fbd03.entry.js → p-0e6feeaf.entry.js} +1 -1
- package/lib/duet/{p-4862f0c6.entry.js → p-10d943ea.entry.js} +1 -1
- package/lib/duet/{p-b2f22262.entry.js → p-11e17622.entry.js} +1 -1
- package/lib/duet/{p-6cf8e63d.entry.js → p-16db57d6.entry.js} +1 -1
- package/lib/duet/{p-e195c5e2.entry.js → p-19dfac00.entry.js} +1 -1
- package/lib/duet/{p-a9692b2a.entry.js → p-1a9f5440.entry.js} +1 -1
- package/lib/duet/{p-1d8da041.entry.js → p-1b1018d1.entry.js} +1 -1
- package/lib/duet/p-1e4903a7.entry.js +4 -0
- package/lib/duet/{p-36d2a441.entry.js → p-1e82c441.entry.js} +1 -1
- package/lib/duet/{p-960ada39.entry.js → p-1f76c77a.entry.js} +1 -1
- package/lib/duet/{p-8857eb7b.entry.js → p-2871d3f5.entry.js} +1 -1
- package/lib/duet/{p-2d0eb4b5.entry.js → p-2a1db046.entry.js} +1 -1
- package/lib/duet/{p-14d64261.entry.js → p-2b41b6c3.entry.js} +1 -1
- package/lib/duet/{p-e7c058b0.entry.js → p-2d813dd9.entry.js} +1 -1
- package/lib/duet/{p-d26c644d.entry.js → p-2e99a3d1.entry.js} +1 -1
- package/lib/duet/{p-486a4bc6.entry.js → p-308328c0.entry.js} +1 -1
- package/lib/duet/p-31c03dbc.entry.js +4 -0
- package/lib/duet/p-32ae38d2.entry.js +4 -0
- package/lib/duet/p-3650e089.entry.js +4 -0
- package/lib/duet/{p-43f15ad6.entry.js → p-3b6f0ed3.entry.js} +1 -1
- package/lib/duet/{p-4d14780b.entry.js → p-3c19d851.entry.js} +1 -1
- package/lib/duet/{p-dc57fff7.entry.js → p-3d85dbf7.entry.js} +1 -1
- package/lib/duet/p-3dd1304e.entry.js +4 -0
- package/lib/duet/{p-bb8634c4.entry.js → p-413ccfee.entry.js} +1 -1
- package/lib/duet/{p-04c9c13e.entry.js → p-45f8d839.entry.js} +1 -1
- package/lib/duet/{p-3b52f20d.entry.js → p-493b240f.entry.js} +1 -1
- package/lib/duet/{p-e3780362.entry.js → p-4f16859a.entry.js} +1 -1
- package/lib/duet/{p-320e4688.entry.js → p-50f80b6c.entry.js} +1 -1
- package/lib/duet/{p-1380370e.entry.js → p-5302f338.entry.js} +1 -1
- package/lib/duet/{p-40956ec6.entry.js → p-549e68da.entry.js} +1 -1
- package/lib/duet/{p-a28d4312.entry.js → p-6333c633.entry.js} +1 -1
- package/lib/duet/{p-bd0ad7c3.entry.js → p-6969647c.entry.js} +1 -1
- package/lib/duet/{p-d4e2e471.entry.js → p-6b06705f.entry.js} +1 -1
- package/lib/duet/{p-dc4d385d.entry.js → p-6b9ac7ea.entry.js} +1 -1
- package/lib/duet/{p-d9f504b7.entry.js → p-6bddd7b7.entry.js} +1 -1
- package/lib/duet/{p-db22799a.entry.js → p-7515a195.entry.js} +1 -1
- package/lib/duet/{p-24f206ab.entry.js → p-7916d25e.entry.js} +1 -1
- package/lib/duet/{p-6662042f.entry.js → p-81e55a2f.entry.js} +1 -1
- package/lib/duet/{p-ec5b54f3.entry.js → p-82ed09c9.entry.js} +1 -1
- package/lib/duet/{p-2c4f4896.entry.js → p-89cba286.entry.js} +1 -1
- package/lib/duet/p-8RjiAqaE.js +4 -0
- package/lib/duet/{p-140b87f4.entry.js → p-8a9ad498.entry.js} +1 -1
- package/lib/duet/{p-0d1a4928.entry.js → p-8ecfef50.entry.js} +1 -1
- package/lib/duet/{p-3a108321.entry.js → p-8f43c23a.entry.js} +1 -1
- package/lib/duet/{p-6qQ9c51e.js → p-8odxhfeD.js} +1 -1
- package/lib/duet/{p-d8ebfd49.entry.js → p-9289e2d6.entry.js} +1 -1
- package/lib/duet/{p-9dc2b0d2.entry.js → p-9bcb57a9.entry.js} +1 -1
- package/lib/duet/{p-57ba8f5f.entry.js → p-9efde101.entry.js} +1 -1
- package/lib/duet/{p-1U75pxcR.js → p-BcVbsW_2.js} +1 -1
- package/lib/duet/p-BhRNiBUo.js +4 -0
- package/lib/duet/p-BxH0r0DA.js +5 -0
- package/lib/duet/p-C-hMrqKD.js +4 -0
- package/lib/duet/{p-CxgSYSyh.js → p-C7D5HRhY.js} +1 -1
- package/lib/duet/p-CKemMSHL.js +4 -0
- package/lib/duet/p-CjSEMtsI.js +4 -0
- package/lib/duet/{p-Bg75Vqqq.js → p-D7VOYHjg.js} +1 -1
- package/lib/duet/p-DMjxD3N-.js +4 -0
- package/lib/duet/p-LYJwm2Mz.js +4 -0
- package/lib/duet/{p-fe34272e.entry.js → p-a408c8ef.entry.js} +1 -1
- package/lib/duet/{p-9ee8ddc9.entry.js → p-a8b8aa7f.entry.js} +1 -1
- package/lib/duet/{p-bcb8d390.entry.js → p-abb3a02c.entry.js} +1 -1
- package/lib/duet/{p-90981fbb.entry.js → p-ad2d810a.entry.js} +1 -1
- package/lib/duet/{p-a1e60676.entry.js → p-ad86f19c.entry.js} +1 -1
- package/lib/duet/{p-276f8827.entry.js → p-ad8929e4.entry.js} +1 -1
- package/lib/duet/p-aef55e42.entry.js +4 -0
- package/lib/duet/{p-823522c9.entry.js → p-b178aa13.entry.js} +1 -1
- package/lib/duet/{p-7a8f23b7.entry.js → p-b8fe3df0.entry.js} +1 -1
- package/lib/duet/{p-4de6cd49.entry.js → p-b9327667.entry.js} +1 -1
- package/lib/duet/{p-9fd10aed.entry.js → p-b9c35e5e.entry.js} +1 -1
- package/lib/duet/{p-6043a6de.entry.js → p-bbaa683a.entry.js} +1 -1
- package/lib/duet/{p-93303c68.entry.js → p-bdb10c77.entry.js} +1 -1
- package/lib/duet/{p-72c7816e.entry.js → p-bdd24cc6.entry.js} +1 -1
- package/lib/duet/p-be91dd8c.entry.js +4 -0
- package/lib/duet/{p-d31cafc9.entry.js → p-cb90478e.entry.js} +1 -1
- package/lib/duet/{p-de255274.entry.js → p-cdc6285c.entry.js} +1 -1
- package/lib/duet/{p-e2e7b3bd.entry.js → p-d1db3194.entry.js} +1 -1
- package/lib/duet/{p-f6720f8c.entry.js → p-d2c50765.entry.js} +1 -1
- package/lib/duet/{p-6862c7d5.entry.js → p-d625732a.entry.js} +1 -1
- package/lib/duet/{p-f6f6b960.entry.js → p-d8ddd6aa.entry.js} +1 -1
- package/lib/duet/{p-6b2823ed.entry.js → p-d948db17.entry.js} +1 -1
- package/lib/duet/{p-ac_1YilV.js → p-dX4lCxX-.js} +1 -1
- package/lib/duet/{p-db594a93.entry.js → p-dc7b2908.entry.js} +1 -1
- package/lib/duet/{p-fb4ab1f5.entry.js → p-dfb7e2a4.entry.js} +1 -1
- package/lib/duet/p-e042f54a.entry.js +4 -0
- package/lib/duet/{p-b2464865.entry.js → p-e197cf15.entry.js} +1 -1
- package/lib/duet/p-e21285ad.entry.js +4 -0
- package/lib/duet/p-e5173b25.entry.js +4 -0
- package/lib/duet/p-e6a05ef9.entry.js +4 -0
- package/lib/duet/{p-29e677bc.entry.js → p-ecad641c.entry.js} +1 -1
- package/lib/duet/{p-ba39d3ad.entry.js → p-ed84afb6.entry.js} +1 -1
- package/lib/duet/p-ee7e1387.entry.js +4 -0
- package/lib/duet/{p-581e1e08.entry.js → p-f2cc172e.entry.js} +1 -1
- package/lib/duet/p-f55ffe76.entry.js +4 -0
- package/lib/duet/{p-fd120a7b.entry.js → p-f80c76b3.entry.js} +1 -1
- package/lib/duet/{p-ca3fe683.entry.js → p-f920d7a8.entry.js} +1 -1
- package/lib/duet/{p-de639eff.entry.js → p-fc427a9c.entry.js} +1 -1
- package/lib/duet/{p-d35a4b95.entry.js → p-fd1bf11b.entry.js} +1 -1
- package/lib/esm/{a11y-utils-BuWx2D09.js → a11y-utils-Cc259XJX.js} +1 -1
- package/lib/esm/{app-globals-DRDLN5wE.js → app-globals-CIsV7gbu.js} +1 -1
- package/lib/esm/{common-strings-CVPfl9fc.js → common-strings-8RjiAqaE.js} +8 -2
- package/lib/esm/duet-action-button.entry.js +5 -5
- package/lib/esm/duet-alert.entry.js +5 -5
- package/lib/esm/duet-badge.entry.js +6 -6
- package/lib/esm/duet-banner.entry.js +5 -5
- package/lib/esm/duet-breadcrumb.entry.js +6 -6
- package/lib/esm/duet-breadcrumbs.entry.js +7 -7
- package/lib/esm/duet-button_2.entry.js +7 -7
- package/lib/esm/duet-callout.entry.js +5 -5
- package/lib/esm/duet-caption_4.entry.js +22 -16
- package/lib/esm/duet-card.entry.js +5 -5
- package/lib/esm/duet-checkbox.entry.js +19 -5
- package/lib/esm/duet-checkmark.entry.js +4 -4
- package/lib/esm/duet-chip.entry.js +4 -4
- package/lib/esm/duet-choice_2.entry.js +13 -13
- package/lib/esm/duet-collapsible.entry.js +6 -6
- package/lib/esm/duet-combobox.entry.js +33 -12
- package/lib/esm/duet-contact-card.entry.js +5 -5
- package/lib/esm/duet-cookie-consent.entry.js +3 -3
- package/lib/esm/duet-date-picker.entry.js +9 -9
- package/lib/esm/duet-divider_2.entry.js +6 -6
- package/lib/esm/duet-editable-table_3.entry.js +12 -12
- package/lib/esm/duet-empty-state.entry.js +4 -4
- package/lib/esm/duet-fieldset.entry.js +7 -7
- package/lib/esm/duet-file-chooser.entry.js +3 -3
- package/lib/esm/duet-footer.entry.js +25 -18
- package/lib/esm/duet-grid_2.entry.js +7 -6
- package/lib/esm/duet-header_2.entry.js +8 -8
- package/lib/esm/duet-hero.entry.js +11 -11
- package/lib/esm/duet-icon.entry.js +7 -7
- package/lib/esm/duet-indicator.entry.js +4 -4
- package/lib/esm/duet-input_2.entry.js +13 -13
- package/lib/esm/duet-layout.entry.js +7 -7
- package/lib/esm/duet-list_2.entry.js +5 -5
- package/lib/esm/duet-menu-bar-button.entry.js +4 -4
- package/lib/esm/duet-menu-bar-dropdown-link.entry.js +4 -4
- package/lib/esm/duet-menu-bar-dropdown.entry.js +6 -6
- package/lib/esm/duet-menu-bar-item.entry.js +8 -8
- package/lib/esm/duet-menu-bar-link.entry.js +4 -4
- package/lib/esm/duet-menu-bar.entry.js +6 -6
- package/lib/esm/duet-modal.entry.js +15 -15
- package/lib/esm/duet-multiselect.entry.js +10 -10
- package/lib/esm/duet-nav.entry.js +3 -3
- package/lib/esm/duet-notification_2.entry.js +9 -9
- package/lib/esm/duet-number-input.entry.js +8 -8
- package/lib/esm/duet-overlay.entry.js +3 -3
- package/lib/esm/duet-page-heading.entry.js +4 -4
- package/lib/esm/duet-pagination_2.entry.js +18 -18
- package/lib/esm/duet-panel.entry.js +4 -4
- package/lib/esm/duet-phone-input.entry.js +4 -4
- package/lib/esm/duet-popup-menu_2.entry.js +12 -12
- package/lib/esm/duet-progress.entry.js +3 -3
- package/lib/esm/duet-promo-card.entry.js +7 -7
- package/lib/esm/duet-radio_2.entry.js +7 -7
- package/lib/esm/duet-range-slider.entry.js +7 -7
- package/lib/esm/duet-scrollable_3.entry.js +17 -17
- package/lib/esm/duet-section-layout.entry.js +4 -4
- package/lib/esm/duet-select.entry.js +9 -9
- package/lib/esm/duet-shaped-image.entry.js +4 -4
- package/lib/esm/duet-share-chart-item.entry.js +2 -2
- package/lib/esm/duet-share-chart.entry.js +8 -8
- package/lib/esm/duet-show-more.entry.js +5 -5
- package/lib/esm/duet-slideout-lang.entry.js +4 -4
- package/lib/esm/duet-slideout-link.entry.js +8 -8
- package/lib/esm/duet-slideout-panel-dropdown.entry.js +6 -6
- package/lib/esm/duet-slideout-panel.entry.js +13 -13
- package/lib/esm/duet-slideout.entry.js +12 -12
- package/lib/esm/duet-status-icon.entry.js +4 -4
- package/lib/esm/duet-step_2.entry.js +7 -7
- package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +4 -4
- package/lib/esm/duet-submenu-bar-dropdown.entry.js +7 -7
- package/lib/esm/duet-submenu-bar-item.entry.js +7 -7
- package/lib/esm/duet-submenu-bar-link.entry.js +3 -3
- package/lib/esm/duet-submenu-bar.entry.js +8 -8
- package/lib/esm/duet-textarea.entry.js +8 -8
- package/lib/esm/duet-toggle.entry.js +25 -7
- package/lib/esm/duet-toolbar-dropdown-link.entry.js +4 -4
- package/lib/esm/duet-toolbar-dropdown.entry.js +6 -6
- package/lib/esm/duet-toolbar-item.entry.js +9 -9
- package/lib/esm/duet-toolbar-link.entry.js +4 -4
- package/lib/esm/duet-toolbar.entry.js +4 -4
- package/lib/esm/duet-tooltip-button_2.entry.js +9 -9
- package/lib/esm/duet-tooltip.entry.js +5 -5
- package/lib/esm/duet-tray.entry.js +6 -6
- package/lib/esm/duet-upload-aria-status.entry.js +2 -2
- package/lib/esm/duet-upload-item.entry.js +6 -6
- package/lib/esm/duet-visually-hidden.entry.js +2 -2
- package/lib/esm/duet.js +4 -4
- package/lib/esm/{errorcodes.utils-CjUqHglR.js → errorcodes.utils-KnjOo5JF.js} +1 -1
- package/lib/esm/{focus-utils-Do5KtPgs.js → focus-utils-Cgrh4d7y.js} +1 -1
- package/lib/esm/{index-BhYt_2Vd.js → index-BxH0r0DA.js} +1 -1
- package/lib/esm/{label-BRuShBbJ.js → label-DA-iWWhe.js} +1 -1
- package/lib/esm/{language-utils-D2jecvOr.js → language-utils-BqCiY8zW.js} +1 -1
- package/lib/esm/loader.js +4 -4
- package/lib/esm/{slot-utils-nDLvv_4O.js → slot-utils-Bi4BkMYE.js} +1 -1
- package/lib/esm/{themeable-component-C0nhBgYw.js → themeable-component-EeTaKAPP.js} +1 -1
- package/lib/esm/{token-utils-Dks4GBDa.js → token-utils-ibPg9tBe.js} +1 -1
- package/lib/esm/{tokens-DOuLHrH5.js → tokens-CjSEMtsI.js} +3 -0
- package/lib/esm/{tokens.module-BDAqOMlM.js → tokens.module-C-hMrqKD.js} +3 -1
- package/lib/types/common-strings.d.ts +1 -0
- package/lib/types/common-types.d.ts +8 -1
- package/lib/types/components/duet-checkbox/duet-checkbox.d.ts +6 -0
- package/lib/types/components/duet-combobox/duet-combobox.d.ts +4 -0
- package/lib/types/components/duet-footer/duet-footer.d.ts +2 -0
- package/lib/types/components/duet-grid-item/duet-grid-item.d.ts +4 -0
- package/lib/types/components/duet-link/duet-link.d.ts +3 -1
- package/lib/types/components/duet-toggle/duet-toggle.d.ts +16 -0
- package/lib/types/components.d.ts +28 -2
- package/package.json +5 -5
- package/lib/duet/p-01ce999b.entry.js +0 -4
- package/lib/duet/p-0fabcede.entry.js +0 -4
- package/lib/duet/p-141f03da.entry.js +0 -4
- package/lib/duet/p-28325583.entry.js +0 -4
- package/lib/duet/p-30ae4852.entry.js +0 -4
- package/lib/duet/p-540fc47b.entry.js +0 -4
- package/lib/duet/p-5db08755.entry.js +0 -4
- package/lib/duet/p-5f329414.entry.js +0 -4
- package/lib/duet/p-6d90a89c.entry.js +0 -4
- package/lib/duet/p-90eed96d.entry.js +0 -4
- package/lib/duet/p-94f1de2c.entry.js +0 -4
- package/lib/duet/p-B0pM7dNk.js +0 -4
- package/lib/duet/p-BDAqOMlM.js +0 -4
- package/lib/duet/p-BhYt_2Vd.js +0 -5
- package/lib/duet/p-BtxOyTe3.js +0 -4
- package/lib/duet/p-CVPfl9fc.js +0 -4
- package/lib/duet/p-DJzDRf9m.js +0 -4
- package/lib/duet/p-DOuLHrH5.js +0 -4
- package/lib/duet/p-a9cf57f5.entry.js +0 -4
- package/lib/duet/p-afabb51f.entry.js +0 -4
- package/lib/duet/p-xwlQQBxs.js +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,c as e,h as i,H as a,g as o}from"./p-BhYt_2Vd.js";import{g as n}from"./p-DvwKrUS6.js";import{s as r}from"./p-5iZMFvpJ.js";import{i as u}from"./p-1U75pxcR.js";import{D as s}from"./p-CxgSYSyh.js";import{c as l}from"./p-Cfr_DJqU.js";import{c as d,r as p}from"./p-CLDy7YaM.js";import{a as h,c,o as b,d as m,f as g}from"./p-Db8rvjPI.js";import{a as f,c as v,d as x,g as w}from"./p-ac_1YilV.js";import{c as y,p as k}from"./p-DJzDRf9m.js";import{g as S}from"./p-Bg75Vqqq.js";import"./p-C6E9F6QT.js";import"./p-BDAqOMlM.js";var C,z;const j={search:r,email:n(z?C:(z=1,C={title:"form-email",tags:"form email",svg:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z"/></svg>'}))},I=class{constructor(i){t(this,i),this.duetInput=e(this,"duetInput",7),this.duetChange=e(this,"duetChange",3),this.duetBlur=e(this,"duetBlur",7),this.duetClear=e(this,"duetClear",7),this.duetFocus=e(this,"duetFocus",7),this.inputId=l("DuetInput"),this.proxyId=l("DuetInput"),this.clearId=l("DuetInputClear"),this.labelId=l("DuetLabel"),this.topCaptionId=l("DuetCaptionTop"),this.topCaptionPlaceholderId=l("DuetCaptionPlaceholderTop"),this.chipCountId=l("DuetInputChipCount"),this.errorId=l("DuetError"),this.disallowPatternRegex=null,this.clearLabel={en:"Clear",fi:"Tyhjennä",sv:"Rensa"},this.timeAnnouncement={en:"Time",fi:"Aika",sv:"Tid"},this.showPasswordLabel={en:"Show password",fi:"Näytä salasana",sv:"Visa lösenord"},this.hidePasswordLabel={en:"Hide password",fi:"Piilota salasana",sv:"Dölj lösenord"},this.passwordShownAriaAnnouncement={en:"Password is shown",fi:"Salasana näytetään",sv:"Lösenordet visas"},this.passwordHiddenAriaAnnouncement={en:"Password is hidden",fi:"Salasana on piilotettu",sv:"Lösenordet är dolt"},this.chipsSelectedDesriptionLabel={en:"selected",fi:"valittu",sv:"valt"},this.language=f(),this.isFocused=!1,this._accessiblePopup=void 0,this.accessibleDescribedBy="",this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.accessibleLiveError="polite",this.debounce=0,this.clear=!1,this.echoPlaceholder=!1,this.theme="",this.expand=!1,this.disabled=!1,this.margin="auto",this.inputAlign="left",this.inputPadding="medium",this.required=!1,this.type="text",this.variation="default",this.chips=!1,this.label="Label",this.error="",this.labelHidden=!1,this.numericKeyboard=!1,this.component="input",this.autoComplete="on",this.disallowPattern=null,this.tooltip="",this.tooltipDirection="auto",this.onInput=t=>{this.disallowPatternRegex&&d(this.nativeInput,this.disallowPatternRegex),this.chips&&this.clearChipSelection(),this.value=this.nativeInput.value||"",this.duetInput.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onBlur=t=>{t.relatedTarget!==this.nativeInput&&t.relatedTarget!==this.togglePasswordRevealedButton&&("revealable"===this.variation&&this.isPasswordRevealed&&(this.isPasswordRevealed=!1),this.isFocused=!1,this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-input"}))},this.onFocus=t=>{this.clearChipSelection(),this.isFocused=!0,this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onClear=t=>{this.duetClear.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.getAriaDescribedBy=()=>{const t=[];if(this.isCaptionVisible&&this.topCaptionId&&t.push(this.topCaptionId),this.accessibleDescribedBy&&t.push(this.accessibleDescribedBy),this.chips){const e=this.getAllChips();e.length&&(t.push(this.chipCountId),e.forEach((e=>t.push(e.id))))}return this.error&&t.push(this.errorId),t.length>0?t.join(" "):null},this.handleClearClick=t=>{const e=this.clearInput();return this.onClear(t),e},this.keyHandler=t=>(h(t)&&this.clear&&this.handleClearClick(t),c(t)&&"revealable"===this.variation&&(t.target===this.togglePasswordRevealedButton?t.stopPropagation():this.isPasswordRevealed=!1),this.chips&&0===this.nativeInput.value.length&&(b(t)&&(this.isChipSelected()&&(this.getSelectedChip().removeChip(),setTimeout((()=>this.selectLastChip()))),this.selectLastChip()),m(t)&&this.selectChipToLeft(),g(t)&&this.isChipSelected()&&this.selectChipToRight()),t),this.togglePasswordRevealed=()=>{this.isPasswordRevealed=!this.isPasswordRevealed},this.getInputType=()=>"revealable"===this.variation?this.isPasswordRevealed?"text":"password":this.type}get accessibleHasPopup(){return this._accessiblePopup}set accessibleHasPopup(t){this._accessiblePopup=t}get accessiblePopup(){return this._accessiblePopup}set accessiblePopup(t){this._accessiblePopup=t}disallowedPatternChange(){this.disallowPatternRegex=this.disallowPattern?new RegExp(this.disallowPattern,"gu"):null}valueChanged(){if(this.nativeInput&&this.nativeInput.value!==this.value){const t=p(this.nativeInput);this.nativeInput.value=this.value,t()}this.isCaptionVisible=!!this.caption;const t=()=>this.duetChange.emit({value:this.value,component:"duet-input"});0===this.debounce?t():(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(t,this.debounce))}get validity(){return this.nativeInput.validity}get nativeInputElement(){return this.nativeInput}componentWillLoad(){u(this),this.disallowedPatternChange(),this.isCaptionVisible=!!this.caption,y(this.element,"tooltip","duet-tooltip",1,!0)}componentDidLoad(){"revealable"===this.variation&&this.nativeInput.form&&this.nativeInput.form.addEventListener("submit",(()=>{this.isPasswordRevealed=!1}))}connectedCallback(){v(this)}disconnectedCallback(){x(this)}componentDidRender(){k(this.element,this.proxyId,this.name,this.value,this.required)}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async resetCursor(){if(this.nativeInput){const t=p(this.nativeInput);this.nativeInput.value=this.value,t()}}async clearInput(){this.nativeInput&&(this.nativeInput.value="",this.nativeInput.focus(),this.value="")}getAllChips(){return Array.from(this.element.shadowRoot.querySelectorAll(".duet-input-relative duet-chip"))}isChipSelected(){return this.getAllChips().some((t=>t.selected))}getSelectedChip(){return this.getAllChips().find((t=>t.selected))}clearChipSelection(){this.getAllChips().forEach((t=>t.selected=!1))}selectLastChip(){const t=this.getAllChips();t.length&&(t.forEach((t=>t.selected=!1)),t.at(-1).selected=!0)}selectChipToLeft(){const t=this.getAllChips(),e=t.findIndex((t=>t.selected));t.length&&(t.forEach((t=>t.selected=!1)),-1===e?t.at(-1).selected=!0:0===e?t[0].selected=!0:t[e-1].selected=!0)}selectChipToRight(){const t=this.getAllChips(),e=t.findIndex((t=>t.selected));t.length&&(t.forEach((t=>t.selected=!1)),e>-1&&e<t.length-1&&(t[e+1].selected=!0))}async addChip(t){if(!this.chips)return void console.error("The method addChips requires the property chips to be true");const e=this.element.shadowRoot.querySelector(".duet-input-relative"),i=e.querySelector("input:not(duet-chip input)");t.id=l("DuetInputChip"),e.insertBefore(t,i)}async hasChip({value:t,text:e}){return this.getAllChips().some((i=>i.value===t&&i.textContent===e))}async getChips(){return this.getAllChips()}async clearChips(){this.getAllChips().forEach((t=>t.remove()))}render(){const t=this.identifier||this.inputId,e={};let o;if(this.numericKeyboard&&(e.inputmode="numeric"),this.pattern&&"tel"!==this.type?e.pattern=this.pattern:this.pattern||"tel"!==this.type||(e.pattern="[0-9+ ]+"),this.value){o=new Date;try{o.setHours(Number(this.value.slice(0,2)),Number(this.value.slice(3,5)),0,0)}catch(t){o=void 0}}const n=!this.icon&&"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type&&"button"!==this.variation;return i(a,{key:"033cc6db5ed25606fc59aef36e6b24a442e950b8",class:{"duet-expand":this.expand,"duet-m-0":"none"===this.margin},onKeyUp:t=>this.keyHandler(t)},"time"===this.type&&i("duet-visually-hidden",{key:"63d867a2efb238c95919a39ba06e30f51896619f","aria-live":"polite","aria-atomic":"true"},o?`${this.timeAnnouncement[this.language]} ${o.toLocaleTimeString()}`:""),i("div",{key:"1d0ca1e78d726dda697836bb89a9f1a8743a2793",class:{"duet-input-container":!0,"duet-theme-turva":"turva"===this.theme,[`duet-input-variation-${this.variation}`]:!0,"duet-label-hidden":this.labelHidden,"duet-input-top-caption-shown":this.isCaptionVisible,"has-icon":"button"!==this.variation&&(!!this.icon||"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type),"has-error":!!this.error,"has-chips":this.chips,"has-clear":this.clear,"has-focus":this.isFocused,disabled:this.disabled}},i("div",{key:"b627415fb5e0c398093aefa6033c2931780180c9",class:"duet-input-label-container"},i(s,{key:"86738583556e50cfb6d2fe39ccf1ee061bf86d51",theme:"turva"===this.theme?"turva":"default",margin:this.isCaptionVisible?"small":"auto",color:this.labelColor,weight:this.labelWeight,id:this.labelId,for:t},this.label),this.tooltip&&i("duet-tooltip",{key:"e2f664d678fd155116eb91a753760637c39fb3b1",class:"duet-input-tooltip",direction:this.tooltipDirection,accessibleInputLabel:this.label,theme:"turva"===this.theme?"turva":"default"},this.tooltip),i("slot",{key:"a74a273958e5872b1038b9fa1b931487990ad672",name:"tooltip"})),this.caption&&i("duet-caption",{key:"e1edee0074b64adca33d4fa94b2f7a4379f9b8b5",id:this.topCaptionId,size:"medium"},this.caption),i("div",{key:"ed9178d96ea508970432e5364e660617e1a89a7a",class:"duet-input-relative"},this.placeholder&&this.echoPlaceholder&&(this.value||"time"===this.type)&&i("duet-caption",{key:"8157259d2868feac97f59719c6692d39b1fe1cc5",id:this.topCaptionPlaceholderId,class:"duet-input-placeholder",margin:"none",size:"small"},this.placeholder),this.chips&&i("duet-visually-hidden",{key:"8a4eefbdd77190e5b9e7cbaa7389e25f70fca1f6",id:this.chipCountId},", ",`${this.getAllChips().length} ${w(this.chipsSelectedDesriptionLabel)}`,","),"button-left"===this.variation&&i("slot",{key:"ed4cca7071d94da4adc022c419491233938cb7f2",name:"button-left"}),i("input",Object.assign({key:"53a5ef13592f5831740ab1680aaefb78eebeacdb",ref:t=>this.nativeInput=t,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,type:this.getInputType(),class:{"duet-input":!0,disabled:this.disabled,"is-number":"number"===this.component,"is-date":"date"===this.component,"after-chip":this.getAllChips().length>0,"align-right":"right"===this.inputAlign,[`input-padding-${this.inputPadding}`]:!0},value:this.value,disabled:this.disabled,"aria-invalid":this.error?"true":"false","aria-labelledby":this.accessibleLabelledBy?`${this.labelId} ${this.accessibleLabelledBy}`:this.labelId,"aria-controls":this.accessibleControls,"aria-autocomplete":this.accessibleAutocomplete,"aria-activedescendant":this.accessibleActiveDescendant,"aria-details":this.accessibleDetails,"aria-description":this.accessibleDescription,"aria-expanded":this.accessibleExpanded,"aria-haspopup":this.accessibleHasPopup,"aria-owns":this.accessibleOwns,"aria-describedby":this.getAriaDescribedBy(),placeholder:this.placeholder,spellcheck:"false",minlength:this.minlength,maxlength:this.maxlength,autocomplete:"password"===this.type?"off":this.autoComplete,required:this.required,role:this.role,name:this.name,id:t},e)),!this.value&&n&&i("div",{key:"cfa58fa19169ae178ac67e183186db6b89827738",class:"duet-input-icon"},i("duet-icon",{key:"0f82e1c47f682f0c40395768b4fab513aaa7721d",margin:"none",size:"small",icon:j[this.type].svg,color:"currentColor"})),this.clear&&this.value&&i("div",{key:"76305ecbb22f11311cdf73c5fde052659f582349",class:{"duet-input-clear-icon":!0,"duet-input-clear-icon-single":!n,"duet-input-clear-icon-double":!!this.icon,"duet-input-clear-icon-button":"button"===this.variation,[`input-padding-${this.inputPadding}`]:!0}},i("button",{key:"e43277b053fe75ff5f52814a1e22d0423a595709",onClick:this.handleClearClick,id:this.clearId,"aria-label":this.clearLabel[this.language],"aria-keyshortcuts":"Escape"},i("duet-icon",{key:"0e78724fa83566e2504fbd013017ad8d10f88e57",margin:"none",size:"medium",name:"action-clear-input",color:"currentColor"}))),this.icon&&"button"!==this.variation&&i("div",{key:"45f95e11754032af15cbe3fed396590f8eee7b21",class:"duet-input-icon"},i("duet-icon",{key:"2e7042450fbe0867cc28dccbccac09bb3702123a",margin:"none",size:"small",name:this.icon,color:"currentColor"})),"button"===this.variation&&i("slot",{key:"d805336c92c2f5a536aafad96bdc01c095588e05",name:"button"}),"revealable"===this.variation&&i("duet-button",{key:"435aacc403ca5daee908df7ea1c3a2636c6134a8",ref:t=>this.togglePasswordRevealedButton=t,onBlur:this.onBlur,onFocus:this.onFocus,onClick:this.togglePasswordRevealed,icon:this.isPasswordRevealed?"action-hide":"action-show",accessibleLabel:this.isPasswordRevealed?this.hidePasswordLabel[this.language]:this.showPasswordLabel[this.language],margin:"none",variation:"input-button-embedded",fixed:!0,iconOnly:!0}),"revealable"===this.variation&&void 0!==this.isPasswordRevealed&&i("duet-visually-hidden",{key:"618159ebdd08451e2b55291fea56b7628e874bab"},i("span",{key:"67636b4bd907d7d9572124c38e253a0f6ff29f41","aria-live":"polite"},this.isPasswordRevealed?this.passwordShownAriaAnnouncement[this.language]:this.passwordHiddenAriaAnnouncement[this.language])),i("slot",{key:"36f5b432d50b1a6b20573b07a983c43e4dc09aca"})),i("span",{key:"a0e213a2629faf679ec7271015ee0d2ec053b677",class:"duet-input-help",id:this.errorId,"aria-atomic":"true","aria-live":this.accessibleLiveError,"aria-relevant":"additions removals"},this.error&&i("span",{key:"faa497dc1542d2d2b50aaa37e0b432e8c81922a8",class:"duet-input-error"},this.error))))}get element(){return o(this)}static get watchers(){return{disallowPattern:["disallowedPatternChange"],value:["valueChanged"]}}};I.style='.duet-internal-label{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:600 !important;line-height:1.25;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word;cursor:default}.duet-internal-label.duet-p-0{padding:0 !important}.duet-internal-label.duet-m-0{margin:0 !important}.duet-internal-label span{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-internal-label.duet-m-0{margin-bottom:0 !important}.duet-internal-label.duet-small-margin{margin-top:8px !important;margin-bottom:4px !important}.duet-internal-label.duet-has-tooltip{padding-right:48px}@media (min-width: 48em){.duet-internal-label.duet-has-tooltip{padding-right:0}}.duet-internal-label.duet-internal-label-small{font-size:0.875rem}.duet-internal-label.duet-internal-label-small span{font-size:0.875rem}.duet-internal-label.duet-weight-normal{font-weight:400 !important}.duet-internal-label.duet-weight-normal span{font-weight:400 !important}.duet-internal-label.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 42, 59)}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{margin-right:16px !important}:host(:last-child),:host(:last-of-type){margin-right:0 !important}[alignment=form-distribute]>:host(:last-of-type:not(:last-child)){margin-right:16px !important}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;vertical-align:bottom;text-align:left}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}input[type=time]::-webkit-calendar-picker-indicator{display:none}duet-tooltip,::slotted(duet-tooltip){position:relative;top:12px;right:0}@media (min-width: 48em){duet-tooltip,::slotted(duet-tooltip){right:auto}}duet-caption:not(:last-of-type){margin-bottom:0}.duet-input-placeholder{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgb(255, 255, 255)}.duet-input-icon{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;font-size:0;line-height:normal;color:rgb(8, 42, 77);pointer-events:none;transform:translateY(-50%)}.duet-theme-turva .duet-input-icon{color:rgb(23, 28, 58)}.duet-input-container{position:relative;width:100%;height:100%}.duet-input-container.has-clear .duet-input-clear-icon{position:relative;z-index:250}.duet-input-container.has-clear .duet-input-clear-icon button{position:absolute;top:-24px;right:-24px;min-width:48px;min-height:48px;color:rgb(0, 75, 129)}.duet-input-container.has-clear .duet-input-clear-icon button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-input-container.has-clear .duet-input-clear-icon button:focus,.duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva,.duet-theme-turva2 .duet-input-container.has-clear .duet-input-clear-icon button:focus,.duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-input-container.has-clear .duet-input-clear-icon button:active{opacity:0.75;transition:none}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-xx-small button{top:-12px}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-x-small button{top:-16px}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-small button{top:-20px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single button{top:-48px;right:0}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-xx-small button{top:-36px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-x-small button{top:-40px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-small button{top:-44px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double button{top:-24px;right:12px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-xx-small button{top:-12px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-x-small button{top:-16px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-small button{top:-20px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-button button{top:-24px;right:0}.duet-input-container.has-clear.has-icon .duet-input-clear-icon{top:-24px;right:24px}.duet-input-container.duet-theme-turva.has-clear .duet-input-clear-icon button{color:rgb(8, 42, 77)}.duet-input-label-container{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between}@media (min-width: 48em){.duet-input-label-container{justify-content:flex-start}}.duet-input{position:relative;z-index:100;display:block !important;width:100% !important;min-width:8rem;max-width:initial !important;height:auto !important;padding:12px 14px !important;margin:initial !important;margin-bottom:initial !important;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400 !important;font-variant-numeric:tabular-nums;line-height:1.5 !important;color:rgb(8, 42, 77) !important;cursor:initial !important;outline-color:initial !important;background:rgb(255, 255, 255) !important;background-clip:initial !important;border:1px solid rgb(127, 150, 165) !important;border-radius:4px !important;transition:border 150ms ease !important}.duet-input.input-padding-small{padding:8px 10px !important}.duet-input.input-padding-x-small{padding:4px 6px !important}.duet-input.input-padding-xx-small{padding:0px 2px !important}.duet-input.is-number{padding-right:112px !important}.duet-input.is-date{padding-right:64px !important}.duet-input.after-chip{padding-left:8px !important}.has-error .duet-input,.has-error .duet-input[disabled]{border-color:rgb(214, 28, 82) !important}.has-error .duet-input+.duet-input-icon,.has-error .duet-input[disabled]+.duet-input-icon{color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error .duet-input{border-color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error .duet-input+.duet-input-icon{color:rgb(214, 28, 82) !important}.has-icon .duet-input{padding-right:48px !important}.duet-theme-turva .duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58) !important;border-color:rgb(143, 147, 158) !important}.duet-input.align-right{text-align:right}.duet-input::-ms-clear{display:none}.duet-input::-webkit-contacts-auto-fill-button{display:none !important}.duet-input::-webkit-input-placeholder{color:rgb(98, 121, 138);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva .duet-input::-webkit-input-placeholder{color:rgb(143, 147, 158)}.duet-input:focus::-webkit-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus::-webkit-input-placeholder{color:rgb(199, 202, 207)}.duet-input::-moz-placeholder{color:rgb(98, 121, 138);opacity:1 !important}.duet-theme-turva .duet-input::-moz-placeholder{color:rgb(143, 147, 158)}.duet-input:focus::-moz-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus::-moz-placeholder{color:rgb(199, 202, 207)}.duet-input:-ms-input-placeholder{color:rgb(98, 121, 138)}.duet-theme-turva .duet-input:-ms-input-placeholder{color:rgb(143, 147, 158)}.duet-input:focus:-ms-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus:-ms-input-placeholder{color:rgb(199, 202, 207)}.duet-input[disabled]{color:rgb(8, 42, 77) !important;cursor:not-allowed !important;outline:none !important;background:rgb(245, 248, 250) !important;border-color:rgb(245, 248, 250) !important;opacity:1 !important;-webkit-text-fill-color:rgb(8, 42, 77) !important}.duet-theme-turva .duet-input[disabled]{color:rgb(23, 28, 58) !important;background:rgb(245, 247, 250) !important;border-color:rgb(245, 247, 250) !important;-webkit-text-fill-color:rgb(23, 28, 58) !important}.duet-input:hover:not(:disabled){outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva .duet-input:hover:not(:disabled),.duet-input:hover:not(:disabled).duet-theme-turva,.duet-theme-turva2 .duet-input:hover:not(:disabled),.duet-input:hover:not(:disabled).duet-theme-turva2{outline-color:rgb(120, 145, 164)}.has-error .duet-input:hover:not(:disabled){outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input:focus{border-color:rgb(0, 119, 179) !important;transition:none}.duet-theme-turva .duet-input:focus{border-color:rgb(23, 28, 58) !important}.duet-theme-turva .duet-input:focus+.duet-input-icon{color:rgb(23, 28, 58)}.has-error .duet-input:focus{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input:focus+.duet-input-icon{color:rgb(0, 119, 179)}.duet-input[type=search]:not(:placeholder-shown):focus+.duet-input-icon{display:none}.duet-input:not(:focus):not(:hover):invalid{outline:none !important}.duet-input[type=number]::-webkit-inner-spin-button,.duet-input[type=number]::-webkit-outer-spin-button,.duet-input[type=time]::-webkit-inner-spin-button,.duet-input[type=time]::-webkit-outer-spin-button{display:none;margin:0;-webkit-appearance:none}.duet-input::-webkit-search-cancel-button{margin-right:-28px}.duet-input-help{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(98, 121, 138);border-radius:4px}.duet-input-help span{display:block;margin-top:8px}.duet-theme-turva .duet-input-help{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(143, 147, 158)}.has-error .duet-input-help{color:rgb(214, 28, 82)}.duet-theme-turva.has-error .duet-input-help{color:rgb(214, 28, 82)}.duet-label-hidden label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0)}.duet-input-relative{position:relative;width:100%}.duet-input-variation-button,.duet-input-variation-button-left{position:relative;width:100%}.duet-input-variation-button .duet-input-relative,.duet-input-variation-button-left .duet-input-relative{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto}.duet-input-variation-button .duet-input-relative duet-button,.duet-input-variation-button-left .duet-input-relative duet-button{z-index:250;margin-bottom:0}.duet-input-variation-button-left .duet-input-relative{border-radius:4px}.duet-input-variation-button .duet-input-relative .duet-input{border-right-width:0 !important;border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.duet-input-variation-button-left .duet-input-relative .duet-input{border-left-width:0 !important;border-top-left-radius:0 !important;border-bottom-left-radius:0 !important}.duet-input-variation-revealable{position:relative;width:100%}.duet-input-variation-revealable ::-ms-reveal{display:none}.duet-input-variation-revealable .duet-input-relative{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto;outline:initial;border:1px solid rgb(127, 150, 165);border-radius:4px;transition:border 150ms ease}.duet-theme-turva .duet-input-variation-revealable .duet-input-relative{border-color:rgb(143, 147, 158)}.duet-input-variation-revealable .duet-input-relative duet-button{z-index:250;margin-bottom:0}.duet-input-variation-revealable .duet-input-relative .duet-input{border-width:0 !important}.duet-input-variation-revealable .duet-input-relative .duet-input:focus,.duet-input-variation-revealable .duet-input-relative .duet-input:hover{outline:none !important;border-width:0 !important}.duet-input-variation-revealable.disabled .duet-input-relative{outline:none;background:rgb(245, 248, 250);border-color:rgb(212, 223, 229)}.duet-input-variation-revealable.has-error .duet-input-relative{border-color:rgb(214, 28, 82)}.duet-input-variation-revealable.duet-theme-turva.has-error .duet-input-relative{border-color:rgb(214, 28, 82)}.duet-input-variation-revealable.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(62, 84, 102);border-color:rgb(0, 119, 179)}.duet-input-variation-revealable.duet-theme-turva.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(53, 79, 101);border-color:rgb(23, 28, 58)}.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative{outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative,.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva,.duet-theme-turva2 .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative,.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva2{outline-color:rgb(120, 145, 164)}.duet-input-variation-revealable.has-error:hover:not(.disabled) .duet-input-relative{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input-container.has-chips.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(62, 84, 102)}.duet-theme-turva .duet-input-container.has-chips.has-focus .duet-input-relative{outline:2px solid;outline-offset:2px;outline-color:rgb(53, 79, 101)}.duet-input-container.has-chips .duet-input-relative{display:flex;flex-direction:row;flex-wrap:wrap;align-content:center;align-items:center;justify-content:flex-start;width:auto;border:1px solid rgb(127, 150, 165);border-radius:4px;transition:border 150ms ease}.duet-theme-turva .duet-input-container.has-chips .duet-input-relative{border-color:rgb(143, 147, 158)}.duet-input-container.has-chips .duet-input-relative .duet-input{flex-grow:1;flex-basis:4rem;padding-left:0 !important;margin-left:12px !important;border-width:0 !important}.duet-input-container.has-chips .duet-input-relative .duet-input:focus,.duet-input-container.has-chips .duet-input-relative .duet-input:hover{outline:none !important;border-width:0 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-icon{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input{color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input::-webkit-input-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-webkit-input-placeholder{color:rgb(178, 194, 205)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-moz-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-moz-placeholder{color:rgb(178, 194, 205)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-ms-input-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus:-ms-input-placeholder{color:rgb(241, 202, 178)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input[disabled]{color:rgb(23, 42, 59) !important;background:rgb(245, 246, 247) !important;border-color:rgb(245, 246, 247) !important;-webkit-text-fill-color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus{border-color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus+.duet-input-icon{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-button-left.has-focus .duet-input-relative{border-color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-revealable.has-focus .duet-input-relative{border-color:rgb(23, 42, 59)}';const U=class{constructor(e){t(this,e),this.theme="",this.margin="auto",this.size="medium",this.weight="semi-bold",this.color=""}componentWillLoad(){u(this)}render(){const t=S(this.color,this.theme);return i(a,{class:{"duet-label":!0,"duet-label-small":"small"===this.size,"duet-theme-turva":"turva"===this.theme,"duet-small-margin":"small"===this.margin,"duet-m-0":"none"===this.margin,[`duet-weight-${this.weight}`]:!0}},i("label",{htmlFor:this.for,style:{color:t}},i("span",null,i("slot",null))))}get element(){return o(this)}};U.style='*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{margin:0;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:600 !important;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-weight-normal.sc-duet-label-h label.sc-duet-label{font-weight:400 !important}.duet-weight-normal.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-weight:400 !important}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-theme-turva2.duet-theme-turva.sc-duet-label-h label.sc-duet-label{color:rgb(23, 42, 59)}';export{I as duet_input,U as duet_label}
|
|
4
|
+
import{r as t,c as e,h as i,H as a,g as o}from"./p-BxH0r0DA.js";import{g as n}from"./p-DvwKrUS6.js";import{s as r}from"./p-5iZMFvpJ.js";import{i as u}from"./p-BcVbsW_2.js";import{D as s}from"./p-C7D5HRhY.js";import{c as l}from"./p-Cfr_DJqU.js";import{c as d,r as p}from"./p-CLDy7YaM.js";import{a as h,c,o as b,d as m,f as g}from"./p-Db8rvjPI.js";import{a as v,c as f,d as x,g as w}from"./p-dX4lCxX-.js";import{c as y,p as k}from"./p-CKemMSHL.js";import{g as C}from"./p-D7VOYHjg.js";import"./p-C6E9F6QT.js";import"./p-C-hMrqKD.js";var S,z;const j={search:r,email:n(z?S:(z=1,S={title:"form-email",tags:"form email",svg:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z"/></svg>'}))},I=class{constructor(i){t(this,i),this.duetInput=e(this,"duetInput",7),this.duetChange=e(this,"duetChange",3),this.duetBlur=e(this,"duetBlur",7),this.duetClear=e(this,"duetClear",7),this.duetFocus=e(this,"duetFocus",7),this.inputId=l("DuetInput"),this.proxyId=l("DuetInput"),this.clearId=l("DuetInputClear"),this.labelId=l("DuetLabel"),this.topCaptionId=l("DuetCaptionTop"),this.topCaptionPlaceholderId=l("DuetCaptionPlaceholderTop"),this.chipCountId=l("DuetInputChipCount"),this.errorId=l("DuetError"),this.disallowPatternRegex=null,this.clearLabel={en:"Clear",fi:"Tyhjennä",sv:"Rensa"},this.timeAnnouncement={en:"Time",fi:"Aika",sv:"Tid"},this.showPasswordLabel={en:"Show password",fi:"Näytä salasana",sv:"Visa lösenord"},this.hidePasswordLabel={en:"Hide password",fi:"Piilota salasana",sv:"Dölj lösenord"},this.passwordShownAriaAnnouncement={en:"Password is shown",fi:"Salasana näytetään",sv:"Lösenordet visas"},this.passwordHiddenAriaAnnouncement={en:"Password is hidden",fi:"Salasana on piilotettu",sv:"Lösenordet är dolt"},this.chipsSelectedDesriptionLabel={en:"selected",fi:"valittu",sv:"valt"},this.language=v(),this.isFocused=!1,this._accessiblePopup=void 0,this.accessibleDescribedBy="",this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.accessibleLiveError="polite",this.debounce=0,this.clear=!1,this.echoPlaceholder=!1,this.theme="",this.expand=!1,this.disabled=!1,this.margin="auto",this.inputAlign="left",this.inputPadding="medium",this.required=!1,this.type="text",this.variation="default",this.chips=!1,this.label="Label",this.error="",this.labelHidden=!1,this.numericKeyboard=!1,this.component="input",this.autoComplete="on",this.disallowPattern=null,this.tooltip="",this.tooltipDirection="auto",this.onInput=t=>{this.disallowPatternRegex&&d(this.nativeInput,this.disallowPatternRegex),this.chips&&this.clearChipSelection(),this.value=this.nativeInput.value||"",this.duetInput.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onBlur=t=>{t.relatedTarget!==this.nativeInput&&t.relatedTarget!==this.togglePasswordRevealedButton&&("revealable"===this.variation&&this.isPasswordRevealed&&(this.isPasswordRevealed=!1),this.isFocused=!1,this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-input"}))},this.onFocus=t=>{this.clearChipSelection(),this.isFocused=!0,this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onClear=t=>{this.duetClear.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.getAriaDescribedBy=()=>{const t=[];if(this.isCaptionVisible&&this.topCaptionId&&t.push(this.topCaptionId),this.accessibleDescribedBy&&t.push(this.accessibleDescribedBy),this.chips){const e=this.getAllChips();e.length&&(t.push(this.chipCountId),e.forEach((e=>t.push(e.id))))}return this.error&&t.push(this.errorId),t.length>0?t.join(" "):null},this.handleClearClick=t=>{const e=this.clearInput();return this.onClear(t),e},this.keyHandler=t=>(h(t)&&this.clear&&this.handleClearClick(t),c(t)&&"revealable"===this.variation&&(t.target===this.togglePasswordRevealedButton?t.stopPropagation():this.isPasswordRevealed=!1),this.chips&&0===this.nativeInput.value.length&&(b(t)&&(this.isChipSelected()&&(this.getSelectedChip().removeChip(),setTimeout((()=>this.selectLastChip()))),this.selectLastChip()),m(t)&&this.selectChipToLeft(),g(t)&&this.isChipSelected()&&this.selectChipToRight()),t),this.togglePasswordRevealed=()=>{this.isPasswordRevealed=!this.isPasswordRevealed},this.getInputType=()=>"revealable"===this.variation?this.isPasswordRevealed?"text":"password":this.type}get accessibleHasPopup(){return this._accessiblePopup}set accessibleHasPopup(t){this._accessiblePopup=t}get accessiblePopup(){return this._accessiblePopup}set accessiblePopup(t){this._accessiblePopup=t}disallowedPatternChange(){this.disallowPatternRegex=this.disallowPattern?new RegExp(this.disallowPattern,"gu"):null}valueChanged(){if(this.nativeInput&&this.nativeInput.value!==this.value){const t=p(this.nativeInput);this.nativeInput.value=this.value,t()}this.isCaptionVisible=!!this.caption;const t=()=>this.duetChange.emit({value:this.value,component:"duet-input"});0===this.debounce?t():(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(t,this.debounce))}get validity(){return this.nativeInput.validity}get nativeInputElement(){return this.nativeInput}componentWillLoad(){u(this),this.disallowedPatternChange(),this.isCaptionVisible=!!this.caption,y(this.element,"tooltip","duet-tooltip",1,!0)}componentDidLoad(){"revealable"===this.variation&&this.nativeInput.form&&this.nativeInput.form.addEventListener("submit",(()=>{this.isPasswordRevealed=!1}))}connectedCallback(){f(this)}disconnectedCallback(){x(this)}componentDidRender(){k(this.element,this.proxyId,this.name,this.value,this.required)}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async resetCursor(){if(this.nativeInput){const t=p(this.nativeInput);this.nativeInput.value=this.value,t()}}async clearInput(){this.nativeInput&&(this.nativeInput.value="",this.nativeInput.focus(),this.value="")}getAllChips(){return Array.from(this.element.shadowRoot.querySelectorAll(".duet-input-relative duet-chip"))}isChipSelected(){return this.getAllChips().some((t=>t.selected))}getSelectedChip(){return this.getAllChips().find((t=>t.selected))}clearChipSelection(){this.getAllChips().forEach((t=>t.selected=!1))}selectLastChip(){const t=this.getAllChips();t.length&&(t.forEach((t=>t.selected=!1)),t.at(-1).selected=!0)}selectChipToLeft(){const t=this.getAllChips(),e=t.findIndex((t=>t.selected));t.length&&(t.forEach((t=>t.selected=!1)),-1===e?t.at(-1).selected=!0:0===e?t[0].selected=!0:t[e-1].selected=!0)}selectChipToRight(){const t=this.getAllChips(),e=t.findIndex((t=>t.selected));t.length&&(t.forEach((t=>t.selected=!1)),e>-1&&e<t.length-1&&(t[e+1].selected=!0))}async addChip(t){if(!this.chips)return void console.error("The method addChips requires the property chips to be true");const e=this.element.shadowRoot.querySelector(".duet-input-relative"),i=e.querySelector("input:not(duet-chip input)");t.id=l("DuetInputChip"),e.insertBefore(t,i)}async hasChip({value:t,text:e}){return this.getAllChips().some((i=>i.value===t&&i.textContent===e))}async getChips(){return this.getAllChips()}async clearChips(){this.getAllChips().forEach((t=>t.remove()))}render(){const t=this.identifier||this.inputId,e={};let o;if(this.numericKeyboard&&(e.inputmode="numeric"),this.pattern&&"tel"!==this.type?e.pattern=this.pattern:this.pattern||"tel"!==this.type||(e.pattern="[0-9+ ]+"),this.value){o=new Date;try{o.setHours(Number(this.value.slice(0,2)),Number(this.value.slice(3,5)),0,0)}catch(t){o=void 0}}const n=!this.icon&&"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type&&"button"!==this.variation;return i(a,{key:"97c6c512b6c027ca8043a43672a95b94f03f6156",class:{"duet-expand":this.expand,"duet-m-0":"none"===this.margin},onKeyUp:t=>this.keyHandler(t)},"time"===this.type&&i("duet-visually-hidden",{key:"b822ea081dcf6540e2b68897ee048047aff84628","aria-live":"polite","aria-atomic":"true"},o?`${this.timeAnnouncement[this.language]} ${o.toLocaleTimeString()}`:""),i("div",{key:"9e605485547ba28244c552f56e417b5601b54fe8",class:{"duet-input-container":!0,"duet-theme-turva":"turva"===this.theme,[`duet-input-variation-${this.variation}`]:!0,"duet-label-hidden":this.labelHidden,"duet-input-top-caption-shown":this.isCaptionVisible,"has-icon":"button"!==this.variation&&(!!this.icon||"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type),"has-error":!!this.error,"has-chips":this.chips,"has-clear":this.clear,"has-focus":this.isFocused,disabled:this.disabled}},i("div",{key:"80b702bcab4580a325ba20786e5c4aabc2ed6097",class:"duet-input-label-container"},i(s,{key:"c1deac7c8b5bb4a0b7f83b56300847e0320bbe5c",theme:"turva"===this.theme?"turva":"default",margin:this.isCaptionVisible?"small":"auto",color:this.labelColor,weight:this.labelWeight,id:this.labelId,for:t},this.label),this.tooltip&&i("duet-tooltip",{key:"c62963ee9ff47b91fa4380725a514df722c9d2a6",class:"duet-input-tooltip",direction:this.tooltipDirection,accessibleInputLabel:this.label,theme:"turva"===this.theme?"turva":"default"},this.tooltip),i("slot",{key:"024482e338a12e5e93c1a281c5780575f72986f5",name:"tooltip"})),this.caption&&i("duet-caption",{key:"38d05c2a565c01b678e55ffd8229387e67d313e5",id:this.topCaptionId,size:"medium"},this.caption),i("div",{key:"211a0b1ea0a61065f35ba521c44656002a82af3d",class:"duet-input-relative"},this.placeholder&&this.echoPlaceholder&&(this.value||"time"===this.type)&&i("duet-caption",{key:"48c712f9c9ac80bf82ced7d12b6e3d82a4fafd9a",id:this.topCaptionPlaceholderId,class:"duet-input-placeholder",margin:"none",size:"small"},this.placeholder),this.chips&&i("duet-visually-hidden",{key:"94be7e517078792db305259a743d3e9f9b1ed78f",id:this.chipCountId},", ",`${this.getAllChips().length} ${w(this.chipsSelectedDesriptionLabel)}`,","),"button-left"===this.variation&&i("slot",{key:"1c73512bd1cb13064dface542dd5c83c0ce0bb61",name:"button-left"}),i("input",Object.assign({key:"2712744a1452a269a9cf149aaa6e6b5fc99cefe3",ref:t=>this.nativeInput=t,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,type:this.getInputType(),class:{"duet-input":!0,disabled:this.disabled,"is-number":"number"===this.component,"is-date":"date"===this.component,"after-chip":this.getAllChips().length>0,"align-right":"right"===this.inputAlign,[`input-padding-${this.inputPadding}`]:!0},value:this.value,disabled:this.disabled,"aria-invalid":this.error?"true":"false","aria-labelledby":this.accessibleLabelledBy?`${this.labelId} ${this.accessibleLabelledBy}`:this.labelId,"aria-controls":this.accessibleControls,"aria-autocomplete":this.accessibleAutocomplete,"aria-activedescendant":this.accessibleActiveDescendant,"aria-details":this.accessibleDetails,"aria-description":this.accessibleDescription,"aria-expanded":this.accessibleExpanded,"aria-haspopup":this.accessibleHasPopup,"aria-owns":this.accessibleOwns,"aria-describedby":this.getAriaDescribedBy(),placeholder:this.placeholder,spellcheck:"false",minlength:this.minlength,maxlength:this.maxlength,autocomplete:"password"===this.type?"off":this.autoComplete,required:this.required,role:this.role,name:this.name,id:t},e)),!this.value&&n&&i("div",{key:"080395d2f4005f5e2d40ebeadf5be30fb014e71d",class:"duet-input-icon"},i("duet-icon",{key:"2a5bfe3a6d42a97e6cf451f833deeae80d852374",margin:"none",size:"small",icon:j[this.type].svg,color:"currentColor"})),this.clear&&this.value&&i("div",{key:"92a1308358fff9f5c6aed1a07e24053c7499e788",class:{"duet-input-clear-icon":!0,"duet-input-clear-icon-single":!n,"duet-input-clear-icon-double":!!this.icon,"duet-input-clear-icon-button":"button"===this.variation,[`input-padding-${this.inputPadding}`]:!0}},i("button",{key:"b921d4ca4eb54fc267ad62f3c956a9acd9ea4487",onClick:this.handleClearClick,id:this.clearId,"aria-label":this.clearLabel[this.language],"aria-keyshortcuts":"Escape"},i("duet-icon",{key:"bdea13847de38a2cfd7cab93aa5867dda090e8d0",margin:"none",size:"medium",name:"action-clear-input",color:"currentColor"}))),this.icon&&"button"!==this.variation&&i("div",{key:"4e49e31671b84ffbda56882870611aba296daab2",class:"duet-input-icon"},i("duet-icon",{key:"8d95610824e317a5dd0c2a445f074a8845e118f9",margin:"none",size:"small",name:this.icon,color:"currentColor"})),"button"===this.variation&&i("slot",{key:"a65627a7d986abbe186808402689fc99a08bf173",name:"button"}),"revealable"===this.variation&&i("duet-button",{key:"c1ae746e55b6cf639c28a8b510c399c390ab875e",ref:t=>this.togglePasswordRevealedButton=t,onBlur:this.onBlur,onFocus:this.onFocus,onClick:this.togglePasswordRevealed,icon:this.isPasswordRevealed?"action-hide":"action-show",accessibleLabel:this.isPasswordRevealed?this.hidePasswordLabel[this.language]:this.showPasswordLabel[this.language],margin:"none",variation:"input-button-embedded",fixed:!0,iconOnly:!0}),"revealable"===this.variation&&void 0!==this.isPasswordRevealed&&i("duet-visually-hidden",{key:"002a8f8fcab8184f130dc007637ef24216aadee3"},i("span",{key:"fd669556e6e64700f4c2347183e20e6cbeb5682b","aria-live":"polite"},this.isPasswordRevealed?this.passwordShownAriaAnnouncement[this.language]:this.passwordHiddenAriaAnnouncement[this.language])),i("slot",{key:"cc9d622df88881cabca741a1dd95a162e955c349"})),i("span",{key:"31c73b30b14c89c56268c32102bb5427b9850ff1",class:"duet-input-help",id:this.errorId,"aria-atomic":"true","aria-live":this.accessibleLiveError,"aria-relevant":"additions removals"},this.error&&i("span",{key:"b04cbeca6289a6b421013dde03381db825ac7a2c",class:"duet-input-error"},this.error))))}get element(){return o(this)}static get watchers(){return{disallowPattern:["disallowedPatternChange"],value:["valueChanged"]}}};I.style='.duet-internal-label{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:600 !important;line-height:1.25;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word;cursor:default}.duet-internal-label.duet-p-0{padding:0 !important}.duet-internal-label.duet-m-0{margin:0 !important}.duet-internal-label span{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-internal-label.duet-m-0{margin-bottom:0 !important}.duet-internal-label.duet-small-margin{margin-top:8px !important;margin-bottom:4px !important}.duet-internal-label.duet-has-tooltip{padding-right:48px}@media (min-width: 48em){.duet-internal-label.duet-has-tooltip{padding-right:0}}.duet-internal-label.duet-internal-label-small{font-size:0.875rem}.duet-internal-label.duet-internal-label-small span{font-size:0.875rem}.duet-internal-label.duet-weight-normal{font-weight:400 !important}.duet-internal-label.duet-weight-normal span{font-weight:400 !important}.duet-internal-label.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 42, 59)}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{margin-right:16px !important}:host(:last-child),:host(:last-of-type){margin-right:0 !important}[alignment=form-distribute]>:host(:last-of-type:not(:last-child)){margin-right:16px !important}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;vertical-align:bottom;text-align:left}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}input[type=time]::-webkit-calendar-picker-indicator{display:none}duet-tooltip,::slotted(duet-tooltip){position:relative;top:12px;right:0}@media (min-width: 48em){duet-tooltip,::slotted(duet-tooltip){right:auto}}duet-caption:not(:last-of-type){margin-bottom:0}.duet-input-placeholder{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgb(255, 255, 255)}.duet-input-icon{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;font-size:0;line-height:normal;color:rgb(8, 42, 77);pointer-events:none;transform:translateY(-50%)}.duet-theme-turva .duet-input-icon{color:rgb(23, 28, 58)}.duet-input-container{position:relative;width:100%;height:100%}.duet-input-container.has-clear .duet-input-clear-icon{position:relative;z-index:250}.duet-input-container.has-clear .duet-input-clear-icon button{position:absolute;top:-24px;right:-24px;min-width:48px;min-height:48px;color:rgb(0, 75, 129)}.duet-input-container.has-clear .duet-input-clear-icon button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-input-container.has-clear .duet-input-clear-icon button:focus,.duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva,.duet-theme-turva2 .duet-input-container.has-clear .duet-input-clear-icon button:focus,.duet-input-container.has-clear .duet-input-clear-icon button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-input-container.has-clear .duet-input-clear-icon button:active{opacity:0.75;transition:none}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-xx-small button{top:-12px}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-x-small button{top:-16px}.duet-input-container.has-clear .duet-input-clear-icon.input-padding-small button{top:-20px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single button{top:-48px;right:0}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-xx-small button{top:-36px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-x-small button{top:-40px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-single.input-padding-small button{top:-44px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double button{top:-24px;right:12px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-xx-small button{top:-12px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-x-small button{top:-16px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-double.input-padding-small button{top:-20px}.duet-input-container.has-clear .duet-input-clear-icon.duet-input-clear-icon-button button{top:-24px;right:0}.duet-input-container.has-clear.has-icon .duet-input-clear-icon{top:-24px;right:24px}.duet-input-container.duet-theme-turva.has-clear .duet-input-clear-icon button{color:rgb(8, 42, 77)}.duet-input-label-container{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between}@media (min-width: 48em){.duet-input-label-container{justify-content:flex-start}}.duet-input{position:relative;z-index:100;display:block !important;width:100% !important;min-width:8rem;max-width:initial !important;height:auto !important;padding:12px 14px !important;margin:initial !important;margin-bottom:initial !important;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400 !important;font-variant-numeric:tabular-nums;line-height:1.5 !important;color:rgb(8, 42, 77) !important;cursor:initial !important;outline-color:initial !important;background:rgb(255, 255, 255) !important;background-clip:initial !important;border:1px solid rgb(127, 150, 165) !important;border-radius:4px !important;transition:border 150ms ease !important}.duet-input.input-padding-small{padding:8px 10px !important}.duet-input.input-padding-x-small{padding:4px 6px !important}.duet-input.input-padding-xx-small{padding:0px 2px !important}.duet-input.is-number{padding-right:112px !important}.duet-input.is-date{padding-right:64px !important}.duet-input.after-chip{padding-left:8px !important}.has-error .duet-input,.has-error .duet-input[disabled]{border-color:rgb(214, 28, 82) !important}.has-error .duet-input+.duet-input-icon,.has-error .duet-input[disabled]+.duet-input-icon{color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error .duet-input{border-color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error .duet-input+.duet-input-icon{color:rgb(214, 28, 82) !important}.has-icon .duet-input{padding-right:48px !important}.duet-theme-turva .duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58) !important;border-color:rgb(143, 147, 158) !important}.duet-input.align-right{text-align:right}.duet-input::-ms-clear{display:none}.duet-input::-webkit-contacts-auto-fill-button{display:none !important}.duet-input::-webkit-input-placeholder{color:rgb(98, 121, 138);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva .duet-input::-webkit-input-placeholder{color:rgb(143, 147, 158)}.duet-input:focus::-webkit-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus::-webkit-input-placeholder{color:rgb(199, 202, 207)}.duet-input::-moz-placeholder{color:rgb(98, 121, 138);opacity:1 !important}.duet-theme-turva .duet-input::-moz-placeholder{color:rgb(143, 147, 158)}.duet-input:focus::-moz-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus::-moz-placeholder{color:rgb(199, 202, 207)}.duet-input:-ms-input-placeholder{color:rgb(98, 121, 138)}.duet-theme-turva .duet-input:-ms-input-placeholder{color:rgb(143, 147, 158)}.duet-input:focus:-ms-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva .duet-input:focus:-ms-input-placeholder{color:rgb(199, 202, 207)}.duet-input[disabled]{color:rgb(8, 42, 77) !important;cursor:not-allowed !important;outline:none !important;background:rgb(245, 248, 250) !important;border-color:rgb(245, 248, 250) !important;opacity:1 !important;-webkit-text-fill-color:rgb(8, 42, 77) !important}.duet-theme-turva .duet-input[disabled]{color:rgb(23, 28, 58) !important;background:rgb(245, 247, 250) !important;border-color:rgb(245, 247, 250) !important;-webkit-text-fill-color:rgb(23, 28, 58) !important}.duet-input:hover:not(:disabled){outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva .duet-input:hover:not(:disabled),.duet-input:hover:not(:disabled).duet-theme-turva,.duet-theme-turva2 .duet-input:hover:not(:disabled),.duet-input:hover:not(:disabled).duet-theme-turva2{outline-color:rgb(120, 145, 164)}.has-error .duet-input:hover:not(:disabled){outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input:focus{border-color:rgb(0, 119, 179) !important;transition:none}.duet-theme-turva .duet-input:focus{border-color:rgb(23, 28, 58) !important}.duet-theme-turva .duet-input:focus+.duet-input-icon{color:rgb(23, 28, 58)}.has-error .duet-input:focus{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input:focus+.duet-input-icon{color:rgb(0, 119, 179)}.duet-input[type=search]:not(:placeholder-shown):focus+.duet-input-icon{display:none}.duet-input:not(:focus):not(:hover):invalid{outline:none !important}.duet-input[type=number]::-webkit-inner-spin-button,.duet-input[type=number]::-webkit-outer-spin-button,.duet-input[type=time]::-webkit-inner-spin-button,.duet-input[type=time]::-webkit-outer-spin-button{display:none;margin:0;-webkit-appearance:none}.duet-input::-webkit-search-cancel-button{margin-right:-28px}.duet-input-help{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(98, 121, 138);border-radius:4px}.duet-input-help span{display:block;margin-top:8px}.duet-theme-turva .duet-input-help{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(143, 147, 158)}.has-error .duet-input-help{color:rgb(214, 28, 82)}.duet-theme-turva.has-error .duet-input-help{color:rgb(214, 28, 82)}.duet-label-hidden label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0)}.duet-input-relative{position:relative;width:100%}.duet-input-variation-button,.duet-input-variation-button-left{position:relative;width:100%}.duet-input-variation-button .duet-input-relative,.duet-input-variation-button-left .duet-input-relative{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto}.duet-input-variation-button .duet-input-relative duet-button,.duet-input-variation-button-left .duet-input-relative duet-button{z-index:250;margin-bottom:0}.duet-input-variation-button-left .duet-input-relative{border-radius:4px}.duet-input-variation-button .duet-input-relative .duet-input{border-right-width:0 !important;border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.duet-input-variation-button-left .duet-input-relative .duet-input{border-left-width:0 !important;border-top-left-radius:0 !important;border-bottom-left-radius:0 !important}.duet-input-variation-revealable{position:relative;width:100%}.duet-input-variation-revealable ::-ms-reveal{display:none}.duet-input-variation-revealable .duet-input-relative{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto;outline:initial;border:1px solid rgb(127, 150, 165);border-radius:4px;transition:border 150ms ease}.duet-theme-turva .duet-input-variation-revealable .duet-input-relative{border-color:rgb(143, 147, 158)}.duet-input-variation-revealable .duet-input-relative duet-button{z-index:250;margin-bottom:0}.duet-input-variation-revealable .duet-input-relative .duet-input{border-width:0 !important}.duet-input-variation-revealable .duet-input-relative .duet-input:focus,.duet-input-variation-revealable .duet-input-relative .duet-input:hover{outline:none !important;border-width:0 !important}.duet-input-variation-revealable.disabled .duet-input-relative{outline:none;background:rgb(245, 248, 250);border-color:rgb(212, 223, 229)}.duet-input-variation-revealable.has-error .duet-input-relative{border-color:rgb(214, 28, 82)}.duet-input-variation-revealable.duet-theme-turva.has-error .duet-input-relative{border-color:rgb(214, 28, 82)}.duet-input-variation-revealable.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(62, 84, 102);border-color:rgb(0, 119, 179)}.duet-input-variation-revealable.duet-theme-turva.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(53, 79, 101);border-color:rgb(23, 28, 58)}.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative{outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative,.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva,.duet-theme-turva2 .duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative,.duet-input-variation-revealable:hover:not(.disabled) .duet-input-relative.duet-theme-turva2{outline-color:rgb(120, 145, 164)}.duet-input-variation-revealable.has-error:hover:not(.disabled) .duet-input-relative{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-input-container.has-chips.has-focus .duet-input-relative{outline:2px solid;outline-offset:-1px;outline-color:rgb(62, 84, 102)}.duet-theme-turva .duet-input-container.has-chips.has-focus .duet-input-relative{outline:2px solid;outline-offset:2px;outline-color:rgb(53, 79, 101)}.duet-input-container.has-chips .duet-input-relative{display:flex;flex-direction:row;flex-wrap:wrap;align-content:center;align-items:center;justify-content:flex-start;width:auto;border:1px solid rgb(127, 150, 165);border-radius:4px;transition:border 150ms ease}.duet-theme-turva .duet-input-container.has-chips .duet-input-relative{border-color:rgb(143, 147, 158)}.duet-input-container.has-chips .duet-input-relative .duet-input{flex-grow:1;flex-basis:4rem;padding-left:0 !important;margin-left:12px !important;border-width:0 !important}.duet-input-container.has-chips .duet-input-relative .duet-input:focus,.duet-input-container.has-chips .duet-input-relative .duet-input:hover{outline:none !important;border-width:0 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-icon{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input{color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input::-webkit-input-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-webkit-input-placeholder{color:rgb(178, 194, 205)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-moz-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus::-moz-placeholder{color:rgb(178, 194, 205)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:-ms-input-placeholder{color:rgb(120, 145, 164)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus:-ms-input-placeholder{color:rgb(241, 202, 178)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input[disabled]{color:rgb(23, 42, 59) !important;background:rgb(245, 246, 247) !important;border-color:rgb(245, 246, 247) !important;-webkit-text-fill-color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus{border-color:rgb(23, 42, 59) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-input:focus+.duet-input-icon{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-button-left.has-focus .duet-input-relative{border-color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-theme-turva .duet-input-variation-revealable.has-focus .duet-input-relative{border-color:rgb(23, 42, 59)}';const U=class{constructor(e){t(this,e),this.theme="",this.margin="auto",this.size="medium",this.weight="semi-bold",this.color=""}componentWillLoad(){u(this)}render(){const t=C(this.color,this.theme);return i(a,{class:{"duet-label":!0,"duet-label-small":"small"===this.size,"duet-theme-turva":"turva"===this.theme,"duet-small-margin":"small"===this.margin,"duet-m-0":"none"===this.margin,[`duet-weight-${this.weight}`]:!0}},i("label",{htmlFor:this.for,style:{color:t}},i("span",null,i("slot",null))))}get element(){return o(this)}};U.style='*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{margin:0;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:600 !important;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-weight-normal.sc-duet-label-h label.sc-duet-label{font-weight:400 !important}.duet-weight-normal.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-weight:400 !important}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-theme-turva2.duet-theme-turva.sc-duet-label-h label.sc-duet-label{color:rgb(23, 42, 59)}';export{I as duet_input,U as duet_label}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,r as e,c as i,H as a,g as n,F as s}from"./p-BhYt_2Vd.js";import{i as o}from"./p-1U75pxcR.js";import{f as d,d as r}from"./p-BlUsLmbQ.js";import{i as l}from"./p-Db8rvjPI.js";import{a as h,c as u,d as c,g as p,s as b}from"./p-ac_1YilV.js";import{o as m,p as f,q as g,r as y,u as v,v as k,w as x,x as w,y as $,z as T,A as L,B as z,C as E,j,D as M,E as S,F,G as C,a as D,s as R,H as _}from"./p-BDAqOMlM.js";import{b as U,a as P}from"./p-Bg75Vqqq.js";import{c as A}from"./p-Cfr_DJqU.js";import{p as q}from"./p-C6E9F6QT.js";import{a as W,g as B}from"./p-BtxOyTe3.js";const H=({data:e,groupId:i,alignment:a})=>{const n=`duet-editable-table duet-editable-table-content-${i}`;return"string"==typeof e?t("td",{innerHTML:e,class:n,part:`${i}content`,style:{verticalAlign:a}}):t("td",{class:n,part:`${i}content`,style:{verticalAlign:a}},e)},O=class{constructor(t){e(this,t),this.duetTableToggle=i(this,"duetTableToggle",7),this.duetMenuClick=i(this,"duetMenuClick",7),this.hasHeadSlotFirst=!1,this.hasHeadSlotLast=!1,this.hasFootSlot=!1,this.language=h(),this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0,this.hideHeadVisually=!1,this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:i,direction:a,index:n,key:s}=t;this.duetTableToggle.emit({sort_order:i,index:n,direction:a,key:s,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{l(e)&&this.toggleColumn(t,e)}}componentWillLoad(){o(this),this.hasHeadSlotFirst=!!this.element.querySelector("[slot='thead-first']"),this.hasHeadSlotLast=!!this.element.querySelector("[slot='thead-last']"),this.hasFootSlot=!!this.element.querySelector("[slot='tfoot']")}connectedCallback(){u(this)}disconnectedCallback(){c(this)}createLabel(e){const{sort_order:i,direction:a,index:n,label:s}=e,o=p(s);return this.sortable?t("span",{class:"duet-table-label","data-index":n},t("duet-button",{size:"small",icon:i&&1===a?"action-arrow-down-small":i&&-1===a?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":this.sortableDefaultLabel[this.language],variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},o)):o}getSortedColumns(){return[...this.columns].sort(d(["index"]))}getRowSortOrder(){return[...this.columns].sort(d(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const i=this.createLabel(e);return""!==i?t("th",{scope:"col"},i):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,this.actionColumnLabel[this.language])))}renderActions(e,i){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((a=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:i}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:a.name,theme:this.theme,iconName:a.icon,iconColor:a.color,iconSize:a.size,background:a.background,"accessible-label":`${e.actionDescription||""} ${p(a.label)} `}))))}renderTableBody(){const e=this.getSortedColumns(),i=this.getRowSortOrder();return[...this.rows].sort(d(i)).map(((i,a)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(i.meta)},e.map((e=>{if(!1!==e.display)return t(H,{data:i[e.key]?i[e.key]:i.item,groupId:this.groupId})})),this.actions&&this.renderActions(i,a))))}render(){return t(a,{key:"05720c6ef38164df71b02c23fb45d3d84808c2ac",class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{key:"52033d6f9c4e8ca460bacee6e2b8ea93da3b9eb8",class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint,"hide-head-visually":this.hideHeadVisually},t("table",{key:"7f0689d1e576d5f0c5324715feaf21ce21c42e97",role:this.accessibleRole},t("caption",{key:"4e18555d5513dde6724a449d12030cc666937367"},t("slot",{key:"df9bcd3bde75a2669a08eb2ff0c67720750e5450",name:"tcaption"})),t("thead",{key:"efbbe81840f6e9ae9e0cc91fee5653c43181f131"},this.hasHeadSlotFirst&&t("tr",{key:"36d1a860bf16229740501f3b076b02125d1b3d85"},t("td",{key:"24c22fca3cbfef4ab9e2582cf32bf967654b8b43",class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{key:"a02148a1d13dc8c3147b26da2f5aa84e3b359cdf",name:"thead-first"}))),this.renderTableHeader(),this.hasHeadSlotLast&&t("tr",{key:"7b7ab392f982f5f7ce4caa5e86f7a1062412aad2"},t("td",{key:"cd739dea8b81f3290bb86d7e977fa83d124fdd03",class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{key:"068a9f86388a25ca00944d8e9ecfbed6cf0e2cfe",name:"thead-last"})))),t("tbody",{key:"f65077b6dee57c962826c459ddb044d4230753c5"},this.renderTableBody()),this.hasFootSlot&&t("tfoot",{key:"eceeface4ad0a0bbb15dc188a343291cef04ec72"},t("tr",{key:"aff41dc81c24e09a03db4742bf6d51c17b8ce937"},t("td",{key:"5d332218393462356c02ca19ff9c3398fbeb89a7",class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{key:"b438187cfa67ef90452783e9522d106ecf9ab9d3",name:"tfoot"})))))))}get element(){return n(this)}};O.style=":host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.duet-editable-table-actions-menu,td.duet-editable-table-actions-menu{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon .duet-icon{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row .duet-text-right{text-align:right}.duet-editable-table-header tr .duet-editable-table-header-hidden{padding:0 !important;font-size:0;border-bottom:0}";const Y=t=>t.replace("rgb(","").replace(")",""),I=`\nduet-table {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n margin-bottom: ${m} !important;\n display: block;\n font-variant-numeric: tabular-nums;\n\n table,\n thead,\n tbody,\n tfoot,\n th,\n td,\n tr {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n }\n\n &.duet-m-0 {\n margin: 0 !important;\n }\n\n table {\n width: 100%;\n font-family: ${f};\n font-size: ${g};\n text-align: left;\n border-spacing: 0;\n border-collapse: separate;\n }\n\n &.duet-table-hide-head-visually.duet-table-hide-head-visually {\n thead,\n thead * {\n position: absolute !important;\n top: 0;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n overflow: hidden !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n border: 0 !important;\n }\n }\n\n &.duet-theme-turva table {\n font-family: ${y};\n }\n\n td {\n -webkit-hyphens: auto;\n hyphens: auto;\n color: ${v};\n }\n\n &.duet-theme-turva td {\n color: ${k};\n }\n\n th {\n font-weight: ${x};\n line-height: ${w};\n color: ${$};\n text-align: left;\n }\n\n &.duet-theme-turva th {\n color: ${T};\n }\n\n tbody th {\n font-weight: ${x};\n color: ${v};\n }\n\n &.duet-theme-turva tbody th {\n color: ${k};\n }\n\n & .duet-table-action-row {\n & td:last-child {\n justify-self: end;\n padding-right: ${m} !important;\n white-space: nowrap;\n }\n }\n\n span.duet-table-cell-heading {\n display: none;\n }\n}\n\n.duet-table-flattened {\n table,\n thead,\n tbody,\n tfoot,\n th,\n td,\n tr {\n display: block;\n }\n\n thead tr {\n position: absolute !important;\n top: 0;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n overflow: hidden !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n border: 0 !important;\n }\n\n td {\n line-height: ${w};\n\n &:not(:last-child) {\n margin-bottom: ${L};\n }\n\n span.duet-table-cell-heading {\n margin-bottom: ${z};\n display: block;\n font-size: ${g};\n font-weight: ${x};\n color: ${v};\n }\n }\n\n &.duet-theme-turva td span.duet-table-cell-heading {\n color: ${k};\n }\n\n tbody td,\n tbody th,\n tfoot td {\n padding: 0 !important;\n text-align: left !important;\n }\n\n tbody th {\n font-weight: ${x};\n line-height: ${w};\n color: ${$};\n text-align: left;\n }\n}\n\n.duet-table-sticky thead th {\n position: sticky;\n top: 0;\n z-index: $z-index-sticky;\n background: ${E};\n}\n\n.duet-table-striped {\n td,\n th {\n padding: ${m} !important;\n @media ${j.replace("'","").replace("'","")} {\n padding: ${m} ${M} !important;\n }\n }\n\n tbody th {\n background: ${E};\n }\n\n &.duet-table-sticky {\n thead th {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva thead th {\n border-bottom-color: ${F};\n }\n }\n\n tbody:not(:first-of-type) th {\n padding-top: calc(${m} * 2) !important;\n }\n\n tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba(4, 81, 128, 0.04);\n }\n\n &.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba(${Y(k)}, 0.04);\n }\n\n tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba(4, 81, 128, 0.04);\n }\n\n &.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba(${Y(k)}, 0.04);\n }\n\n tfoot td {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot td {\n border-top-color: ${F};\n }\n\n &.duet-table-flattened {\n tbody:not(:first-of-type) th {\n padding-top: ${m} !important;\n }\n\n tr {\n padding: ${m} !important;\n }\n\n tfoot {\n td {\n border-top: 0;\n }\n\n tr {\n border-top: 1px solid ${S};\n }\n }\n\n &.duet-theme-turva tfoot tr {\n border-top-color: ${F};\n }\n }\n}\n\n.duet-table-plain, .duet-table-fixed, .duet-table-minimal {\n th {\n padding: ${L} !important;\n border-bottom: 1px solid ${$};\n\n &:first-child {\n padding-left: 0 !important;\n }\n\n &:last-child {\n padding-right: 0 !important;\n }\n }\n\n &.duet-theme-turva th {\n border-bottom-color: ${C};\n }\n\n tbody th {\n padding-top: calc(${m} * 2) !important;\n border-bottom-color: ${S};\n }\n\n &.duet-theme-turva tbody th {\n border-bottom-color: ${F};\n }\n\n td {\n padding: ${L} !important;\n\n &:first-child {\n padding-left: 0 !important;\n }\n\n &:last-child {\n padding-right: 0 !important;\n }\n }\n\n tbody td {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva tbody td {\n border-bottom-color: ${F};\n }\n\n &.duet-table-flattened {\n tbody:first-of-type th {\n padding-top: 0 !important;\n }\n\n td,\n tbody th {\n border-bottom: 0;\n }\n\n tr {\n padding: ${m} 0 !important;\n }\n\n tbody th {\n padding-top: ${m} !important;\n }\n\n tfoot td {\n margin-bottom: ${z} !important;\n }\n\n tbody:not(:only-of-type) tr:first-child {\n border-bottom: 0;\n }\n }\n}\n\n.duet-table-plain {\n\n &.duet-table-flattened {\n tbody tr {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva tbody tr {\n border-bottom-color: ${F};\n }\n }\n}\n\n.duet-table-minimal {\n\n tbody tr,\n tbody tr td {\n vertical-align: top;\n border-bottom: 0 none;\n }\n\n tbody tr:last-of-type,\n tbody tr:last-of-type td {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-table-flattened {\n tbody tr,\n tbody tr td {\n border-bottom: 0 none;\n }\n\n tbody tr td[data-heading]::before {\n display: none;\n }\n\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${F};\n }\n }\n}\n\n.duet-table-fixed {\n\n table {\n table-layout: fixed;\n }\n\n tbody tr,\n tbody tr td,\n tbody tr td:first-child {\n padding: 4px !important;\n vertical-align: text-bottom;\n border-bottom: 0 none;\n }\n\n thead {\n display: none;\n }\n\n tbody tr,\n tbody tr td {\n border-bottom: 0 none;\n }\n\n &:not(.duet-table-flattened) {\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${F};\n }\n }\n}\n.duet-table-scrollable {\n position: relative;\n width: 100%;\n overflow-x: auto;\n background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;\n background-repeat: no-repeat;\n background-attachment: local, local, scroll, scroll;\n background-size: 100px 100%, 100px 100%, 12px 100%, 12px 100%;\n}\n\n.duet-table-selected-column {\n background: rgba(${Y(D)}, 0.08);\n\n .duet-theme-turva & {\n background: rgba(${Y(C)}, 0.08);\n }\n}\n\n.duet-table-sortable {\n tbody tr td:first-child,\n thead tr th:first-child {\n padding: ${m};\n }\n\n &:not(.duet-table-flattened) {\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${F};\n }\n }\n}\n\n\n.duet-table-actions {\n table {\n table-layout: auto;\n }\n\n thead {\n & th:last-child {\n width: 1px;\n white-space: nowrap;\n }\n }\n}\n\n.duet-editable-table-table.duet-table-flattened {\n tr {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n grid-auto-rows: auto;\n gap: 10px;\n\n &.duet-table-action-row td:last-child::before {\n padding: 0;\n content: "";\n }\n }\n\n td {\n grid-column: 1 / 2;\n\n &:first-child {\n grid-row: 1;\n grid-column: 1;\n }\n\n &:last-child {\n grid-row: 1;\n grid-column: 2;\n }\n }\n\n duet-table.duet-theme-turva2 {\n &.duet-theme-turva td {\n color: $color-turva2-gray-900;\n }\n\n &.duet-theme-turva tbody th {\n color: $color-turva2-gray-900;\n }\n\n &.duet-table-striped.duet-theme-turva.duet-table-sticky thead {\n th,\n td {\n border-bottom-color: $color-turva-nude-100;\n }\n }\n\n &.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba($color-turva2-gray-900, 0.04);\n }\n\n &.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba($color-turva2-gray-900, 0.04);\n }\n\n &.duet-table-striped.duet-theme-turva tfoot td {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-plain.duet-theme-turva tbody {\n th,\n td {\n border-bottom-color: $color-turva-nude-100;\n }\n }\n\n &.duet-table-plain.duet-theme-turva tbody td {\n border-bottom-color: $color-turva-nude-100;\n }\n\n &.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr {\n border-bottom-color: $color-turva-nude-100;\n }\n\n &.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-fixed.duet-theme-turva:not(.duet-table-flattened) tfoot {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-sortable.duet-theme-turva:not(.duet-table-flattened) tfoot {\n border-top-color: $color-turva-nude-100;\n }\n }\n}\n`.replace(/[\n\r\t]/gm,""),N={none:0,"with-links":16*parseFloat(_),"without-links":16*parseFloat(R)},V=class{constructor(t){e(this,t),this.headingSelector="thead tr > :not(*.duet-editable-table-actions-menu)",this.matchesBreakpoint=!0,this.language=h(),this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.hideHeadVisually=!1,this.handleMediaQueryChange=t=>{this.matchesBreakpoint=U.includes(this.breakpoint)?!t.matches:t.matches}}watchLanguageStateHandler(t,e){t!==e&&setTimeout((()=>this.copyHeadingsToCells()),50)}connectedCallback(){!function(t){const e=t.getRootNode();if(e instanceof ShadowRoot){const t=new CSSStyleSheet;t.replace(I).then((()=>{e.adoptedStyleSheets.push(t)}))}else{if(document.querySelector("style#duet-table-styles"))return;const t=document.createElement("style");t.id="duet-table-styles",t.innerHTML=I,document.head.append(t)}}(this.element),this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":P[this.breakpoint]),this.mq.addEventListener("change",r(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>r(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(o(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=N[this.stickyDistance];this.element.querySelectorAll(this.headingSelector).forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords(),u(this)}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0,c(this)}copyHeadingsToCells(){if(["none","none-scrollable"].includes(this.breakpoint))return;const t=this.element.querySelectorAll(this.headingSelector),e=this.element.querySelectorAll("tbody tr"),i=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{if(i[e]){const a=t.querySelector(".duet-table-cell-heading");if(!a||a.textContent!==i[e]){null==a||a.remove();const n=document.createElement("span");n.textContent=i[e],n.classList.add("duet-table-cell-heading"),n.setAttribute("aria-hidden","true"),n.inert=!0,t.prepend(n)}}}))}))}render(){return t(a,{key:"02ed0a7f4b3c7504b0f6df2ee9e923f5afbca106",class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme,"duet-table-hide-head-visually":this.hideHeadVisually}},t("slot",{key:"946a620f959caf19dc712844d81ebc345870757d"}))}get element(){return n(this)}static get watchers(){return{language:["watchLanguageStateHandler"]}}};var J=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-203",system_message:"Files to upload exceed total byte size limit",message:{fi:"Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",sv:"Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",en:"You tried to add files that would exceed the maximum combined size."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}},{type:"duet-upload-302",system_message:"Files to upload exceeds limits",message:{fi:"Et voi lähettää enempää kuin enimmäismäärän liitteitä.",sv:"Du kan inte ladda upp fler än det maximala antalet bilagor.",en:"You can't upload more than maximum number of attachments."}}];const X={fi:"Liiteluettelo",sv:"Lista över bilagor",en:"Attachments list"},K=({label:e,categoryLabel:i})=>t("div",{class:"items-header",tabindex:"-1","aria-label":p(X)},i&&t("duet-heading",{class:"category-header",border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(i)),t("duet-heading",{class:{"filename-header":!0,"no-category":!i},border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(e))),G=(t,e,i)=>{const{allowedMimetypes:a,allowedExtensions:n,maxBytes:s}=e;let o=!1,d=W("default",i);if(t){const{name:e,type:r,size:l}=t,h=((t,e)=>{if(!e||!t)return!0;const i=e.split(",");let a=!1;return i.forEach((e=>{const i=e.split("/"),n=t.split("/");i[0]!==n[0]||i[1]!==n[1]&&"*"!==i[1]||(a=!0)})),a})(r,a),u="all"===n||""===n||" "===n||void 0===n||((t,e)=>{if(!e)return!0;const i=t.split(".");return e.split(",").includes(i[i.length-1])})(e.toLowerCase(),n),c=((t,e)=>!e||!t||e>=t)(l,s);h||(d=W("duet-upload-101",i)),u||(d=W("duet-upload-100",i)),c||(d=W("duet-upload-201",i)),o=h&&u&&c}else o=!1;return{valid:o,errorMessage:o?void 0:p(d.message),errorSystem:o?void 0:d.system_message,errorType:o?void 0:d.type}},Q=({payload:t,options:e,onFailure:i,onSuccess:a,onProgress:n})=>{const{type:s="POST",xhr:o,uri:d,argument:r=null,headers:l=null}=e;o.open(s,`${d}${r||""}`,!0);const{data:h,name:u}=t;return l&&Object.keys(l).forEach((t=>{o.setRequestHeader(t,l[t])})),"POST"===s&&(o.onreadystatechange=()=>{o.readyState===XMLHttpRequest.DONE&&o.status>=200&&o.status<300&&a(o,u,o.status),o.readyState===XMLHttpRequest.DONE&&o.status>=300&&o.status<999&&i(o,u,o.status)},n(u)),o.send(h),o},Z=class{constructor(a){e(this,a),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetFocus=i(this,"duetFocus",7),this.duetReady=i(this,"duetReady",7),this.duetDone=i(this,"duetDone",3),this.duetState=i(this,"duetState",3),this.duetDelete=i(this,"duetDelete",3),this.duetCancel=i(this,"duetCancel",3),this.duetProgress=i(this,"duetProgress",3),this.duetUpload=i(this,"duetUpload",3),this.linkClick=i(this,"linkClick",3),this.tick=Date.now(),this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Delete the file",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.showLinks=!1,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded}, yhteensä lähetettävänä {filesTotal}.",inProgressWithErrors:"Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",done:"Lähetys valmis, {filesTotal} lisätty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",files:"tiedostoa",file:"tiedosto"},sv:{inProgress:"Laddar upp {filesUploaded} av {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Uppladdningen slutförd, {filesTotal} har lagts till",doneWithErrors:"Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Uploading {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"Upload completed, {filesTotal} added successfully",doneWithErrors:"Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",files:"files",file:"file"}},this.statusMessageLabel=p(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=p(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=p(this.labelDefaults),this.descriptionDefaults={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}.",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}.",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."},this.description=p(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=p(this.fileListEmptyDefaults),this.error="",this.errorCodes=J,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="",this.multiple=!0,this.limitSelection=!1,this.hideCancelButton=!1,this.captionOnBottom=!1,this.showUploadedItemsHeader=!1,this.uploadedItemsHeaderLabel={fi:"Ladattu tiedosto",sv:"Lägg till en bilaga",en:"Uploaded file"},this.headerHeadingLevel="h3",this.hideHeader=!1,this.emitEvent=!1,this.actionButtonTitles={cancel:!1,delete:!1},this.renameDuplicates=!1,this.buttonId=A("DuetButton"),this.labelId=A("DuetLabel"),this.uploadId=A("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.filesToUploadExceedsLimit=!1,this.filesToUploadTotalSizeIsAboveMax=!1,this.internalStatusMessageLabel=void 0,this.itemRefs=new Map,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.groups=[{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}},{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}}],this.kick=r((()=>{this.tick=Date.now()}),30),this.categoryLabel={en:"Category",sv:"Filtyp",fi:"Tiedostotyyppi"},this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:i,id:a,originalEvent:n}=e;switch(i){case"delete":this.onDelete(a,n);break;case"cancel":this.onCancel(a,n)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),i=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==i&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.mapFilesToUploadItems=(e,i,a,n)=>i===this.DefaultGroups.success?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"success",data:e,showLinks:this.showLinks,linkClickEvent:this.emitEvent?this.linkClick:void 0,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.inprogress?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"inprogress",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.pending?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"pending",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.failure?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"failure",data:e,showLinks:this.showLinks,errorCodes:this.errorCodes,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,i,a=!0)=>{try{const a=this.files.get(t);a[e]=i,this.files.set(t,a),this.external&&"url"!==e&&this.trackProgress(t,"uploaded"===e)}catch(t){}a&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(i=>{this.updateValueInMap(e,"progress",i),this.onProgress(e,i,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((i=>{i.valid&&!i.deleted?t.push(i):i.valid||i.deleted||e.push(i)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{const{bytesMaxReached:i,fileMaxReached:a}=this.validateTotals();i||a?this.kick():(this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault())},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,i)=>{this.updateValueInMap(e,"status",i,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const i=JSON.parse(t.response);this.updateValueInMap(e,"url",i.url)}catch(t){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,i)=>{try{const{error:i}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:i.message,type:i.type},!1)}catch(t){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:i},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",B("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(i+=t.size)})),i>=e))})(0,this.maxBytesTotal),i=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&i++})),i>=e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",B("duet-upload-202",this.errorCodes),!1),i&&t&&this.updateValueInMap(t,"error",B("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=i,{bytesMaxReached:e,fileMaxReached:i}},this.uploadFile=async(t,e=!1,i)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),i&&e.append("key",i),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(e){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of Array.from(this.files.entries()))"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,i]of Array.from(this.files.entries()))if(i.uid===t)return{value:i,key:e};return null},this.handleExternalUploadButton=(t,e)=>{this.externalUploadButton&&(this.externalUploadButton.disabled=!(!t&&!e))},this.onDelete=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:n,fileMaxReached:s}=this.validateTotals();this.handleExternalUploadButton(n,s),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:a},component:"duet-upload"}),this.external||a.pending||this.makeXHRDeleteRequest(a),this.resetFormFields()},this.onCancel=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:n,fileMaxReached:s}=this.validateTotals();if(this.handleExternalUploadButton(n,s),!this.external){const{xhr:t}=a;t&&t.abort()}this.kick(),this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:a},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,i)=>{this.duetChange.emit({originalEvent:i,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=Array.from(this.files.values()),e=[],i=[],a=[],n=[];let s=!1;return t.forEach((t=>{const o=this.getGroupFromItemData(t);t.meta&&t.meta.badges&&(s=!0),o===this.DefaultGroups.success?n.push({uid:t.uid,data:t}):o===this.DefaultGroups.inprogress?e.push({uid:t.uid,data:t}):o===this.DefaultGroups.pending?a.push({uid:t.uid,data:t}):o===this.DefaultGroups.failure?i.push({uid:t.uid,data:t}):t.group&&e.push({uid:t.uid,data:t})})),{pending:a,failure:i,success:n,inprogress:e,hasCategory:s}},this.getActions=(t,e)=>e.filter((e=>e.map.includes(t))),this.renderUploadedItems=()=>{this.itemRefs.clear();const e=this.filterMap(),i=e.hasCategory,a=this.hideCancelButton?this.actions.filter((t=>"cancel"!==t.name)):this.actions,n=this.groups.map((n=>{const o=e[n.id];if(null==o?void 0:o.length)return t(s,null,!this.hideGroups&&t(K,{categoryLabel:i?this.categoryLabel:void 0,label:n.label}),o.map((t=>this.mapFilesToUploadItems(t.data,n.id,i,a))))}));return t(s,null,this.showUploadedItemsHeader&&t(K,{categoryLabel:i?this.categoryLabel:void 0,label:this.uploadedItemsHeaderLabel}),n)}}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?b(this.groups):this.statusMessageLabel,o(this),this.listenForActionEvents(),this.onReady(),this.externalUploadButton=document.querySelector(`#${this.externalUploadButtonId}`),this.processedButtonTitles=q(this.actionButtonTitles)}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){const{bytesMaxReached:e,fileMaxReached:i}=this.validateTotals();if(e||i)return this.handleExternalUploadButton(e,i),void this.kick();this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,i){this.updateValueInMap(t,e,i)}async focusActionButton(t){var e;await(null===(e=this.itemRefs.get(t))||void 0===e?void 0:e.focusActionButton())}render(){const e=this.identifier||this.uploadId,i=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),n=Math.round(this.maxBytes/1024/1024);let o=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return o=o.replace(/{maxbytes}/g,`${n.toString()} MB`),o=o.replace(/{maxbytestotal}/g,`${i.toString()} MB`),o=o.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),this.externalUploadButton&&(this.externalUploadButton.accessibleLabel=`${this.externalUploadButton.innerText}. ${o}`),t(a,{key:"855e27e55645747625669bf080e6f65423b9bbf0",class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{key:"89d6b1b88260ccb7ffa2f4a3130fdf74d904e048","label-heading-level":this.headerHeadingLevel,"label-hidden":this.hideHeader,label:this.label},t("slot",{key:"10b9cdc44bd94871f538a9299ea6252f4375a864",name:"header"}),!this.files.size&&t("duet-empty-state",{key:"924905b1aafa76175b93f12dd6e7d7ac8ac5b5e3",id:this.labelId,part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",icon:"messaging-attachment"},t("duet-paragraph",{key:"f744c2afdb520cd0e69a15c0a942f6ecd8e30b75",margin:"none"},this.fileListEmpty)),!!this.files.size&&t("slot",{key:"da55dafcb732e24b895185995040decfe40382c6",name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{key:"199e78733f262f857124540bbd055e7c6cbcaf6a",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&&t("slot",{key:"d6327694548a1ee39188af3935c67d0a6eaead79",name:"filefooter"}),t("slot",{key:"718e1e5d1f7041d2d596ada75a717942b74999f6",name:"uploadfooter"}),this.captionOnBottom&&t("duet-caption",{key:"d15f3fd09b07de11dc1f725bc9ee344889b6445f",margin:"none",size:"small"},t("div",{key:"1e4e1c3a29338fa3339cd2de701ba3c776c1166a",class:"upload-bottom-caption"},o)),t("slot",{key:"90f1e8de4c8359df2b8dded1bf5211857ce48a79",name:"afterfooter"}),!this.hideButton&&t(s,{key:"431fb04536068eefdf974fc34f89f56e712674c9"},t("duet-spacer",{key:"c98d3f3e0f06d17b1b86ab40486a663ef8c6a75e",size:"large"}),t("duet-button",{key:"1f057848bdacb5e69ef63e2bfdc81e216271f455",id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel||`${this.buttonLabel}. ${o}`,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel)),(this.fileMaxReached||this.bytesMaxReached||this.filesToUploadExceedsLimit||this.filesToUploadTotalSizeIsAboveMax)&&t(s,{key:"8169162805d7ec3a093344e09a4bd9241c1b9c58"},t("duet-spacer",{key:"0f6500a4ada6c4b3c73f6524bf224ee1d79f0ae6",size:"medium"}),t("duet-alert",{key:"8bbc63eb777fa98ff0f797d970d66835ac6155a5",part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&B("duet-upload-301",this.errorCodes),this.bytesMaxReached&&B("duet-upload-202",this.errorCodes),this.filesToUploadExceedsLimit&&B("duet-upload-302",this.errorCodes),this.filesToUploadTotalSizeIsAboveMax&&B("duet-upload-203",this.errorCodes))),t("duet-visually-hidden",{key:"5fb70459ca757cc24041ce6e01414165ba6497b5","aria-hidden":"true"},t("input",{key:"808b15c23e12cf691f85e48e1a03106409b81565",ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple,tabIndex:-1}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,i=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,i)})),e.upload.addEventListener("load",(()=>{this.transferComplete(i)})),e.upload.addEventListener("error",(()=>{this.transferFailed(i)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(i)}));let a={payload:{data:t,name:i},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(a=this.middleware(a)),Q(a)}makeXHRDeleteRequest(t){const{uid:e,item:i}=t,a=new XMLHttpRequest;let n={payload:{data:null,name},options:{type:"DELETE",xhr:a,uri:this.uri,argument:`?key=${e}&name=${i.name}`,headers:{"x-fileuid":e,"x-filename":i.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(n=this.middleware(n)),Q(n)}escapeSpecialCharacters(t){return(t+"").replace(/[\\"'(){}\[\]*?$^+]/g,"\\$&").replace(/\u0000/g,"\\0")}getRenamedFileName(t,e){const i=new RegExp(`${this.escapeSpecialCharacters(t)} \\(\\d+\\).${e}`),a=Array.from(this.files.entries()).map((t=>{const[e,i]=t;return e})).filter((a=>i.test(a)||a===`${t}.${e}`)).sort(((t,e)=>t.split(".").slice(0,-1).join(".")>e.split(".").slice(0,-1).join(".")?1:-1)).pop().split(".").slice(0,-1).join(".");if(a===t)return`${t} (1).${e}`;const n=parseInt(a.split("(").pop().slice(0,-1));return`${t} (${n+1}).${e}`}renameFiles(t){return t.map((t=>{if(this.files.get(t.name)){const e=t.name.split("."),i=e.pop(),a=e.join("."),n=this.getRenamedFileName(a,i);return new File([t],n,{type:t.type,lastModified:t.lastModified})}return t}))}async onChange(t){var e;let i=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(this.filesToUploadExceedsLimit=!1,this.files.size+i.length>this.maxFiles)return this.filesToUploadExceedsLimit=!0,void this.kick();if(this.filesToUploadTotalSizeIsAboveMax=!1,((t,e,i)=>{let a=0;return!!(i&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),e.forEach((t=>{t.size&&(a+=t.size)})),a>=i))})(0,i,this.maxBytesTotal))return this.filesToUploadTotalSizeIsAboveMax=!0,void this.kick();if(i){this.renameDuplicates&&(i=this.renameFiles(i));for(const t of i){const{valid:e,errorMessage:i,errorType:a,errorSystem:n}=G(t,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),s={uid:this.genHashName(),item:t,size:t.size,meta:this.metaData,uploaded:!1,valid:e,error:{type:e?void 0:a,message:e?void 0:i,system_message:e?void 0:n},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(t.name,s),e&&!this.external?await this.uploadFile(s):e&&this.external?(this.updateValueInMap(s.item.name,"pending",!0,!1),this.updateValueInMap(s.item.name,"group","pending",!0)):e||this.updateValueInMap(t.name,"valid",!1,!0),this.kick()}}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return n(this)}static get watchers(){return{valid:["watchValidHandler"]}}};Z.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}::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;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.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}";export{O as duet_editable_table,V as duet_table,Z as duet_upload}
|
|
4
|
+
import{h as t,r as e,c as i,H as a,g as n,F as s}from"./p-BxH0r0DA.js";import{i as o}from"./p-BcVbsW_2.js";import{f as d,d as r}from"./p-BlUsLmbQ.js";import{i as l}from"./p-Db8rvjPI.js";import{a as h,c as u,d as c,g as p,s as b}from"./p-dX4lCxX-.js";import{q as m,r as f,p as g,u as y,v,w as k,x,y as w,z as $,A as T,B as L,C as z,D as j,j as E,E as M,F as S,G as C,H as D,a as F,s as R,I as _}from"./p-C-hMrqKD.js";import{b as P,a as U}from"./p-D7VOYHjg.js";import{c as A}from"./p-Cfr_DJqU.js";import{p as W}from"./p-C6E9F6QT.js";import{a as H,g as q}from"./p-LYJwm2Mz.js";const B=({data:e,groupId:i,alignment:a})=>{const n=`duet-editable-table duet-editable-table-content-${i}`;return"string"==typeof e?t("td",{innerHTML:e,class:n,part:`${i}content`,style:{verticalAlign:a}}):t("td",{class:n,part:`${i}content`,style:{verticalAlign:a}},e)},I=class{constructor(t){e(this,t),this.duetTableToggle=i(this,"duetTableToggle",7),this.duetMenuClick=i(this,"duetMenuClick",7),this.hasHeadSlotFirst=!1,this.hasHeadSlotLast=!1,this.hasFootSlot=!1,this.language=h(),this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0,this.hideHeadVisually=!1,this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:i,direction:a,index:n,key:s}=t;this.duetTableToggle.emit({sort_order:i,index:n,direction:a,key:s,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{l(e)&&this.toggleColumn(t,e)}}componentWillLoad(){o(this),this.hasHeadSlotFirst=!!this.element.querySelector("[slot='thead-first']"),this.hasHeadSlotLast=!!this.element.querySelector("[slot='thead-last']"),this.hasFootSlot=!!this.element.querySelector("[slot='tfoot']")}connectedCallback(){u(this)}disconnectedCallback(){c(this)}createLabel(e){const{sort_order:i,direction:a,index:n,label:s}=e,o=p(s);return this.sortable?t("span",{class:"duet-table-label","data-index":n},t("duet-button",{size:"small",icon:i&&1===a?"action-arrow-down-small":i&&-1===a?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":this.sortableDefaultLabel[this.language],variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},o)):o}getSortedColumns(){return[...this.columns].sort(d(["index"]))}getRowSortOrder(){return[...this.columns].sort(d(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const i=this.createLabel(e);return""!==i?t("th",{scope:"col"},i):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,this.actionColumnLabel[this.language])))}renderActions(e,i){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((a=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:i}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:a.name,theme:this.theme,iconName:a.icon,iconColor:a.color,iconSize:a.size,background:a.background,"accessible-label":`${e.actionDescription||""} ${p(a.label)} `}))))}renderTableBody(){const e=this.getSortedColumns(),i=this.getRowSortOrder();return[...this.rows].sort(d(i)).map(((i,a)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(i.meta)},e.map((e=>{if(!1!==e.display)return t(B,{data:i[e.key]?i[e.key]:i.item,groupId:this.groupId})})),this.actions&&this.renderActions(i,a))))}render(){return t(a,{key:"5b1b28e6321b07a1d385c1945f15b0c110a8b068",class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{key:"47a4b4e9d3acf3ca83e70c1aa4e7758e1f6cbbbe",class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint,"hide-head-visually":this.hideHeadVisually},t("table",{key:"975344f17b9271b8ffa4264751aa2dae69279f45",role:this.accessibleRole},t("caption",{key:"e9039bfd4c5bf90f96856d13d993be7f13fa2d73"},t("slot",{key:"38a7cd2c82e45ebcc080e1e20f3f77aa2a46973d",name:"tcaption"})),t("thead",{key:"c4a02a18bfae96669f45328f6198dc52f43dd887"},this.hasHeadSlotFirst&&t("tr",{key:"af846dfeba040ddec43065803327195bea76a404"},t("td",{key:"c002827f8c8c6cce8d8d4415c80e4f39d4bb1ed6",class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{key:"5673bc937f4bc87b67f6112f59a1981ff7f02c79",name:"thead-first"}))),this.renderTableHeader(),this.hasHeadSlotLast&&t("tr",{key:"79a45db93db0d6e5e35aade928f23032efdb821b"},t("td",{key:"fddd1434bf5a20188be229e5c3d9bde03b8d8dca",class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{key:"53b1ea3494b7e0f39426232f922a040eacf3a0f0",name:"thead-last"})))),t("tbody",{key:"b5d38eed528592d29f64f749e1938d0ff5b772b3"},this.renderTableBody()),this.hasFootSlot&&t("tfoot",{key:"e2ef34f7d078a7ac7b4a38cd5953b449ce682a23"},t("tr",{key:"9f2a92be2f425c419abd5fa1a0a7fb763cc0426b"},t("td",{key:"da2eeda1f65004cc2c197dad36038dc4a60c2e8e",class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{key:"988c400cb8046f0544293b8e1555f7b213f9def6",name:"tfoot"})))))))}get element(){return n(this)}};I.style=":host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.duet-editable-table-actions-menu,td.duet-editable-table-actions-menu{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon .duet-icon{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row .duet-text-right{text-align:right}.duet-editable-table-header tr .duet-editable-table-header-hidden{padding:0 !important;font-size:0;border-bottom:0}";const Y=t=>t.replace("rgb(","").replace(")",""),N=`\nduet-table {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n margin-bottom: ${m} !important;\n display: block;\n font-variant-numeric: tabular-nums;\n\n table,\n thead,\n tbody,\n tfoot,\n th,\n td,\n tr {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n }\n\n &.duet-m-0 {\n margin: 0 !important;\n }\n\n table {\n width: 100%;\n font-family: ${f};\n font-size: ${g};\n text-align: left;\n border-spacing: 0;\n border-collapse: separate;\n }\n\n &.duet-table-hide-head-visually.duet-table-hide-head-visually {\n thead,\n thead * {\n position: absolute !important;\n top: 0;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n overflow: hidden !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n border: 0 !important;\n }\n }\n\n &.duet-theme-turva table {\n font-family: ${y};\n }\n\n td {\n -webkit-hyphens: auto;\n hyphens: auto;\n color: ${v};\n }\n\n &.duet-theme-turva td {\n color: ${k};\n }\n\n th {\n font-weight: ${x};\n line-height: ${w};\n color: ${$};\n text-align: left;\n }\n\n &.duet-theme-turva th {\n color: ${T};\n }\n\n tbody th {\n font-weight: ${x};\n color: ${v};\n }\n\n &.duet-theme-turva tbody th {\n color: ${k};\n }\n\n & .duet-table-action-row {\n & td:last-child {\n justify-self: end;\n padding-right: ${m} !important;\n white-space: nowrap;\n }\n }\n\n span.duet-table-cell-heading {\n display: none;\n }\n}\n\n.duet-table-flattened {\n table,\n thead,\n tbody,\n tfoot,\n th,\n td,\n tr {\n display: block;\n }\n\n thead tr {\n position: absolute !important;\n top: 0;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n overflow: hidden !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n border: 0 !important;\n }\n\n td {\n line-height: ${w};\n\n &:not(:last-child) {\n margin-bottom: ${L};\n }\n\n span.duet-table-cell-heading {\n margin-bottom: ${z};\n display: block;\n font-size: ${g};\n font-weight: ${x};\n color: ${v};\n }\n }\n\n &.duet-theme-turva td span.duet-table-cell-heading {\n color: ${k};\n }\n\n tbody td,\n tbody th,\n tfoot td {\n padding: 0 !important;\n text-align: left !important;\n }\n\n tbody th {\n font-weight: ${x};\n line-height: ${w};\n color: ${$};\n text-align: left;\n }\n}\n\n.duet-table-sticky thead th {\n position: sticky;\n top: 0;\n z-index: $z-index-sticky;\n background: ${j};\n}\n\n.duet-table-striped {\n td,\n th {\n padding: ${m} !important;\n @media ${E.replace("'","").replace("'","")} {\n padding: ${m} ${M} !important;\n }\n }\n\n tbody th {\n background: ${j};\n }\n\n &.duet-table-sticky {\n thead th {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva thead th {\n border-bottom-color: ${C};\n }\n }\n\n tbody:not(:first-of-type) th {\n padding-top: calc(${m} * 2) !important;\n }\n\n tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba(4, 81, 128, 0.04);\n }\n\n &.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba(${Y(k)}, 0.04);\n }\n\n tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba(4, 81, 128, 0.04);\n }\n\n &.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba(${Y(k)}, 0.04);\n }\n\n tfoot td {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot td {\n border-top-color: ${C};\n }\n\n &.duet-table-flattened {\n tbody:not(:first-of-type) th {\n padding-top: ${m} !important;\n }\n\n tr {\n padding: ${m} !important;\n }\n\n tfoot {\n td {\n border-top: 0;\n }\n\n tr {\n border-top: 1px solid ${S};\n }\n }\n\n &.duet-theme-turva tfoot tr {\n border-top-color: ${C};\n }\n }\n}\n\n.duet-table-plain, .duet-table-fixed, .duet-table-minimal {\n th {\n padding: ${L} !important;\n border-bottom: 1px solid ${$};\n\n &:first-child {\n padding-left: 0 !important;\n }\n\n &:last-child {\n padding-right: 0 !important;\n }\n }\n\n &.duet-theme-turva th {\n border-bottom-color: ${D};\n }\n\n tbody th {\n padding-top: calc(${m} * 2) !important;\n border-bottom-color: ${S};\n }\n\n &.duet-theme-turva tbody th {\n border-bottom-color: ${C};\n }\n\n td {\n padding: ${L} !important;\n\n &:first-child {\n padding-left: 0 !important;\n }\n\n &:last-child {\n padding-right: 0 !important;\n }\n }\n\n tbody td {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva tbody td {\n border-bottom-color: ${C};\n }\n\n &.duet-table-flattened {\n tbody:first-of-type th {\n padding-top: 0 !important;\n }\n\n td,\n tbody th {\n border-bottom: 0;\n }\n\n tr {\n padding: ${m} 0 !important;\n }\n\n tbody th {\n padding-top: ${m} !important;\n }\n\n tfoot td {\n margin-bottom: ${z} !important;\n }\n\n tbody:not(:only-of-type) tr:first-child {\n border-bottom: 0;\n }\n }\n}\n\n.duet-table-plain {\n\n &.duet-table-flattened {\n tbody tr {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-theme-turva tbody tr {\n border-bottom-color: ${C};\n }\n }\n}\n\n.duet-table-minimal {\n\n tbody tr,\n tbody tr td {\n vertical-align: top;\n border-bottom: 0 none;\n }\n\n tbody tr:last-of-type,\n tbody tr:last-of-type td {\n border-bottom: 1px solid ${S};\n }\n\n &.duet-table-flattened {\n tbody tr,\n tbody tr td {\n border-bottom: 0 none;\n }\n\n tbody tr td[data-heading]::before {\n display: none;\n }\n\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${C};\n }\n }\n}\n\n.duet-table-fixed {\n\n table {\n table-layout: fixed;\n }\n\n tbody tr,\n tbody tr td,\n tbody tr td:first-child {\n padding: 4px !important;\n vertical-align: text-bottom;\n border-bottom: 0 none;\n }\n\n thead {\n display: none;\n }\n\n tbody tr,\n tbody tr td {\n border-bottom: 0 none;\n }\n\n &:not(.duet-table-flattened) {\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${C};\n }\n }\n}\n.duet-table-scrollable {\n position: relative;\n width: 100%;\n overflow-x: auto;\n background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;\n background-repeat: no-repeat;\n background-attachment: local, local, scroll, scroll;\n background-size: 100px 100%, 100px 100%, 12px 100%, 12px 100%;\n}\n\n.duet-table-selected-column {\n background: rgba(${Y(F)}, 0.08);\n\n .duet-theme-turva & {\n background: rgba(${Y(D)}, 0.08);\n }\n}\n\n.duet-table-sortable {\n tbody tr td:first-child,\n thead tr th:first-child {\n padding: ${m};\n }\n\n &:not(.duet-table-flattened) {\n tfoot {\n border-top: 1px solid ${S};\n }\n\n &.duet-theme-turva tfoot {\n border-top-color: ${C};\n }\n }\n}\n\n\n.duet-table-actions {\n table {\n table-layout: auto;\n }\n\n thead {\n & th:last-child {\n width: 1px;\n white-space: nowrap;\n }\n }\n}\n\n.duet-editable-table-table.duet-table-flattened {\n tr {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n grid-auto-rows: auto;\n gap: 10px;\n\n &.duet-table-action-row td:last-child::before {\n padding: 0;\n content: "";\n }\n }\n\n td {\n grid-column: 1 / 2;\n\n &:first-child {\n grid-row: 1;\n grid-column: 1;\n }\n\n &:last-child {\n grid-row: 1;\n grid-column: 2;\n }\n }\n\n duet-table.duet-theme-turva2 {\n &.duet-theme-turva td {\n color: $color-turva2-gray-900;\n }\n\n &.duet-theme-turva tbody th {\n color: $color-turva2-gray-900;\n }\n\n &.duet-table-striped.duet-theme-turva.duet-table-sticky thead {\n th,\n td {\n border-bottom-color: $color-turva-nude-100;\n }\n }\n\n &.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd) {\n background: rgba($color-turva2-gray-900, 0.04);\n }\n\n &.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even) {\n background: rgba($color-turva2-gray-900, 0.04);\n }\n\n &.duet-table-striped.duet-theme-turva tfoot td {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-plain.duet-theme-turva tbody {\n th,\n td {\n border-bottom-color: $color-turva-nude-100;\n }\n }\n\n &.duet-table-plain.duet-theme-turva tbody td {\n border-bottom-color: $color-turva-nude-100;\n }\n\n &.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr {\n border-bottom-color: $color-turva-nude-100;\n }\n\n &.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-fixed.duet-theme-turva:not(.duet-table-flattened) tfoot {\n border-top-color: $color-turva-nude-100;\n }\n\n &.duet-table-sortable.duet-theme-turva:not(.duet-table-flattened) tfoot {\n border-top-color: $color-turva-nude-100;\n }\n }\n}\n`.replace(/[\n\r\t]/gm,""),O={none:0,"with-links":16*parseFloat(_),"without-links":16*parseFloat(R)},V=class{constructor(t){e(this,t),this.headingSelector="thead tr > :not(*.duet-editable-table-actions-menu)",this.matchesBreakpoint=!0,this.language=h(),this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.hideHeadVisually=!1,this.handleMediaQueryChange=t=>{this.matchesBreakpoint=P.includes(this.breakpoint)?!t.matches:t.matches}}watchLanguageStateHandler(t,e){t!==e&&setTimeout((()=>this.copyHeadingsToCells()),50)}connectedCallback(){!function(t){const e=t.getRootNode();if(e instanceof ShadowRoot){const t=new CSSStyleSheet;t.replace(N).then((()=>{e.adoptedStyleSheets.push(t)}))}else{if(document.querySelector("style#duet-table-styles"))return;const t=document.createElement("style");t.id="duet-table-styles",t.innerHTML=N,document.head.append(t)}}(this.element),this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":U[this.breakpoint]),this.mq.addEventListener("change",r(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>r(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(o(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=O[this.stickyDistance];this.element.querySelectorAll(this.headingSelector).forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords(),u(this)}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0,c(this)}copyHeadingsToCells(){if(["none","none-scrollable"].includes(this.breakpoint))return;const t=this.element.querySelectorAll(this.headingSelector),e=this.element.querySelectorAll("tbody tr"),i=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{if(i[e]){const a=t.querySelector(".duet-table-cell-heading");if(!a||a.textContent!==i[e]){null==a||a.remove();const n=document.createElement("span");n.textContent=i[e],n.classList.add("duet-table-cell-heading"),n.setAttribute("aria-hidden","true"),n.inert=!0,t.prepend(n)}}}))}))}render(){return t(a,{key:"fda81d8548a6180298f6e227832f9c7105a68736",class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme,"duet-table-hide-head-visually":this.hideHeadVisually}},t("slot",{key:"ac3ae69d0a1141e1feacd1bdf8fb3ba9e9e89080"}))}get element(){return n(this)}static get watchers(){return{language:["watchLanguageStateHandler"]}}};var X=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-203",system_message:"Files to upload exceed total byte size limit",message:{fi:"Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",sv:"Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",en:"You tried to add files that would exceed the maximum combined size."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}},{type:"duet-upload-302",system_message:"Files to upload exceeds limits",message:{fi:"Et voi lähettää enempää kuin enimmäismäärän liitteitä.",sv:"Du kan inte ladda upp fler än det maximala antalet bilagor.",en:"You can't upload more than maximum number of attachments."}}];const J={fi:"Liiteluettelo",sv:"Lista över bilagor",en:"Attachments list"},K=({label:e,categoryLabel:i})=>t("div",{class:"items-header",tabindex:"-1","aria-label":p(J)},i&&t("duet-heading",{class:"category-header",border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(i)),t("duet-heading",{class:{"filename-header":!0,"no-category":!i},border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(e))),G=(t,e,i)=>{const{allowedMimetypes:a,allowedExtensions:n,maxBytes:s}=e;let o=!1,d=H("default",i);if(t){const{name:e,type:r,size:l}=t,h=((t,e)=>{if(!e||!t)return!0;const i=e.split(",");let a=!1;return i.forEach((e=>{const i=e.split("/"),n=t.split("/");i[0]!==n[0]||i[1]!==n[1]&&"*"!==i[1]||(a=!0)})),a})(r,a),u="all"===n||""===n||" "===n||void 0===n||((t,e)=>{if(!e)return!0;const i=t.split(".");return e.split(",").includes(i[i.length-1])})(e.toLowerCase(),n),c=((t,e)=>!e||!t||e>=t)(l,s);h||(d=H("duet-upload-101",i)),u||(d=H("duet-upload-100",i)),c||(d=H("duet-upload-201",i)),o=h&&u&&c}else o=!1;return{valid:o,errorMessage:o?void 0:p(d.message),errorSystem:o?void 0:d.system_message,errorType:o?void 0:d.type}},Q=({payload:t,options:e,onFailure:i,onSuccess:a,onProgress:n})=>{const{type:s="POST",xhr:o,uri:d,argument:r=null,headers:l=null}=e;o.open(s,`${d}${r||""}`,!0);const{data:h,name:u}=t;return l&&Object.keys(l).forEach((t=>{o.setRequestHeader(t,l[t])})),"POST"===s&&(o.onreadystatechange=()=>{o.readyState===XMLHttpRequest.DONE&&o.status>=200&&o.status<300&&a(o,u,o.status),o.readyState===XMLHttpRequest.DONE&&o.status>=300&&o.status<999&&i(o,u,o.status)},n(u)),o.send(h),o},Z=class{constructor(a){e(this,a),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetFocus=i(this,"duetFocus",7),this.duetReady=i(this,"duetReady",7),this.duetDone=i(this,"duetDone",3),this.duetState=i(this,"duetState",3),this.duetDelete=i(this,"duetDelete",3),this.duetCancel=i(this,"duetCancel",3),this.duetProgress=i(this,"duetProgress",3),this.duetUpload=i(this,"duetUpload",3),this.linkClick=i(this,"linkClick",3),this.tick=Date.now(),this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Delete the file",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.showLinks=!1,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded}, yhteensä lähetettävänä {filesTotal}.",inProgressWithErrors:"Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",done:"Lähetys valmis, {filesTotal} lisätty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",files:"tiedostoa",file:"tiedosto"},sv:{inProgress:"Laddar upp {filesUploaded} av {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Uppladdningen slutförd, {filesTotal} har lagts till",doneWithErrors:"Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Uploading {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"Upload completed, {filesTotal} added successfully",doneWithErrors:"Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",files:"files",file:"file"}},this.statusMessageLabel=p(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=p(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=p(this.labelDefaults),this.descriptionDefaults={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}.",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}.",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."},this.description=p(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=p(this.fileListEmptyDefaults),this.error="",this.errorCodes=X,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="",this.multiple=!0,this.limitSelection=!1,this.hideCancelButton=!1,this.captionOnBottom=!1,this.showUploadedItemsHeader=!1,this.uploadedItemsHeaderLabel={fi:"Ladattu tiedosto",sv:"Lägg till en bilaga",en:"Uploaded file"},this.headerHeadingLevel="h3",this.hideHeader=!1,this.emitEvent=!1,this.actionButtonTitles={cancel:!1,delete:!1},this.renameDuplicates=!1,this.buttonId=A("DuetButton"),this.labelId=A("DuetLabel"),this.uploadId=A("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.filesToUploadExceedsLimit=!1,this.filesToUploadTotalSizeIsAboveMax=!1,this.internalStatusMessageLabel=void 0,this.itemRefs=new Map,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.groups=[{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}},{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}}],this.kick=r((()=>{this.tick=Date.now()}),30),this.categoryLabel={en:"Category",sv:"Filtyp",fi:"Tiedostotyyppi"},this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:i,id:a,originalEvent:n}=e;switch(i){case"delete":this.onDelete(a,n);break;case"cancel":this.onCancel(a,n)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),i=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==i&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.mapFilesToUploadItems=(e,i,a,n)=>i===this.DefaultGroups.success?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"success",data:e,showLinks:this.showLinks,linkClickEvent:this.emitEvent?this.linkClick:void 0,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.inprogress?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"inprogress",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.pending?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"pending",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.failure?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,n),type:"failure",data:e,showLinks:this.showLinks,errorCodes:this.errorCodes,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,i,a=!0)=>{try{const a=this.files.get(t);a[e]=i,this.files.set(t,a),this.external&&"url"!==e&&this.trackProgress(t,"uploaded"===e)}catch(t){}a&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(i=>{this.updateValueInMap(e,"progress",i),this.onProgress(e,i,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((i=>{i.valid&&!i.deleted?t.push(i):i.valid||i.deleted||e.push(i)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{const{bytesMaxReached:i,fileMaxReached:a}=this.validateTotals();i||a?this.kick():(this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault())},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,i)=>{this.updateValueInMap(e,"status",i,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const i=JSON.parse(t.response);this.updateValueInMap(e,"url",i.url)}catch(t){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,i)=>{try{const{error:i}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:i.message,type:i.type},!1)}catch(t){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:i},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",q("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(i+=t.size)})),i>=e))})(0,this.maxBytesTotal),i=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&i++})),i>=e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",q("duet-upload-202",this.errorCodes),!1),i&&t&&this.updateValueInMap(t,"error",q("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=i,{bytesMaxReached:e,fileMaxReached:i}},this.uploadFile=async(t,e=!1,i)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),i&&e.append("key",i),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(e){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of Array.from(this.files.entries()))"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,i]of Array.from(this.files.entries()))if(i.uid===t)return{value:i,key:e};return null},this.handleExternalUploadButton=(t,e)=>{this.externalUploadButton&&(this.externalUploadButton.disabled=!(!t&&!e))},this.onDelete=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:n,fileMaxReached:s}=this.validateTotals();this.handleExternalUploadButton(n,s),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:a},component:"duet-upload"}),this.external||a.pending||this.makeXHRDeleteRequest(a),this.resetFormFields()},this.onCancel=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:n,fileMaxReached:s}=this.validateTotals();if(this.handleExternalUploadButton(n,s),!this.external){const{xhr:t}=a;t&&t.abort()}this.kick(),this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:a},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,i)=>{this.duetChange.emit({originalEvent:i,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=Array.from(this.files.values()),e=[],i=[],a=[],n=[];let s=!1;return t.forEach((t=>{const o=this.getGroupFromItemData(t);t.meta&&t.meta.badges&&(s=!0),o===this.DefaultGroups.success?n.push({uid:t.uid,data:t}):o===this.DefaultGroups.inprogress?e.push({uid:t.uid,data:t}):o===this.DefaultGroups.pending?a.push({uid:t.uid,data:t}):o===this.DefaultGroups.failure?i.push({uid:t.uid,data:t}):t.group&&e.push({uid:t.uid,data:t})})),{pending:a,failure:i,success:n,inprogress:e,hasCategory:s}},this.getActions=(t,e)=>e.filter((e=>e.map.includes(t))),this.renderUploadedItems=()=>{this.itemRefs.clear();const e=this.filterMap(),i=e.hasCategory,a=this.hideCancelButton?this.actions.filter((t=>"cancel"!==t.name)):this.actions,n=this.groups.map((n=>{const o=e[n.id];if(null==o?void 0:o.length)return t(s,null,!this.hideGroups&&t(K,{categoryLabel:i?this.categoryLabel:void 0,label:n.label}),o.map((t=>this.mapFilesToUploadItems(t.data,n.id,i,a))))}));return t(s,null,this.showUploadedItemsHeader&&t(K,{categoryLabel:i?this.categoryLabel:void 0,label:this.uploadedItemsHeaderLabel}),n)}}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?b(this.groups):this.statusMessageLabel,o(this),this.listenForActionEvents(),this.onReady(),this.externalUploadButton=document.querySelector(`#${this.externalUploadButtonId}`),this.processedButtonTitles=W(this.actionButtonTitles)}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){const{bytesMaxReached:e,fileMaxReached:i}=this.validateTotals();if(e||i)return this.handleExternalUploadButton(e,i),void this.kick();this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,i){this.updateValueInMap(t,e,i)}async focusActionButton(t){var e;await(null===(e=this.itemRefs.get(t))||void 0===e?void 0:e.focusActionButton())}render(){const e=this.identifier||this.uploadId,i=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),n=Math.round(this.maxBytes/1024/1024);let o=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return o=o.replace(/{maxbytes}/g,`${n.toString()} MB`),o=o.replace(/{maxbytestotal}/g,`${i.toString()} MB`),o=o.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),this.externalUploadButton&&(this.externalUploadButton.accessibleLabel=`${this.externalUploadButton.innerText}. ${o}`),t(a,{key:"027dcff01c8c5aef8445a0ed996aa5ad3e854b5e",class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{key:"47ed56bd728ba7c100e5d68dd71f727b6e6b2a4d","label-heading-level":this.headerHeadingLevel,"label-hidden":this.hideHeader,label:this.label},t("slot",{key:"63328b6f03549224f711b858cbb5e95665bbdef9",name:"header"}),!this.files.size&&t("duet-empty-state",{key:"88492085957485c18c6ba40b767b87c89ff89fd2",id:this.labelId,part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",icon:"messaging-attachment"},t("duet-paragraph",{key:"2cbe2581b60800f93dafe93e63c67d9ac826737c",margin:"none"},this.fileListEmpty)),!!this.files.size&&t("slot",{key:"2bf2901abf2934c09cfeca8514ddfec09f48e82a",name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{key:"2ac21565dbd47cfbf9954b03e4404c018871c85c",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&&t("slot",{key:"7eb58ca2a63237ee9d22f4ce8136c7bf4bd90f41",name:"filefooter"}),t("slot",{key:"36bc35eb74e40102333469dadda4ac75a77ebd90",name:"uploadfooter"}),this.captionOnBottom&&t("duet-caption",{key:"c6465f63ef97ab6cb78af308da6c4c2528b911e0",margin:"none",size:"small"},t("div",{key:"d189b328248cf862a920d1e542a18546b0b76b94",class:"upload-bottom-caption"},o)),t("slot",{key:"87c92c6cac9b662315a12218e848a54b74094cec",name:"afterfooter"}),!this.hideButton&&t(s,{key:"89ba989869f8286e58f01704ef5339ab23106761"},t("duet-spacer",{key:"5c4dc126f197421e5c62edf556f9ef967df4cf89",size:"large"}),t("duet-button",{key:"67c4e90266831664dbd7aae7fb1792460013cee3",id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel||`${this.buttonLabel}. ${o}`,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel)),(this.fileMaxReached||this.bytesMaxReached||this.filesToUploadExceedsLimit||this.filesToUploadTotalSizeIsAboveMax)&&t(s,{key:"2984ff475257e2ed17b964aa6113e6592809996a"},t("duet-spacer",{key:"3400a7c832dceb6f04c6a1efc9f69bc764004cc7",size:"medium"}),t("duet-alert",{key:"22bb6896cec80f0468dd34bb2ff29d20ccb474a9",part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&q("duet-upload-301",this.errorCodes),this.bytesMaxReached&&q("duet-upload-202",this.errorCodes),this.filesToUploadExceedsLimit&&q("duet-upload-302",this.errorCodes),this.filesToUploadTotalSizeIsAboveMax&&q("duet-upload-203",this.errorCodes))),t("duet-visually-hidden",{key:"f6871858e8e2e13839f9898cf340951616c81595","aria-hidden":"true"},t("input",{key:"faa902cc6425f28c15c89a0f95c1c7ce69ec8b6b",ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple,tabIndex:-1}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,i=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,i)})),e.upload.addEventListener("load",(()=>{this.transferComplete(i)})),e.upload.addEventListener("error",(()=>{this.transferFailed(i)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(i)}));let a={payload:{data:t,name:i},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(a=this.middleware(a)),Q(a)}makeXHRDeleteRequest(t){const{uid:e,item:i}=t,a=new XMLHttpRequest;let n={payload:{data:null,name},options:{type:"DELETE",xhr:a,uri:this.uri,argument:`?key=${e}&name=${i.name}`,headers:{"x-fileuid":e,"x-filename":i.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(n=this.middleware(n)),Q(n)}escapeSpecialCharacters(t){return(t+"").replace(/[\\"'(){}\[\]*?$^+]/g,"\\$&").replace(/\u0000/g,"\\0")}getRenamedFileName(t,e){const i=new RegExp(`${this.escapeSpecialCharacters(t)} \\(\\d+\\).${e}`),a=Array.from(this.files.entries()).map((t=>{const[e,i]=t;return e})).filter((a=>i.test(a)||a===`${t}.${e}`)).sort(((t,e)=>t.split(".").slice(0,-1).join(".")>e.split(".").slice(0,-1).join(".")?1:-1)).pop().split(".").slice(0,-1).join(".");if(a===t)return`${t} (1).${e}`;const n=parseInt(a.split("(").pop().slice(0,-1));return`${t} (${n+1}).${e}`}renameFiles(t){return t.map((t=>{if(this.files.get(t.name)){const e=t.name.split("."),i=e.pop(),a=e.join("."),n=this.getRenamedFileName(a,i);return new File([t],n,{type:t.type,lastModified:t.lastModified})}return t}))}async onChange(t){var e;let i=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(this.filesToUploadExceedsLimit=!1,this.files.size+i.length>this.maxFiles)return this.filesToUploadExceedsLimit=!0,void this.kick();if(this.filesToUploadTotalSizeIsAboveMax=!1,((t,e,i)=>{let a=0;return!!(i&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),e.forEach((t=>{t.size&&(a+=t.size)})),a>=i))})(0,i,this.maxBytesTotal))return this.filesToUploadTotalSizeIsAboveMax=!0,void this.kick();if(i){this.renameDuplicates&&(i=this.renameFiles(i));for(const t of i){const{valid:e,errorMessage:i,errorType:a,errorSystem:n}=G(t,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),s={uid:this.genHashName(),item:t,size:t.size,meta:this.metaData,uploaded:!1,valid:e,error:{type:e?void 0:a,message:e?void 0:i,system_message:e?void 0:n},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(t.name,s),e&&!this.external?await this.uploadFile(s):e&&this.external?(this.updateValueInMap(s.item.name,"pending",!0,!1),this.updateValueInMap(s.item.name,"group","pending",!0)):e||this.updateValueInMap(t.name,"valid",!1,!0),this.kick()}}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return n(this)}static get watchers(){return{valid:["watchValidHandler"]}}};Z.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}::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;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.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}";export{I as duet_editable_table,V as duet_table,Z as duet_upload}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import{r as e,h as t,H as o,g as a}from"./p-
|
|
4
|
+
import{r as e,h as t,H as o,g as a}from"./p-BxH0r0DA.js";import{i as n}from"./p-BcVbsW_2.js";const i=class{constructor(t){e(this,t),this.theme="",this.active=!1,this.open=!1,this.icon=void 0,this.onClick=()=>{this.open=!this.open}}handleFocus(e){e.composedPath().every((e=>e!==this.element))&&(this.open=!1)}componentWillLoad(){n(this),this.element.querySelectorAll("duet-slideout-link").forEach((e=>{e.menuItem=!0}))}async setFocus(e){this.button.focus(e)}render(){return t(o,{key:"c07d09acdc3ae629d1ade84a8f38ba5a4400c93c"},t("div",{key:"5c460268ab843fd63034f39baaabb0217610742e",class:{"duet-slideout-panel-dropdown":!0,"duet-theme-turva":"turva"===this.theme,active:this.open}},t("button",{key:"fda35d3ebe560638a7684ff895a1a07fae2795dc",ref:e=>this.button=e,"aria-haspopup":"menu","aria-controls":"menu","aria-expanded":this.open?"true":"false","aria-current":this.active?"true":"false",id:"button",type:"button",class:{active:this.active,"duet-theme-turva":"turva"===this.theme},onClick:this.onClick},this.icon&&t("duet-icon",{key:"adbef98fc7e1c01c4db93fc890adca55a968c3ed",name:this.icon,size:"small",margin:"none",color:"secondary"}),t("span",{key:"9a9e035c35cfc2bd40ca504dfb755db6598072ab",class:"label"},t("slot",{key:"69b970d13d166d320f423480e93e721a8ca0791a",name:"label"}),t("duet-icon",{key:"48e456eb714c1f276c30d1830c4335a2c78b7674",class:"caret",name:"action-arrow-down-small",margin:"none",size:"xx-small",color:"secondary"}))),t("div",{key:"bb3730e96c82aab35530c476c78880b73ac4c2c2",tabindex:"-1",role:"menu",id:"menu","aria-labelledby":"button",class:{items:!0,hidden:!this.open,"duet-theme-turva":"turva"===this.theme}},t("slot",{key:"206ff67b3dab6d9e5b35814a26e572bca137b925"}))))}get element(){return a(this)}};i.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}:host slot:not([name=label])::slotted(*){position:relative;top:-0.5rem;opacity:0;transition:top 0.3s ease-in, opacity 0.3s ease-in}:host([open]) slot:not([name=label])::slotted(*){top:0;opacity:1}.duet-slideout-panel-dropdown{position:relative;width:100%;height:100%}.duet-slideout-panel-dropdown button{position:relative;display:flex;gap:16px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 0;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1.25rem;font-weight:800;line-height:1.25;color:rgb(8, 42, 77);text-align:center;text-decoration:none;cursor:pointer}.duet-slideout-panel-dropdown button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-slideout-panel-dropdown button:focus,.duet-slideout-panel-dropdown button:focus.duet-theme-turva,.duet-theme-turva2 .duet-slideout-panel-dropdown button:focus,.duet-slideout-panel-dropdown button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-slideout-panel-dropdown button .label{position:relative;display:flex;gap:0.5rem;align-items:center;justify-content:center}.duet-slideout-panel-dropdown button.active .label::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:calc(100% - 18px);height:1px;content:"";background:rgb(0, 119, 179);transform:translateY(1px)}.duet-slideout-panel-dropdown .items{display:flex;visibility:visible;flex-direction:column;align-items:center;justify-content:center;width:100%;max-height:1000px;padding:4px 20px 8px 36px;overflow-y:auto;scrollbar-width:none;transition:max-height 0.3s ease-in, padding-bottom 0.3s ease-in;-ms-overflow-style:none}.duet-slideout-panel-dropdown .items::-webkit-scrollbar{display:none}.duet-slideout-panel-dropdown .items.hidden{visibility:hidden;max-height:0;padding:0;overflow:hidden;transition:max-height 0.3s ease-out, padding-bottom 0.3s ease-out}.duet-slideout-panel-dropdown.duet-theme-turva button{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-slideout-panel-dropdown.duet-theme-turva button.active .label::after{background:rgb(198, 12, 48)}slot{--active-height:1px;--active-translate-y:translateY(1px);font-size:1rem;font-weight:400;color:rgb(8, 42, 77)}.duet-theme-turva slot{color:rgb(23, 28, 58)}slot[name=label]{font-size:1rem;font-weight:600}:host(.duet-theme-turva2) .duet-slideout-panel-dropdown.duet-theme-turva button{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-slideout-panel-dropdown.duet-theme-turva button.active .label::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) slot{color:rgb(23, 42, 59)}';export{i as duet_slideout_panel_dropdown}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import"./p-
|
|
4
|
+
import"./p-BxH0r0DA.js";import{c as t}from"./p-C6E9F6QT.js";const e={fi:"fi-FI",en:"en-GB",us:"en-US",sv:"sv-SE"},n={fi:"€",en:"£",us:"$",sv:"€"},r=["fi","en","sv"],a="fi",o=()=>document.documentElement.lang?document.documentElement.lang.toLowerCase():a,s=(t=o())=>r.includes(t)?t:a,i=(t=o())=>s(t),c=t=>{const r={locale:e[t],money:n[t]};if(r.locale&&r.money)return r;throw new Error(`Locale for "${t}" not found`)},u=e=>{if("string"==typeof e)try{return JSON.parse(t(e))}catch(t){console.log("sanitizeString received a string, that didnt parse to json object",e,t)}return e},l=(t,e)=>{const n=u(t);return e?n[s(e)]:n[i()]},f=(t,e,n=o())=>Intl.NumberFormat(n,{style:"decimal",minimumFractionDigits:null!=e?e:0,maximumFractionDigits:null!=e?e:100}).format(t),m=new Set,d=new WeakMap;new MutationObserver((t=>{let e=a;for(const n of t)if("attributes"===n.type&&"lang"===n.attributeName){e=n.oldValue;break}"false"!==document.documentElement.dataset.duetLangObserve&&m.forEach((t=>{t.language&&(t.language=i()),d.has(t)&&d.get(t).forEach((n=>{t[n.defaults]&&t[n.prop]===t[n.defaults][e]&&(t[n.prop]=l(t[n.defaults]))}))}))})).observe(document.documentElement,{attributeFilter:["lang"],attributeOldValue:!0});const g=(t,e)=>{m.add(t),e&&(Array.isArray(e)||(e=[e]),e.some((e=>!(e.prop in t)||!(e.defaults in t)))&&(console.error("connectLanguageChangeObserver: component must have target.prop and target.defaults properties"),e=e.filter((e=>e.prop in t&&e.defaults in t))),d.set(t,e))},p=t=>{m.delete(t),d.delete(t)};export{i as a,c as b,g as c,p as d,f,l as g,u as s}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import{r as e,h as t,H as r,g as a}from"./p-
|
|
4
|
+
import{r as e,h as t,H as r,g as a}from"./p-BxH0r0DA.js";import{i as o}from"./p-BcVbsW_2.js";import{g as d}from"./p-dX4lCxX-.js";import{g as b}from"./p-D7VOYHjg.js";import"./p-C6E9F6QT.js";import"./p-C-hMrqKD.js";const i=class{constructor(t){e(this,t),this.observers=[],this.breadcrumbsAriaLabel=d({fi:"Murupolku",sv:"Ströbröd",en:"Breadcrumbs"}),this.theme="",this.variation="header",this.color=""}componentWillLoad(){o(this),this.children=Array.from(this.element.children)}connectedCallback(){Array.from(this.element.children).forEach((e=>{const t=new MutationObserver((()=>this.children=Array.from(this.element.children)));t.observe(e,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),this.observers=[...this.observers,t]}))}disconnectedCallback(){this.observers.forEach((e=>e.disconnect())),this.observers=[]}render(){const e=b(this.color);return t(r,{key:"c98b2354a647046cdf36b9fc042a825d59f69016"},t("nav",{key:"e5b3ab730c684343f6f7b551e3a90e4f804c33e4","aria-label":this.breadcrumbsAriaLabel,class:{"duet-breadcrumbs":!0,"duet-theme-turva":"turva"===this.theme,[this.variation]:!0}},t("div",{key:"f31d96c0db9cd1c376cb303d8ecf24327d9c530e",class:"container"},t("div",{key:"94307d00ca67a2caf0783be3dfd2ebe7568dc21f",role:"list",class:"list",style:{color:e}},t("slot",{key:"1a5f46b90a2b35c16992b4af7766bcbd4d7925f2"})),t("div",{key:"15d920594f56343f362d726da3a4a8d87edb10d7",class:"bottom-border bottom-border--container"})),t("div",{key:"7bc1ccc417e8d621909d06bf2933ddd97ee6dbcc",class:"bottom-border bottom-border--nav"})))}get element(){return a(this)}};i.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;display:block;width:100%}::slotted(*){font-weight:400}::slotted(:last-child){font-weight:600}:host([variation=plain]) ::slotted(:last-child){font-weight:400}.duet-breadcrumbs{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-breadcrumbs .container{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1384px;min-height:36px;margin:0 28px 0 20px}.duet-breadcrumbs .list{display:flex;flex-direction:row;flex-wrap:wrap;gap:0;align-items:center;justify-content:flex-start;color:inherit;list-style:none}.duet-breadcrumbs .bottom-border{position:absolute;bottom:0;display:none;width:100%;height:1px}.duet-breadcrumbs.header{color:rgb(8, 42, 77);background:rgb(240, 247, 250)}.duet-breadcrumbs.header .list duet-breadcrumb[href]:hover{color:rgb(0, 75, 129)}.duet-breadcrumbs.header .bottom-border--nav{display:block;background:rgb(212, 223, 229)}.duet-breadcrumbs.header.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(245, 247, 250)}.duet-breadcrumbs.header.duet-theme-turva ol duet-breadcrumb[href]:hover{color:rgb(126, 2, 35)}.duet-breadcrumbs.footer{color:rgb(255, 255, 255);background:rgb(8, 42, 77)}@media (min-width: 64.0625em){.duet-breadcrumbs.footer{justify-content:flex-start}}@media (min-width: 76.25em){.duet-breadcrumbs.footer{justify-content:center}}.duet-breadcrumbs.footer .container{max-width:1110px}@media (min-width: 62em){.duet-breadcrumbs.footer .container{margin:0 72px 0 48px}}.duet-breadcrumbs.footer .list{padding:20px 0}@media (min-width: 62em){.duet-breadcrumbs.footer .list{padding:20px 8px}}.duet-breadcrumbs.footer .list duet-breadcrumb[href]:hover{text-decoration:underline}.duet-breadcrumbs.footer .bottom-border--container{display:block;background:rgba(255, 255, 255, 0.2)}.duet-breadcrumbs.footer.duet-theme-turva{color:rgb(255, 255, 255);background:rgb(198, 12, 48)}.duet-breadcrumbs.plain .container{max-width:none;min-height:auto;margin:0}.duet-breadcrumbs.plain .list{padding:0}.duet-breadcrumbs.plain .bottom-border{display:none}:host(.duet-theme-turva2) .duet-breadcrumbs.duet-theme-turva.header{color:rgb(23, 42, 59);background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-breadcrumbs.duet-theme-turva.header ol duet-breadcrumb[href]:hover{color:rgb(126, 2, 35)}:host(.duet-theme-turva2) .duet-breadcrumbs.duet-theme-turva.footer{background:rgb(230, 23, 64)}';export{i as duet_breadcrumbs}
|