@duetds/components 10.5.0 → 10.7.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 +658 -282
- package/hydrate/index.mjs +658 -282
- package/lib/cjs/{a11y-utils-DaAO4N9d.js → a11y-utils-DmCjy3Q3.js} +1 -1
- package/lib/cjs/{app-globals-CHNvdfQj.js → app-globals-D1tikFob.js} +1 -1
- package/lib/cjs/duet-action-button.cjs.entry.js +6 -6
- package/lib/cjs/duet-alert.cjs.entry.js +4 -4
- package/lib/cjs/duet-badge.cjs.entry.js +7 -7
- package/lib/cjs/duet-banner.cjs.entry.js +17 -18
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +7 -7
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +7 -7
- package/lib/cjs/duet-button_2.cjs.entry.js +8 -8
- package/lib/cjs/duet-callout.cjs.entry.js +5 -5
- package/lib/cjs/duet-caption_4.cjs.entry.js +11 -11
- package/lib/cjs/duet-card.cjs.entry.js +22 -10
- package/lib/cjs/duet-checkbox.cjs.entry.js +3 -3
- package/lib/cjs/duet-checkmark.cjs.entry.js +4 -4
- package/lib/cjs/duet-chip.cjs.entry.js +28 -12
- package/lib/cjs/duet-choice_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-collapsible.cjs.entry.js +4 -4
- package/lib/cjs/duet-combobox.cjs.entry.js +7 -17
- package/lib/cjs/duet-contact-card.cjs.entry.js +18 -7
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +3 -3
- package/lib/cjs/duet-date-picker.cjs.entry.js +127 -14
- package/lib/cjs/duet-divider_2.cjs.entry.js +5 -5
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +15 -15
- package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
- package/lib/cjs/duet-fieldset.cjs.entry.js +6 -6
- package/lib/cjs/duet-file-chooser.cjs.entry.js +2 -2
- package/lib/cjs/duet-footer.cjs.entry.js +5 -5
- package/lib/cjs/duet-grid_2.cjs.entry.js +12 -8
- package/lib/cjs/duet-header_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-hero.cjs.entry.js +27 -21
- package/lib/cjs/duet-icon.cjs.entry.js +7 -7
- package/lib/cjs/duet-indicator.cjs.entry.js +5 -5
- package/lib/cjs/duet-input_2.cjs.entry.js +70 -18
- 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 +5 -5
- package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +7 -7
- package/lib/cjs/duet-menu-bar-item.cjs.entry.js +7 -7
- 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 +11 -11
- package/lib/cjs/duet-nav.cjs.entry.js +3 -3
- package/lib/cjs/duet-notification_2.cjs.entry.js +10 -10
- package/lib/cjs/duet-number-input.cjs.entry.js +9 -9
- package/lib/cjs/duet-overlay.cjs.entry.js +3 -3
- package/lib/cjs/duet-page-heading.cjs.entry.js +6 -6
- package/lib/cjs/duet-pagination_2.cjs.entry.js +19 -19
- package/lib/cjs/duet-panel.cjs.entry.js +4 -4
- package/lib/cjs/duet-phone-input.cjs.entry.js +11 -6
- package/lib/cjs/duet-popup-menu_2.cjs.entry.js +10 -10
- package/lib/cjs/duet-progress.cjs.entry.js +3 -3
- package/lib/cjs/duet-promo-card.cjs.entry.js +20 -8
- package/lib/cjs/duet-radio_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-range-slider.cjs.entry.js +8 -8
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +18 -18
- 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 +6 -6
- package/lib/cjs/duet-slideout-lang.cjs.entry.js +4 -4
- package/lib/cjs/duet-slideout-link.cjs.entry.js +7 -7
- 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 +20 -14
- package/lib/cjs/duet-status-icon.cjs.entry.js +3 -3
- package/lib/cjs/duet-step_2.cjs.entry.js +7 -7
- package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +5 -5
- 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 +4 -4
- package/lib/cjs/duet-submenu-bar.cjs.entry.js +7 -7
- package/lib/cjs/duet-teaser.cjs.entry.js +110 -0
- package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
- package/lib/cjs/duet-toggle.cjs.entry.js +9 -9
- package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +5 -5
- package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +7 -7
- package/lib/cjs/duet-toolbar-item.cjs.entry.js +8 -8
- 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 +10 -10
- package/lib/cjs/duet-tooltip.cjs.entry.js +5 -5
- package/lib/cjs/duet-tray.cjs.entry.js +7 -7
- 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-Dkf_MfrJ.js → errorcodes.utils-Di-nO8ua.js} +1 -1
- package/lib/cjs/{focus-utils-BuGg0Oha.js → focus-utils-uEO1pi2O.js} +1 -1
- package/lib/cjs/{index-ZxE6MB5V.js → index-BGRMvA4R.js} +13 -9
- package/lib/cjs/{keyboard-utils-D9UlHbik.js → keyboard-utils-DibQafwg.js} +2 -0
- package/lib/cjs/{label-CpPOBfjS.js → label-CwgdRt0Q.js} +1 -1
- package/lib/cjs/{language-utils-C7Z0KYg-.js → language-utils-CrB5zNlc.js} +1 -1
- package/lib/cjs/loader.cjs.js +3 -3
- package/lib/cjs/picture-utils-CZhgDlXJ.js +20 -0
- package/lib/cjs/{slot-utils-BXdHT3A1.js → slot-utils-4v5bqyQh.js} +1 -1
- package/lib/cjs/{themeable-component-CIDaln0Z.js → themeable-component-I4SEm6nQ.js} +1 -1
- package/lib/cjs/{token-utils-DY3-olMV.js → token-utils-ZISdNshf.js} +1 -1
- package/lib/cjs/{tokens.module-CTbvyezn.js → tokens.module-CGRpZaa1.js} +2 -1
- package/lib/collection/collection-manifest.json +1 -0
- package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
- package/lib/collection/components/duet-alert/duet-alert.js +1 -1
- package/lib/collection/components/duet-badge/duet-badge.js +2 -2
- package/lib/collection/components/duet-banner/duet-banner.css +12 -0
- package/lib/collection/components/duet-banner/duet-banner.js +51 -7
- 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-button/duet-button.js +8 -8
- package/lib/collection/components/duet-callout/duet-callout.js +2 -2
- package/lib/collection/components/duet-caption/duet-caption.js +1 -1
- package/lib/collection/components/duet-card/duet-card.css +3 -0
- package/lib/collection/components/duet-card/duet-card.js +63 -7
- package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
- package/lib/collection/components/duet-chip/duet-chip.js +53 -17
- package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
- package/lib/collection/components/duet-choice/duet-choice.js +3 -3
- package/lib/collection/components/duet-choice-group/duet-choice-group.js +2 -2
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
- package/lib/collection/components/duet-combobox/duet-combobox.js +4 -16
- package/lib/collection/components/duet-contact-card/duet-contact-card.css +3 -0
- package/lib/collection/components/duet-contact-card/duet-contact-card.js +58 -2
- package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
- package/lib/collection/components/duet-date-picker/date-picker-month.js +4 -2
- package/lib/collection/components/duet-date-picker/date-utils.js +7 -0
- package/lib/collection/components/duet-date-picker/disallowed-days.js +23 -0
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +100 -10
- package/lib/collection/components/duet-date-picker/finnish-bank-holidays.js +66 -0
- package/lib/collection/components/duet-divider/duet-divider.js +1 -1
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
- package/lib/collection/components/duet-empty-state/duet-empty-state.js +3 -3
- 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 +7 -7
- package/lib/collection/components/duet-grid/duet-grid.css +22 -0
- package/lib/collection/components/duet-grid/duet-grid.js +17 -8
- package/lib/collection/components/duet-grid-item/duet-grid-item.js +2 -2
- package/lib/collection/components/duet-header/duet-header.js +15 -15
- package/lib/collection/components/duet-heading/duet-heading.js +1 -1
- package/lib/collection/components/duet-hero/duet-hero.css +235 -144
- package/lib/collection/components/duet-hero/duet-hero.js +72 -21
- package/lib/collection/components/duet-icon/duet-icon.js +3 -3
- package/lib/collection/components/duet-indicator/duet-indicator.js +3 -3
- package/lib/collection/components/duet-input/duet-input.js +73 -20
- package/lib/collection/components/duet-label/duet-label.js +2 -2
- package/lib/collection/components/duet-layout/duet-layout.js +6 -6
- package/lib/collection/components/duet-link/duet-link.js +2 -2
- package/lib/collection/components/duet-list/duet-list.js +4 -4
- package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
- package/lib/collection/components/duet-logo/duet-logo.js +2 -2
- package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +4 -4
- 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 +11 -11
- package/lib/collection/components/duet-multiselect/duet-multiselect.js +11 -11
- 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 +4 -4
- package/lib/collection/components/duet-number-input/duet-number-input.js +8 -8
- package/lib/collection/components/duet-overlay/duet-overlay.js +2 -2
- package/lib/collection/components/duet-page-heading/duet-page-heading.js +3 -3
- package/lib/collection/components/duet-pagination/duet-pagination.js +13 -13
- package/lib/collection/components/duet-panel/duet-panel.js +3 -3
- package/lib/collection/components/duet-paragraph/duet-paragraph.js +5 -5
- package/lib/collection/components/duet-phone-input/duet-phone-input.js +30 -5
- package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +1 -1
- package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +4 -4
- package/lib/collection/components/duet-promo-card/duet-promo-card.css +4 -0
- package/lib/collection/components/duet-promo-card/duet-promo-card.js +58 -2
- package/lib/collection/components/duet-radio/duet-radio.js +6 -6
- package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
- package/lib/collection/components/duet-range-slider/duet-range-slider.js +4 -4
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +3 -3
- 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 +10 -10
- 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 +3 -3
- package/lib/collection/components/duet-slideout/duet-slideout.js +12 -6
- 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 +3 -3
- package/lib/collection/components/duet-spinner/duet-spinner.js +2 -2
- package/lib/collection/components/duet-status-icon/duet-status-icon.js +2 -2
- package/lib/collection/components/duet-step/duet-step.js +4 -4
- package/lib/collection/components/duet-stepper/duet-stepper.js +2 -2
- 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 +9 -9
- package/lib/collection/components/duet-table/duet-table-styles.js +5 -5
- package/lib/collection/components/duet-table/duet-table.js +2 -2
- package/lib/collection/components/duet-teaser/duet-teaser.css +127 -0
- package/lib/collection/components/duet-teaser/duet-teaser.js +462 -0
- package/lib/collection/components/duet-textarea/duet-textarea.js +7 -7
- package/lib/collection/components/duet-toggle/duet-toggle.js +4 -4
- 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-tooltip/duet-tooltip.js +1 -1
- package/lib/collection/components/duet-tray/duet-tray.js +2 -2
- package/lib/collection/components/duet-upload/duet-upload.js +16 -16
- 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 +4 -4
- package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
- package/lib/collection/utils/keyboard-utils.js +1 -0
- package/lib/collection/utils/picture-utils.js +6 -1
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/{p-61ec0e1c.entry.js → p-017873ec.entry.js} +1 -1
- package/lib/duet/{p-b1326cbb.entry.js → p-047af1e2.entry.js} +1 -1
- package/lib/duet/{p-516397ba.entry.js → p-058fcc72.entry.js} +1 -1
- package/lib/duet/p-05a6360b.entry.js +4 -0
- package/lib/duet/p-05b5ef84.entry.js +4 -0
- package/lib/duet/{p-6ef683d5.entry.js → p-07d43c60.entry.js} +1 -1
- package/lib/duet/{p-52beb436.entry.js → p-0ab559fb.entry.js} +1 -1
- package/lib/duet/{p-fe829b53.entry.js → p-0acf9bcf.entry.js} +1 -1
- package/lib/duet/{p-d3baa815.entry.js → p-0c42cc61.entry.js} +1 -1
- package/lib/duet/{p-443af533.entry.js → p-0df7094e.entry.js} +1 -1
- package/lib/duet/p-10baba94.entry.js +4 -0
- package/lib/duet/{p-30108edc.entry.js → p-1358a396.entry.js} +1 -1
- package/lib/duet/{p-70961edb.entry.js → p-1498e4a8.entry.js} +1 -1
- package/lib/duet/p-16d5dd2c.entry.js +4 -0
- package/lib/duet/p-1ec31f22.entry.js +4 -0
- package/lib/duet/{p-d6f0afa5.entry.js → p-2013545d.entry.js} +1 -1
- package/lib/duet/p-2265c46a.entry.js +4 -0
- package/lib/duet/{p-f040706c.entry.js → p-2394b3cd.entry.js} +1 -1
- package/lib/duet/{p-d779fe42.entry.js → p-2b17c517.entry.js} +1 -1
- package/lib/duet/{p-c54be349.entry.js → p-2f0f3a4a.entry.js} +1 -1
- package/lib/duet/{p-a9104184.entry.js → p-3ce04abc.entry.js} +1 -1
- package/lib/duet/{p-dedf6a32.entry.js → p-420df0aa.entry.js} +1 -1
- package/lib/duet/{p-c216e746.entry.js → p-430fad4e.entry.js} +1 -1
- package/lib/duet/p-453001ea.entry.js +4 -0
- package/lib/duet/{p-fa13ffe9.entry.js → p-4695398d.entry.js} +1 -1
- package/lib/duet/p-4bc7198d.entry.js +4 -0
- package/lib/duet/p-4e028274.entry.js +4 -0
- package/lib/duet/{p-8b0dfbd7.entry.js → p-5be103d0.entry.js} +1 -1
- package/lib/duet/{p-407f7f03.entry.js → p-5e5b6dc7.entry.js} +1 -1
- package/lib/duet/{p-42ec7305.entry.js → p-5fc88879.entry.js} +1 -1
- package/lib/duet/{p-e08dce92.entry.js → p-6865e880.entry.js} +1 -1
- package/lib/duet/{p-cb6c4158.entry.js → p-68a9ffb5.entry.js} +1 -1
- package/lib/duet/{p-b747f6e9.entry.js → p-69bcb076.entry.js} +1 -1
- package/lib/duet/p-71da8fbe.entry.js +4 -0
- package/lib/duet/{p-20a8ef81.entry.js → p-76e2c659.entry.js} +1 -1
- package/lib/duet/{p-74aac967.entry.js → p-7f5387dd.entry.js} +1 -1
- package/lib/duet/{p-110c7572.entry.js → p-84ed366e.entry.js} +1 -1
- package/lib/duet/{p-a8876b3d.entry.js → p-868647de.entry.js} +1 -1
- package/lib/duet/{p-a483117e.entry.js → p-8ad4bb4c.entry.js} +1 -1
- package/lib/duet/{p-3690576a.entry.js → p-8b9ffff4.entry.js} +1 -1
- package/lib/duet/{p-461d4089.entry.js → p-8da66626.entry.js} +1 -1
- package/lib/duet/{p-9ae7aaef.entry.js → p-8ea85c31.entry.js} +1 -1
- package/lib/duet/p-940a87e7.entry.js +4 -0
- package/lib/duet/{p-268b3066.entry.js → p-99550717.entry.js} +1 -1
- package/lib/duet/{p-8ace1eb4.entry.js → p-9987420d.entry.js} +1 -1
- package/lib/duet/{p-833802f9.entry.js → p-9d41df85.entry.js} +1 -1
- package/lib/duet/{p-3f7afd87.entry.js → p-9dee0205.entry.js} +1 -1
- package/lib/duet/{p-CFqvB5PA.js → p-B0XOGsB6.js} +1 -1
- package/lib/duet/p-B44ykle6.js +4 -0
- package/lib/duet/{p-R3pTP2Oy.js → p-B5SMAn1G.js} +1 -1
- package/lib/duet/p-BAiGBGTO.js +4 -0
- package/lib/duet/p-BWz_ChlU.js +4 -0
- package/lib/duet/p-BaefVzkx.js +4 -0
- package/lib/duet/{p-B8-N_qjs.js → p-Bnup2-sN.js} +1 -1
- package/lib/duet/p-C6rGA5IU.js +4 -0
- package/lib/duet/p-D4MpGrUR.js +5 -0
- package/lib/duet/p-DSNAI2Lx.js +4 -0
- package/lib/duet/{p-D2ly4TZR.js → p-DYmL1tSl.js} +1 -1
- package/lib/duet/{p-C5Yfx2kd.js → p-DtprEjjN.js} +1 -1
- package/lib/duet/{p-38973524.entry.js → p-a2106abd.entry.js} +1 -1
- package/lib/duet/p-a2a2f775.entry.js +4 -0
- package/lib/duet/{p-3277233e.entry.js → p-a2f7ef35.entry.js} +1 -1
- package/lib/duet/{p-829db926.entry.js → p-a62e6d8d.entry.js} +1 -1
- package/lib/duet/{p-40fa7371.entry.js → p-a6dc8c7d.entry.js} +1 -1
- package/lib/duet/{p-02d8e844.entry.js → p-a944ffff.entry.js} +1 -1
- package/lib/duet/{p-4b7f1244.entry.js → p-aebcf484.entry.js} +1 -1
- package/lib/duet/{p-bdbf0fae.entry.js → p-b2f0905a.entry.js} +1 -1
- package/lib/duet/p-b3a7ef62.entry.js +4 -0
- package/lib/duet/{p-70612314.entry.js → p-b4a1c719.entry.js} +1 -1
- package/lib/duet/p-b5204ec2.entry.js +4 -0
- package/lib/duet/{p-8012c7bc.entry.js → p-b58cfa18.entry.js} +1 -1
- package/lib/duet/{p-2dd7d75e.entry.js → p-b69946d4.entry.js} +1 -1
- package/lib/duet/{p-317e81f3.entry.js → p-b7351bfd.entry.js} +1 -1
- package/lib/duet/{p-3b2fba0f.entry.js → p-b7bb7472.entry.js} +1 -1
- package/lib/duet/{p-d3b5c997.entry.js → p-b9e97305.entry.js} +1 -1
- package/lib/duet/p-bb7fa0cf.entry.js +4 -0
- package/lib/duet/p-bef7eed7.entry.js +4 -0
- package/lib/duet/p-bffae8f6.entry.js +4 -0
- package/lib/duet/{p-c1afac0d.entry.js → p-c26e2123.entry.js} +1 -1
- package/lib/duet/{p-e7f2359a.entry.js → p-c49a72ad.entry.js} +1 -1
- package/lib/duet/{p-1da7703d.entry.js → p-c5c63d0f.entry.js} +1 -1
- package/lib/duet/{p-43e076b5.entry.js → p-c9a12663.entry.js} +1 -1
- package/lib/duet/{p-a5177d32.entry.js → p-ccaf5c28.entry.js} +1 -1
- package/lib/duet/{p-7fd39204.entry.js → p-d78923f9.entry.js} +1 -1
- package/lib/duet/p-d8383f1a.entry.js +4 -0
- package/lib/duet/{p-3f35fce3.entry.js → p-e3d91f53.entry.js} +1 -1
- package/lib/duet/p-e78af675.entry.js +4 -0
- package/lib/duet/{p-9e1a59d1.entry.js → p-e9a7215b.entry.js} +1 -1
- package/lib/duet/p-ebe55a34.entry.js +4 -0
- package/lib/duet/{p-efa4eecc.entry.js → p-ef340dc6.entry.js} +1 -1
- package/lib/duet/{p-317a1fc0.entry.js → p-f17438c7.entry.js} +1 -1
- package/lib/duet/{p-7353ee4c.entry.js → p-f264879d.entry.js} +1 -1
- package/lib/duet/p-f61ebeb1.entry.js +4 -0
- package/lib/duet/p-f647f09e.entry.js +4 -0
- package/lib/duet/p-f89da74c.entry.js +4 -0
- package/lib/duet/{p-2f8a47e2.entry.js → p-f959ca52.entry.js} +1 -1
- package/lib/duet/{p-19863cdf.entry.js → p-fb0f6212.entry.js} +1 -1
- package/lib/duet/p-fb59f80d.entry.js +4 -0
- package/lib/duet/{p-7eea47d5.entry.js → p-feae1702.entry.js} +1 -1
- package/lib/duet/p-kkZE1C6Z.js +4 -0
- package/lib/esm/{a11y-utils-ChN5Nhxh.js → a11y-utils-DZqe1lDK.js} +1 -1
- package/lib/esm/{app-globals-4kCk2rkO.js → app-globals-Byl9AdI1.js} +1 -1
- package/lib/esm/duet-action-button.entry.js +6 -6
- package/lib/esm/duet-alert.entry.js +4 -4
- package/lib/esm/duet-badge.entry.js +7 -7
- package/lib/esm/duet-banner.entry.js +17 -18
- package/lib/esm/duet-breadcrumb.entry.js +7 -7
- package/lib/esm/duet-breadcrumbs.entry.js +7 -7
- package/lib/esm/duet-button_2.entry.js +8 -8
- package/lib/esm/duet-callout.entry.js +5 -5
- package/lib/esm/duet-caption_4.entry.js +11 -11
- package/lib/esm/duet-card.entry.js +23 -11
- package/lib/esm/duet-checkbox.entry.js +3 -3
- package/lib/esm/duet-checkmark.entry.js +4 -4
- package/lib/esm/duet-chip.entry.js +28 -12
- package/lib/esm/duet-choice_2.entry.js +7 -7
- package/lib/esm/duet-collapsible.entry.js +4 -4
- package/lib/esm/duet-combobox.entry.js +7 -17
- package/lib/esm/duet-contact-card.entry.js +18 -7
- package/lib/esm/duet-cookie-consent.entry.js +3 -3
- package/lib/esm/duet-date-picker.entry.js +127 -14
- package/lib/esm/duet-divider_2.entry.js +5 -5
- package/lib/esm/duet-editable-table_3.entry.js +15 -15
- package/lib/esm/duet-empty-state.entry.js +2 -2
- package/lib/esm/duet-fieldset.entry.js +6 -6
- package/lib/esm/duet-file-chooser.entry.js +2 -2
- package/lib/esm/duet-footer.entry.js +5 -5
- package/lib/esm/duet-grid_2.entry.js +12 -8
- package/lib/esm/duet-header_2.entry.js +7 -7
- package/lib/esm/duet-hero.entry.js +27 -21
- package/lib/esm/duet-icon.entry.js +7 -7
- package/lib/esm/duet-indicator.entry.js +5 -5
- package/lib/esm/duet-input_2.entry.js +70 -18
- 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 +5 -5
- package/lib/esm/duet-menu-bar-dropdown.entry.js +7 -7
- package/lib/esm/duet-menu-bar-item.entry.js +7 -7
- 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 +11 -11
- package/lib/esm/duet-nav.entry.js +3 -3
- package/lib/esm/duet-notification_2.entry.js +10 -10
- package/lib/esm/duet-number-input.entry.js +9 -9
- package/lib/esm/duet-overlay.entry.js +3 -3
- package/lib/esm/duet-page-heading.entry.js +6 -6
- package/lib/esm/duet-pagination_2.entry.js +19 -19
- package/lib/esm/duet-panel.entry.js +4 -4
- package/lib/esm/duet-phone-input.entry.js +11 -6
- package/lib/esm/duet-popup-menu_2.entry.js +10 -10
- package/lib/esm/duet-progress.entry.js +3 -3
- package/lib/esm/duet-promo-card.entry.js +20 -8
- package/lib/esm/duet-radio_2.entry.js +7 -7
- package/lib/esm/duet-range-slider.entry.js +8 -8
- package/lib/esm/duet-scrollable_3.entry.js +18 -18
- 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 +6 -6
- package/lib/esm/duet-slideout-lang.entry.js +4 -4
- package/lib/esm/duet-slideout-link.entry.js +7 -7
- 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 +20 -14
- package/lib/esm/duet-status-icon.entry.js +3 -3
- package/lib/esm/duet-step_2.entry.js +7 -7
- package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +5 -5
- 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 +4 -4
- package/lib/esm/duet-submenu-bar.entry.js +7 -7
- package/lib/esm/duet-teaser.entry.js +108 -0
- package/lib/esm/duet-textarea.entry.js +8 -8
- package/lib/esm/duet-toggle.entry.js +9 -9
- package/lib/esm/duet-toolbar-dropdown-link.entry.js +5 -5
- package/lib/esm/duet-toolbar-dropdown.entry.js +7 -7
- package/lib/esm/duet-toolbar-item.entry.js +8 -8
- 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 +10 -10
- package/lib/esm/duet-tooltip.entry.js +5 -5
- package/lib/esm/duet-tray.entry.js +7 -7
- 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-DuFCu_27.js → errorcodes.utils-KA3z1KuW.js} +1 -1
- package/lib/esm/{focus-utils-CFswdkeD.js → focus-utils-id9x3opi.js} +1 -1
- package/lib/esm/{index-B2cboDWM.js → index-D4MpGrUR.js} +13 -9
- package/lib/esm/{keyboard-utils-Db8rvjPI.js → keyboard-utils-BaefVzkx.js} +2 -1
- package/lib/esm/{label-CJxIWUOT.js → label-Caev3m-F.js} +1 -1
- package/lib/esm/{language-utils-C4M4ASkT.js → language-utils-DTyUbpD-.js} +1 -1
- package/lib/esm/loader.js +4 -4
- package/lib/esm/picture-utils-4PMNZDR2.js +18 -0
- package/lib/esm/{slot-utils--sNK1DNn.js → slot-utils-BhEk4zKY.js} +1 -1
- package/lib/esm/{themeable-component-BBi3552X.js → themeable-component-B_d7Klmd.js} +1 -1
- package/lib/esm/{token-utils-B0KAgyj_.js → token-utils-BILzD7LX.js} +1 -1
- package/lib/esm/{tokens.module-DEzE2U5T.js → tokens.module-kkZE1C6Z.js} +1 -1
- package/lib/types/components/duet-banner/duet-banner.d.ts +10 -1
- package/lib/types/components/duet-button/duet-button.d.ts +1 -1
- package/lib/types/components/duet-card/duet-card.d.ts +10 -0
- package/lib/types/components/duet-chip/duet-chip.d.ts +15 -8
- package/lib/types/components/duet-combobox/duet-combobox.d.ts +0 -1
- package/lib/types/components/duet-contact-card/duet-contact-card.d.ts +10 -0
- package/lib/types/components/duet-date-picker/date-picker-month.d.ts +3 -0
- package/lib/types/components/duet-date-picker/date-utils.d.ts +4 -0
- package/lib/types/components/duet-date-picker/disallowed-days.d.ts +9 -0
- package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +14 -0
- package/lib/types/components/duet-date-picker/finnish-bank-holidays.d.ts +11 -0
- package/lib/types/components/duet-grid/duet-grid.d.ts +2 -1
- package/lib/types/components/duet-hero/duet-hero.d.ts +10 -0
- package/lib/types/components/duet-input/duet-input.d.ts +11 -0
- package/lib/types/components/duet-phone-input/duet-phone-input.d.ts +5 -0
- package/lib/types/components/duet-promo-card/duet-promo-card.d.ts +11 -0
- package/lib/types/components/duet-teaser/duet-teaser.d.ts +93 -0
- package/lib/types/components.d.ts +291 -14
- package/lib/types/utils/keyboard-utils.d.ts +1 -0
- package/lib/types/utils/picture-utils.d.ts +4 -0
- package/package.json +5 -5
- package/lib/duet/p-06297bd8.entry.js +0 -4
- package/lib/duet/p-0c04f9f5.entry.js +0 -4
- package/lib/duet/p-18a8ea12.entry.js +0 -4
- package/lib/duet/p-1bca9931.entry.js +0 -4
- package/lib/duet/p-3f3c6e64.entry.js +0 -4
- package/lib/duet/p-4af6a8ed.entry.js +0 -4
- package/lib/duet/p-5284c707.entry.js +0 -4
- package/lib/duet/p-5c9f443c.entry.js +0 -4
- package/lib/duet/p-5f5f72d4.entry.js +0 -4
- package/lib/duet/p-5lFzA17H.js +0 -4
- package/lib/duet/p-6b469225.entry.js +0 -4
- package/lib/duet/p-7294c37d.entry.js +0 -4
- package/lib/duet/p-72b504ef.entry.js +0 -4
- package/lib/duet/p-734249e0.entry.js +0 -4
- package/lib/duet/p-7c08fd87.entry.js +0 -4
- package/lib/duet/p-83238bf3.entry.js +0 -4
- package/lib/duet/p-86ffd3cb.entry.js +0 -4
- package/lib/duet/p-871620d3.entry.js +0 -4
- package/lib/duet/p-93ff8fe4.entry.js +0 -4
- package/lib/duet/p-9c9811ba.entry.js +0 -4
- package/lib/duet/p-B2cboDWM.js +0 -5
- package/lib/duet/p-BzYmwX5_.js +0 -4
- package/lib/duet/p-Cg4m_WHe.js +0 -4
- package/lib/duet/p-DEzE2U5T.js +0 -4
- package/lib/duet/p-Db8rvjPI.js +0 -4
- package/lib/duet/p-a068c086.entry.js +0 -4
- package/lib/duet/p-c2026c6b.entry.js +0 -4
- package/lib/duet/p-cbcee3e2.entry.js +0 -4
- package/lib/duet/p-d5f90dbc.entry.js +0 -4
- package/lib/duet/p-s8EL6NG5.js +0 -4
|
@@ -6,6 +6,7 @@ import { h } from "@stencil/core";
|
|
|
6
6
|
import { DuetStringsExternalDefaults } from "../../common-strings";
|
|
7
7
|
import { inheritGlobalTheme } from "../../common/themeable-component";
|
|
8
8
|
import { connectLanguageChangeObserver, disconnectLanguageChangeObserver, getLanguage, getLocaleString, } from "../../utils/language-utils";
|
|
9
|
+
import { DuetPicture } from "../../utils/picture-utils";
|
|
9
10
|
import { checkNamedSlotElement, getElementsFromNamedSlot, hasSlot } from "../../utils/slot-utils";
|
|
10
11
|
import { parsePossibleJSON } from "../../utils/string-utils";
|
|
11
12
|
/**
|
|
@@ -129,6 +130,11 @@ export class DuetHero {
|
|
|
129
130
|
* Image position.
|
|
130
131
|
*/
|
|
131
132
|
this.imagePosition = "auto";
|
|
133
|
+
/**
|
|
134
|
+
* Make the image load with higher or lower priority. Value "high" sets the img's attributes fetchpriority and loading to
|
|
135
|
+
* "high" and "eager", while value "low" sets those attributes to "low" and "lazy"
|
|
136
|
+
*/
|
|
137
|
+
this.imagePriority = "high";
|
|
132
138
|
/**
|
|
133
139
|
* Style variation of the hero area.
|
|
134
140
|
*/
|
|
@@ -237,17 +243,17 @@ export class DuetHero {
|
|
|
237
243
|
const campaignOrSection = this.variation === "campaign" || this.variation === "section";
|
|
238
244
|
const imageSizeIsCover = this.imageSize === "cover";
|
|
239
245
|
const imagePositionIsCenter = this.imagePosition === "center";
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
246
|
+
const imageClass = `${imageSizeIsCover ? "cover" : ""} ${imagePositionIsCenter ? "center" : ""}`.trim();
|
|
247
|
+
const getPictureSource = (className) => ({
|
|
248
|
+
img: {
|
|
249
|
+
src: this.image,
|
|
250
|
+
alt: this.imageAlt || "",
|
|
251
|
+
loading: this.imagePriority === "low" ? "lazy" : "eager",
|
|
252
|
+
fetchpriority: this.imagePriority,
|
|
253
|
+
class: className || "",
|
|
254
|
+
},
|
|
255
|
+
sources: parsePossibleJSON(this.sources),
|
|
256
|
+
});
|
|
251
257
|
const buttonStyles = {
|
|
252
258
|
transform: "translateX(-8px)",
|
|
253
259
|
};
|
|
@@ -284,7 +290,7 @@ export class DuetHero {
|
|
|
284
290
|
outlineColor = "color-primary-turva";
|
|
285
291
|
}
|
|
286
292
|
}
|
|
287
|
-
return (h("div", { key: '
|
|
293
|
+
return (h("div", { key: 'dfdf7ff48804ea8afc843f2901dae041929c9266', role: "region", class: {
|
|
288
294
|
"duet-hero": true,
|
|
289
295
|
"duet-theme-turva": this.theme === "turva",
|
|
290
296
|
"duet-has-category-icon": !!this.categoryIcon,
|
|
@@ -302,17 +308,17 @@ export class DuetHero {
|
|
|
302
308
|
"duet-hero-text-center": this.variation !== "product" && ((this.textCenter && !this.leftAlign) || campaignOrSection),
|
|
303
309
|
"duet-hero-left-align": this.variation === "product" || (this.leftAlign && !campaignOrSection),
|
|
304
310
|
"duet-hero-narrow": this.layout === "narrow",
|
|
305
|
-
}, part: "duet-hero" }, campaignOrSection && this.image && (h("div", { key: '
|
|
306
|
-
this.processedBack && (h("div", { key: '
|
|
311
|
+
}, part: "duet-hero" }, campaignOrSection && this.image && (h("div", { key: '38e648e7447b8db00a773ff4025d68500401f7bc', class: "background-area" }, h("div", { key: '803534bf55dc7737cd41ec1d75fbed052334a19a', class: "background-container" }, h("div", { key: '27d0577a3993d7eaa767812700ff290986535b20', class: "background" }, h(DuetPicture, Object.assign({ key: '6cc4a5648f7466ed44125cd22e35a6eeb725b18a' }, getPictureSource(imageClass)))), h("div", { key: '76a95c713cd90761ea2d670389183e2c04a97a80', class: "brand-shape" })))), this.variation === "product" && this.image && (h("div", { key: 'c436973c44f7d497a70a96a51eb0f96be6eda95a', class: { "background-area": true, [this.layout]: true } }, h("div", { key: 'e5a17290d952644ba521a4b3976387456f650cd4', class: { "background-container": true, [this.layout]: true } }, h("div", { key: '8fdf828e65411a86393e096d8f3b6415076d97e0', class: { background: true, [this.layout]: true } }, h("div", { key: '0ada9a2b55d78b2774063d099cb03a8e09693584', class: { "background-mask": true, [this.layout]: true } }), this.theme !== "turva" && h("div", { key: 'b24d91804b31920da022285d0565667c8e92997e', class: { "brand-shape": true, [this.layout]: true } }), h("div", { key: '226619d3d283b31fa7e8caadaf49473a170abb3a', class: { "brand-shaped-image": true, [this.layout]: true } }, h("div", { key: '0a0415ca70e98b277bf151f28e1f4f1639338fa6', class: { "brand-shaped-image-wrapper": true, [this.layout]: true } }, h("div", { key: 'c866eb1fa36ab6cc43e8839669069046c2faae60', class: { "brand-shaped-image-bg": true, [this.layout]: true } }, h(DuetPicture, Object.assign({ key: 'a98b41e51c70043f55128a19718911f321b7527f' }, getPictureSource()))))), this.categoryIcon && (h("div", { key: '0d3b0c0428a32d2df977a6ac63be04ed6a7f72c6', class: { "brand-shaped-icon": true, [this.layout]: true } }, h("duet-icon", { key: '7af6dee3ca69df4b1d8e87830636ec18ad3a40b7', class: { [this.layout]: true }, background: "none", name: this.categoryIcon, margin: "none", size: "auto", responsive: false }))))))), this.variation === "content" && this.image && (h("div", { key: '20bd7ce2aca1d5062f0f0e1f4889a97ec308b1d9', class: "background-area" }, h("div", { key: '1847e876158decc257b4445501d1bb8e208ddb0e', class: "background" }, h("div", { key: '236489bc1fff1be4cf44d267dfbb5c3bcb119dad', class: "background-mask" }), this.theme !== "turva" && h("div", { key: '3c1e73a037c1ec3b129caaac2a689bf60ce62710', class: "brand-shape" }), h("div", { key: '9cfc2c3b6f5022d863fd6c869ffda7e0df51e013', class: "brand-shaped-image" }, h("div", { key: '8471e4f399016fb37f5f5e46f8bab0865179c6a3', class: "brand-shaped-image-wrapper" }, h("div", { key: '68bfcd1b748c5f7d0b3661152a489707f12024ac', class: "brand-shaped-image-bg" }, h(DuetPicture, Object.assign({ key: '78a267d0198018669353675e01ad0ca70491b36f' }, getPictureSource())))))))), h("div", { key: '4ab0bf9e9dee5b6889db6cc396cd304eda1bd870', class: { "duet-hero-wrapper": true, [this.layout]: true } }, this.image && this.variation === "image" && (h("div", { key: '208c46264f1ea0ce04845324a68cf5848ad95535', class: "duet-hero-image-mask" }, h("div", { key: 'b95a0b0a8840c5835a4e9668bd9481fcd9bfa87b', class: "duet-hero-image-wrapper" }, h("div", { key: '04633cc8d3020b921c42551a5e065bc942540fcc', class: "duet-hero-image" }, h(DuetPicture, Object.assign({ key: '7415ca53535a1295d42eb2b29cc6dbe7a93a04ae' }, getPictureSource(imageClass))))))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
|
|
312
|
+
this.processedBack && (h("div", { key: '59cbdb9c4195074e03310b65a88b4bafd74f9916', class: "duet-hero-back" }, h("duet-button", { key: 'ce17a681e39b9ad5c21edec2472175919f68b02f', style: buttonStyles, variation: "plain", icon: "action-arrow-left-small", theme: this.theme, iconSize: "small", color: buttonColor, padding: "none", margin: "none", fixed: true, url: this.processedBack.href, identifier: this.processedBack.id, onClick: event => this.handleClick(event, {
|
|
307
313
|
label: this.processedBack.label,
|
|
308
314
|
href: this.processedBack.href,
|
|
309
315
|
id: this.processedBack.id,
|
|
310
316
|
analyticsId: this.processedBack.analyticsId,
|
|
311
|
-
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (h("duet-icon", { key: '
|
|
317
|
+
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (h("duet-icon", { key: '191763dfcef22bcd3ccd7b8ac096ae6446de2d98', class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), h("div", { key: '7ee11a778839f281ce31673e60f4923ff223e3ac', class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (h("duet-paragraph", { key: '7d7f43ba3e592cbad30f8f28000ff361209bf443', margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium", "aria-hidden": "true" }, this.preHeading ? (this.preHeading) : (h("span", null, h("slot", { name: "pre-heading" }))))), h("slot", { key: 'e73727e5aa7fad6aaaceabcf6f81c6572f0a15a9', name: "badge" }), (this.heading || this.hasHeadingSlot) && (h("duet-heading", { key: '5884aecc75704d8dccc6c709a6768ddd578c4dde', theme: this.theme, level: this.hasHeadingSlotNative ? "div" : this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: headingColor, visualLevel: headingVisualLevel, margin: campaignOrSection ? "none" : "auto", accessibleLabel: this.getAccessibleHeading() }, this.heading ? this.heading : h("slot", { name: "heading" }))), campaignOrSection && this.hasSubHeadingSlot && (h("duet-heading", { key: '763778e5026dbfa90ef3e68f0f1b7d037043b88d', theme: this.theme, level: this.hasSubHeadingSlotNative ? "div" : this.subHeadingLevel, class: { "duet-hero-subheading": true }, color: this.theme === "turva" ? "secondary-turva" : "secondary", visualLevel: "h2" }, h("slot", { key: '9588038687bc9dfcb10a04b5e5cdaa6e3ef253de', name: "subheading" }))), this.description && (h("duet-paragraph", { key: 'f0d60545403dfcc453d79aa1bfdd5582b876ae49', theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (h("duet-list", { key: '7006a276c36ca7001df5c93d6fc3e792f8a07169', theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (h("duet-list-item", null, h("span", { slot: "label" }, item.label), h("span", { slot: "value" }, item.value)))))), this.buttonLabel && (h("duet-button", { key: '2954e77b3dde7b49573c25f1566d5f820c1dea3b', url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), h("slot", { key: '87703efb26e4376a71a692aa444988dacbf45d68' })), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (h("div", { key: '92123389406d8b37e76d0305fb7a2e1d194ce1d4', class: "duet-hero-links" }, this.processedActions.map(item => (h("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, h("div", { class: "duet-hero-action-icon" }, h("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), h("span", null, item.label), item.external && h("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (h("div", { class: "duet-hero-action-arrow" }, h("duet-icon", { icon: newWindowIcon.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
|
|
312
318
|
this.variation !== "image" &&
|
|
313
319
|
!campaignOrSection &&
|
|
314
320
|
this.variation !== "product" &&
|
|
315
|
-
this.variation !== "content" && h("div",
|
|
321
|
+
this.variation !== "content" && (h("div", { key: 'cd09b6b83414a647857f014ddd08f9b49b4d122a', class: "duet-hero-image" }, h(DuetPicture, Object.assign({ key: '68b91f0d9db476f3aa31c63b2a04465705e61658' }, getPictureSource(imageClass))))), h("slot", { key: '8f23feb29e40591b85303a1864fb5736274b7596', name: "bottom" }))));
|
|
316
322
|
}
|
|
317
323
|
static get is() { return "duet-hero"; }
|
|
318
324
|
static get encapsulation() { return "shadow"; }
|
|
@@ -502,7 +508,7 @@ export class DuetHero {
|
|
|
502
508
|
"references": {
|
|
503
509
|
"DuetHeroIconSize": {
|
|
504
510
|
"location": "local",
|
|
505
|
-
"path": "/Users/
|
|
511
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-hero/duet-hero.tsx",
|
|
506
512
|
"id": "src/components/duet-hero/duet-hero.tsx::DuetHeroIconSize"
|
|
507
513
|
}
|
|
508
514
|
}
|
|
@@ -744,7 +750,7 @@ export class DuetHero {
|
|
|
744
750
|
"references": {
|
|
745
751
|
"DuetHeroButtonData": {
|
|
746
752
|
"location": "local",
|
|
747
|
-
"path": "/Users/
|
|
753
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-hero/duet-hero.tsx",
|
|
748
754
|
"id": "src/components/duet-hero/duet-hero.tsx::DuetHeroButtonData"
|
|
749
755
|
}
|
|
750
756
|
}
|
|
@@ -877,6 +883,51 @@ export class DuetHero {
|
|
|
877
883
|
"setter": false,
|
|
878
884
|
"reflect": false
|
|
879
885
|
},
|
|
886
|
+
"imagePriority": {
|
|
887
|
+
"type": "string",
|
|
888
|
+
"attribute": "image-priority",
|
|
889
|
+
"mutable": false,
|
|
890
|
+
"complexType": {
|
|
891
|
+
"original": "\"high\" | \"low\"",
|
|
892
|
+
"resolved": "\"high\" | \"low\"",
|
|
893
|
+
"references": {}
|
|
894
|
+
},
|
|
895
|
+
"required": false,
|
|
896
|
+
"optional": false,
|
|
897
|
+
"docs": {
|
|
898
|
+
"tags": [],
|
|
899
|
+
"text": "Make the image load with higher or lower priority. Value \"high\" sets the img's attributes fetchpriority and loading to\n\"high\" and \"eager\", while value \"low\" sets those attributes to \"low\" and \"lazy\""
|
|
900
|
+
},
|
|
901
|
+
"getter": false,
|
|
902
|
+
"setter": false,
|
|
903
|
+
"reflect": false,
|
|
904
|
+
"defaultValue": "\"high\""
|
|
905
|
+
},
|
|
906
|
+
"sources": {
|
|
907
|
+
"type": "string",
|
|
908
|
+
"attribute": "sources",
|
|
909
|
+
"mutable": false,
|
|
910
|
+
"complexType": {
|
|
911
|
+
"original": "DuetSource[] | string",
|
|
912
|
+
"resolved": "DuetSource[] | string",
|
|
913
|
+
"references": {
|
|
914
|
+
"DuetSource": {
|
|
915
|
+
"location": "import",
|
|
916
|
+
"path": "../../utils/picture-utils",
|
|
917
|
+
"id": "src/utils/picture-utils.tsx::DuetSource"
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
},
|
|
921
|
+
"required": false,
|
|
922
|
+
"optional": false,
|
|
923
|
+
"docs": {
|
|
924
|
+
"tags": [],
|
|
925
|
+
"text": "Array of sources for responsive images. Sources have the properties of <source> element."
|
|
926
|
+
},
|
|
927
|
+
"getter": false,
|
|
928
|
+
"setter": false,
|
|
929
|
+
"reflect": false
|
|
930
|
+
},
|
|
880
931
|
"variation": {
|
|
881
932
|
"type": "string",
|
|
882
933
|
"attribute": "variation",
|
|
@@ -887,7 +938,7 @@ export class DuetHero {
|
|
|
887
938
|
"references": {
|
|
888
939
|
"DuetHeroVariation": {
|
|
889
940
|
"location": "local",
|
|
890
|
-
"path": "/Users/
|
|
941
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-hero/duet-hero.tsx",
|
|
891
942
|
"id": "src/components/duet-hero/duet-hero.tsx::DuetHeroVariation"
|
|
892
943
|
}
|
|
893
944
|
}
|
|
@@ -1006,7 +1057,7 @@ export class DuetHero {
|
|
|
1006
1057
|
"references": {
|
|
1007
1058
|
"DuetHeroClickEvent": {
|
|
1008
1059
|
"location": "local",
|
|
1009
|
-
"path": "/Users/
|
|
1060
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-hero/duet-hero.tsx",
|
|
1010
1061
|
"id": "src/components/duet-hero/duet-hero.tsx::DuetHeroClickEvent"
|
|
1011
1062
|
}
|
|
1012
1063
|
}
|
|
@@ -1027,7 +1078,7 @@ export class DuetHero {
|
|
|
1027
1078
|
"references": {
|
|
1028
1079
|
"DuetHeroAnalyticsEvent": {
|
|
1029
1080
|
"location": "local",
|
|
1030
|
-
"path": "/Users/
|
|
1081
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-hero/duet-hero.tsx",
|
|
1031
1082
|
"id": "src/components/duet-hero/duet-hero.tsx::DuetHeroAnalyticsEvent"
|
|
1032
1083
|
}
|
|
1033
1084
|
}
|
|
@@ -144,11 +144,11 @@ export class DuetIcon {
|
|
|
144
144
|
: {};
|
|
145
145
|
const iconStyles = Object.assign({}, iconRotationStyles);
|
|
146
146
|
const shapeStyle = this.shape === "brand-rotated" ? "duet-icon-shape-brand" : `duet-icon-shape-${this.shape}`;
|
|
147
|
-
return (h(Host, { key: '
|
|
147
|
+
return (h(Host, { key: '4165c86903dae730023be910be36389c7151045d', class: {
|
|
148
148
|
"duet-m-0": this.margin === "none",
|
|
149
149
|
"duet-icon-has-outline": !!this.outline,
|
|
150
150
|
"duet-icon-has-background": !!this.background,
|
|
151
|
-
} }, h("span", { key: '
|
|
151
|
+
} }, h("span", { key: '9efda9e15441290db9c499f59fc3f4feed86e5b2', "aria-hidden": "true", style: styles, class: {
|
|
152
152
|
"duet-icon": true,
|
|
153
153
|
"duet-theme-turva": this.theme === "turva",
|
|
154
154
|
"duet-theme-default": this.theme === "default",
|
|
@@ -157,7 +157,7 @@ export class DuetIcon {
|
|
|
157
157
|
[shapeStyle]: true,
|
|
158
158
|
rotated: this.shape === "brand-rotated" && this.theme !== "turva",
|
|
159
159
|
"duet-icon-not-responsive": !this.responsive,
|
|
160
|
-
} }, h("span", { key: '
|
|
160
|
+
} }, h("span", { key: 'a59c6e8741e859747f51863e7677de1f95e71b29', "aria-hidden": "true", class: { "duet-icon-svg": true, rotated: this.shape === "brand-rotated" && this.theme !== "turva" }, "data-name": this.name, innerHTML: this.svgContent, style: iconStyles }))));
|
|
161
161
|
}
|
|
162
162
|
static get is() { return "duet-icon"; }
|
|
163
163
|
static get encapsulation() { return "shadow"; }
|
|
@@ -45,11 +45,11 @@ export class DuetIndicator {
|
|
|
45
45
|
inheritGlobalTheme(this);
|
|
46
46
|
}
|
|
47
47
|
render() {
|
|
48
|
-
return (h(Host, { key: '
|
|
48
|
+
return (h(Host, { key: '329e985ec026dde828ee0e4f896bbbf68054a4ce' }, h("span", { key: '688c53ea00e20e7c2aa612ed6cdaede9a83655f9', class: {
|
|
49
49
|
"duet-indicator": true,
|
|
50
50
|
[`duet-indicator-${this.variation}`]: true,
|
|
51
51
|
"duet-theme-turva": this.theme === "turva",
|
|
52
|
-
} }), h("duet-visually-hidden", { key: '
|
|
52
|
+
} }), h("duet-visually-hidden", { key: '37a42c32af9d6d46946d30239592a4794e16de93' }, this.getAccessibleLabel())));
|
|
53
53
|
}
|
|
54
54
|
static get is() { return "duet-indicator"; }
|
|
55
55
|
static get encapsulation() { return "shadow"; }
|
|
@@ -75,7 +75,7 @@ export class DuetIndicator {
|
|
|
75
75
|
"references": {
|
|
76
76
|
"IndicatorVariation": {
|
|
77
77
|
"location": "local",
|
|
78
|
-
"path": "/Users/
|
|
78
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-indicator/duet-indicator.tsx",
|
|
79
79
|
"id": "src/components/duet-indicator/duet-indicator.tsx::IndicatorVariation"
|
|
80
80
|
}
|
|
81
81
|
}
|
|
@@ -8,7 +8,7 @@ import { inheritGlobalTheme } from "../../common";
|
|
|
8
8
|
import { DuetInternalLabel } from "../../common/label";
|
|
9
9
|
import { createID } from "../../utils/create-id";
|
|
10
10
|
import { cleanValue, resetCursor } from "../../utils/input-utils";
|
|
11
|
-
import { isArrowLeftKey, isArrowRightKey, isBackspaceKey, isEnterKey, isEscapeKey } from "../../utils/keyboard-utils";
|
|
11
|
+
import { isArrowLeftKey, isArrowRightKey, isBackspaceKey, isCharacterInsertKey, isEnterKey, isEscapeKey, } from "../../utils/keyboard-utils";
|
|
12
12
|
import { connectLanguageChangeObserver, disconnectLanguageChangeObserver, getLanguage, getLocaleString, } from "../../utils/language-utils";
|
|
13
13
|
import { checkNamedSlotElement, proxyInputToSlot } from "../../utils/slot-utils";
|
|
14
14
|
const icons = {
|
|
@@ -33,6 +33,7 @@ export class DuetInput {
|
|
|
33
33
|
this.topCaptionPlaceholderId = createID("DuetCaptionPlaceholderTop");
|
|
34
34
|
this.chipCountId = createID("DuetInputChipCount");
|
|
35
35
|
this.errorId = createID("DuetError");
|
|
36
|
+
this.maxlengthAnnouncementKey = 0;
|
|
36
37
|
this.disallowPatternRegex = null;
|
|
37
38
|
this.clearLabel = {
|
|
38
39
|
en: "Clear",
|
|
@@ -69,6 +70,11 @@ export class DuetInput {
|
|
|
69
70
|
fi: "valittu",
|
|
70
71
|
sv: "valt",
|
|
71
72
|
};
|
|
73
|
+
this.maxlengthReachedLabel = {
|
|
74
|
+
en: "This field has a maximum length of {max} characters. Limit reached.",
|
|
75
|
+
fi: "Tämän kentän enimmäispituus on {max} merkkiä. Raja on saavutettu.",
|
|
76
|
+
sv: "Det här fältet har en maximal längd på {max} tecken. Gränsen är nådd.",
|
|
77
|
+
};
|
|
72
78
|
/**
|
|
73
79
|
* State() variables
|
|
74
80
|
*/
|
|
@@ -78,6 +84,10 @@ export class DuetInput {
|
|
|
78
84
|
*/
|
|
79
85
|
this.isFocused = false;
|
|
80
86
|
this._accessiblePopup = undefined;
|
|
87
|
+
/**
|
|
88
|
+
* Text announced to screen readers when the maxlength limit is reached.
|
|
89
|
+
*/
|
|
90
|
+
this.maxlengthAnnouncement = "";
|
|
81
91
|
/**
|
|
82
92
|
* Indicates the id or a string of space seperated ids of a component(s) that describes the input.
|
|
83
93
|
*/
|
|
@@ -208,9 +218,22 @@ export class DuetInput {
|
|
|
208
218
|
* Component event handling.
|
|
209
219
|
*/
|
|
210
220
|
this.onInput = (ev) => {
|
|
211
|
-
|
|
221
|
+
var _a;
|
|
222
|
+
// In addition to input event, maxlength handling uses also keyDown and paste events as input event may not be
|
|
223
|
+
// triggered when entry is truncated by the browser.
|
|
224
|
+
if (this.maxlength) {
|
|
225
|
+
const wasAtMaxlength = (((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) || 0) >= this.maxlength;
|
|
226
|
+
const nativeLength = this.nativeInput.value.length;
|
|
212
227
|
// Android doesn't honor maxlength
|
|
213
|
-
|
|
228
|
+
const inputOverflow = nativeLength > this.maxlength;
|
|
229
|
+
if (inputOverflow) {
|
|
230
|
+
this.nativeInput.value = this.nativeInput.value.slice(0, this.maxlength);
|
|
231
|
+
}
|
|
232
|
+
const limitJustReached = !wasAtMaxlength && nativeLength === this.maxlength;
|
|
233
|
+
const limitExceededWhileFull = wasAtMaxlength && inputOverflow;
|
|
234
|
+
if (limitJustReached || limitExceededWhileFull) {
|
|
235
|
+
this.handleMaxlengthLimitReached();
|
|
236
|
+
}
|
|
214
237
|
}
|
|
215
238
|
if (this.disallowPatternRegex) {
|
|
216
239
|
cleanValue(this.nativeInput, this.disallowPatternRegex);
|
|
@@ -256,6 +279,30 @@ export class DuetInput {
|
|
|
256
279
|
component: "duet-input",
|
|
257
280
|
});
|
|
258
281
|
};
|
|
282
|
+
this.onInputKeyDown = (ev) => {
|
|
283
|
+
if (this.maxlength && isCharacterInsertKey(ev) && this.isAtMaxlengthWithoutSelection()) {
|
|
284
|
+
this.handleMaxlengthLimitReached();
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
this.onInputPaste = () => {
|
|
288
|
+
if (this.maxlength && this.isAtMaxlengthWithoutSelection()) {
|
|
289
|
+
this.handleMaxlengthLimitReached();
|
|
290
|
+
}
|
|
291
|
+
};
|
|
292
|
+
this.isAtMaxlengthWithoutSelection = () => {
|
|
293
|
+
const input = this.nativeInput;
|
|
294
|
+
const inputIsWithoutSelection = input.selectionStart === input.selectionEnd;
|
|
295
|
+
const inputIsAtMaxlength = input.value.length >= this.maxlength;
|
|
296
|
+
return inputIsWithoutSelection && inputIsAtMaxlength;
|
|
297
|
+
};
|
|
298
|
+
this.handleMaxlengthLimitReached = () => {
|
|
299
|
+
clearTimeout(this.maxlengthAnnouncementTimeoutId);
|
|
300
|
+
this.maxlengthAnnouncement = "";
|
|
301
|
+
this.maxlengthAnnouncementTimeoutId = setTimeout(() => {
|
|
302
|
+
this.maxlengthAnnouncementKey++;
|
|
303
|
+
this.maxlengthAnnouncement = this.maxlengthReachedLabel[this.language].replace("{max}", String(this.maxlength));
|
|
304
|
+
}, 300);
|
|
305
|
+
};
|
|
259
306
|
/**
|
|
260
307
|
* Private functions
|
|
261
308
|
*/
|
|
@@ -536,10 +583,15 @@ export class DuetInput {
|
|
|
536
583
|
if (this.type === "password") {
|
|
537
584
|
return "off";
|
|
538
585
|
}
|
|
586
|
+
const tokens = this.autoComplete.split(/\s+/);
|
|
539
587
|
// If attribute includes "email", e.g. "work email", don't overwrite it
|
|
540
|
-
if (this.type === "email" && this.autoComplete !== "off" && !
|
|
588
|
+
if (this.type === "email" && this.autoComplete !== "off" && !tokens.includes("email")) {
|
|
541
589
|
return "email";
|
|
542
590
|
}
|
|
591
|
+
// If attribute includes "tel", e.g. "mobile tel", don't overwrite it
|
|
592
|
+
if (this.type === "tel" && this.autoComplete !== "off" && !tokens.includes("tel")) {
|
|
593
|
+
return "tel";
|
|
594
|
+
}
|
|
543
595
|
return this.autoComplete;
|
|
544
596
|
}
|
|
545
597
|
/**
|
|
@@ -606,7 +658,7 @@ export class DuetInput {
|
|
|
606
658
|
this.type !== "password" &&
|
|
607
659
|
this.type !== "time" &&
|
|
608
660
|
this.variation !== "button";
|
|
609
|
-
return (h(Host, { key: '
|
|
661
|
+
return (h(Host, { key: '1119e8e51f3a490e34665e77ce32ec21f7bc70c7', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (h("duet-visually-hidden", { key: '31afa65dcb1b161f8c5a87c65953a26a552066b8', "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement[this.language]} ${selectedTime.toLocaleTimeString()}` : "")), h("div", { key: '5574afef8c592593193cbf0c99eaf8eaa84dbf11', class: {
|
|
610
662
|
"duet-input-container": true,
|
|
611
663
|
"duet-theme-turva": this.theme === "turva",
|
|
612
664
|
[`duet-input-variation-${this.variation}`]: true,
|
|
@@ -623,11 +675,11 @@ export class DuetInput {
|
|
|
623
675
|
"has-prefix": !!this.fieldPrefix,
|
|
624
676
|
"has-suffix": !!this.fieldSuffix,
|
|
625
677
|
disabled: this.disabled,
|
|
626
|
-
} }, h("div", { key: '
|
|
678
|
+
} }, h("div", { key: 'cd0dfb4e8ef821c84d342fff017da9b3e6938134', class: "duet-input-label-container" }, h(DuetInternalLabel, { key: '7ef9a4e3ccbc5b7ac030ca66912eb0471103ed10', theme: this.theme === "turva" ? "turva" : "default", margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { key: 'f263424aa51a59f4252cad4b4a1347b5986869ae', class: "duet-input-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), h("slot", { key: 'b4afd5ae65bbc03083b81996965cb354d6fd2a35', name: "tooltip" })), this.caption && (h("duet-caption", { key: '1d126824ee2ef4b7a4dae8650363e9da0b58c288', id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { key: 'adb5b8fa3b3de37c96d74fd1b888de75689a3ce0', class: {
|
|
627
679
|
"duet-input-relative": true,
|
|
628
680
|
"duet-theme-turva": this.theme === "turva",
|
|
629
681
|
"has-error": !!this.error,
|
|
630
|
-
} }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (h("duet-caption", { key: '
|
|
682
|
+
} }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (h("duet-caption", { key: 'fcadd06bf9e0dc4115c0bd004de23fa5692b03fc', id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), this.chips && (h("duet-visually-hidden", { key: '84a8a1feed5a0895936f5e1d5ee310c6282f1678', id: this.chipCountId }, ", ", `${this.getAllChips().length} ${getLocaleString(this.chipsSelectedDesriptionLabel)}`, ",")), this.variation === "button-left" && h("slot", { key: '90533c1b234e2644eb97317f903abbf04fee8138', name: "button-left" }), this.fieldPrefix && (h("span", { key: '151fd6757766b8c7e86ded73639d87bb32814089', class: "input-adornment prefix", id: this.prefixId }, this.fieldPrefix)), h("input", Object.assign({ key: '06811722717032661d4ba5e3bfa9c2b6196cf082', ref: input => (this.nativeInput = input), onInput: this.onInput, onKeyDown: this.onInputKeyDown, onPaste: this.onInputPaste, onBlur: this.onBlur, onFocus: this.onFocus, type: this.getInputType(), class: {
|
|
631
683
|
"duet-input": true,
|
|
632
684
|
disabled: this.disabled,
|
|
633
685
|
"is-number": this.component === "number",
|
|
@@ -635,17 +687,17 @@ export class DuetInput {
|
|
|
635
687
|
"after-chip": this.getAllChips().length > 0,
|
|
636
688
|
"align-right": this.inputAlign === "right",
|
|
637
689
|
[`input-padding-${this.inputPadding}`]: true,
|
|
638
|
-
}, value: this.value, disabled: this.disabled, "aria-invalid": this.error ? "true" : "false", "aria-labelledby": this.getAriaLabelledBy(), "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: this.getAutocomplete(), required: this.required, role: this.role, name: this.name, id: identifier }, inputProps)), this.fieldSuffix && (h("span", { key: '
|
|
690
|
+
}, value: this.value, disabled: this.disabled, "aria-invalid": this.error ? "true" : "false", "aria-labelledby": this.getAriaLabelledBy(), "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: this.getAutocomplete(), required: this.required, role: this.role, name: this.name, id: identifier }, inputProps)), this.maxlength && (h("duet-visually-hidden", { key: `maxlength-announcement-${this.maxlengthAnnouncementKey}`, "aria-live": "polite", "aria-atomic": "true" }, this.maxlengthAnnouncement)), this.fieldSuffix && (h("span", { key: 'b2d284fc05798f7dab08555f524cabf4f94f0e19', class: "input-adornment suffix", id: this.suffixId }, this.fieldSuffix)), !this.value && hasInputIcon && (h("div", { key: '8364a8a7687b6e37279585edf55da9005673f4df', class: "duet-input-icon" }, h("duet-icon", { key: '1b420da3e76241f1e105ce5ef8b9f40e6490424d', margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (h("div", { key: 'c67978258fbf64a22563a8e139b7a7de012bb4ca', class: {
|
|
639
691
|
"duet-input-clear-icon": true,
|
|
640
692
|
"duet-input-clear-icon-single": !hasInputIcon,
|
|
641
693
|
"duet-input-clear-icon-double": !!this.icon,
|
|
642
694
|
"duet-input-clear-icon-button": this.variation === "button",
|
|
643
695
|
[`input-padding-${this.inputPadding}`]: true,
|
|
644
|
-
} }, h("button", { key: '
|
|
696
|
+
} }, h("button", { key: 'b243244d6d5184c42a9afb93483479a0b07bad7d', onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel[this.language], "aria-keyshortcuts": "Escape" }, h("duet-icon", { key: '2ff21863005e55dc7a4dc1a16e2e2e40ad7f85cf', margin: "none", size: "medium", name: "action-clear-input", color: "currentColor" })))), this.icon && this.variation !== "button" && (h("div", { key: '7732892f159a6c7c9ad7c89b0031052b1ed45502', class: "duet-input-icon" }, h("duet-icon", { key: '97de6dc8ff0c506db494dc36edc6d0107792c2b9', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && h("slot", { key: '5c940caf605e2eaff4db2a36c63548db78f36f41', name: "button" }), this.variation === "revealable" && (h("duet-button", { key: 'caf0a7c8bec4a620e2ca5f897eaabc1814f32c5d', ref: button => (this.togglePasswordRevealedButton = button), onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.togglePasswordRevealed, icon: this.isPasswordRevealed ? "action-hide" : "action-show", accessibleLabel: this.isPasswordRevealed
|
|
645
697
|
? this.hidePasswordLabel[this.language]
|
|
646
|
-
: this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (h("duet-visually-hidden", { key: '
|
|
698
|
+
: this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (h("duet-visually-hidden", { key: 'cc394dbd7d28fc9e1cf0a864c67e7e7a6a835d1a' }, h("span", { key: '20033ed28c86634d6faf03180e53cff84def1329', "aria-live": "polite" }, this.isPasswordRevealed
|
|
647
699
|
? this.passwordShownAriaAnnouncement[this.language]
|
|
648
|
-
: this.passwordHiddenAriaAnnouncement[this.language]))), h("slot", { key: '
|
|
700
|
+
: this.passwordHiddenAriaAnnouncement[this.language]))), h("slot", { key: 'b72c50503fa80fd1ba6764b7b3348bc5d7b2813c' })), h("span", { key: '25790e8c5147bb271fefa6cbce2343287b57c816', class: "duet-input-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: 'c62d261a03ebec492aed9c65a836525e47660cfc', class: "duet-input-error" }, this.error)))));
|
|
649
701
|
}
|
|
650
702
|
static get is() { return "duet-input"; }
|
|
651
703
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1165,7 +1217,7 @@ export class DuetInput {
|
|
|
1165
1217
|
"references": {
|
|
1166
1218
|
"DuetInputType": {
|
|
1167
1219
|
"location": "local",
|
|
1168
|
-
"path": "/Users/
|
|
1220
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1169
1221
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputType"
|
|
1170
1222
|
}
|
|
1171
1223
|
}
|
|
@@ -1191,7 +1243,7 @@ export class DuetInput {
|
|
|
1191
1243
|
"references": {
|
|
1192
1244
|
"DuetVariationType": {
|
|
1193
1245
|
"location": "local",
|
|
1194
|
-
"path": "/Users/
|
|
1246
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1195
1247
|
"id": "src/components/duet-input/duet-input.tsx::DuetVariationType"
|
|
1196
1248
|
}
|
|
1197
1249
|
}
|
|
@@ -1532,7 +1584,7 @@ export class DuetInput {
|
|
|
1532
1584
|
"references": {
|
|
1533
1585
|
"DuetInputComponentType": {
|
|
1534
1586
|
"location": "local",
|
|
1535
|
-
"path": "/Users/
|
|
1587
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1536
1588
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputComponentType"
|
|
1537
1589
|
}
|
|
1538
1590
|
}
|
|
@@ -1756,7 +1808,8 @@ export class DuetInput {
|
|
|
1756
1808
|
"language": {},
|
|
1757
1809
|
"isPasswordRevealed": {},
|
|
1758
1810
|
"isFocused": {},
|
|
1759
|
-
"_accessiblePopup": {}
|
|
1811
|
+
"_accessiblePopup": {},
|
|
1812
|
+
"maxlengthAnnouncement": {}
|
|
1760
1813
|
};
|
|
1761
1814
|
}
|
|
1762
1815
|
static get events() {
|
|
@@ -1776,7 +1829,7 @@ export class DuetInput {
|
|
|
1776
1829
|
"references": {
|
|
1777
1830
|
"DuetInputEvent": {
|
|
1778
1831
|
"location": "local",
|
|
1779
|
-
"path": "/Users/
|
|
1832
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1780
1833
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputEvent"
|
|
1781
1834
|
}
|
|
1782
1835
|
}
|
|
@@ -1797,7 +1850,7 @@ export class DuetInput {
|
|
|
1797
1850
|
"references": {
|
|
1798
1851
|
"DuetInputEvent": {
|
|
1799
1852
|
"location": "local",
|
|
1800
|
-
"path": "/Users/
|
|
1853
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1801
1854
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputEvent"
|
|
1802
1855
|
}
|
|
1803
1856
|
}
|
|
@@ -1818,7 +1871,7 @@ export class DuetInput {
|
|
|
1818
1871
|
"references": {
|
|
1819
1872
|
"DuetInputEvent": {
|
|
1820
1873
|
"location": "local",
|
|
1821
|
-
"path": "/Users/
|
|
1874
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1822
1875
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputEvent"
|
|
1823
1876
|
}
|
|
1824
1877
|
}
|
|
@@ -1839,7 +1892,7 @@ export class DuetInput {
|
|
|
1839
1892
|
"references": {
|
|
1840
1893
|
"DuetInputEvent": {
|
|
1841
1894
|
"location": "local",
|
|
1842
|
-
"path": "/Users/
|
|
1895
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1843
1896
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputEvent"
|
|
1844
1897
|
}
|
|
1845
1898
|
}
|
|
@@ -1860,7 +1913,7 @@ export class DuetInput {
|
|
|
1860
1913
|
"references": {
|
|
1861
1914
|
"DuetInputEvent": {
|
|
1862
1915
|
"location": "local",
|
|
1863
|
-
"path": "/Users/
|
|
1916
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-input/duet-input.tsx",
|
|
1864
1917
|
"id": "src/components/duet-input/duet-input.tsx::DuetInputEvent"
|
|
1865
1918
|
}
|
|
1866
1919
|
}
|
|
@@ -121,7 +121,7 @@ export class DuetLabel {
|
|
|
121
121
|
"references": {
|
|
122
122
|
"DuetLabelMargin": {
|
|
123
123
|
"location": "local",
|
|
124
|
-
"path": "/Users/
|
|
124
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-label/duet-label.tsx",
|
|
125
125
|
"id": "src/components/duet-label/duet-label.tsx::DuetLabelMargin"
|
|
126
126
|
}
|
|
127
127
|
}
|
|
@@ -147,7 +147,7 @@ export class DuetLabel {
|
|
|
147
147
|
"references": {
|
|
148
148
|
"DuetLabelSize": {
|
|
149
149
|
"location": "local",
|
|
150
|
-
"path": "/Users/
|
|
150
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-label/duet-label.tsx",
|
|
151
151
|
"id": "src/components/duet-label/duet-label.tsx::DuetLabelSize"
|
|
152
152
|
}
|
|
153
153
|
}
|
|
@@ -66,24 +66,24 @@ export class DuetLayout {
|
|
|
66
66
|
* Always the last one in the class.
|
|
67
67
|
*/
|
|
68
68
|
render() {
|
|
69
|
-
return (h(Host, { key: '
|
|
69
|
+
return (h(Host, { key: 'c3ba619c0c3088257b425ba8f5022ebef33c1100', class: {
|
|
70
70
|
center: this.center,
|
|
71
71
|
"duet-middle": this.middle,
|
|
72
72
|
"duet-ie": isInternetExplorer(),
|
|
73
|
-
} }, h("div", { key: '
|
|
73
|
+
} }, h("div", { key: 'd627f63579dfb957bf3abe17191e8a8e943f0aae', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, this.hasTop && (h("div", { key: '4586ff77f2ef4209020a2401eef63273527a2e27', class: {
|
|
74
74
|
"duet-layout-top": true,
|
|
75
75
|
"duet-center": this.center,
|
|
76
|
-
} }, h("div", { key: '
|
|
76
|
+
} }, h("div", { key: 'daebb47e73054b59bb0459dc3327e0e60b17ebbe', class: "duet-layout-top-wrapper" }, h("slot", { key: '339fac00b53c0b4f532cfc77d5743217b5f72057', name: "top" })))), h("div", { key: 'bbf287d1f0aa701c40553a426b7a77b0a1c24c17', class: {
|
|
77
77
|
"duet-layout": true,
|
|
78
78
|
"has-sidebar": this.hasSidebar,
|
|
79
79
|
"duet-center": this.center,
|
|
80
80
|
[`padding-${this.paddingBreakpoint}`]: !!this.paddingBreakpoint,
|
|
81
|
-
} }, h("main", { key: '
|
|
81
|
+
} }, h("main", { key: '0d75aa9aeb65fa61f8e0ff114cee467abe49f1cd', class: "duet-main" }, this.hasPageHeading && h("slot", { key: 'fd0ed7464c54122f1cfbbfbfc40f78d8c9ab41c7', name: "page-heading" }), h("slot", { key: '1004e4007a1d82e22147ddf3a883e8ddc9c7b0dc', name: "main" })), this.hasSidebar && (h("aside", { key: '167c6d2495c8bbc7cd0275f723e0810b9fc311b6', class: "duet-sidebar" }, h("div", { key: 'f0bbcbeb756bf18ba1b678c405c3890fb00ad857', class: {
|
|
82
82
|
"duet-sidebar-container": true,
|
|
83
83
|
"has-tabs": this.tabs,
|
|
84
84
|
sticky: this.sticky,
|
|
85
85
|
[this.stickyDistance]: this.sticky,
|
|
86
|
-
} }, h("slot", { key: '
|
|
86
|
+
} }, h("slot", { key: 'b8b30e8b29bb87ea6a0c0891ca5f841d0921f72b', name: "sidebar" }))))))));
|
|
87
87
|
}
|
|
88
88
|
static get is() { return "duet-layout"; }
|
|
89
89
|
static get encapsulation() { return "shadow"; }
|
|
@@ -155,7 +155,7 @@ export class DuetLayout {
|
|
|
155
155
|
"references": {
|
|
156
156
|
"DuetLayoutStickyDistance": {
|
|
157
157
|
"location": "local",
|
|
158
|
-
"path": "/Users/
|
|
158
|
+
"path": "/Users/kasimir/projects/lahitapiola/duet-design-system/packages/components/src/components/duet-layout/duet-layout.tsx",
|
|
159
159
|
"id": "src/components/duet-layout/duet-layout.tsx::DuetLayoutStickyDistance"
|
|
160
160
|
}
|
|
161
161
|
}
|
|
@@ -187,10 +187,10 @@ export class DuetLink {
|
|
|
187
187
|
const Tag = !this.url && this.variation !== "default" ? "button" : "a";
|
|
188
188
|
const role = !this.url && this.variation === "default" ? "button" : null;
|
|
189
189
|
const isButton = Tag === "button";
|
|
190
|
-
return (h(Host, { key: '
|
|
190
|
+
return (h(Host, { key: '1cac563de2598ea4f66a666a8e9ba85d74ef4d29', class: {
|
|
191
191
|
[`duet-link-${this.variation}`]: true,
|
|
192
192
|
"duet-m-0": this.margin === "none",
|
|
193
|
-
} }, h(Tag, { key: '
|
|
193
|
+
} }, h(Tag, { key: '0ff450feb862488c1bfaf626a234559904f301a1', href: this.url, class: {
|
|
194
194
|
"duet-link": true,
|
|
195
195
|
"duet-link-is-external": this.external,
|
|
196
196
|
"duet-link-is-download": !!this.download,
|