@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
package/hydrate/index.js
CHANGED
|
@@ -3491,6 +3491,7 @@ const isQuestionKey = (e) => e.key === "?";
|
|
|
3491
3491
|
const isEnterKey = (e) => e.key === "Enter";
|
|
3492
3492
|
const isKeyboardClick = (e) => isEnterKey(e) || isSpaceKey(e);
|
|
3493
3493
|
const isNumber = (e) => e.key >= "0" && e.key <= "9";
|
|
3494
|
+
const isCharacterInsertKey = (e) => e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey;
|
|
3494
3495
|
/**
|
|
3495
3496
|
* Component instances that have subscribed to tabbing change.
|
|
3496
3497
|
*/
|
|
@@ -5271,13 +5272,13 @@ class DuetBadge {
|
|
|
5271
5272
|
*/
|
|
5272
5273
|
render() {
|
|
5273
5274
|
const backgroundClass = `background-${this.background}`;
|
|
5274
|
-
return (hAsync(Host, { key: '
|
|
5275
|
+
return (hAsync(Host, { key: 'a9dd6cafb9dd266a641efe7b3f5d3786c9e0d970', class: { "duet-m-0": this.margin === "none" } }, hAsync("span", { key: '3dc22a694e2540a4799bd9befe11453b30efff98', class: {
|
|
5275
5276
|
"duet-badge": true,
|
|
5276
5277
|
[this.variation]: true,
|
|
5277
5278
|
[backgroundClass]: true,
|
|
5278
5279
|
"has-tooltip": !!this.tooltip || this.hasTooltipSlot,
|
|
5279
5280
|
"duet-theme-turva": this.theme === "turva",
|
|
5280
|
-
} }, hAsync("duet-visually-hidden", { key: '
|
|
5281
|
+
} }, hAsync("duet-visually-hidden", { key: '2673764baf37610bce6a8378375f785eb4404fc6' }, this.getVariationLabel()), hAsync("slot", { key: 'ec85b8d3cbd2699867de7cfee681074bee1087c5' }), (this.tooltip || this.hasTooltipSlot) && (hAsync("span", { key: '4c62025c3b875c583fd8fbb78ae1f3fd41dafa40', class: "tooltip-wrap" }, !this.hasTooltipSlot && (hAsync("duet-tooltip", { key: '80883a763c0c24851c1641d75982c7b4616a79b4', "accessible-about-label": this.getBadgeText(), badgeElement: this.element }, this.tooltip)), hAsync("slot", { key: '4d82577d088190c59b6f067dc8dc3cbd473ea73b', name: "tooltip" }))))));
|
|
5281
5282
|
}
|
|
5282
5283
|
get element() { return getElement(this); }
|
|
5283
5284
|
static get style() { return duetBadgeCss; }
|
|
@@ -5298,13 +5299,18 @@ class DuetBadge {
|
|
|
5298
5299
|
}
|
|
5299
5300
|
|
|
5300
5301
|
const DuetPicture = ({ img, sources }) => {
|
|
5302
|
+
const imgAttrs = Object.assign({}, img);
|
|
5303
|
+
if (!img.alt) {
|
|
5304
|
+
imgAttrs.alt = "";
|
|
5305
|
+
imgAttrs.role = "presentation";
|
|
5306
|
+
}
|
|
5301
5307
|
return (hAsync("picture", null,
|
|
5302
5308
|
sources &&
|
|
5303
5309
|
sources.map(source => (hAsync("source", { srcSet: source.srcset, media: source.media, type: source.type, sizes: source.sizes }))),
|
|
5304
|
-
hAsync("img", Object.assign({},
|
|
5310
|
+
hAsync("img", Object.assign({}, imgAttrs))));
|
|
5305
5311
|
};
|
|
5306
5312
|
|
|
5307
|
-
const duetBannerCss = "*,\n*::after,\n*::before {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n}\n\n:host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n margin-right: 36px !important;\n margin-bottom: 36px !important;\n display: flex;\n justify-content: center;\n width: auto;\n container: duet-banner-container;\n container-type: inline-size;\n}\n:host:last-child, :host:last-of-type {\n margin-right: 0 !important;\n}\n[alignment=form-distribute] > :host:last-of-type:not(:last-child) {\n margin-right: 36px !important;\n}\n\n:host(.duet-m-0) {\n margin: 0 !important;\n}\n\n.duet-banner {\n display: grid;\n grid-template-rows: min-content 1fr;\n width: 100%;\n height: 100%;\n font-family: \"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-style: normal;\n text-align: left;\n border-radius: 16px;\n}\n.duet-banner.duet-p-0 {\n padding: 0 !important;\n}\n.duet-banner.duet-m-0 {\n margin: 0 !important;\n}\n.duet-banner .visual {\n position: relative;\n display: none;\n overflow: hidden;\n}\n@container duet-banner-container (min-width: 0) {\n .duet-banner .visual {\n display: block;\n }\n}\n.duet-banner .visual .image-container {\n position: relative;\n aspect-ratio: 2/1;\n overflow: hidden;\n}\n.duet-banner .visual .image {\n position: relative;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n.duet-banner .visual .icon {\n position: absolute;\n}\n.duet-banner .visual .brand-shape {\n position: absolute;\n top: 0;\n left: 72%;\n display: none;\n width: 100%;\n height: 100%;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20344%22%20fill%3D%22none%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M2.72641e-07%2091.1902C0.000476976%2097.9034%200.626077%20104.726%201.92282%20111.592L42.7493%20327.771C43.8045%20333.358%2045.2667%20338.776%2047.0996%20344H160V0H51.1439C19.7799%2019.1253%200.00268143%2053.4178%202.72641e-07%2091.1749C-9.08807e-08%2091.18%20-9.08875e-08%2091.1851%202.72641e-07%2091.1902Z%22%20fill%3D%22%23E6F2F8%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E\");\n transform: scale(101%);\n}\n.duet-banner .content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 16px 20px 28px;\n}\n.duet-banner .content .description {\n hyphens: auto;\n}\n.duet-banner .action {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n align-items: flex-start;\n justify-content: flex-end;\n padding-top: 16px;\n}\n.duet-banner .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 16px;\n}\n.duet-banner .visual .image-container {\n width: 100%;\n height: auto;\n border-radius: 0;\n}\n.duet-banner .visual .icon {\n bottom: 30px;\n left: 15px;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-medium .visual, .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-medium .visual .image-container, .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-medium .visual .image, .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-medium .visual .icon, .duet-banner.size-large .visual .icon {\n top: 36px;\n left: 168px;\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-medium .content, .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 28px 28px 28px 0;\n }\n .duet-banner.size-medium .action, .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n@container duet-banner-container (min-width: 586px) {\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n left: 80%;\n }\n}\n@container duet-banner-container (min-width: 900px) {\n .duet-banner.size-large {\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-large .visual .icon {\n top: 40px;\n bottom: auto;\n left: 335px;\n }\n .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 48px 48px 48px 0;\n }\n .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n.duet-banner.no-image {\n display: flex;\n justify-content: center;\n padding: 36px 20px;\n}\n.duet-banner.no-image .visual {\n display: none;\n}\n.duet-banner.no-image .content {\n width: 100%;\n max-width: 720px;\n padding: 0;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n padding: 48px;\n }\n}\n\n::slotted(.duet-heading) {\n margin: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n color: inherit !important;\n}\n\n.duet-banner.duet-theme-turva {\n font-family: \"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n border-radius: 12px;\n}\n.duet-banner.duet-theme-turva .visual .brand-shape {\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20width%3D%22540%22%20height%3D%2258%22%20viewBox%3D%220%200%20540%2058%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M540%2018.0729L540%2057.6749H0L0.000139455%2011.2563C0.000139455%202.85822%208.31858%20-2.59156%2015.3307%201.26796C33.6821%2011.3367%2055.6983%2020.0831%2080.3633%2027.3465C134.438%2043.276%20201.239%2052.0939%20270%2052.0939C338.761%2052.0939%20405.572%2043.276%20459.637%2027.3465C484.302%2020.0742%20506.318%2011.3277%20524.669%201.25902C531.682%20-2.59156%20540%202.85822%20540%2011.2563V18.0729Z%22%20fill%3D%22%23FBEBE1%22%2F%3E%0A%3C%2Fsvg%3E%0A\");\n mask-repeat: no-repeat;\n mask-position: bottom;\n mask-size: contain;\n scale: 101%;\n}\n.duet-banner.duet-theme-turva.size-medium .visual, .duet-banner.duet-theme-turva.size-large .visual {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.duet-theme-turva.size-medium, .duet-banner.duet-theme-turva.size-large {\n grid-template-columns: 1fr 1fr;\n gap: 28px;\n border-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual, .duet-banner.duet-theme-turva.size-large .visual {\n border-top-left-radius: 12px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .image-container, .duet-banner.duet-theme-turva.size-large .visual .image-container {\n padding: 20px;\n padding-right: 0;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .image, .duet-banner.duet-theme-turva.size-large .visual .image {\n border-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .brand-shape, .duet-banner.duet-theme-turva.size-large .visual .brand-shape {\n display: none;\n }\n}";
|
|
5313
|
+
const duetBannerCss = "*,\n*::after,\n*::before {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n}\n\n:host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n margin-right: 36px !important;\n margin-bottom: 36px !important;\n display: flex;\n justify-content: center;\n width: auto;\n container: duet-banner-container;\n container-type: inline-size;\n}\n:host:last-child, :host:last-of-type {\n margin-right: 0 !important;\n}\n[alignment=form-distribute] > :host:last-of-type:not(:last-child) {\n margin-right: 36px !important;\n}\n\n:host(.duet-m-0) {\n margin: 0 !important;\n}\n\n.duet-banner {\n display: grid;\n grid-template-rows: min-content 1fr;\n width: 100%;\n height: 100%;\n font-family: \"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-style: normal;\n text-align: left;\n border-radius: 16px;\n}\n.duet-banner.duet-p-0 {\n padding: 0 !important;\n}\n.duet-banner.duet-m-0 {\n margin: 0 !important;\n}\n.duet-banner .visual {\n position: relative;\n display: none;\n overflow: hidden;\n}\n@container duet-banner-container (min-width: 0) {\n .duet-banner .visual {\n display: block;\n }\n}\n.duet-banner .visual .image-container {\n position: relative;\n aspect-ratio: 2/1;\n overflow: hidden;\n}\n.duet-banner .visual .image {\n position: relative;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n.duet-banner .visual .image.contain {\n padding: 16px 20px 0;\n object-fit: contain;\n object-position: center bottom;\n}\n.duet-banner .visual .icon {\n position: absolute;\n}\n.duet-banner .visual .brand-shape {\n position: absolute;\n top: 0;\n left: 72%;\n display: none;\n width: 100%;\n height: 100%;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20344%22%20fill%3D%22none%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M2.72641e-07%2091.1902C0.000476976%2097.9034%200.626077%20104.726%201.92282%20111.592L42.7493%20327.771C43.8045%20333.358%2045.2667%20338.776%2047.0996%20344H160V0H51.1439C19.7799%2019.1253%200.00268143%2053.4178%202.72641e-07%2091.1749C-9.08807e-08%2091.18%20-9.08875e-08%2091.1851%202.72641e-07%2091.1902Z%22%20fill%3D%22%23E6F2F8%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E\");\n transform: scale(101%);\n}\n.duet-banner .content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 16px 20px 28px;\n}\n.duet-banner .content .description {\n hyphens: auto;\n}\n.duet-banner .action {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n align-items: flex-start;\n justify-content: flex-end;\n padding-top: 16px;\n}\n.duet-banner .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 16px;\n}\n.duet-banner .visual .image-container {\n width: 100%;\n height: auto;\n border-radius: 0;\n}\n.duet-banner .visual .icon {\n bottom: 30px;\n left: 15px;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-medium .visual, .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-medium .visual .image-container, .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-medium .visual .image, .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-medium .visual .image.contain, .duet-banner.size-large .visual .image.contain {\n padding: 28px;\n object-position: center;\n }\n .duet-banner.size-medium .visual .icon, .duet-banner.size-large .visual .icon {\n top: 36px;\n left: 168px;\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-medium .content, .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 28px 28px 28px 0;\n }\n .duet-banner.size-medium .action, .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n@container duet-banner-container (min-width: 586px) {\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n left: 80%;\n }\n}\n@container duet-banner-container (min-width: 900px) {\n .duet-banner.size-large {\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-large .visual .image.contain {\n padding: 48px;\n }\n .duet-banner.size-large .visual .icon {\n top: 40px;\n bottom: auto;\n left: 335px;\n }\n .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 48px 48px 48px 0;\n }\n .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n.duet-banner.no-image {\n display: flex;\n justify-content: center;\n padding: 36px 20px;\n}\n.duet-banner.no-image .visual {\n display: none;\n}\n.duet-banner.no-image .content {\n width: 100%;\n max-width: 720px;\n padding: 0;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n padding: 48px;\n }\n}\n\n::slotted(.duet-heading) {\n margin: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n color: inherit !important;\n}\n\n.duet-banner.duet-theme-turva {\n font-family: \"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n border-radius: 12px;\n}\n.duet-banner.duet-theme-turva .visual .brand-shape {\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20width%3D%22540%22%20height%3D%2258%22%20viewBox%3D%220%200%20540%2058%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M540%2018.0729L540%2057.6749H0L0.000139455%2011.2563C0.000139455%202.85822%208.31858%20-2.59156%2015.3307%201.26796C33.6821%2011.3367%2055.6983%2020.0831%2080.3633%2027.3465C134.438%2043.276%20201.239%2052.0939%20270%2052.0939C338.761%2052.0939%20405.572%2043.276%20459.637%2027.3465C484.302%2020.0742%20506.318%2011.3277%20524.669%201.25902C531.682%20-2.59156%20540%202.85822%20540%2011.2563V18.0729Z%22%20fill%3D%22%23FBEBE1%22%2F%3E%0A%3C%2Fsvg%3E%0A\");\n mask-repeat: no-repeat;\n mask-position: bottom;\n mask-size: contain;\n scale: 101%;\n}\n.duet-banner.duet-theme-turva.size-medium .visual, .duet-banner.duet-theme-turva.size-large .visual {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.duet-theme-turva.size-medium, .duet-banner.duet-theme-turva.size-large {\n grid-template-columns: 1fr 1fr;\n gap: 28px;\n border-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual, .duet-banner.duet-theme-turva.size-large .visual {\n border-top-left-radius: 12px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .image-container, .duet-banner.duet-theme-turva.size-large .visual .image-container {\n padding: 20px;\n padding-right: 0;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .image, .duet-banner.duet-theme-turva.size-large .visual .image {\n border-radius: 12px;\n }\n .duet-banner.duet-theme-turva.size-medium .visual .brand-shape, .duet-banner.duet-theme-turva.size-large .visual .brand-shape {\n display: none;\n }\n}";
|
|
5308
5314
|
|
|
5309
5315
|
/**
|
|
5310
5316
|
* @slot heading - Slot for heading content. Only span should be used in this slot.
|
|
@@ -5347,6 +5353,11 @@ class DuetBanner {
|
|
|
5347
5353
|
* Image. Example image is 512x341;
|
|
5348
5354
|
*/
|
|
5349
5355
|
this.image = "";
|
|
5356
|
+
/**
|
|
5357
|
+
* Will the image cover the whole image area (possibly getting cropped), or will it be contained without any
|
|
5358
|
+
* cropping (possibly not filling the whole area).
|
|
5359
|
+
*/
|
|
5360
|
+
this.imageFit = "cover";
|
|
5350
5361
|
/**
|
|
5351
5362
|
* Icon.
|
|
5352
5363
|
*/
|
|
@@ -5429,20 +5440,20 @@ class DuetBanner {
|
|
|
5429
5440
|
img: {
|
|
5430
5441
|
src: this.image,
|
|
5431
5442
|
alt: this.imageAlt || "",
|
|
5432
|
-
loading: "lazy",
|
|
5433
|
-
|
|
5434
|
-
|
|
5443
|
+
loading: this.imagePriority === "high" ? "eager" : "lazy",
|
|
5444
|
+
fetchpriority: this.imagePriority,
|
|
5445
|
+
class: `image ${this.imageFit}`,
|
|
5435
5446
|
},
|
|
5436
5447
|
sources: parsePossibleJSON(this.sources),
|
|
5437
5448
|
};
|
|
5438
|
-
return (hAsync(Host, { key: '
|
|
5449
|
+
return (hAsync(Host, { key: '021aafd46f614c2d52ccd2d014574a7a095e2883', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: 'ea207c896e6b1624a27d4b6ceb79836ab152f207', class: {
|
|
5439
5450
|
"duet-banner": true,
|
|
5440
5451
|
"duet-theme-turva": this.theme === "turva",
|
|
5441
5452
|
[this.currentSize]: true,
|
|
5442
5453
|
"size-medium": this.size === "medium" || this.size === "large",
|
|
5443
5454
|
"size-large": this.size === "large",
|
|
5444
5455
|
"no-image": !this.image,
|
|
5445
|
-
}, style: bannerStyles }, hAsync("div", { key: '
|
|
5456
|
+
}, style: bannerStyles }, hAsync("div", { key: '525c58ab8a5aaa6cf08bab777f9ea3dd071f75ec', class: "visual" }, hAsync("div", { key: '89b977717483d9ffcedeae98f7d2a36263b0f3d3', class: "image-container" }, this.image && hAsync(DuetPicture, Object.assign({ key: '7f1d73ce70cf6687500eef1d0fc546e4bdbb6ea5' }, pictureSource))), 1 > 2, this.imageFit !== "contain" && hAsync("div", { key: '9cb97c2fefe6058b2d1c9b0e1a0c517d732c8b3f', style: bannerStyles, class: "brand-shape" })), hAsync("div", { key: '2674a03efa17932dd1654e18a72115646a806fd3', class: "content" }, this.hasHeadingSlot && (hAsync("div", { key: '9de6d6fe0940b868b74205ff45c48986776c67a7', class: "heading" }, hAsync("duet-heading", { key: 'dca384f371f65d7f40e59c97603ffde9536c10ae', theme: this.theme, level: this.hasHeadingSlotNative ? "div" : this.headingLevel, "visual-level": this.currentSize === "large" ? "h2" : "h3", "fixed-size": true, margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: 'e5f9d70b35eb5e3507cc9c4ae78554debd08f7c7' }, hAsync("slot", { key: '26d9d93896e0f095112db72501c8c9de765eba16', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: '1a82c4532fa9862d0207675f89308ee8cd071302', class: "description", style: { color } }, hAsync("slot", { key: '78febb3eca846bffd9555b8114c9ecaf33e55433', name: "description" }))), this.hasActionSlot && (hAsync("div", { key: '2f25d1c449e2ff59bbd41d39da665e1a8822a7a2', class: "action" }, hAsync("slot", { key: '2951e812095eaf2e55a40575e6948e83bfd27b2a', name: "action" })))))));
|
|
5446
5457
|
}
|
|
5447
5458
|
get element() { return getElement(this); }
|
|
5448
5459
|
static get style() { return duetBannerCss; }
|
|
@@ -5459,6 +5470,8 @@ class DuetBanner {
|
|
|
5459
5470
|
"size": [1025],
|
|
5460
5471
|
"image": [1],
|
|
5461
5472
|
"imageAlt": [1, "image-alt"],
|
|
5473
|
+
"imageFit": [1, "image-fit"],
|
|
5474
|
+
"imagePriority": [1, "image-priority"],
|
|
5462
5475
|
"sources": [1],
|
|
5463
5476
|
"icon": [1],
|
|
5464
5477
|
"headingLevel": [1, "heading-level"],
|
|
@@ -5529,15 +5542,15 @@ class DuetBreadcrumb {
|
|
|
5529
5542
|
*/
|
|
5530
5543
|
render() {
|
|
5531
5544
|
const Tag = this.href ? "a" : "span";
|
|
5532
|
-
return (hAsync(Host, { key: '
|
|
5545
|
+
return (hAsync(Host, { key: '2b795c0f87ac80750f5b839cf8d1ec385e367787', role: "listitem" }, hAsync("div", { key: 'ee8b861d332f77b124246663ddcfef6a17b3716a', class: "container" }, this.icon === "arrow-right-small-icon" && (hAsync("duet-icon", { key: '4755193fc62139b5e2badbf61d60ec4ee864320e', class: "duet-breadrumbs-arrow", size: "auto", icon: arrowRightSmallIcon.svg, margin: "none", color: "currentColor" })), hAsync(Tag, { key: '454b059fa473bb373414fbc150fcd977e09f6640', class: {
|
|
5533
5546
|
"duet-breadcrumb": true,
|
|
5534
5547
|
"duet-theme-turva": this.theme === "turva",
|
|
5535
5548
|
"icon-only": this.icon && !this.hasSlottedContent,
|
|
5536
5549
|
}, href: this.href || undefined, "aria-label": this.accessibleLabel || this.element.textContent, "aria-current": this.href ? undefined : "page" }, this.icon !== "arrow-right-small-icon" &&
|
|
5537
5550
|
this.icon && [
|
|
5538
|
-
hAsync("duet-icon", { key: '
|
|
5539
|
-
this.hasSlottedContent && hAsync("duet-spacer", { key: '
|
|
5540
|
-
], hAsync("slot", { key: '
|
|
5551
|
+
hAsync("duet-icon", { key: 'd1aed8186f26f44d47ee81b56822c34185d84f0b', size: this.iconSize, name: this.icon, margin: "none", color: "currentColor" }),
|
|
5552
|
+
this.hasSlottedContent && hAsync("duet-spacer", { key: '59450e94c94574264b094fbf9f2e95210a2fcd6c', size: "x-small", direction: "horizontal" }),
|
|
5553
|
+
], hAsync("slot", { key: 'c59924405c9e92ba9b9f97f199483ede43340d75' })))));
|
|
5541
5554
|
}
|
|
5542
5555
|
get element() { return getElement(this); }
|
|
5543
5556
|
static get style() { return duetBreadcrumbCss; }
|
|
@@ -5605,11 +5618,11 @@ class DuetBreadcrumbs {
|
|
|
5605
5618
|
*/
|
|
5606
5619
|
render() {
|
|
5607
5620
|
const color = getColorByName(this.color);
|
|
5608
|
-
return (hAsync(Host, { key: '
|
|
5621
|
+
return (hAsync(Host, { key: 'ab03b4aa8bcf48ddeff80051a517ecf300237412' }, hAsync("nav", { key: '1d5340bff7dd6a6d9a1274f7828b95e03bf4a286', "aria-label": this.breadcrumbsAriaLabel, class: {
|
|
5609
5622
|
"duet-breadcrumbs": true,
|
|
5610
5623
|
"duet-theme-turva": this.theme === "turva",
|
|
5611
5624
|
[this.variation]: true,
|
|
5612
|
-
} }, hAsync("div", { key: '
|
|
5625
|
+
} }, hAsync("div", { key: '60f82a58dbb43c750705c5ed6474bf5ba12d430e', class: "container" }, hAsync("div", { key: '101eba23f14489d117dc44c147538b706407ec49', role: "list", class: "list", style: { color } }, hAsync("slot", { key: '5880a8ee0defaffd580df6b65637c293f142f65d' })), hAsync("div", { key: '5f2d386090b2e1a53cc327e976da14b33fe59c09', class: "bottom-border bottom-border--container" })), hAsync("div", { key: '1bd939603a8c00a99060b3bb6dbdfa157efa0b41', class: "bottom-border bottom-border--nav" }))));
|
|
5613
5626
|
}
|
|
5614
5627
|
get element() { return getElement(this); }
|
|
5615
5628
|
static get style() { return duetBreadcrumbsCss; }
|
|
@@ -5690,7 +5703,7 @@ class DuetButton {
|
|
|
5690
5703
|
*/
|
|
5691
5704
|
this.expand = false;
|
|
5692
5705
|
/**
|
|
5693
|
-
* Keep the button fixed width even on mobile viewports.
|
|
5706
|
+
* Keep the button fixed width even on mobile viewports. Fixed width is always used for variation plain.
|
|
5694
5707
|
*/
|
|
5695
5708
|
this.fixed = false;
|
|
5696
5709
|
/**
|
|
@@ -5943,7 +5956,7 @@ class DuetButton {
|
|
|
5943
5956
|
"duet-m-0": this.margin === "none",
|
|
5944
5957
|
"duet-small": this.size === "small",
|
|
5945
5958
|
"duet-x-small": this.size === "x-small",
|
|
5946
|
-
"duet-fixed": this.fixed,
|
|
5959
|
+
"duet-fixed": this.fixed || this.variation === "plain",
|
|
5947
5960
|
"duet-expand": this.expand,
|
|
5948
5961
|
[this.variation]: true,
|
|
5949
5962
|
"input-button": (_b = this.variation) === null || _b === void 0 ? void 0 : _b.startsWith("input-button"),
|
|
@@ -6045,11 +6058,11 @@ class DuetCallout {
|
|
|
6045
6058
|
<path d="M6.6591 0.557547L9.2031 2.33355C7.0911 5.21355 6.1311 7.18155 5.8431 8.90955C7.4751 9.34155 8.7231 10.5415 8.7231 12.6535C8.7231 15.2935 6.9471 16.9255 4.6431 16.9255C2.0511 16.9255 0.227096 15.1975 0.227096 12.2695C0.227096 8.28555 2.3871 4.34955 6.6591 0.557547ZM17.9871 8.95755C19.6191 9.34155 20.8671 10.5415 20.8671 12.6535C20.8671 15.2935 19.1391 16.9255 16.8351 16.9255C14.2431 16.9255 12.4191 15.1975 12.4191 12.2695C12.4191 8.28555 14.5791 4.34955 18.8511 0.557547L21.3951 2.33355C19.2351 5.21355 18.3231 7.18155 17.9871 8.95755Z"/>
|
|
6046
6059
|
</svg>
|
|
6047
6060
|
`;
|
|
6048
|
-
return (hAsync(Host, { key: '
|
|
6061
|
+
return (hAsync(Host, { key: 'd3e96c80e032ccbcd8acf8a4f3b8d8d358548786' }, hAsync("div", { key: 'b6caf5e67fcb292b3bf73dc0b9bf27fd06be5590', class: {
|
|
6049
6062
|
"duet-callout": true,
|
|
6050
6063
|
"duet-theme-turva": this.theme === "turva",
|
|
6051
6064
|
"duet-m-0": this.margin === "none",
|
|
6052
|
-
} }, hAsync("figure", { key: '
|
|
6065
|
+
} }, hAsync("figure", { key: '0b1740d79f890107d1ed0f48b2d0bc9904a6c6c4', class: "container" }, hAsync("duet-icon", { key: 'fc90c293c0008e13b6b7355e4ab32a09d23aaf5e', class: "callout-icon", shape: "brand-rotated", background: "primary-lighter", "background-opacity": "0.75", "background-rotation": this.theme === "turva" ? "0" : "7", color: "secondary", icon: icon, size: "auto", margin: "none", theme: this.theme }), hAsync("blockquote", { key: 'a9de71b59c2208091da32a2e9c0acb2fe121d7f7' }, hAsync("slot", { key: '45e54b298e547f5a1dd2f33abf07f48a1bfbea84' })), this.hasAuthorSlot && (hAsync("figcaption", { key: 'f495d161f2993d6cfe240cbd7fe583b447b65186', class: "author" }, hAsync("span", { key: '95b14fcee9c5ed6bbaf04f1711348164a07bf592' }, "\u2014 "), hAsync("slot", { key: '1371283e50a2b7580799984ad815542ccb9e87db', name: "author" })))))));
|
|
6053
6066
|
}
|
|
6054
6067
|
get element() { return getElement(this); }
|
|
6055
6068
|
static get style() { return duetCalloutCss; }
|
|
@@ -6137,7 +6150,7 @@ function requireActionArrowUp () {
|
|
|
6137
6150
|
var actionArrowUpExports = requireActionArrowUp();
|
|
6138
6151
|
var arrowUpIcon = /*@__PURE__*/getDefaultExportFromCjs(actionArrowUpExports);
|
|
6139
6152
|
|
|
6140
|
-
const duetCardCss = "*,*::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;margin-bottom:20px !important;display:flex;width:100%;vertical-align:top}:host(.duet-card-info){margin-bottom:16px !important}:host(.duet-m-0){margin:0 !important}:host{--duet-card-border-radius:12px}@media (min-width: 36em){:host{--duet-card-border-radius:16px}}.duet-card{padding:20px !important;position:relative;display:flex;flex-direction:column;width:100%;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-style:normal;font-weight:400;line-height:1.5;color:rgb(8, 42, 77);text-decoration:none;border-radius:var(--duet-card-border-radius);box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}.duet-card.duet-p-0{padding:0 !important}.duet-card.duet-m-0{margin:0 !important}.duet-card:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-card:focus,.duet-card:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}@media (max-width: 20.5em){.duet-card.shadow-xxx-small{box-shadow:none}}@media (max-width: 22.5em){.duet-card.shadow-xx-small{box-shadow:none}}@media (max-width: 35.9375em){.duet-card.shadow-x-small{box-shadow:none}}@media (min-width: 36em){.duet-card.shadow-small{box-shadow:none}}@media (min-width: 48em){.duet-card.shadow-medium{box-shadow:none}}@media (min-width: 62em){.duet-card.shadow-large{box-shadow:none}}@media (min-width: 64.0625em){.duet-card.shadow-x-large{box-shadow:none}}@media (min-width: 76.25em){.duet-card.shadow-xx-large{box-shadow:none}}@media (min-width: 106.25em){.duet-card.shadow-xxx-large{box-shadow:none}}@media (min-width: 36em){.duet-card{padding:28px !important}}@media (min-width: 36em){.duet-card.xx-small{padding:12px !important}}@media (min-width: 36em){.duet-card.x-small{padding:20px !important}}@media (min-width: 36em){.duet-card.medium{padding:28px !important}}@media (min-width: 48em){.duet-card.medium{padding:36px !important}}@media (min-width: 36em){.duet-card.large{padding:36px !important}}@media (min-width: 48em){.duet-card.large{padding:48px !important}}@media (min-width: 36em){.duet-card.x-large{padding:48px !important}}@media (min-width: 48em){.duet-card.x-large{padding:72px !important}}.duet-card.duet-card-collapsed{padding-bottom:0 !important}@media (min-width: 36em){.duet-card.duet-card-collapsed{padding-bottom:0 !important}}.duet-card.info{background:rgba(4, 81, 128, 0.04) !important;box-shadow:none}.duet-card.plain{box-shadow:none}.duet-card.plain:not(.duet-card-has-bg){background:transparent !important}.duet-card-heading-grid{display:flex;flex-direction:row}.duet-card-icon{align-self:center}.duet-card-heading-text{flex:1;word-break:break-word}.duet-card-secondary-heading{font-size:1rem;font-weight:600;word-break:break-word}.duet-card-secondary-heading--inline{display:block;flex:1;align-self:flex-start;line-height:1.875;text-align:right}@media (max-width: 22.5em){.duet-card-secondary-heading--inline{display:none}}.duet-card-secondary-heading--new-line{display:none}@media (max-width: 22.5em){.duet-card-secondary-heading--new-line{display:block}}.duet-card-heading{position:relative;display:block;padding:16px 20px;margin:-20px -20px 20px;overflow:hidden;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;color:rgb(8, 42, 77);border-bottom:1px solid rgb(212, 223, 229);border-radius:var(--duet-card-border-radius) var(--duet-card-border-radius) 0 0}@media (min-width: 36em){.duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}.none .duet-card-heading{padding:0 !important;margin:0}}.duet-card-collapsed .duet-card-heading{border-radius:var(--duet-card-border-radius)}.duet-card-image-mask+.duet-card-heading{border-radius:0}.duet-card-heading.duet-card-heading--collapsible{cursor:pointer}.duet-card-heading.duet-card-heading--collapsible button{width:100%;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;text-align:left;cursor:pointer}.duet-card-heading.duet-card-heading--collapsible button:focus{outline:0}:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva :host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus,:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus.duet-theme-turva{outline-color:rgba(53, 79, 101, 0.8)}:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus{border-radius:var(--duet-card-border-radius)}.duet-card-collapsed .duet-card-heading{margin-bottom:0 !important;border-bottom:0 !important}@media (min-width: 36em){.xx-small .duet-card-heading{padding:6px 12px 7px !important;margin:-12px -12px 12px}}@media (min-width: 48em){.xx-small .duet-card-heading{padding:6px 12px 7px !important;margin:-12px -12px 12px}}@media (min-width: 36em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}@media (min-width: 48em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}.medium .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.medium .duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}}@media (min-width: 48em){.medium .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}.large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.large .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}@media (min-width: 48em){.large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}.x-large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.x-large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}@media (min-width: 48em){.x-large .duet-card-heading{padding:39px 72px 40px !important;margin:-72px -72px 48px}}.none .duet-card-heading{padding:0;margin:0}.duet-card-footer{padding:20px;margin:20px -20px -20px;font-size:0.875rem;line-height:1.25;background:rgb(245, 248, 250);border-bottom-right-radius:4px;border-bottom-left-radius:4px}@media (min-width: 36em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 36em){.xx-small .duet-card-footer{padding:10px 20px 11px !important;padding-left:12px !important;margin:12px -12px -12px}}@media (min-width: 36em){.x-small .duet-card-footer{padding:15px 28px 16px !important;padding-left:20px !important;margin:20px -20px -20px}}@media (min-width: 36em){.medium .duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.medium .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 36em){.large .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 48em){.large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 36em){.x-large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 48em){.x-large .duet-card-footer{padding:39px 72px 40px !important;margin:48px -72px -72px}}.none .duet-card-footer{padding:0;margin:0}.duet-card-content{flex:1 1 auto;width:100%}.duet-card-collapsed .duet-card-content{display:none}.duet-card-caret{position:relative;top:6px;align-self:flex-start;transition:300ms ease}[aria-expanded=false] .duet-card-caret{transform:rotate(-180deg)}.duet-card-image-mask{position:relative;width:calc(100% + 40px);margin:-20px 0 20px -20px;overflow:hidden;border-top-left-radius:4px;border-top-right-radius:4px}@media (min-width: 36em){.small .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 36em){.medium .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 48em){.medium .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 28px -36px}}@media (min-width: 36em){.large .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 36px -36px}}@media (min-width: 48em){.large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 36em){.x-large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 48em){.x-large .duet-card-image-mask{width:calc(100% + 144px);margin:-72px 0 36px -72px}}.none .duet-card-image-mask{width:100%;padding:0;margin:0}.duet-card-image{display:block;width:102%;min-width:1px;max-width:102%;height:auto;min-height:1px;margin-left:-1%;transform:scale(1.0001);transition:transform 300ms ease}a.duet-card{transition:box-shadow 300ms ease, background-position 300ms ease}a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(0, 41, 77, 0.1)}a.duet-card:hover .duet-card-image{transform:scale(1.024)}.duet-theme-turva a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(117, 117, 117, 0.15)}a.duet-card:active{transform:translateY(1px);transition:none}.duet-card.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);box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}.duet-card.duet-theme-turva.info{background:rgb(253, 247, 242) !important}.duet-card.duet-theme-turva .duet-card-heading{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);border-color:rgb(212, 221, 226)}.duet-card.duet-theme-turva .duet-card-footer{background:rgb(245, 246, 247)}";
|
|
6153
|
+
const duetCardCss = "*,*::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;margin-bottom:20px !important;display:flex;width:100%;vertical-align:top}:host(.duet-card-info){margin-bottom:16px !important}:host(.duet-m-0){margin:0 !important}:host{--duet-card-border-radius:12px}@media (min-width: 36em){:host{--duet-card-border-radius:16px}}.duet-card{padding:20px !important;position:relative;display:flex;flex-direction:column;width:100%;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-style:normal;font-weight:400;line-height:1.5;color:rgb(8, 42, 77);text-decoration:none;border-radius:var(--duet-card-border-radius);box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}.duet-card.duet-p-0{padding:0 !important}.duet-card.duet-m-0{margin:0 !important}.duet-card:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-card:focus,.duet-card:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}@media (max-width: 20.5em){.duet-card.shadow-xxx-small{box-shadow:none}}@media (max-width: 22.5em){.duet-card.shadow-xx-small{box-shadow:none}}@media (max-width: 35.9375em){.duet-card.shadow-x-small{box-shadow:none}}@media (min-width: 36em){.duet-card.shadow-small{box-shadow:none}}@media (min-width: 48em){.duet-card.shadow-medium{box-shadow:none}}@media (min-width: 62em){.duet-card.shadow-large{box-shadow:none}}@media (min-width: 64.0625em){.duet-card.shadow-x-large{box-shadow:none}}@media (min-width: 76.25em){.duet-card.shadow-xx-large{box-shadow:none}}@media (min-width: 106.25em){.duet-card.shadow-xxx-large{box-shadow:none}}@media (min-width: 36em){.duet-card{padding:28px !important}}@media (min-width: 36em){.duet-card.xx-small{padding:12px !important}}@media (min-width: 36em){.duet-card.x-small{padding:20px !important}}@media (min-width: 36em){.duet-card.medium{padding:28px !important}}@media (min-width: 48em){.duet-card.medium{padding:36px !important}}@media (min-width: 36em){.duet-card.large{padding:36px !important}}@media (min-width: 48em){.duet-card.large{padding:48px !important}}@media (min-width: 36em){.duet-card.x-large{padding:48px !important}}@media (min-width: 48em){.duet-card.x-large{padding:72px !important}}.duet-card.duet-card-collapsed{padding-bottom:0 !important}@media (min-width: 36em){.duet-card.duet-card-collapsed{padding-bottom:0 !important}}.duet-card.info{background:rgba(4, 81, 128, 0.04) !important;box-shadow:none}.duet-card.plain{box-shadow:none}.duet-card.plain:not(.duet-card-has-bg){background:transparent !important}.duet-card-heading-grid{display:flex;flex-direction:row}.duet-card-icon{align-self:center}.duet-card-heading-text{flex:1;word-break:break-word}.duet-card-secondary-heading{font-size:1rem;font-weight:600;word-break:break-word}.duet-card-secondary-heading--inline{display:block;flex:1;align-self:flex-start;line-height:1.875;text-align:right}@media (max-width: 22.5em){.duet-card-secondary-heading--inline{display:none}}.duet-card-secondary-heading--new-line{display:none}@media (max-width: 22.5em){.duet-card-secondary-heading--new-line{display:block}}.duet-card-heading{position:relative;display:block;padding:16px 20px;margin:-20px -20px 20px;overflow:hidden;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;color:rgb(8, 42, 77);border-bottom:1px solid rgb(212, 223, 229);border-radius:var(--duet-card-border-radius) var(--duet-card-border-radius) 0 0}@media (min-width: 36em){.duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}.none .duet-card-heading{padding:0 !important;margin:0}}.duet-card-collapsed .duet-card-heading{border-radius:var(--duet-card-border-radius)}.duet-card-image-mask+.duet-card-heading{border-radius:0}.duet-card-heading.duet-card-heading--collapsible{cursor:pointer}.duet-card-heading.duet-card-heading--collapsible button{width:100%;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;text-align:left;cursor:pointer}.duet-card-heading.duet-card-heading--collapsible button:focus{outline:0}:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva :host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus,:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus.duet-theme-turva{outline-color:rgba(53, 79, 101, 0.8)}:host(.user-is-tabbing) .duet-card-heading.duet-card-heading--collapsible button:focus{border-radius:var(--duet-card-border-radius)}.duet-card-collapsed .duet-card-heading{margin-bottom:0 !important;border-bottom:0 !important}@media (min-width: 36em){.xx-small .duet-card-heading{padding:6px 12px 7px !important;margin:-12px -12px 12px}}@media (min-width: 48em){.xx-small .duet-card-heading{padding:6px 12px 7px !important;margin:-12px -12px 12px}}@media (min-width: 36em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}@media (min-width: 48em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}.medium .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.medium .duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}}@media (min-width: 48em){.medium .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}.large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.large .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}@media (min-width: 48em){.large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}.x-large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.x-large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}@media (min-width: 48em){.x-large .duet-card-heading{padding:39px 72px 40px !important;margin:-72px -72px 48px}}.none .duet-card-heading{padding:0;margin:0}.duet-card-footer{padding:20px;margin:20px -20px -20px;font-size:0.875rem;line-height:1.25;background:rgb(245, 248, 250);border-bottom-right-radius:4px;border-bottom-left-radius:4px}@media (min-width: 36em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 36em){.xx-small .duet-card-footer{padding:10px 20px 11px !important;padding-left:12px !important;margin:12px -12px -12px}}@media (min-width: 36em){.x-small .duet-card-footer{padding:15px 28px 16px !important;padding-left:20px !important;margin:20px -20px -20px}}@media (min-width: 36em){.medium .duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.medium .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 36em){.large .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 48em){.large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 36em){.x-large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 48em){.x-large .duet-card-footer{padding:39px 72px 40px !important;margin:48px -72px -72px}}.none .duet-card-footer{padding:0;margin:0}.duet-card-content{flex:1 1 auto;width:100%}.duet-card-collapsed .duet-card-content{display:none}.duet-card-caret{position:relative;top:6px;align-self:flex-start;transition:300ms ease}[aria-expanded=false] .duet-card-caret{transform:rotate(-180deg)}.duet-card-image-mask{position:relative;width:calc(100% + 40px);margin:-20px 0 20px -20px;overflow:hidden;border-top-left-radius:4px;border-top-right-radius:4px}@media (min-width: 36em){.small .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 36em){.medium .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 48em){.medium .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 28px -36px}}@media (min-width: 36em){.large .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 36px -36px}}@media (min-width: 48em){.large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 36em){.x-large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 48em){.x-large .duet-card-image-mask{width:calc(100% + 144px);margin:-72px 0 36px -72px}}.none .duet-card-image-mask{width:100%;padding:0;margin:0}.duet-card-image-mask picture{display:block}.duet-card-image{display:block;width:102%;min-width:1px;max-width:102%;height:auto;min-height:1px;margin-left:-1%;transform:scale(1.0001);transition:transform 300ms ease}a.duet-card{transition:box-shadow 300ms ease, background-position 300ms ease}a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(0, 41, 77, 0.1)}a.duet-card:hover .duet-card-image{transform:scale(1.024)}.duet-theme-turva a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(117, 117, 117, 0.15)}a.duet-card:active{transform:translateY(1px);transition:none}.duet-card.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);box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}.duet-card.duet-theme-turva.info{background:rgb(253, 247, 242) !important}.duet-card.duet-theme-turva .duet-card-heading{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);border-color:rgb(212, 221, 226)}.duet-card.duet-theme-turva .duet-card-footer{background:rgb(245, 246, 247)}";
|
|
6141
6154
|
|
|
6142
6155
|
/**
|
|
6143
6156
|
* @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
|
|
@@ -6282,10 +6295,21 @@ class DuetCard {
|
|
|
6282
6295
|
const styles = {
|
|
6283
6296
|
backgroundColor: getColorByName(this.background),
|
|
6284
6297
|
};
|
|
6285
|
-
|
|
6298
|
+
const pictureSource = {
|
|
6299
|
+
img: {
|
|
6300
|
+
src: this.image,
|
|
6301
|
+
alt: this.imageAlt || "",
|
|
6302
|
+
loading: this.imagePriority === "high" ? "eager" : "lazy",
|
|
6303
|
+
fetchpriority: this.imagePriority,
|
|
6304
|
+
class: "duet-card-image",
|
|
6305
|
+
role: this.imageAlt ? undefined : "presentation",
|
|
6306
|
+
},
|
|
6307
|
+
sources: parsePossibleJSON(this.sources),
|
|
6308
|
+
};
|
|
6309
|
+
return (hAsync(Host, { key: 'e665c5842a71a942c9098bb06045587327958776', class: {
|
|
6286
6310
|
"duet-m-0": this.margin === "none",
|
|
6287
6311
|
"duet-card-info": this.variation === "info",
|
|
6288
|
-
} }, hAsync(TagName, { key: '
|
|
6312
|
+
} }, hAsync(TagName, { key: '10722ae1c42744e1924df0a38313eb68acb8a4b1', href: this.url, style: styles, ref: card => (this.nativeCard = card), "aria-label": this.accessibleLabel, class: {
|
|
6289
6313
|
"duet-card": true,
|
|
6290
6314
|
[this.padding]: true,
|
|
6291
6315
|
[this.variation]: true,
|
|
@@ -6295,7 +6319,7 @@ class DuetCard {
|
|
|
6295
6319
|
"duet-card-has-bg": this.background !== "gray-lightest",
|
|
6296
6320
|
"duet-card-has-icon": !!this.icon,
|
|
6297
6321
|
"duet-card-collapsed": this.collapsible && !this.open,
|
|
6298
|
-
} }, this.image && (hAsync("div", { key: '
|
|
6322
|
+
} }, this.image && (hAsync("div", { key: 'a9a0b21ac68624cba6b3bfb9c0e8d3d87597cfe0', class: "duet-card-image-mask" }, hAsync(DuetPicture, Object.assign({ key: 'efa16a802e16d5be73243c2c1e2c2bd7fe49839b' }, pictureSource)))), (this.heading || this.hasHeadingSlot) && this.renderHeading(), hAsync("div", { key: 'a6ea5db0ad9150e7e5a4dd59ae42bb1c6603aac3', class: "duet-card-content", id: this.cardId }, hAsync("slot", { key: '33a498070a2b68d6361247afe7bd12c440abad6b' }), this.hasFooter && (hAsync("div", { key: 'f2ddb3f3e200fcab419911d5023831019cc4e9e3', class: "duet-card-footer" }, hAsync("slot", { key: 'ac749be2398980321f3cfe4f6b3b679cd2803be0', name: "footer" })))))));
|
|
6299
6323
|
}
|
|
6300
6324
|
get element() { return getElement(this); }
|
|
6301
6325
|
static get style() { return duetCardCss; }
|
|
@@ -6315,6 +6339,8 @@ class DuetCard {
|
|
|
6315
6339
|
"iconColor": [513, "icon-color"],
|
|
6316
6340
|
"image": [1],
|
|
6317
6341
|
"imageAlt": [1, "image-alt"],
|
|
6342
|
+
"imagePriority": [1, "image-priority"],
|
|
6343
|
+
"sources": [1],
|
|
6318
6344
|
"background": [1],
|
|
6319
6345
|
"padding": [1],
|
|
6320
6346
|
"margin": [1],
|
|
@@ -6556,11 +6582,11 @@ class DuetCheckmark {
|
|
|
6556
6582
|
inheritGlobalTheme(this);
|
|
6557
6583
|
}
|
|
6558
6584
|
render() {
|
|
6559
|
-
return (hAsync(Host, { key: '
|
|
6585
|
+
return (hAsync(Host, { key: '599968da32eca61083a4709ce013889772213f97', class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("div", { key: '57f28c3d631c55101a557422617bbd4507ccd2cc', role: this.presentationOnly ? "presentation" : null, class: { checked: this.checked } }, hAsync("div", { key: '6dcd9490f08a532578bd12aa808e40ff5014597d', class: {
|
|
6560
6586
|
"duet-checkmark-container": true,
|
|
6561
6587
|
center: this.center,
|
|
6562
6588
|
"duet-checkmark-radio": this.type === "radio",
|
|
6563
|
-
} }, this.checked && hAsync("div", { key: '
|
|
6589
|
+
} }, this.checked && hAsync("div", { key: '8c27e1f31cf9e1625838308435b62ac73421d350', class: "duet-checkmark" })))));
|
|
6564
6590
|
}
|
|
6565
6591
|
static get style() { return duetCheckmarkCss; }
|
|
6566
6592
|
static get cmpMeta() { return {
|
|
@@ -6608,9 +6634,11 @@ class DuetChip {
|
|
|
6608
6634
|
/**
|
|
6609
6635
|
* Variation of the chip.
|
|
6610
6636
|
* Button should be used to present a list of actions or suggestions. It behaves like a button and must be used
|
|
6611
|
-
* together with a click handler. Filter acts like a checkbox, it can be toggled on or off, and it should be
|
|
6612
|
-
*
|
|
6613
|
-
*
|
|
6637
|
+
* together with a click handler. Filter acts like a checkbox, it can be toggled on or off, and it should be used with
|
|
6638
|
+
* a value. Filter can also be used with a popup-menu - then the initial text describes the type of category of
|
|
6639
|
+
* filtering, and the selection from the popup-menu sets the filter value. Input represents items input by the user,
|
|
6640
|
+
* and the chip can be removed with a click. Radio behaves like a radio button, it can be toggled on or off in a group,
|
|
6641
|
+
* and it should be used with a value and name.
|
|
6614
6642
|
*/
|
|
6615
6643
|
this.variation = "button";
|
|
6616
6644
|
/**
|
|
@@ -6644,6 +6672,10 @@ class DuetChip {
|
|
|
6644
6672
|
* Use this property to add an aria-haspopup attribute.
|
|
6645
6673
|
*/
|
|
6646
6674
|
this.accessiblePopup = "false";
|
|
6675
|
+
/**
|
|
6676
|
+
* Indicates the id or a string of space seperated ids of a component(s) that describes the input.
|
|
6677
|
+
*/
|
|
6678
|
+
this.accessibleDescribedBy = "";
|
|
6647
6679
|
this.enforceNoDisabledSelected = () => {
|
|
6648
6680
|
if (this.disabled && this.checked) {
|
|
6649
6681
|
console.error("Duet error: pre-selected chip may not be disabled");
|
|
@@ -6675,6 +6707,9 @@ class DuetChip {
|
|
|
6675
6707
|
radioInput.value = this.value;
|
|
6676
6708
|
radioInput.checked = this.checked;
|
|
6677
6709
|
radioInput.ariaLabel = this.element.textContent;
|
|
6710
|
+
if (!!this.accessibleDescribedBy) {
|
|
6711
|
+
radioInput.setAttribute("aria-describedby", this.accessibleDescribedBy);
|
|
6712
|
+
}
|
|
6678
6713
|
if (slotInput) {
|
|
6679
6714
|
this.radioInputListenersRemove(radioInput);
|
|
6680
6715
|
}
|
|
@@ -6684,13 +6719,15 @@ class DuetChip {
|
|
|
6684
6719
|
this.radioInputListenersAdd(radioInput);
|
|
6685
6720
|
this.focusableElement = radioInput;
|
|
6686
6721
|
};
|
|
6722
|
+
this.originalFilterChipText = "";
|
|
6723
|
+
this.originalFilterChipValue = "";
|
|
6687
6724
|
this.popupSetUp = () => {
|
|
6688
6725
|
const popup = document.querySelector(`duet-popup-menu#${this.popup}`);
|
|
6689
6726
|
if (popup) {
|
|
6690
6727
|
this.popupElement = popup;
|
|
6691
6728
|
popup.controller = this.element;
|
|
6692
|
-
|
|
6693
|
-
|
|
6729
|
+
this.originalFilterChipText = this.element.textContent;
|
|
6730
|
+
this.originalFilterChipValue = this.value;
|
|
6694
6731
|
if (!popup.id) {
|
|
6695
6732
|
popup.id = "popup-menu";
|
|
6696
6733
|
}
|
|
@@ -6715,8 +6752,8 @@ class DuetChip {
|
|
|
6715
6752
|
}
|
|
6716
6753
|
else {
|
|
6717
6754
|
clearActive();
|
|
6718
|
-
this.element.textContent =
|
|
6719
|
-
this.value =
|
|
6755
|
+
this.element.textContent = this.originalFilterChipText;
|
|
6756
|
+
this.value = this.originalFilterChipValue;
|
|
6720
6757
|
this.checked = false;
|
|
6721
6758
|
}
|
|
6722
6759
|
this.emitChange(evt);
|
|
@@ -6867,6 +6904,11 @@ class DuetChip {
|
|
|
6867
6904
|
getAccessibleInputChipLabel() {
|
|
6868
6905
|
return `${this.element.textContent}${this.selected ? ` (${getLocaleString(this.selectedForDeletionLabels)}) ` : ""},`;
|
|
6869
6906
|
}
|
|
6907
|
+
getAccessibleFilterLabel() {
|
|
6908
|
+
return this.value !== this.originalFilterChipValue
|
|
6909
|
+
? `${this.originalFilterChipText}: ${this.element.textContent}`
|
|
6910
|
+
: undefined;
|
|
6911
|
+
}
|
|
6870
6912
|
/**
|
|
6871
6913
|
* Sets focus. Use this method instead of the global focus().
|
|
6872
6914
|
*/
|
|
@@ -6911,7 +6953,7 @@ class DuetChip {
|
|
|
6911
6953
|
onBlur: this.onBlur,
|
|
6912
6954
|
ref: el => (this.focusableElement = el),
|
|
6913
6955
|
};
|
|
6914
|
-
return (hAsync(Host, { key: '
|
|
6956
|
+
return (hAsync(Host, { key: '84203a4f6d7de284823eb560bfb95b2aec1ac5e4', class: { [this.variation]: true } }, this.variation === "button" && (hAsync("span", { key: '3c735a109cf161c40ff2eb4cdd3ab6ae9ccd07f1', class: classes }, hAsync("button", Object.assign({ key: 'd91978a69db645b988514f9fe147ff6a0e618f06', id: identifier, "aria-label": this.accessibleLabel, "aria-describedby": this.accessibleDescribedBy || undefined, "aria-haspopup": this.getAccessiblePopup(), "aria-expanded": this.getAccessibleExpanded(), "aria-disabled": this.disabled ? "true" : undefined, name: this.name, value: this.value, onClick: this.disabled ? evt => evt.stopPropagation() : undefined }, focusHandlers), hAsync("span", { key: '00a9bfa1e9b1654a6b1bdbd47298f54ccdc445f5', class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { key: '2f8756f5ffb41e04e5842dab15f1b908086c753d', name: this.icon, size: "x-small", margin: "none", color: "currentColor" }))), hAsync("slot", { key: '2e791bd8bab1495608208ad696fe9150ddc28e34' })))), this.variation === "input" && (hAsync("span", { key: 'd6a9ece4abe8ebac562a31e3970255bbe4f8eadd', class: classes }, hAsync("button", Object.assign({ key: 'dbb7a3ee7849bb53b58bae7dcb6373ec685de638', id: identifier, class: "duet-chip-input-button", value: this.value, "aria-label": this.getAccessibleInputChipLabel(), "aria-describedby": this.accessibleDescribedBy, onMouseOver: () => (this.inputChipHover = true), onMouseOut: () => (this.inputChipHover = false), onClick: () => (this.selected = !this.selected) }, focusHandlers), hAsync("span", { key: '1e0b295b70924c7bbaf945ba1af950f63668c5a8', class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { key: '1d5ec89006c85f4b8a630215a19055d863c67416', name: this.icon, size: "x-small", margin: "none", color: "currentColor" }))), hAsync("slot", { key: '5f52df5a6d4d675f24a6bd927593e336612997f5' })), hAsync("button", { key: 'f056e733dcc146eed6228a060736690a33c40311', class: "duet-chip-remove-button", "aria-label": this.getAccessibleDeleteLabel(), onClick: this.onRemoveClick, onFocus: () => (this.inputChipDeleteFocus = true), onBlur: () => (this.inputChipDeleteFocus = false), ref: el => (this.deleteButtonElement = el) }, hAsync("duet-icon", { key: '6f052eca141e3eea229954f7034c479d14c38d6f', name: "activity-close", size: "xx-small", margin: "none", color: "currentColor" })))), this.variation === "filter" && (hAsync("span", { key: 'b573900d3ad93f1e8f49bb1f27e7d1d5e87f1ad3', class: classes }, hAsync("input", Object.assign({ key: 'd558bee064252fff70ef6db2b7292d8e5019bd78', "aria-haspopup": this.getAccessiblePopup(), "aria-controls": (_a = this.popupElement) === null || _a === void 0 ? void 0 : _a.id, "aria-expanded": this.getAccessibleExpanded(), "aria-disabled": this.disabled ? "true" : undefined, "aria-label": this.getAccessibleFilterLabel(), "aria-describedby": this.accessibleDescribedBy || undefined, id: identifier, type: "checkbox", name: this.name, value: this.value, checked: this.checked, onClick: this.onFilterClick, onChange: this.onFilterChange }, focusHandlers)), hAsync("label", { key: '7f88107a9734bd1142d00dc26ce1ceed694b0904', htmlFor: identifier }, this.icon && (hAsync("span", { key: '35559b51d65f9d609edebe6d641c11f936b43bd2', class: "duet-chip-icon-container" }, hAsync("duet-icon", { key: 'a1a51b616e4fb7c9d949bfca74a6cb1a7fa549a5', name: this.icon, size: this.size === "large" ? "small" : "x-small", margin: "none", color: "currentColor" }), hAsync("duet-icon", { key: '320133b510ed5702a9fd1a30f01deb9b266531f8', name: "messaging-checked-small", size: this.size === "large" ? "x-small" : "xx-small", margin: "none", color: "currentColor", class: "check-mark" }))), hAsync("slot", { key: 'b1133a5c686b6c8fc8a6f7d16281b25a584f8943' }), this.popupElement && (hAsync("span", { key: 'd6d6785289ba11bfcb83877c45f85e9ad9f43683', class: "duet-chip-popup-disclosure" }, hAsync("duet-icon", { key: '3c930adbf23abfeee3d2c5fcbbb151878a4b9a39', name: "action-arrow-down-small", size: this.size === "large" ? "xx-small" : "xxx-small", margin: "none", color: "currentColor" })))))), this.variation === "radio" && (hAsync("span", { key: 'aa5035fea2416069bc01fe07a28b3da134fdd886', class: classes }, hAsync("slot", { key: 'f861682874396c57779c427fb4f89556884f9434', name: "input" }), hAsync("label", { key: '80a7465dae485bf1cdcbee5b10210dc158c6425b', htmlFor: identifier }, this.icon && (hAsync("span", { key: 'dc5ffe43af42a08253de88bdc17a16022cd3a40d', class: "duet-chip-icon-container" }, hAsync("duet-icon", { key: 'c0b3326871d1f440b1196fdef2d6a6961b8b883f', name: this.icon, size: this.size === "large" ? "small" : "x-small", margin: "none", color: "currentColor" }), hAsync("duet-icon", { key: 'f6d6f16565393969a6945d11f00736726e95aef1', name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor", class: "check-mark" }))), hAsync("slot", { key: '8ba0c81daff6bc6f966afd5f75582a89f932e8b1' }))))));
|
|
6915
6957
|
}
|
|
6916
6958
|
get element() { return getElement(this); }
|
|
6917
6959
|
static get watchers() { return {
|
|
@@ -6937,6 +6979,7 @@ class DuetChip {
|
|
|
6937
6979
|
"disabled": [4],
|
|
6938
6980
|
"accessibleExpanded": [1540, "accessible-expanded"],
|
|
6939
6981
|
"accessiblePopup": [1537, "accessible-popup"],
|
|
6982
|
+
"accessibleDescribedBy": [1, "accessible-described-by"],
|
|
6940
6983
|
"focus": [32],
|
|
6941
6984
|
"popupElement": [32],
|
|
6942
6985
|
"popupOpen": [32],
|
|
@@ -7604,14 +7647,14 @@ class DuetChoiceGroup {
|
|
|
7604
7647
|
* Always the last one in the class.
|
|
7605
7648
|
*/
|
|
7606
7649
|
render() {
|
|
7607
|
-
return (hAsync(Host, { key: '
|
|
7650
|
+
return (hAsync(Host, { key: 'd310a51e8554b474adaaa10b91392effcac7e189', onDuetChange: this.onSelect, onDuetChoiceReady: this.onChoiceReady, class: {
|
|
7608
7651
|
horizontal: this.direction === "horizontal",
|
|
7609
7652
|
"duet-choice-group-breakpoint-x-small": this.responsive && this.breakpoint === "x-small",
|
|
7610
7653
|
"duet-choice-group-breakpoint-small": this.responsive && this.breakpoint === "small",
|
|
7611
7654
|
"duet-choice-group-breakpoint-medium": this.responsive && this.breakpoint === "medium",
|
|
7612
7655
|
"duet-choice-group-breakpoint-large": this.responsive && this.breakpoint === "large",
|
|
7613
7656
|
"duet-choice-group-breakpoint-x-large": this.responsive && this.breakpoint === "x-large",
|
|
7614
|
-
} }, hAsync("duet-fieldset", { key: '
|
|
7657
|
+
} }, hAsync("duet-fieldset", { key: 'a107c1b68c3227d3236020bb9721218f1be052fd', label: this.label, labelHidden: this.labelHidden, compactLabel: true, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: '0e45f60e7b2ebe7f30f0f87216bbcc176244f80a', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: 'd129fc812d0be8450b08588910c30be0b4db8a02', name: "tooltip", slot: "tooltip" }), hAsync("div", { key: 'e2ca5fd41342dd4b38442fbb718f2a06c1ba3237', class: { [this.choiceGroupName]: true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '12f74fdf5360122b6d5fef83495ba68dede524da' })))));
|
|
7615
7658
|
}
|
|
7616
7659
|
get element() { return getElement(this); }
|
|
7617
7660
|
static get watchers() { return {
|
|
@@ -9156,7 +9199,7 @@ class DuetCombobox {
|
|
|
9156
9199
|
if (!this.force && !this.multiple && this.selectedItems.size > 0 && newValue !== this.getSelectedItemLabel()) {
|
|
9157
9200
|
this.selectedItems.clear();
|
|
9158
9201
|
}
|
|
9159
|
-
if (!this.
|
|
9202
|
+
if (!this.multiple && newValue === "") {
|
|
9160
9203
|
this.value = undefined;
|
|
9161
9204
|
}
|
|
9162
9205
|
this.listOpen = String(newValue).length >= this.minCharacters && ((_a = this.getFilteredItems()) === null || _a === void 0 ? void 0 : _a.length) > 0;
|
|
@@ -9264,15 +9307,6 @@ class DuetCombobox {
|
|
|
9264
9307
|
}
|
|
9265
9308
|
this.activeItemAnnouncement = "";
|
|
9266
9309
|
}
|
|
9267
|
-
inputValueHandler() {
|
|
9268
|
-
setTimeout(async () => {
|
|
9269
|
-
const label = await this.getSelectedItemLabel();
|
|
9270
|
-
if (this.input.value == "" && label) {
|
|
9271
|
-
this.input.value = "";
|
|
9272
|
-
this.value = undefined;
|
|
9273
|
-
}
|
|
9274
|
-
}, 200);
|
|
9275
|
-
}
|
|
9276
9310
|
handleDocumentClick(e) {
|
|
9277
9311
|
//we want to remove all user text if they have NOT selected from the dropdown
|
|
9278
9312
|
const path = e.composedPath();
|
|
@@ -9626,7 +9660,6 @@ class DuetCombobox {
|
|
|
9626
9660
|
static get watchers() { return {
|
|
9627
9661
|
"listOpen": ["popupMenuOpenHandler", "processListOpenChange"],
|
|
9628
9662
|
"activeItem": ["activeItemHandler"],
|
|
9629
|
-
"inputValue": ["inputValueHandler"],
|
|
9630
9663
|
"items": ["processItems"],
|
|
9631
9664
|
"value": ["processValue"]
|
|
9632
9665
|
}; }
|
|
@@ -9663,7 +9696,7 @@ class DuetCombobox {
|
|
|
9663
9696
|
}; }
|
|
9664
9697
|
}
|
|
9665
9698
|
|
|
9666
|
-
const duetContactCardCss = "*,*::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;margin-bottom:12px !important;display:block}:host(.duet-m-0){margin:0 !important}::slotted(*){padding-top:1.5rem}@media (min-width: 48em){::slotted(*){grid-column:2/span 2;padding-top:0}}.duet-contact-card{display:grid;grid-template-columns:100%;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;line-height:1.5;color:rgb(8, 42, 77)}@media (min-width: 48em){.duet-contact-card{grid-template-columns:min-content minmax(0, 1fr) auto;gap:20px}}.duet-contact-card .image{width:4rem;height:4rem;margin-bottom:8px;border-radius:4px}@media (min-width: 48em){.duet-contact-card .image{width:6rem;height:6rem;padding-bottom:0}}.duet-contact-card .description{padding-bottom:8px}.duet-contact-card .email,.duet-contact-card .phone{display:grid;grid-template-columns:min-content auto;gap:8px;align-items:center;justify-content:flex-start;padding-bottom:8px;overflow-wrap:break-word}.duet-contact-card.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)}";
|
|
9699
|
+
const duetContactCardCss = "*,*::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;margin-bottom:12px !important;display:block}:host(.duet-m-0){margin:0 !important}::slotted(*){padding-top:1.5rem}@media (min-width: 48em){::slotted(*){grid-column:2/span 2;padding-top:0}}.duet-contact-card{display:grid;grid-template-columns:100%;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;line-height:1.5;color:rgb(8, 42, 77)}@media (min-width: 48em){.duet-contact-card{grid-template-columns:min-content minmax(0, 1fr) auto;gap:20px}}.duet-contact-card picture{display:block}.duet-contact-card .image{width:4rem;height:4rem;margin-bottom:8px;border-radius:4px}@media (min-width: 48em){.duet-contact-card .image{width:6rem;height:6rem;padding-bottom:0}}.duet-contact-card .description{padding-bottom:8px}.duet-contact-card .email,.duet-contact-card .phone{display:grid;grid-template-columns:min-content auto;gap:8px;align-items:center;justify-content:flex-start;padding-bottom:8px;overflow-wrap:break-word}.duet-contact-card.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)}";
|
|
9667
9700
|
|
|
9668
9701
|
class DuetContactCard {
|
|
9669
9702
|
constructor(hostRef) {
|
|
@@ -9709,10 +9742,20 @@ class DuetContactCard {
|
|
|
9709
9742
|
render() {
|
|
9710
9743
|
const isTurva = this.theme === "turva";
|
|
9711
9744
|
const theme = isTurva ? "turva" : "default";
|
|
9712
|
-
|
|
9745
|
+
const pictureSource = {
|
|
9746
|
+
img: {
|
|
9747
|
+
src: this.image,
|
|
9748
|
+
alt: this.name || "",
|
|
9749
|
+
loading: this.imagePriority === "high" ? "eager" : "lazy",
|
|
9750
|
+
fetchpriority: this.imagePriority,
|
|
9751
|
+
class: "image",
|
|
9752
|
+
},
|
|
9753
|
+
sources: parsePossibleJSON(this.sources),
|
|
9754
|
+
};
|
|
9755
|
+
return (hAsync(Host, { key: 'e33b5a9345cc0e38336978b22b5a5e833bb03bb9', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '836de470febdb6a96d024a08f55a25a62392b350', class: {
|
|
9713
9756
|
"duet-contact-card": true,
|
|
9714
9757
|
"duet-theme-turva": this.theme === "turva",
|
|
9715
|
-
}, role: "group", "aria-label": this.name }, this.image ? hAsync(
|
|
9758
|
+
}, role: "group", "aria-label": this.name }, this.image ? hAsync(DuetPicture, Object.assign({}, pictureSource)) : hAsync("div", null), hAsync("div", { key: '7b0b31acf238f0b6c8a8579bc22f5f819fa794a3' }, this.name && (hAsync("duet-heading", { key: '03c95063f1c164feeee6d7ffec8050e76a863065', class: "name", level: "h3", margin: "none", theme: theme }, this.name)), this.description && (hAsync("duet-paragraph", { key: '35343cc1d650f5f6f83d1c98db2e7d5d8df32232', class: "description", margin: "none", theme: theme }, this.description)), this.email && (hAsync("div", { key: 'a4565eeb9a17b36e5cb086f4a7a071f7da471958', class: "email" }, hAsync("duet-icon", { key: '622531d9bba0fb9991aa5d15577d906aa637fb97', name: "navigation-message", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: 'dc454c0170ea57a3e9e9a1c891cda1852c20330c', url: `mailto:${this.email}`, accessibleLabel: `Email: ${this.email}`, theme: theme }, this.email))), this.phone && (hAsync("div", { key: '8df6d3ba05579ea713093fb7a254c85ea2827f17', class: "phone" }, hAsync("duet-icon", { key: 'c0551285cbe9b64e23ca131cbc6be05efab7bbe1', name: "form-tel", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: 'd3f01bfb37c0120280514925cb386a75f660ee26', url: `tel:${this.phone}`, accessibleLabel: `${this.phoneLabel[this.language]}: ${this.phone}`, theme: theme }, this.phone)))), this.buttonUrl && this.buttonText && (hAsync("div", { key: 'df56d1a6ac897401fa74b40da6f163908dedd2db', class: "call-to-action" }, hAsync("duet-button", { key: 'be684b20bf8f7f976cc2b8934b10650c09dc824d', variation: "default", icon: this.buttonIcon, fixed: true, margin: "none", url: this.buttonUrl, theme: theme }, this.buttonText))), hAsync("div", { key: 'c1719ef0b401fd6d6a189a68ad61a6339f1299c9' }), hAsync("slot", { key: '59366556e70ea407134c67f51da830cab886171d' }))));
|
|
9716
9759
|
}
|
|
9717
9760
|
get element() { return getElement(this); }
|
|
9718
9761
|
static get style() { return duetContactCardCss; }
|
|
@@ -9723,6 +9766,8 @@ class DuetContactCard {
|
|
|
9723
9766
|
"theme": [1025],
|
|
9724
9767
|
"margin": [1],
|
|
9725
9768
|
"image": [1025],
|
|
9769
|
+
"imagePriority": [1, "image-priority"],
|
|
9770
|
+
"sources": [1],
|
|
9726
9771
|
"name": [1025],
|
|
9727
9772
|
"description": [1025],
|
|
9728
9773
|
"email": [1025],
|
|
@@ -10092,6 +10137,13 @@ function setYear(date, year) {
|
|
|
10092
10137
|
d.setFullYear(year);
|
|
10093
10138
|
return d;
|
|
10094
10139
|
}
|
|
10140
|
+
/**
|
|
10141
|
+
* Check if date falls on a Saturday or Sunday
|
|
10142
|
+
*/
|
|
10143
|
+
function isWeekend(date) {
|
|
10144
|
+
const day = date.getDay();
|
|
10145
|
+
return day === 0 || day === 6;
|
|
10146
|
+
}
|
|
10095
10147
|
/**
|
|
10096
10148
|
* Check if date is within a min and max
|
|
10097
10149
|
*/
|
|
@@ -10155,6 +10207,88 @@ const DatePickerDay = ({ focusedDay, today, day, language, onDaySelect, onKeyboa
|
|
|
10155
10207
|
hAsync("span", { class: { "duet-date-table-button": true, outside: isOutsideRange, disabled: isDisabled, today: isToday } }, day.getDate())));
|
|
10156
10208
|
};
|
|
10157
10209
|
|
|
10210
|
+
const holidaysByYear = new Map();
|
|
10211
|
+
/**
|
|
10212
|
+
* Calculate the date of Easter Sunday for a given year using the
|
|
10213
|
+
* Meeus/Jones/Butcher Gregorian algorithm.
|
|
10214
|
+
*/
|
|
10215
|
+
function getEasterSunday(year) {
|
|
10216
|
+
const a = year % 19;
|
|
10217
|
+
const b = Math.floor(year / 100);
|
|
10218
|
+
const c = year % 100;
|
|
10219
|
+
const d = Math.floor(b / 4);
|
|
10220
|
+
const e = b % 4;
|
|
10221
|
+
const f = Math.floor((b + 8) / 25);
|
|
10222
|
+
const g = Math.floor((b - f + 1) / 3);
|
|
10223
|
+
const h = (19 * a + b - d - g + 15) % 30;
|
|
10224
|
+
const i = Math.floor(c / 4);
|
|
10225
|
+
const k = c % 4;
|
|
10226
|
+
const l = (32 + 2 * e + 2 * i - h - k) % 7;
|
|
10227
|
+
const m = Math.floor((a + 11 * h + 22 * l) / 451);
|
|
10228
|
+
const monthAndDay = h + l - 7 * m + 114;
|
|
10229
|
+
const month = Math.floor(monthAndDay / 31);
|
|
10230
|
+
const day = (monthAndDay % 31) + 1;
|
|
10231
|
+
return new Date(year, month - 1, day);
|
|
10232
|
+
}
|
|
10233
|
+
/**
|
|
10234
|
+
* Midsummer Eve is the Friday falling between 19 and 25 June (inclusive).
|
|
10235
|
+
*/
|
|
10236
|
+
function getMidsummerEve(year) {
|
|
10237
|
+
for (let day = 19; day <= 25; day++) {
|
|
10238
|
+
const date = new Date(year, 5, day);
|
|
10239
|
+
if (date.getDay() === 5) {
|
|
10240
|
+
return date;
|
|
10241
|
+
}
|
|
10242
|
+
}
|
|
10243
|
+
}
|
|
10244
|
+
/**
|
|
10245
|
+
* Finnish bank holidays for a given year, as published by the Bank of Finland:
|
|
10246
|
+
* https://www.suomenpankki.fi/en/money-and-payments/bank-holidays/
|
|
10247
|
+
*/
|
|
10248
|
+
function getFinnishBankHolidays(year) {
|
|
10249
|
+
if (holidaysByYear.has(year)) {
|
|
10250
|
+
return holidaysByYear.get(year);
|
|
10251
|
+
}
|
|
10252
|
+
const easterSunday = getEasterSunday(year);
|
|
10253
|
+
const holidays = [
|
|
10254
|
+
new Date(year, 0, 1), // New Year's Day
|
|
10255
|
+
new Date(year, 0, 6), // Epiphany
|
|
10256
|
+
addDays(easterSunday, -2), // Good Friday
|
|
10257
|
+
addDays(easterSunday, 1), // Easter Monday
|
|
10258
|
+
new Date(year, 4, 1), // May Day
|
|
10259
|
+
addDays(easterSunday, 39), // Ascension Day
|
|
10260
|
+
getMidsummerEve(year), // Midsummer Eve
|
|
10261
|
+
new Date(year, 11, 6), // Independence Day
|
|
10262
|
+
new Date(year, 11, 24), // Christmas Eve
|
|
10263
|
+
new Date(year, 11, 25), // Christmas Day
|
|
10264
|
+
new Date(year, 11, 26), // Boxing Day
|
|
10265
|
+
];
|
|
10266
|
+
holidaysByYear.set(year, holidays);
|
|
10267
|
+
return holidays;
|
|
10268
|
+
}
|
|
10269
|
+
function isFinnishBankHoliday(date) {
|
|
10270
|
+
return getFinnishBankHolidays(date.getFullYear()).some(holiday => isEqual(holiday, date));
|
|
10271
|
+
}
|
|
10272
|
+
|
|
10273
|
+
function parseDisallowedDates(disallowedDates) {
|
|
10274
|
+
if (!disallowedDates) {
|
|
10275
|
+
return [];
|
|
10276
|
+
}
|
|
10277
|
+
return Array.isArray(disallowedDates) ? disallowedDates : disallowedDates.split(",").map(date => date.trim());
|
|
10278
|
+
}
|
|
10279
|
+
/**
|
|
10280
|
+
* Check if a date is disallowed by any of the given weekend/bank-holiday/explicit-date rules
|
|
10281
|
+
*/
|
|
10282
|
+
function isDateDisallowed(date, options) {
|
|
10283
|
+
if (options.disallowWeekends && isWeekend(date)) {
|
|
10284
|
+
return true;
|
|
10285
|
+
}
|
|
10286
|
+
if (options.disallowBankHolidays && isFinnishBankHoliday(date)) {
|
|
10287
|
+
return true;
|
|
10288
|
+
}
|
|
10289
|
+
return parseDisallowedDates(options.disallowedDates).some(isoDate => isEqual(parseISODate(isoDate), date));
|
|
10290
|
+
}
|
|
10291
|
+
|
|
10158
10292
|
/**
|
|
10159
10293
|
* Creates an array representing an inclusive numeric range.
|
|
10160
10294
|
* `from` must be less than `to`
|
|
@@ -10214,7 +10348,7 @@ function createShortcuts(shortcuts) {
|
|
|
10214
10348
|
};
|
|
10215
10349
|
}
|
|
10216
10350
|
|
|
10217
|
-
const DatePickerMonth = ({ selectedDate, focusedDate, labelledById, theme, language, min, max, onDateSelect, onKeyboardNavigation, focusedDayRef, onFocusEnter, onFocusExit, }) => {
|
|
10351
|
+
const DatePickerMonth = ({ selectedDate, focusedDate, labelledById, theme, language, min, max, disallowWeekends, disallowBankHolidays, disallowedDates, onDateSelect, onKeyboardNavigation, focusedDayRef, onFocusEnter, onFocusExit, }) => {
|
|
10218
10352
|
const { dayLabels } = i18n$2[language];
|
|
10219
10353
|
const today = new Date();
|
|
10220
10354
|
const days = getViewOfMonth(focusedDate);
|
|
@@ -10232,7 +10366,8 @@ const DatePickerMonth = ({ selectedDate, focusedDate, labelledById, theme, langu
|
|
|
10232
10366
|
hAsync("thead", null,
|
|
10233
10367
|
hAsync("tr", null, dayLabels.map(label => (hAsync("th", { scope: "col" },
|
|
10234
10368
|
hAsync("span", { "aria-hidden": "true" }, label.substr(0, 2))))))),
|
|
10235
|
-
hAsync("tbody", null, chunk(days, 7).map(week => (hAsync("tr", { class: "duet-date-table-row" }, week.map(day => (hAsync(DatePickerDay, { day: day, today: today, language: language, focusedDay: focusedDate, inRange: inRange(day, min, max)
|
|
10369
|
+
hAsync("tbody", null, chunk(days, 7).map(week => (hAsync("tr", { class: "duet-date-table-row" }, week.map(day => (hAsync(DatePickerDay, { day: day, today: today, language: language, focusedDay: focusedDate, inRange: inRange(day, min, max) &&
|
|
10370
|
+
!isDateDisallowed(day, { disallowWeekends, disallowBankHolidays, disallowedDates }), isSelected: isEqual(day, selectedDate), onDaySelect: onDateSelect, onKeyboardNavigation: onKeyboardNavigation, ref: el => {
|
|
10236
10371
|
if (el && isEqual(day, focusedDate)) {
|
|
10237
10372
|
focusedDayRef(el);
|
|
10238
10373
|
}
|
|
@@ -10278,6 +10413,11 @@ class DuetDatePicker {
|
|
|
10278
10413
|
fi: "Päivämäärä vaaditaan",
|
|
10279
10414
|
sv: "Datum krävs",
|
|
10280
10415
|
},
|
|
10416
|
+
customError: {
|
|
10417
|
+
en: "Date not allowed",
|
|
10418
|
+
fi: "Päivämäärä ei sallittu",
|
|
10419
|
+
sv: "Datum inte tillåtet",
|
|
10420
|
+
},
|
|
10281
10421
|
};
|
|
10282
10422
|
this.open = false;
|
|
10283
10423
|
this.focusedDay = new Date();
|
|
@@ -10386,6 +10526,19 @@ class DuetDatePicker {
|
|
|
10386
10526
|
* This setting can be used alone or together with the min property.
|
|
10387
10527
|
*/
|
|
10388
10528
|
this.max = "";
|
|
10529
|
+
/**
|
|
10530
|
+
* Disallow selecting Saturdays and Sundays.
|
|
10531
|
+
*/
|
|
10532
|
+
this.disallowWeekends = false;
|
|
10533
|
+
/**
|
|
10534
|
+
* Disallow selecting Finnish bank holidays, including Easter-based dates and Midsummer Eve.
|
|
10535
|
+
*/
|
|
10536
|
+
this.disallowBankHolidays = false;
|
|
10537
|
+
/**
|
|
10538
|
+
* Disallow selecting specific dates. Accepts an array of ISO-8601 (YYYY-MM-DD) dates,
|
|
10539
|
+
* or a comma-separated string of the same when set as an HTML attribute.
|
|
10540
|
+
*/
|
|
10541
|
+
this.disallowedDates = [];
|
|
10389
10542
|
/**
|
|
10390
10543
|
* Increment to add to years, defaults to 10 for simplicity, if you need a larger selectionspace you can set it to 100
|
|
10391
10544
|
*/
|
|
@@ -10488,7 +10641,7 @@ class DuetDatePicker {
|
|
|
10488
10641
|
this.handleDaySelect = (_event, day) => {
|
|
10489
10642
|
const min = parseISODate(this.min);
|
|
10490
10643
|
const max = parseISODate(this.max);
|
|
10491
|
-
if (inRange(day, min, max)) {
|
|
10644
|
+
if (inRange(day, min, max) && !isDateDisallowed(day, this)) {
|
|
10492
10645
|
this.setValue(day);
|
|
10493
10646
|
this.hide();
|
|
10494
10647
|
}
|
|
@@ -10509,6 +10662,7 @@ class DuetDatePicker {
|
|
|
10509
10662
|
* This offers information relating to the current validity of the component.
|
|
10510
10663
|
* It follow as closely as possible the behaviour of the native date input.
|
|
10511
10664
|
* Useful properties to inspect are badInput, valueMissing, rangeOverflow, rangeUnderflow.
|
|
10665
|
+
* For disallowed dates property customError is set true.
|
|
10512
10666
|
*/
|
|
10513
10667
|
get validity() {
|
|
10514
10668
|
this.determineValidity();
|
|
@@ -10632,9 +10786,10 @@ class DuetDatePicker {
|
|
|
10632
10786
|
const valueMissing = !valueAsDate && this.required;
|
|
10633
10787
|
const rangeOverflow = valueAsDate ? !inRange(valueAsDate, null, parseISODate(this.max)) : false;
|
|
10634
10788
|
const rangeUnderflow = valueAsDate ? !inRange(valueAsDate, parseISODate(this.min)) : false;
|
|
10789
|
+
const customError = valueAsDate ? isDateDisallowed(valueAsDate, this) : false;
|
|
10635
10790
|
this._validity = {
|
|
10636
10791
|
patternMismatch: false,
|
|
10637
|
-
customError
|
|
10792
|
+
customError,
|
|
10638
10793
|
stepMismatch: false,
|
|
10639
10794
|
tooLong: false,
|
|
10640
10795
|
tooShort: false,
|
|
@@ -10643,7 +10798,7 @@ class DuetDatePicker {
|
|
|
10643
10798
|
rangeUnderflow,
|
|
10644
10799
|
rangeOverflow,
|
|
10645
10800
|
valueMissing,
|
|
10646
|
-
valid: !(valueMissing || badInput || rangeUnderflow || rangeOverflow),
|
|
10801
|
+
valid: !(valueMissing || badInput || rangeUnderflow || rangeOverflow || customError),
|
|
10647
10802
|
};
|
|
10648
10803
|
if (this._validity.valid) {
|
|
10649
10804
|
this.error = "";
|
|
@@ -10706,13 +10861,13 @@ class DuetDatePicker {
|
|
|
10706
10861
|
if (maxDate) {
|
|
10707
10862
|
maxYear = Math.min(maxYear, maxDate.getFullYear());
|
|
10708
10863
|
}
|
|
10709
|
-
return (hAsync(Host, { key: '
|
|
10864
|
+
return (hAsync(Host, { key: '574a2e443eb79af37f178f46845a206f561cba2e', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '62fa53292d9b464c3bfce84805c61abbc729b32c', class: "duet-date" }, hAsync(DatePickerInput, { key: 'fd44ced264f1b867ffa5642a110d118cfd8a7977', hasFocus: this.inputHasFocus, value: this.value, valueAsDate: valueAsDate, formattedValue: this.inputValue, language: this.language, onInput: this.handleInputChange, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.toggleOpen, name: this.name, disabled: this.disabled, error: this.error, role: this.role, required: this.required, theme: this.theme, tooltip: this.tooltip, tooltipDirection: this.tooltipDirection, labelHidden: this.labelHidden, placeholder: this.placeholder, inputLabel: this.label, identifier: this.identifier, buttonRef: element => (this.datePickerButton = element), inputRef: element => (this.datePickerInput = element), accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy, accessibleLiveError: this.accessibleLiveError, echoPlaceholder: this.echoPlaceholder, caption: this.caption })), hAsync("div", { key: '7db19721a17bc48c0f232de5a91e9aee49435f6b', class: {
|
|
10710
10865
|
"duet-theme-turva": this.theme === "turva",
|
|
10711
10866
|
"duet-date-dialog": true,
|
|
10712
10867
|
left: this.direction === "left",
|
|
10713
10868
|
error: !!this.error,
|
|
10714
10869
|
active: this.open,
|
|
10715
|
-
}, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, hAsync("duet-overlay", { key: '
|
|
10870
|
+
}, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, hAsync("duet-overlay", { key: 'b762f7971ef0f3cfdba4338da8b66ddd932d739c', visible: this.open, "display-device": "x-small" }), hAsync(FocusGuard, { key: '116f8a028515e1cabbdfe6c7c4fbe46a366e8417', moveFocusTo: this.focusedDayNode }), hAsync("div", { key: '46df5dc4188ca94f1e9288cc94b369a56a951ee1', class: "duet-date-dialog-wrapper", onKeyDown: this.handleEscKey, ref: element => (this.dialogWrapperNode = element) }, hAsync("duet-visually-hidden", { key: '1de44e1f4c44b9c97adb419fa7abf60f937b0fa2', "aria-live": "polite" }, text.keyboardInstruction), hAsync("div", { key: '4a36684eab5f83211dcd9f04f240ad535f781376', class: "duet-date-dialog-mobile-header" }, hAsync(DuetInternalLabel, { key: 'ef9877f7fc10b63428437a0ddbc07a787792617b', margin: "none" }, this.label), hAsync("button", { key: '52b087991727aa7c32178aef85a7ff6a88b33f6e', class: "duet-date-picker-close", ref: element => (this.closeButtonNode = element), onClick: () => this.hide(), type: "button" }, hAsync("duet-icon", { key: '9434a8ab91835101fca28fb28d3ba3b5fc768583', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xx-small" }), hAsync("duet-visually-hidden", { key: 'eaa01ae0b3e0270af1ee5b7777c4bf1c823ed55d' }, text.closeLabel))), hAsync("div", { key: '8f59e259985eb3628f23dd8aa4edd90eab33ce45', class: "duet-date-dialog-header" }, hAsync("div", { key: 'fd9e2ffede5b19a2008684f5587663372a769b0f', class: "duet-date-dialog-dropdowns" }, hAsync("duet-visually-hidden", { key: '9bfda8777868d3a1a0b5dfb1146d4bd22ece9b9d' }, hAsync("h2", { key: '4f8171f8b0bfabeb8ef0d44f604c668810572ba8', id: this.dialogLabelId, "aria-live": "polite", "aria-atomic": "true" }, text.monthLabels[focusedMonth], " ", this.focusedDay.getFullYear())), hAsync("duet-visually-hidden", { key: 'f55f26894bef3e11233e3d72b62d70ff5f4f30fc' }, hAsync("label", { key: '01d6cda898862ee9c82f018e4a875a54c8a4454c', htmlFor: this.monthSelectId }, text.monthSelectLabel)), hAsync("div", { key: '758b166665674a916ab6d6b2c9fd78b6f51f27fd', class: "duet-date-dialog-select" }, hAsync("select", { key: '548b2e7615f581454c64c30fe8e8c8d6dfe0d969', id: this.monthSelectId, class: "duet-date-month-select", ref: element => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, text.monthLabels.map((month, i) => (hAsync("option", { key: month, value: i, selected: i === focusedMonth, disabled: !inRange(new Date(focusedYear, i, 1), minDate ? startOfMonth(minDate) : null, maxDate ? endOfMonth(maxDate) : null) }, month)))), hAsync("div", { key: '34d1e610de1d9f1c1436fdf1ffb2294742269696', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, hAsync("span", { key: '84d57f82660038e7fb7d631e6eb03be0ef9c4315' }, text.monthLabelsShort[focusedMonth]), hAsync("duet-icon", { key: 'f706752d81c80ae05bf13a19ed6cfa3b2d7262cc', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" }))), hAsync("duet-visually-hidden", { key: 'fb67730ced2246377442fb2fd2ebf5086db34fbd' }, hAsync("label", { key: '0d3d28925711a15b919004ad2384c719b9832f7d', htmlFor: this.yearSelectId }, text.yearSelectLabel)), hAsync("div", { key: '371bb8461b655460da25e9982e17c0385fab8f71', class: "duet-date-dialog-select" }, hAsync("select", { key: 'c466eed369426ad7cc78fbed3278a0523529920c', id: this.yearSelectId, class: "duet-date-year-select", onChange: this.handleYearSelect }, range(minYear, maxYear).map(year => (hAsync("option", { key: year, selected: year === focusedYear }, year)))), hAsync("div", { key: '78db254ed00d0d7b5104f4932415d970ff17e1f4', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, hAsync("span", { key: '9a66b0dad5bf39fd769cd851cb529b4568310d9d' }, this.focusedDay.getFullYear()), hAsync("duet-icon", { key: 'a68a8da9385f631020ba28389caf1b611def6676', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))), hAsync("div", { key: 'd1dd09f7da7f1e9d50cdd79ae97d13ba4d89be25', class: "duet-date-dialog-buttons" }, hAsync("duet-action-button", { key: 'e7b3c41d7d56f2c24b4e69db80e4c8fc2e0395a2', accessibleLabel: i18n$2[this.language].prevMonthLabel, actionName: i18n$2[this.language].prevMonthLabel, class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, "icon-name": "action-arrow-left-small" }, text.prevMonthLabel), hAsync("duet-action-button", { key: '980a6a1316a3f0b64a0ae62dd80d3494ea855ae8', accessibleLabel: i18n$2[this.language].nextMonthLabel, actionName: i18n$2[this.language].nextMonthLabel, class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, "icon-name": "action-arrow-right-small" }, text.nextMonthLabel))), hAsync(DatePickerMonth, { key: '8524700a8665fe9b8edc04bd6b90b4aacc1eeea0', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, language: this.language, theme: this.theme, min: minDate, max: maxDate, disallowWeekends: this.disallowWeekends, disallowBankHolidays: this.disallowBankHolidays, disallowedDates: this.disallowedDates, focusedDayRef: element => (this.focusedDayNode = element), onFocusEnter: this.enableActiveFocus, onFocusExit: this.disableActiveFocus })), hAsync(FocusGuard, { key: '8b92a3d7d025848e2e3c976e9c091364b52b7f96', moveFocusTo: this.closeButtonNode }))));
|
|
10716
10871
|
}
|
|
10717
10872
|
get element() { return getElement(this); }
|
|
10718
10873
|
static get watchers() { return {
|
|
@@ -10720,7 +10875,10 @@ class DuetDatePicker {
|
|
|
10720
10875
|
"max": ["updateValidity"],
|
|
10721
10876
|
"value": ["updateValidity", "updateInternalValue"],
|
|
10722
10877
|
"required": ["updateValidity"],
|
|
10723
|
-
"inputValue": ["updateValidity"]
|
|
10878
|
+
"inputValue": ["updateValidity"],
|
|
10879
|
+
"disallowWeekends": ["updateValidity"],
|
|
10880
|
+
"disallowBankHolidays": ["updateValidity"],
|
|
10881
|
+
"disallowedDates": ["updateValidity"]
|
|
10724
10882
|
}; }
|
|
10725
10883
|
static get style() { return duetDatePickerCss; }
|
|
10726
10884
|
static get cmpMeta() { return {
|
|
@@ -10754,6 +10912,9 @@ class DuetDatePicker {
|
|
|
10754
10912
|
"value": [1537],
|
|
10755
10913
|
"min": [1],
|
|
10756
10914
|
"max": [1],
|
|
10915
|
+
"disallowWeekends": [4, "disallow-weekends"],
|
|
10916
|
+
"disallowBankHolidays": [4, "disallow-bank-holidays"],
|
|
10917
|
+
"disallowedDates": [1, "disallowed-dates"],
|
|
10757
10918
|
"incrementYears": [2, "increment"],
|
|
10758
10919
|
"validity": [2064],
|
|
10759
10920
|
"accessibleLiveError": [1, "accessible-live-error"],
|
|
@@ -11233,20 +11394,20 @@ class DuetFieldset {
|
|
|
11233
11394
|
* Always the last one in the class.
|
|
11234
11395
|
*/
|
|
11235
11396
|
render() {
|
|
11236
|
-
return (hAsync(Host, { key: '
|
|
11397
|
+
return (hAsync(Host, { key: '6b5e616dee35539f33f740844d8cb031480e7034', class: { "duet-m-0": this.margin === "none" } }, hAsync("fieldset", { key: 'b9847559a5f6d043d40cf13941b02abcafcd4826', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
|
|
11237
11398
|
// NVDA and VoiceOver do not yet support aria-errormessage
|
|
11238
11399
|
// once they do, we can remove errors from the aria-describedby
|
|
11239
11400
|
// aria-errormessage={this.error ? this.errorId : null}
|
|
11240
11401
|
class: {
|
|
11241
11402
|
"duet-fieldset": true,
|
|
11242
11403
|
"duet-theme-turva": this.theme === "turva",
|
|
11243
|
-
} }, hAsync("legend", { key: '
|
|
11404
|
+
} }, hAsync("legend", { key: '00db725af6a81cc39f9812b6ad907e14099e640b', id: this.labelId }, hAsync(this.labelHeadingLevel, { key: 'e790c1bb2136af773035d687afa1af037f965174' }, this.label), this.caption && hAsync("span", { key: '94cfa68d4e1bc683b16749e06667ad9fa13a84c6' }, this.caption)), hAsync("div", { key: 'f7fbe98556ff25593ef84788b28a95a684a923e6', class: {
|
|
11244
11405
|
"duet-legend-wrapper": true,
|
|
11245
11406
|
"duet-legend-has-caption": !!this.caption,
|
|
11246
11407
|
"duet-legend-has-tooltip": this.hasTooltip,
|
|
11247
11408
|
"duet-legend-hidden": this.labelHidden,
|
|
11248
11409
|
"duet-legend-compact": this.compactLabel,
|
|
11249
|
-
} }, hAsync("div", { key: '
|
|
11410
|
+
} }, hAsync("div", { key: '1ed3c1d5c1e394cc84c6b38d05d6dae5c81025de', class: "duet-fieldset-label" }, hAsync("span", { key: '0a004664043ce7eecc9a0a12383342f4d6bd7b46', "aria-hidden": "true" }, this.label), hAsync("slot", { key: '3e1c56c60ca7a1b343aa25d3e63609ddcfef2822', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (hAsync("div", { key: '8b165ea6688eb0a0c179fe76c583990d357e99d6', class: "duet-fieldset-caption", "aria-hidden": "true" }, hAsync("duet-caption", { key: 'b54388620f28ecef14c0da6d4e8d27ed9b16de78', theme: this.theme, margin: "none" }, this.caption)))), hAsync("slot", { key: '41fa24ea72a9f4318bb6dd183fb0a464ed45d8ca' }), hAsync("span", { key: '6569844fd76312f12b64a7864f35e6f4637110db', class: "duet-fieldset-help duet-fieldset-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: 'cef4273c56dff02051a14435d02d975131d4c4a4', class: { "duet-m-0": this.lastItemIsChip } }, this.error)))));
|
|
11250
11411
|
}
|
|
11251
11412
|
get element() { return getElement(this); }
|
|
11252
11413
|
static get style() { return duetFieldsetCss; }
|
|
@@ -11486,11 +11647,12 @@ class DuetFooter {
|
|
|
11486
11647
|
}; }
|
|
11487
11648
|
}
|
|
11488
11649
|
|
|
11489
|
-
const duetGridCss = ":host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n}\n\n:host(.duet-grid-variation-flex) {\n display: flex !important;\n flex-direction: column !important;\n align-items: flex-start !important;\n justify-content: flex-start !important;\n width: 100%;\n max-width: 100%;\n height: auto;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small) {\n flex-direction: row !important;\n}\n@media (max-width: 22.5em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-small) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-small.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-medium) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-medium.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-large) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-large.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-large) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-large.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-wrap) {\n flex-wrap: wrap !important;\n}\n\n:host(.duet-grid-variation-flex.duet-no-stacking) {\n flex-direction: row !important;\n}\n\n:host(.duet-grid-variation-flex.duet-no-stacking.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n}\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small) {\n flex-direction: column !important;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium) {\n flex-direction: column !important;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large) {\n flex-direction: column !important;\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large) {\n flex-direction: column !important;\n}\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-top.duet-no-stacking) {\n align-items: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-no-stacking) {\n align-items: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-center.duet-no-stacking) {\n align-items: center !important;\n}\n\n.duet-grid-align-stretch.duet-no-stacking {\n align-items: stretch !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-no-stacking) {\n align-items: baseline !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-small) {\n align-items: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-small) {\n align-items: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-small) {\n align-items: center !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-small) {\n align-items: stretch !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-small) {\n align-items: baseline !important;\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-small) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-small) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-small) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-small) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-small) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-medium) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-medium) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-medium) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-medium) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-medium) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-large) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-large) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-large) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-large) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-large) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-large) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-large) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-large) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-large) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-large) {\n align-items: baseline !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-left) {\n justify-content: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-right) {\n justify-content: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-center) {\n justify-content: center !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-between) {\n justify-content: space-between !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-around) {\n justify-content: space-around !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-evenly) {\n justify-content: space-evenly !important;\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-left) {\n align-items: flex-start !important;\n justify-content: flex-start !important;\n text-align: left !important;\n }\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-center) {\n align-items: center !important;\n justify-content: center !important;\n text-align: center !important;\n }\n :host(.duet-grid-variation-flex.duet-grid-mobile-center) * {\n text-align: center !important;\n }\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-right) {\n align-items: flex-end !important;\n justify-content: flex-end !important;\n text-align: right !important;\n }\n :host(.duet-grid-variation-flex.duet-grid-mobile-right) * {\n text-align: right !important;\n }\n}\n\n:host(.duet-grid-variation-grid) {\n display: grid;\n grid-template-rows: repeat(1, 1fr);\n grid-template-columns: repeat(4, minmax(0, 1fr));\n gap: 16px;\n align-items: flex-start;\n justify-content: center;\n padding: 0 20px;\n container-type: inline-size;\n overflow-x: clip;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-grid) {\n gap: 24px;\n padding: 0 40px;\n }\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(8, 55px);\n gap: 24px 32px;\n padding: 0;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(12, minmax(0, 1fr));\n padding: 0 64px;\n }\n}\n@media (min-width: 76.25em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(12, 55px);\n gap: 40px;\n padding: 0;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-no-row-gap) {\n row-gap: 0;\n}\n\n:host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n column-gap: 0;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(8, 83px);\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(12, minmax(0, 1fr));\n }\n}\n@media (min-width: 76.25em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(12, 91.6666666667px);\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 3/span 8;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 2/span 10;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 12;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 9/span 4;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 5/span 8;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 6;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 5/span 4;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 7/span 6;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 5/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 9/span 4;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: minmax(0, 1fr);\n gap: 12px;\n padding: 0;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n gap: 16px;\n }\n}\n@container (min-width: 664px) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n@container (min-width: 1100px) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}";
|
|
11650
|
+
const duetGridCss = ":host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n}\n\n:host(.duet-grid-variation-flex) {\n display: flex !important;\n flex-direction: column !important;\n align-items: flex-start !important;\n justify-content: flex-start !important;\n width: 100%;\n max-width: 100%;\n height: auto;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small) {\n flex-direction: row !important;\n}\n@media (max-width: 22.5em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-breakpoint-x-small.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-small) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-small.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-medium) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-medium.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-large) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-large.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-large) {\n flex-direction: row !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-breakpoint-x-large.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-wrap) {\n flex-wrap: wrap !important;\n}\n\n:host(.duet-grid-variation-flex.duet-no-stacking) {\n flex-direction: row !important;\n}\n\n:host(.duet-grid-variation-flex.duet-no-stacking.duet-grid-row-reverse) {\n flex-direction: row-reverse !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n}\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small) {\n flex-direction: column !important;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium) {\n flex-direction: column !important;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large) {\n flex-direction: column !important;\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large) {\n flex-direction: column !important;\n}\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large) {\n flex-direction: column !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-top.duet-no-stacking) {\n align-items: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-no-stacking) {\n align-items: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-center.duet-no-stacking) {\n align-items: center !important;\n}\n\n.duet-grid-align-stretch.duet-no-stacking {\n align-items: stretch !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-no-stacking) {\n align-items: baseline !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-small) {\n align-items: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-small) {\n align-items: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-small) {\n align-items: center !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-small) {\n align-items: stretch !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-small) {\n align-items: baseline !important;\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-small) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-small) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-small) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-small) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 36em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-small) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-medium) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-medium) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-medium) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-medium) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 48em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-medium) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-large) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-large) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-large) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-large) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 62em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-large) {\n align-items: baseline !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-large) {\n align-items: flex-start !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-large) {\n align-items: flex-end !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-large) {\n align-items: center !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-large) {\n align-items: stretch !important;\n }\n}\n\n@media (min-width: 64.0625em) {\n :host(.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-large) {\n align-items: baseline !important;\n }\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-left) {\n justify-content: flex-start !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-right) {\n justify-content: flex-end !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-center) {\n justify-content: center !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-between) {\n justify-content: space-between !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-around) {\n justify-content: space-around !important;\n}\n\n:host(.duet-grid-variation-flex.duet-grid-distribution-evenly) {\n justify-content: space-evenly !important;\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-left) {\n align-items: flex-start !important;\n justify-content: flex-start !important;\n text-align: left !important;\n }\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-center) {\n align-items: center !important;\n justify-content: center !important;\n text-align: center !important;\n }\n :host(.duet-grid-variation-flex.duet-grid-mobile-center) * {\n text-align: center !important;\n }\n}\n\n@media (max-width: 35.9375em) {\n :host(.duet-grid-variation-flex.duet-grid-mobile-right) {\n align-items: flex-end !important;\n justify-content: flex-end !important;\n text-align: right !important;\n }\n :host(.duet-grid-variation-flex.duet-grid-mobile-right) * {\n text-align: right !important;\n }\n}\n\n:host(.duet-grid-variation-grid) {\n display: grid;\n grid-template-rows: repeat(1, 1fr);\n grid-template-columns: repeat(4, minmax(0, 1fr));\n gap: 16px;\n align-items: flex-start;\n justify-content: center;\n padding: 0 20px;\n container-type: inline-size;\n overflow-x: clip;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-grid) {\n gap: 24px;\n padding: 0 40px;\n }\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(8, 55px);\n gap: 24px 32px;\n padding: 0;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(12, minmax(0, 1fr));\n padding: 0 64px;\n }\n}\n@media (min-width: 76.25em) {\n :host(.duet-grid-variation-grid) {\n grid-template-columns: repeat(12, 55px);\n gap: 40px;\n padding: 0;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-no-row-gap) {\n row-gap: 0;\n}\n\n:host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n column-gap: 0;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(8, 83px);\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(12, minmax(0, 1fr));\n }\n}\n@media (min-width: 76.25em) {\n :host(.duet-grid-variation-grid.duet-grid-no-column-gap) {\n grid-template-columns: repeat(12, 91.6666666667px);\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-small) ::slotted(*) {\n grid-column: 3/span 8;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-medium) ::slotted(*) {\n grid-column: 2/span 10;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-large) ::slotted(*) {\n grid-column: 1/span 12;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-right) ::slotted(:nth-child(even)) {\n grid-column: 9/span 4;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-sidebar-left) ::slotted(:nth-child(even)) {\n grid-column: 5/span 8;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 4;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(odd)) {\n grid-column: 1/span 6;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 5/span 4;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-two-columns) ::slotted(:nth-child(even)) {\n grid-column: 7/span 6;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+1)) {\n grid-column: 1/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+2)) {\n grid-column: 5/span 4;\n }\n}\n:host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 1/span 4;\n}\n@media (min-width: 48em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 1/span 8;\n }\n}\n@media (min-width: 62em) {\n :host(.duet-grid-variation-grid.duet-grid-template-three-columns) ::slotted(:nth-child(3n+3)) {\n grid-column: 9/span 4;\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: minmax(0, 1fr);\n gap: 12px;\n padding: 0;\n}\n@media (min-width: 36em) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n gap: 16px;\n }\n}\n@container (min-width: 664px) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n@container (min-width: 1100px) {\n :host(.duet-grid-variation-grid.duet-grid-template-button-grid) {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n:host(.duet-grid-variation-grid.duet-grid-template-teaser) {\n grid-template-columns: minmax(0, 540px);\n gap: 40px;\n padding: 0;\n}\n@container (min-width: 720px) {\n :host(.duet-grid-variation-grid.duet-grid-template-teaser) {\n grid-template-columns: repeat(2, minmax(0, 540px));\n }\n}\n@container (min-width: 1100px) {\n :host(.duet-grid-variation-grid.duet-grid-template-teaser) {\n grid-template-columns: repeat(3, minmax(0, 540px));\n }\n}\n\n@container (min-width: 1100px) {\n :host(.duet-grid-variation-grid.duet-grid-template-teaser.duet-grid-direct-children-4) {\n grid-template-columns: repeat(2, minmax(0, 540px));\n }\n}";
|
|
11490
11651
|
|
|
11491
11652
|
class DuetGrid {
|
|
11492
11653
|
constructor(hostRef) {
|
|
11493
11654
|
registerInstance(this, hostRef);
|
|
11655
|
+
this.directChildCount = 0;
|
|
11494
11656
|
/**
|
|
11495
11657
|
* Enable or disable the automatic responsive behaviour of the grid component.
|
|
11496
11658
|
* Setting this option to "true" makes sure that contents are stacked vertically
|
|
@@ -11589,7 +11751,9 @@ class DuetGrid {
|
|
|
11589
11751
|
return Array.from(this.element.children );
|
|
11590
11752
|
}
|
|
11591
11753
|
async updateGridItems() {
|
|
11592
|
-
const
|
|
11754
|
+
const children = this.getDirectChildren();
|
|
11755
|
+
this.directChildCount = children.length;
|
|
11756
|
+
const items = children.filter(child => child.tagName.toLowerCase() === "duet-grid-item");
|
|
11593
11757
|
items.forEach(item => {
|
|
11594
11758
|
item.responsive = this.responsive;
|
|
11595
11759
|
item.breakpoint = this.breakpoint;
|
|
@@ -11676,7 +11840,7 @@ class DuetGrid {
|
|
|
11676
11840
|
* Always the last one in the class.
|
|
11677
11841
|
*/
|
|
11678
11842
|
render() {
|
|
11679
|
-
return (hAsync(Host, { key: '
|
|
11843
|
+
return (hAsync(Host, { key: 'af6ceb11c84216f03b1dda1c12f3ae224b5c4874', class: {
|
|
11680
11844
|
"duet-grid": true,
|
|
11681
11845
|
"duet-no-stacking": !this.responsive,
|
|
11682
11846
|
"duet-grid-align-top": this.alignment === "top", // flex-start
|
|
@@ -11703,9 +11867,10 @@ class DuetGrid {
|
|
|
11703
11867
|
"duet-grid-row-reverse": this.rowReverse,
|
|
11704
11868
|
[`duet-grid-variation-${this.gridTemplate ? "grid" : "flex"}`]: true,
|
|
11705
11869
|
[`duet-grid-template-${this.gridTemplate}`]: true,
|
|
11870
|
+
[`duet-grid-direct-children-${this.directChildCount}`]: true,
|
|
11706
11871
|
"duet-grid-no-row-gap": this.gridTemplateGap.startsWith("none") && this.gridTemplate !== "button-grid",
|
|
11707
11872
|
"duet-grid-no-column-gap": this.gridTemplateGap.endsWith("none") && this.gridTemplate !== "button-grid",
|
|
11708
|
-
} }, hAsync("slot", { key: '
|
|
11873
|
+
} }, hAsync("slot", { key: 'c000cfdac55f96a2f4698668e48b13f1e6829ccc' })));
|
|
11709
11874
|
}
|
|
11710
11875
|
get element() { return getElement(this); }
|
|
11711
11876
|
static get watchers() { return {
|
|
@@ -11727,7 +11892,8 @@ class DuetGrid {
|
|
|
11727
11892
|
"distribution": [1],
|
|
11728
11893
|
"mobile": [1],
|
|
11729
11894
|
"gridTemplate": [1, "grid-template"],
|
|
11730
|
-
"gridTemplateGap": [1, "grid-template-gap"]
|
|
11895
|
+
"gridTemplateGap": [1, "grid-template-gap"],
|
|
11896
|
+
"directChildCount": [32]
|
|
11731
11897
|
},
|
|
11732
11898
|
"$listeners$": undefined,
|
|
11733
11899
|
"$lazyBundleId$": "-",
|
|
@@ -11788,7 +11954,7 @@ class DuetGridItem {
|
|
|
11788
11954
|
* Always the last one in the class.
|
|
11789
11955
|
*/
|
|
11790
11956
|
render() {
|
|
11791
|
-
return (hAsync(Host, { key: '
|
|
11957
|
+
return (hAsync(Host, { key: '1a1bfed712a2b3acd4f87bd37bb4b22e06521056', style: {
|
|
11792
11958
|
"min-width": this.minWidth,
|
|
11793
11959
|
"max-width": this.maxWidth,
|
|
11794
11960
|
}, class: {
|
|
@@ -11805,7 +11971,7 @@ class DuetGridItem {
|
|
|
11805
11971
|
"duet-grid-item-br-medium": this.breakpoint === "medium",
|
|
11806
11972
|
"duet-grid-item-br-large": this.breakpoint === "large",
|
|
11807
11973
|
"duet-grid-item-br-x-large": this.breakpoint === "x-large",
|
|
11808
|
-
} }, hAsync("slot", { key: '
|
|
11974
|
+
} }, hAsync("slot", { key: '11a8e27d181731baadfceaafef6de847fd3fd081' })));
|
|
11809
11975
|
}
|
|
11810
11976
|
get element() { return getElement(this); }
|
|
11811
11977
|
static get style() { return duetGridItemCss; }
|
|
@@ -12884,7 +13050,7 @@ class DuetHeading {
|
|
|
12884
13050
|
}; }
|
|
12885
13051
|
}
|
|
12886
13052
|
|
|
12887
|
-
const duetHeroCss = "*,*::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%}.duet-hero{position:relative;display:block;width:100%;padding:48px 28px;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-style:normal;font-weight:400;line-height:1.5;text-transform:none;text-decoration:none;text-shadow:none;background:rgb(8, 42, 77)}.duet-hero.duet-p-0{padding:0 !important}.duet-hero.duet-m-0{margin:0 !important}.duet-hero.duet-hero-text-center{text-align:center !important}.duet-hero.duet-hero-light{padding-bottom:0 !important}@media (min-width: 62em){.duet-hero.duet-hero-light{padding-bottom:28px !important}}.duet-hero.duet-hero-with-image{padding-bottom:20px !important;margin-bottom:-36px}@media (min-width: 48em){.duet-hero.duet-hero-with-image{padding-bottom:28px !important}}@media (min-width: 62em){.duet-hero.duet-hero-with-image{padding-bottom:36px !important;margin-bottom:-20px}}.duet-hero.duet-hero-light,.duet-hero.duet-hero-with-image{color:rgb(8, 42, 77);background-color:rgb(255, 255, 255);background-image:linear-gradient(rgb(240, 247, 250), #f8fbfd)}.duet-hero.duet-hero-light::before,.duet-hero.duet-hero-with-image::before{position:absolute;top:100%;left:0;z-index:-1;width:100%;height:400px;content:\"\";background-image:linear-gradient(#f8fbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-gray{color:rgb(8, 42, 77);background:rgb(245, 248, 250)}@media (min-width: 62em){.duet-hero.duet-hero-gray .duet-hero-text{display:inline-block;vertical-align:top}.duet-hero.duet-hero-gray .duet-hero-icon+.duet-hero-text{margin-left:28px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-actions{padding-bottom:65.4545454545px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-back{padding-top:72px}}.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{padding:0 0 48px;margin:0;background:none}@media (min-width: 48em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:540px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:620px}}.duet-hero.duet-hero-campaign .background-area,.duet-hero.duet-hero-section .background-area{height:1px;margin-bottom:-1px}.duet-hero.duet-hero-campaign .background-container,.duet-hero.duet-hero-section .background-container{position:absolute;right:0;left:0;display:grid;align-items:flex-start;justify-content:center;overflow:hidden}.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{display:flex;align-items:flex-start;justify-content:center;height:220px;margin:0 auto}.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{height:100%}.duet-hero.duet-hero-campaign .background img.cover,.duet-hero.duet-hero-section .background img.cover{object-fit:cover}.duet-hero.duet-hero-campaign .background img.center,.duet-hero.duet-hero-section .background img.center{object-position:center}@media (min-width: 1440px){.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:300px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:450px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:500px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:580px}}@media (min-width: 1600px){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{width:1600px;overflow:hidden}}.duet-hero.duet-hero-campaign .background .brand-container,.duet-hero.duet-hero-section .background .brand-container{position:relative;width:100%;height:100%;min-height:220px;overflow:hidden}.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{position:absolute;width:100%;height:220px;background-repeat:no-repeat;background-position:center center;background-size:cover}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:-200px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:auto;height:1100px;background-position:140% -200%}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{background-position:right -200%}}.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{position:absolute;top:143px;right:0;left:-30px;width:340px;height:340px;margin-right:auto;margin-left:auto;background:rgb(255, 255, 255);border-radius:20%;mix-blend-mode:normal;transform:rotate(8deg)}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:160px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:215px;left:-50px;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:250px;left:0;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:240px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:280px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:310px}}.duet-hero.duet-hero-campaign ::slotted(.duet-heading),.duet-hero.duet-hero-section ::slotted(.duet-heading){font-size:inherit !important;color:inherit !important}.duet-hero.duet-hero-campaign .duet-hero-text,.duet-hero.duet-hero-section .duet-hero-text{width:100%}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:36px}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:48px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:64px}}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{margin:0 auto}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:80%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{display:flex;align-items:center;height:6rem;padding:0 1rem;margin:1rem 0 4.5rem}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:2rem 0 4rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:6rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:8rem 0 11rem}}.duet-hero.duet-hero-campaign .duet-hero-wrapper.fluid,.duet-hero.duet-hero-campaign .duet-hero-wrapper.narrow,.duet-hero.duet-hero-section .duet-hero-wrapper.fluid,.duet-hero.duet-hero-section .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 48em){.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-section{min-height:auto}}@media (min-width: 76.25em){.duet-hero.duet-hero-section{min-height:560px}}@media (min-width: 62em){.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 62em){.duet-hero.duet-hero-section .background{width:1400px;height:436px;overflow:hidden}}@media (min-width: 76.25em){.duet-hero.duet-hero-section .background{width:1536px;height:516px}}@media (min-width: 106.25em){.duet-hero.duet-hero-section .background{width:1536px}}.duet-hero.duet-hero-product{position:relative;padding:0 0 48px;margin:0;background:rgb(255, 255, 255)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product{padding-top:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product{padding-top:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product{padding-top:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product{padding-top:250px}}@media (min-width: 48em){.duet-hero.duet-hero-product{min-height:400px;padding:72px 0}}@media (min-width: 62em){.duet-hero.duet-hero-product{min-height:500px;padding:96px 0}}@media (min-width: 76.25em){.duet-hero.duet-hero-product{min-height:575px;padding:120px 0}}.duet-hero.duet-hero-product .background-area{position:absolute;top:0;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-area *{pointer-events:auto}.duet-hero.duet-hero-product .background-container{position:absolute;top:-150px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-container *{pointer-events:auto}@media (min-width: 62em){.duet-hero.duet-hero-product .background-container{top:-48px}}.duet-hero.duet-hero-product .background{position:absolute;top:145px;width:100%;overflow:visible}.duet-hero.duet-hero-product .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-product .background{top:130px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{top:35px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{position:absolute;right:0;left:0;max-width:1440px;height:100%;margin:0 auto}}.duet-hero.duet-hero-product .background .brand-shaped-image{position:absolute;top:-160px;right:-15%;z-index:0;width:375px;height:375px;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-160px;right:-60px;width:360px;height:360px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-120px;right:-14px;width:290px;height:290px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-175px;right:-20px;width:400px;height:400px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-145px;right:-150px;width:414px;height:414px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-105px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-45px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-190px;right:-150px;width:552px;height:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-300px;right:-128px;width:736px;height:736px}.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-160px}}@media (min-width: 1300px){.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-128px}}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-position:40px;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:520px;height:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:440px;height:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:600px;height:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:500px;height:292px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:720px;height:420px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:950px;height:540px}}.duet-hero.duet-hero-product .background .brand-shape{position:absolute;background:rgb(228, 241, 247);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shape{top:20px;right:210px;width:200px;height:200px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shape{top:24px;right:199px;width:162px;height:162px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shape{top:25px;right:290px;width:220px;height:220px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shape{top:90px;right:145px;width:225px;height:225px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shape{right:195px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shape{right:245px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shape{top:115px;right:228px;width:300px;height:300px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shape{right:343px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shape{right:394px;width:400px;height:400px}}.duet-hero.duet-hero-product .background .brand-shaped-icon{position:absolute;display:flex;align-items:center;justify-content:center;background:rgba(0, 119, 179, 0.85);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:165px;right:25px;width:69px;height:69px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:138px;right:50px;width:57px;height:57px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:175px;right:125px;width:78px;height:78px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:220px;right:60px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:110px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:160px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:296px;right:120px;width:105px;height:105px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:235px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:345px;right:245px;width:140px;height:140px}}.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{transform:rotate(-7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:100%;height:100%}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:86px;height:86px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:104px;height:104px}}.duet-hero.duet-hero-product .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-text{margin-top:0}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-heading{margin-top:0}}.duet-hero.duet-hero-product .duet-hero-wrapper.fluid,.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:50%}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:47%}}.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:47%}}.duet-hero.duet-hero-product.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{left:181px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{margin:0 auto;border-radius:0;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (max-width: 35.9375em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-120px;width:385px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-95px;width:320px}}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-135px;width:420px}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-110px;right:-110px;width:418px}}@media (min-width: 860px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-75px}}@media (min-width: 960px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-40px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-130px;right:-100px;width:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-215px;width:736px}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-115px}}@media (min-width: 1300px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-50px}}@media (min-width: 1400px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-35px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image .brand-shaped-image-bg{transform:translate(-50%, 0)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon{background:rgba(230, 23, 64, 0.9);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:rotate(0deg)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{position:relative;top:-6px;transform:rotate(0deg)}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-8px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-12px}}.duet-hero.duet-hero-content{padding:0 0 48px;padding-top:236px;background:rgb(255, 255, 255)}@media (min-width: 48em){.duet-hero.duet-hero-content{padding-top:384px}}.duet-hero.duet-hero-content:not(.duet-hero-has-image){padding:72px 0 48px}.duet-hero.duet-hero-content .background-area{position:absolute;width:100%}.duet-hero.duet-hero-content .background{position:absolute;top:-236px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-content .background *{pointer-events:auto}.duet-hero.duet-hero-content .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-content .background{top:-384px}}.duet-hero.duet-hero-content .background .brand-shaped-image{position:absolute;top:-165px;right:0;left:30px;z-index:0;width:375px;height:375px;margin:0 auto;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image{top:-325px;left:250px;width:687px;height:687px}}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-hero-content .background .brand-shape{position:absolute;top:-25px;right:0;left:-300px;width:240px;height:240px;margin-right:auto;margin-left:auto;background:rgb(0, 119, 179);border-radius:20%;mix-blend-mode:normal;opacity:0.07;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shape{top:80px;left:-400px;width:373px;height:373px}}.duet-hero.duet-hero-content .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-content .duet-hero-wrapper.fluid,.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 72px}}.duet-hero.duet-hero-content .duet-hero-text{max-width:100%}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text{width:80%}}.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1rem;margin-bottom:0.5rem}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1.5rem;margin-bottom:0}}@media (min-width: 62em){.duet-hero{min-height:290px;padding:111.6px 56px;overflow:visible}}.duet-hero-icon{display:inline-block;vertical-align:top}@media (min-width: 62em){.duet-hero-icon{margin-top:-8px}}@media (min-width: 62em){.duet-hero-heading{margin-top:12px}}@media (min-width: 62em){.duet-hero-heading-has-pre{margin-top:0}}.duet-hero-wrapper{position:relative;width:100%;max-width:1110px;margin:0 auto;text-align:center}.duet-hero-left-align .duet-hero-wrapper{text-align:left}.duet-hero-with-image .duet-hero-wrapper{position:static}@media (min-width: 62em){.duet-hero-wrapper{text-align:left}}.duet-hero-text{max-width:50rem;margin:0 auto}.duet-hero-text-center .duet-hero-text{text-align:center !important}@media (min-width: 48em){.duet-hero-text{width:80%}.duet-hero-left-align .duet-hero-text{margin:0}}@media (min-width: 62em){.duet-hero-text{width:52%;max-width:none;margin-top:-10px;margin-left:0}.duet-hero-text-center .duet-hero-text{margin-left:auto}}.duet-hero:not(.duet-hero-with-image) .duet-hero-image{width:100%;max-width:400px;height:0;padding-bottom:50%;margin:28px auto 0;background-repeat:no-repeat;background-position:50% 50%;background-size:contain}@media (min-width: 36em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{padding-bottom:40%}}@media (min-width: 48em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:420px;padding-bottom:34%}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:540px}}@media (min-width: 62em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{position:absolute;top:50%;right:0;padding-bottom:30%;margin:0;transform:translateY(-50%)}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-60px;padding-bottom:26%}.duet-hero-gray .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}@media (min-width: 62em){.duet-hero-gray:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}.duet-hero-image-wrapper{position:relative;width:80%;height:0;padding-bottom:80%;margin:-30px auto 36px;overflow:hidden;border-radius:28%;box-shadow:0 0 20px rgba(255, 255, 255, 0.5);transform:rotate(10deg)}@media screen and (min-width: 440px){.duet-hero-image-wrapper{width:300px;padding-bottom:300px}}@media (min-width: 62em){.duet-hero-image-wrapper{position:absolute;top:-60px;right:-50px;width:470px;padding-bottom:470px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-wrapper{top:-70px;right:-60px;width:600px;padding-bottom:600px}}@media screen and (min-width: 1450px){.duet-hero-image-wrapper{top:-70px;right:25px}}.duet-hero-image-wrapper .duet-hero-image{position:absolute;top:-5%;left:-5%;width:110%;height:110%;background-repeat:no-repeat;background-position:50% 50%;background-size:cover;transform:rotate(-10deg)}.duet-hero-image-mask{position:relative;margin:-48px auto 0;overflow:hidden}@media (min-width: 62em){.duet-hero-image-mask{position:absolute;top:0;right:0;width:470px;height:460px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-mask{width:650px;height:580px}}@media screen and (min-width: 1450px){.duet-hero-image-mask{right:50%;transform:translateX(110%)}}duet-heading+duet-button{margin-top:12px !important}.duet-hero-links{width:calc(100% + 56px);margin-top:48px;margin-left:-28px}.duet-hero-minimal .duet-hero-links{margin-top:28px}@media (min-width: 36em){.duet-hero-links{margin-top:72px}.duet-hero-minimal .duet-hero-links{margin-top:28px}}@media (min-width: 62em){.duet-hero-links{width:auto;margin:36px 0 0}.duet-hero-minimal .duet-hero-links{margin-top:28px}}.duet-hero-link{display:flex;align-items:center;width:100%;padding:16px 16px 8px;font-weight:600;line-height:1.25;color:rgb(0, 119, 179);text-align:left;-webkit-hyphens:auto;hyphens:auto;text-decoration:none;border-bottom:1px solid rgb(212, 223, 229);transition:background-color 300ms ease}.duet-hero-link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-hero-link:focus,.duet-hero-link:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-hero-link:hover,.duet-hero-link:hover .duet-hero-action-arrow{color:rgb(0, 75, 129) !important;background:transparent !important}@media (min-width: 36em){.duet-hero-link{padding:16px 16px 16px 28px}}@media (min-width: 62em){.duet-hero-link{display:inline-flex;width:auto;max-width:350px;padding:0;margin:0 28px 16px 0;border:0;border-radius:4px}}.duet-hero-link:hover{background:rgba(0, 0, 0, 0.02)}@media (min-width: 62em){.duet-hero-link:hover{background:transparent}}.duet-hero-link:first-of-type{border-top:1px solid rgb(212, 223, 229)}@media (min-width: 62em){.duet-hero-link:first-of-type{margin-top:0;border:0}}.duet-hero-link:last-of-type{margin-bottom:-48px}@media (min-width: 62em){.duet-hero-link:last-of-type{margin-right:0;margin-bottom:0}}.duet-hero-link span{margin-top:-8px}@media (min-width: 36em){.duet-hero-link span{margin:0}}.duet-hero-action-icon{margin-right:8px}@media (min-width: 36em){.duet-hero-action-icon{margin-right:12px}}.duet-hero-action-arrow{margin:0 0 0 8px;color:rgb(0, 119, 179)}@media (max-width: 35.9375em){.duet-hero-action-arrow{margin-top:-9px}}.duet-hero-back{margin-bottom:28px !important;display:flex;align-items:center;justify-content:center}.duet-hero-left-align .duet-hero-back{align-items:self-start;justify-content:flex-start}@media (min-width: 36em){.duet-hero-back{margin-bottom:36px !important}.duet-hero-minimal .duet-hero-back{margin-bottom:28px !important}}@media (min-width: 62em){.duet-hero-back{display:block}}.duet-hero-pre{display:inline-block;width:auto;margin-right:8px}.duet-hero-pre+duet-heading{margin-top:0 !important}.duet-hero.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\";background:rgb(230, 23, 64)}.duet-hero.duet-hero-light.duet-theme-turva,.duet-hero.duet-hero-with-image.duet-theme-turva{color:rgb(23, 42, 59);background-image:linear-gradient(rgb(253, 247, 242), #fefbf9)}.duet-hero.duet-hero-light.duet-theme-turva::before,.duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fefbf9, rgb(255, 255, 255))}.duet-hero.duet-hero-gray.duet-theme-turva{background:rgb(245, 246, 247)}.duet-hero.duet-hero-campaign.duet-theme-turva,.duet-hero.duet-hero-section.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\";background:none}.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:125px;left:-10px;width:350px;height:350px;background:rgb(255, 255, 255);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:143px;left:-30px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:180px;left:0;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:220px;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:230px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:260px}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:290px}}.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:98%}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:78%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:66%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:65%}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:2rem}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:2rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:4rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:6rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:7rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-bottom:8rem}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin-botton:9rem}}.duet-hero.duet-hero-campaign.duet-theme-turva .background-area .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .background-area .brand-shape{left:0;background-color:rgb(255, 255, 255);border-radius:24px;mask-image:none}.duet-hero.duet-hero-product.duet-theme-turva{display:flex;flex-direction:column;gap:20px;min-height:auto;padding-top:0;padding-bottom:72px;margin:0 auto}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva{flex-direction:row-reverse;gap:40px;padding-top:72px;padding-right:56px;padding-left:56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product.duet-theme-turva{max-width:1110px;padding-right:0;padding-left:0}}.duet-hero.duet-hero-product.duet-theme-turva .background-area{position:relative;height:auto;overflow:visible}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid{position:relative;top:0;width:100%;height:auto;aspect-ratio:576/250;padding:0;overflow:visible;}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid{height:250px;aspect-ratio:auto}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid{padding-right:28px;padding-left:28px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid{height:auto;aspect-ratio:53/32;padding-right:0;padding-left:0}}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background{position:relative;top:auto;height:100%}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .background-mask,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .background-mask{display:none;background-image:none}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-image{position:static;width:100%;height:100%;border-radius:0;mask-image:none}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-image .brand-shaped-image-bg,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-image .brand-shaped-image-bg{position:static;width:100%;height:100%;background-position:0;background-size:cover;transform:none}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-image{border-radius:0 0 12px 12px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-image{border-radius:12px}}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon{top:auto;right:20px;bottom:-16px;width:auto;height:auto;padding:0;background-color:rgb(23, 42, 59);border-radius:8px;mask-image:none}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon duet-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon duet-icon{top:0;width:62px;height:62px}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon{right:40px;bottom:-24px;padding:8px}.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon duet-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon duet-icon{width:80px;height:80px}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon{right:68px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-hero-product.duet-theme-turva .background-area .background-container.fluid .background .brand-shaped-icon{right:40px}}.duet-hero.duet-hero-product.duet-theme-turva .duet-hero-wrapper .duet-hero-text{width:100%}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .duet-hero-wrapper{margin-top:28px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .duet-hero-wrapper{padding:0}}.duet-hero.duet-hero-content.duet-theme-turva{padding:0;margin:20px auto;background:rgb(255, 255, 255)}.duet-hero.duet-hero-content.duet-theme-turva .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .background-mask{left:181px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-155px;right:0;left:0;width:420px;height:420px;margin:0 auto;border-radius:0;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-230px;width:687px;height:637px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:600px;height:280px;transform:translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-hero-content.duet-theme-turva.duet-hero-narrow .background-area{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-content.duet-theme-turva.duet-hero-narrow .background-area{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva.duet-hero-narrow .background-area{padding:0 72px}}.duet-hero.duet-hero-content.duet-theme-turva .background-area{position:static;padding:0 16px;margin:0 auto}@media (min-width: 36em){.duet-hero.duet-hero-content.duet-theme-turva .background-area{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-content.duet-theme-turva .background-area{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-content.duet-theme-turva .background-area{max-width:1110px;padding:0}}.duet-hero.duet-hero-content.duet-theme-turva .background-area .background{position:static;height:auto}.duet-hero.duet-hero-content.duet-theme-turva .background-area .background .background-mask{display:none;background-image:none}.duet-hero.duet-hero-content.duet-theme-turva .background-area .background .brand-shaped-image{position:static;width:auto;height:auto}.duet-hero.duet-hero-content.duet-theme-turva .background-area .background .brand-shaped-image .brand-shaped-image-wrapper{width:auto;height:auto}.duet-hero.duet-hero-content.duet-theme-turva .background-area .background .brand-shaped-image .brand-shaped-image-bg{position:static;width:100%;height:auto;aspect-ratio:5/2;background-size:cover;transform:none}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{border-radius:12px;mask-image:none}.duet-hero.duet-hero-content.duet-theme-turva .duet-hero-wrapper{margin-top:28px}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .duet-hero-wrapper{margin-top:36px}}.duet-hero.duet-theme-turva .duet-hero-wrapper{position:static;margin-top:16px}@media (min-width: 48em){.duet-hero.duet-theme-turva .duet-hero-wrapper{margin-top:0}}.duet-theme-turva .duet-hero-image-wrapper{padding-bottom:68%;border-radius:44% 47% 38% 54%;transform:none}@media screen and (min-width: 440px){.duet-theme-turva .duet-hero-image-wrapper{width:80%;padding-bottom:68%}}@media (min-width: 62em){.duet-theme-turva .duet-hero-image-wrapper{top:-40px;right:-80px;width:536px;padding-bottom:470px}}@media (min-width: 76.25em){.duet-theme-turva .duet-hero-image-wrapper{top:-70px;right:-60px;width:650px;padding-bottom:600px}}@media screen and (min-width: 1450px){.duet-theme-turva .duet-hero-image-wrapper{right:0}}.duet-theme-turva .duet-hero-image-wrapper .duet-hero-image{top:0;left:0;width:100%;height:100%;transform:none}@media screen and (min-width: 1450px){.duet-theme-turva .duet-hero-image-mask{transform:translateX(108%)}}.duet-theme-turva .duet-hero-link{color:rgb(230, 23, 64)}.duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow{color:rgb(140, 0, 30) !important}.duet-theme-turva .duet-hero-action-arrow{color:rgb(230, 23, 64)}";
|
|
13053
|
+
const duetHeroCss = "*,*::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%}.duet-hero{position:relative;display:block;width:100%;padding:48px 28px;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-style:normal;font-weight:400;line-height:1.5;text-transform:none;text-decoration:none;text-shadow:none;background:rgb(8, 42, 77)}.duet-hero.duet-p-0{padding:0 !important}.duet-hero.duet-m-0{margin:0 !important}.duet-hero.duet-hero-text-center{text-align:center !important}.duet-hero.duet-hero-light{padding-bottom:0 !important}@media (min-width: 62em){.duet-hero.duet-hero-light{padding-bottom:28px !important}}.duet-hero.duet-hero-with-image{padding-bottom:20px !important;margin-bottom:-36px}@media (min-width: 48em){.duet-hero.duet-hero-with-image{padding-bottom:28px !important}}@media (min-width: 62em){.duet-hero.duet-hero-with-image{padding-bottom:36px !important;margin-bottom:-20px}}.duet-hero.duet-hero-light,.duet-hero.duet-hero-with-image{color:rgb(8, 42, 77);background-color:rgb(255, 255, 255);background-image:linear-gradient(rgb(240, 247, 250), #f8fbfd)}.duet-hero.duet-hero-light::before,.duet-hero.duet-hero-with-image::before{position:absolute;top:100%;left:0;z-index:-1;width:100%;height:400px;content:\"\";background-image:linear-gradient(#f8fbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-gray{color:rgb(8, 42, 77);background:rgb(245, 248, 250)}@media (min-width: 62em){.duet-hero.duet-hero-gray .duet-hero-text{display:inline-block;vertical-align:top}.duet-hero.duet-hero-gray .duet-hero-icon+.duet-hero-text{margin-left:28px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-actions{padding-bottom:65.4545454545px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-back{padding-top:72px}}.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{padding:0 0 48px;margin:0;background:none}@media (min-width: 48em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:540px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:620px}}.duet-hero.duet-hero-campaign .background-area,.duet-hero.duet-hero-section .background-area{height:1px;margin-bottom:-1px}.duet-hero.duet-hero-campaign .background-container,.duet-hero.duet-hero-section .background-container{position:absolute;right:0;left:0;display:grid;align-items:flex-start;justify-content:center;overflow:hidden}.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{display:flex;align-items:flex-start;justify-content:center;height:220px;margin:0 auto}.duet-hero.duet-hero-campaign .background picture,.duet-hero.duet-hero-section .background picture{display:block;height:100%}@media (min-width: 1440px){.duet-hero.duet-hero-campaign .background picture,.duet-hero.duet-hero-section .background picture{height:auto}}.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{display:block;height:100%}.duet-hero.duet-hero-campaign .background img.cover,.duet-hero.duet-hero-section .background img.cover{object-fit:cover}.duet-hero.duet-hero-campaign .background img.center,.duet-hero.duet-hero-section .background img.center{object-position:center}@media (min-width: 1440px){.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:300px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:450px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:500px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:580px}}@media (min-width: 1600px){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{width:1600px;overflow:hidden}}.duet-hero.duet-hero-campaign .background .brand-container,.duet-hero.duet-hero-section .background .brand-container{position:relative;width:100%;height:100%;min-height:220px;overflow:hidden}.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{position:absolute;width:100%;height:220px;background-repeat:no-repeat;background-position:center center;background-size:cover}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:-200px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:auto;height:1100px;background-position:140% -200%}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{background-position:right -200%}}.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{position:absolute;top:143px;right:0;left:-30px;width:340px;height:340px;margin-right:auto;margin-left:auto;background:rgb(255, 255, 255);border-radius:20%;mix-blend-mode:normal;transform:rotate(8deg)}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:160px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:215px;left:-50px;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:250px;left:0;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:240px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:280px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:310px}}.duet-hero.duet-hero-campaign ::slotted(.duet-heading),.duet-hero.duet-hero-section ::slotted(.duet-heading){font-size:inherit !important;color:inherit !important}.duet-hero.duet-hero-campaign .duet-hero-text,.duet-hero.duet-hero-section .duet-hero-text{width:100%}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:36px}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:48px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:64px}}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{margin:0 auto}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:80%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{display:flex;align-items:center;height:6rem;padding:0 1rem;margin:1rem 0 4.5rem}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:2rem 0 4rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:6rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:8rem 0 11rem}}.duet-hero.duet-hero-campaign .duet-hero-wrapper.fluid,.duet-hero.duet-hero-campaign .duet-hero-wrapper.narrow,.duet-hero.duet-hero-section .duet-hero-wrapper.fluid,.duet-hero.duet-hero-section .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 48em){.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-section{min-height:auto}}@media (min-width: 76.25em){.duet-hero.duet-hero-section{min-height:560px}}@media (min-width: 62em){.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 62em){.duet-hero.duet-hero-section .background{width:1400px;height:436px;overflow:hidden}}@media (min-width: 76.25em){.duet-hero.duet-hero-section .background{width:1536px;height:516px}}@media (min-width: 106.25em){.duet-hero.duet-hero-section .background{width:1536px}}.duet-hero.duet-hero-product{position:relative;padding:0 0 48px;margin:0;background:rgb(255, 255, 255)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product{padding-top:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product{padding-top:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product{padding-top:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product{padding-top:250px}}@media (min-width: 48em){.duet-hero.duet-hero-product{min-height:400px;padding:72px 0}}@media (min-width: 62em){.duet-hero.duet-hero-product{min-height:500px;padding:96px 0}}@media (min-width: 76.25em){.duet-hero.duet-hero-product{min-height:575px;padding:120px 0}}.duet-hero.duet-hero-product .background-area{position:absolute;top:0;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-area *{pointer-events:auto}.duet-hero.duet-hero-product .background-container{position:absolute;top:-150px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-container *{pointer-events:auto}@media (min-width: 62em){.duet-hero.duet-hero-product .background-container{top:-48px}}.duet-hero.duet-hero-product .background{position:absolute;top:145px;width:100%;overflow:visible}.duet-hero.duet-hero-product .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-product .background{top:130px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{top:35px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{position:absolute;right:0;left:0;max-width:1440px;height:100%;margin:0 auto}}.duet-hero.duet-hero-product .background .brand-shaped-image{position:absolute;top:-160px;right:-15%;z-index:0;width:375px;height:375px;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-160px;right:-60px;width:360px;height:360px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-120px;right:-14px;width:290px;height:290px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-175px;right:-20px;width:400px;height:400px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-145px;right:-150px;width:414px;height:414px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-105px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-45px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-190px;right:-150px;width:552px;height:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-300px;right:-128px;width:736px;height:736px}.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-160px}}@media (min-width: 1300px){.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-128px}}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;transform:rotate(-7deg) translate(-50%, 0)}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg picture{display:block}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg img{position:absolute;top:50%;left:40px;width:100%;height:auto;transform:translateY(-50%)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:520px;height:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:440px;height:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:600px;height:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:500px;height:292px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:720px;height:420px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:950px;height:540px}}.duet-hero.duet-hero-product .background .brand-shape{position:absolute;background:rgb(228, 241, 247);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shape{top:20px;right:210px;width:200px;height:200px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shape{top:24px;right:199px;width:162px;height:162px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shape{top:25px;right:290px;width:220px;height:220px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shape{top:90px;right:145px;width:225px;height:225px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shape{right:195px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shape{right:245px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shape{top:115px;right:228px;width:300px;height:300px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shape{right:343px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shape{right:394px;width:400px;height:400px}}.duet-hero.duet-hero-product .background .brand-shaped-icon{position:absolute;display:flex;align-items:center;justify-content:center;background:rgba(0, 119, 179, 0.85);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:165px;right:25px;width:69px;height:69px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:138px;right:50px;width:57px;height:57px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:175px;right:125px;width:78px;height:78px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:220px;right:60px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:110px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:160px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:296px;right:120px;width:105px;height:105px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:235px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:345px;right:245px;width:140px;height:140px}}.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{transform:rotate(-7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:100%;height:100%}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:86px;height:86px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:104px;height:104px}}.duet-hero.duet-hero-product .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-text{margin-top:0}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-heading{margin-top:0}}.duet-hero.duet-hero-product .duet-hero-wrapper.fluid,.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:50%}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:47%}}.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:47%}}.duet-hero.duet-hero-product.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{left:181px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{margin:0 auto;border-radius:0;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (max-width: 35.9375em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-120px;width:385px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-95px;width:320px}}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-135px;width:420px}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-110px;right:-110px;width:418px}}@media (min-width: 860px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-75px}}@media (min-width: 960px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-40px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-130px;right:-100px;width:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-215px;width:736px}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-115px}}@media (min-width: 1300px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-50px}}@media (min-width: 1400px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-35px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image .brand-shaped-image-bg{transform:translate(-50%, 0)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon{background:rgba(230, 23, 64, 0.9);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:rotate(0deg)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{position:relative;top:-6px;transform:rotate(0deg)}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-8px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-12px}}.duet-hero.duet-hero-content{padding:0 0 48px;padding-top:236px;background:rgb(255, 255, 255)}@media (min-width: 48em){.duet-hero.duet-hero-content{padding-top:384px}}.duet-hero.duet-hero-content:not(.duet-hero-has-image){padding:72px 0 48px}.duet-hero.duet-hero-content .background-area{position:absolute;width:100%}.duet-hero.duet-hero-content .background{position:absolute;top:-236px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-content .background *{pointer-events:auto}.duet-hero.duet-hero-content .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-content .background{top:-384px}}.duet-hero.duet-hero-content .background .brand-shaped-image{position:absolute;top:-165px;right:0;left:30px;z-index:0;width:375px;height:375px;margin:0 auto;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image{top:-325px;left:250px;width:687px;height:687px}}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;transform:rotate(-7deg) translate(-50%, 0)}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg picture{display:block}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg img{position:absolute;top:0;left:0;width:100%;height:auto}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-hero-content .background .brand-shape{position:absolute;top:-25px;right:0;left:-300px;width:240px;height:240px;margin-right:auto;margin-left:auto;background:rgb(0, 119, 179);border-radius:20%;mix-blend-mode:normal;opacity:0.07;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shape{top:80px;left:-400px;width:373px;height:373px}}.duet-hero.duet-hero-content .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-content .duet-hero-wrapper.fluid,.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 72px}}.duet-hero.duet-hero-content .duet-hero-text{max-width:100%}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text{width:80%}}.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1rem;margin-bottom:0.5rem}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1.5rem;margin-bottom:0}}@media (min-width: 62em){.duet-hero{min-height:290px;padding:111.6px 56px;overflow:visible}}.duet-hero-icon{display:inline-block;vertical-align:top}@media (min-width: 62em){.duet-hero-icon{margin-top:-8px}}@media (min-width: 62em){.duet-hero-heading{margin-top:12px}}@media (min-width: 62em){.duet-hero-heading-has-pre{margin-top:0}}.duet-hero-wrapper{position:relative;width:100%;max-width:1110px;margin:0 auto;text-align:center}.duet-hero-left-align .duet-hero-wrapper{text-align:left}.duet-hero-with-image .duet-hero-wrapper{position:static}@media (min-width: 62em){.duet-hero-wrapper{text-align:left}}.duet-hero-text{max-width:50rem;margin:0 auto}.duet-hero-text-center .duet-hero-text{text-align:center !important}@media (min-width: 48em){.duet-hero-text{width:80%}.duet-hero-left-align .duet-hero-text{margin:0}}@media (min-width: 62em){.duet-hero-text{width:52%;max-width:none;margin-top:-10px;margin-left:0}.duet-hero-text-center .duet-hero-text{margin-left:auto}}.duet-hero:not(.duet-hero-with-image) .duet-hero-image{position:relative;width:100%;max-width:400px;height:0;padding-bottom:50%;margin:28px auto 0}.duet-hero:not(.duet-hero-with-image) .duet-hero-image picture{display:block}.duet-hero:not(.duet-hero-with-image) .duet-hero-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:50% 50%}.duet-hero:not(.duet-hero-with-image) .duet-hero-image img.cover{object-fit:cover}.duet-hero:not(.duet-hero-with-image) .duet-hero-image img.center{object-position:center}@media (min-width: 36em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{padding-bottom:40%}}@media (min-width: 48em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:420px;padding-bottom:34%}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:540px}}@media (min-width: 62em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{position:absolute;top:50%;right:0;padding-bottom:30%;margin:0;transform:translateY(-50%)}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-60px;padding-bottom:26%}.duet-hero-gray .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}@media (min-width: 62em){.duet-hero-gray:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}.duet-hero-image-wrapper{position:relative;width:80%;height:0;padding-bottom:80%;margin:-30px auto 36px;overflow:hidden;border-radius:28%;box-shadow:0 0 20px rgba(255, 255, 255, 0.5);transform:rotate(10deg)}@media screen and (min-width: 440px){.duet-hero-image-wrapper{width:300px;padding-bottom:300px}}@media (min-width: 62em){.duet-hero-image-wrapper{position:absolute;top:-60px;right:-50px;width:470px;padding-bottom:470px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-wrapper{top:-70px;right:-60px;width:600px;padding-bottom:600px}}@media screen and (min-width: 1450px){.duet-hero-image-wrapper{top:-70px;right:25px}}.duet-hero-image-wrapper .duet-hero-image{position:absolute;top:-5%;left:-5%;width:110%;height:110%;transform:rotate(-10deg)}.duet-hero-image-wrapper .duet-hero-image picture{display:block}.duet-hero-image-wrapper .duet-hero-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.duet-hero-image-mask{position:relative;margin:-48px auto 0;overflow:hidden}@media (min-width: 62em){.duet-hero-image-mask{position:absolute;top:0;right:0;width:470px;height:460px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-mask{width:650px;height:580px}}@media screen and (min-width: 1450px){.duet-hero-image-mask{right:50%;transform:translateX(110%)}}duet-heading+duet-button{margin-top:12px !important}.duet-hero-links{width:calc(100% + 56px);margin-top:48px;margin-left:-28px}.duet-hero-minimal .duet-hero-links{margin-top:28px}@media (min-width: 36em){.duet-hero-links{margin-top:72px}.duet-hero-minimal .duet-hero-links{margin-top:28px}}@media (min-width: 62em){.duet-hero-links{width:auto;margin:36px 0 0}.duet-hero-minimal .duet-hero-links{margin-top:28px}}.duet-hero-link{display:flex;align-items:center;width:100%;padding:16px 16px 8px;font-weight:600;line-height:1.25;color:rgb(0, 119, 179);text-align:left;-webkit-hyphens:auto;hyphens:auto;text-decoration:none;border-bottom:1px solid rgb(212, 223, 229);transition:background-color 300ms ease}.duet-hero-link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-hero-link:focus,.duet-hero-link:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-hero-link:hover,.duet-hero-link:hover .duet-hero-action-arrow{color:rgb(0, 75, 129) !important;background:transparent !important}@media (min-width: 36em){.duet-hero-link{padding:16px 16px 16px 28px}}@media (min-width: 62em){.duet-hero-link{display:inline-flex;width:auto;max-width:350px;padding:0;margin:0 28px 16px 0;border:0;border-radius:4px}}.duet-hero-link:hover{background:rgba(0, 0, 0, 0.02)}@media (min-width: 62em){.duet-hero-link:hover{background:transparent}}.duet-hero-link:first-of-type{border-top:1px solid rgb(212, 223, 229)}@media (min-width: 62em){.duet-hero-link:first-of-type{margin-top:0;border:0}}.duet-hero-link:last-of-type{margin-bottom:-48px}@media (min-width: 62em){.duet-hero-link:last-of-type{margin-right:0;margin-bottom:0}}.duet-hero-link span{margin-top:-8px}@media (min-width: 36em){.duet-hero-link span{margin:0}}.duet-hero-action-icon{margin-right:8px}@media (min-width: 36em){.duet-hero-action-icon{margin-right:12px}}.duet-hero-action-arrow{margin:0 0 0 8px;color:rgb(0, 119, 179)}@media (max-width: 35.9375em){.duet-hero-action-arrow{margin-top:-9px}}.duet-hero-back{margin-bottom:28px !important;display:flex;align-items:center;justify-content:center}.duet-hero-left-align .duet-hero-back{align-items:self-start;justify-content:flex-start}@media (min-width: 36em){.duet-hero-back{margin-bottom:36px !important}.duet-hero-minimal .duet-hero-back{margin-bottom:28px !important}}@media (min-width: 62em){.duet-hero-back{display:block}}.duet-hero-pre{display:inline-block;width:auto;margin-right:8px}.duet-hero-pre+duet-heading{margin-top:0 !important}.duet-hero.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\";background:rgb(230, 23, 64)}.duet-hero.duet-theme-turva.duet-hero-light,.duet-hero.duet-theme-turva.duet-hero-with-image{color:rgb(23, 42, 59);background-image:linear-gradient(rgb(253, 247, 242), #fefbf9)}.duet-hero.duet-theme-turva.duet-hero-light::before,.duet-hero.duet-theme-turva.duet-hero-with-image::before{background-image:linear-gradient(#fefbf9, rgb(255, 255, 255))}.duet-hero.duet-theme-turva.duet-hero-gray{background:rgb(245, 246, 247)}.duet-hero.duet-theme-turva.duet-hero-campaign,.duet-hero.duet-theme-turva.duet-hero-section{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:none}.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:125px;left:-10px;width:350px;height:350px;background:rgb(255, 255, 255);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (min-width: 22.5em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:143px;left:-30px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:180px;left:0;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:220px;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:230px}}@media (min-width: 76.25em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:260px}}@media (min-width: 106.25em){.duet-hero.duet-theme-turva.duet-hero-campaign .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .brand-shape{top:290px}}.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:98%}@media (min-width: 22.5em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:78%}}@media (min-width: 30em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:66%}}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:65%}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:2rem}@media (min-width: 22.5em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:2rem}}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:4rem}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:6rem}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:7rem}}@media (min-width: 76.25em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-bottom:8rem}}@media (min-width: 106.25em){.duet-hero.duet-theme-turva.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-theme-turva.duet-hero-section .duet-hero-heading{margin-botton:9rem}}.duet-hero.duet-theme-turva.duet-hero-campaign .background-area .brand-shape,.duet-hero.duet-theme-turva.duet-hero-section .background-area .brand-shape{left:0;background-color:rgb(255, 255, 255);border-radius:24px;mask-image:none}.duet-hero.duet-theme-turva.duet-hero-product{display:flex;flex-direction:column;gap:20px;min-height:auto;padding-top:0;padding-bottom:72px;margin:0 auto}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-product{flex-direction:row-reverse;gap:40px;padding-top:72px;padding-right:56px;padding-left:56px}}@media (min-width: 76.25em){.duet-hero.duet-theme-turva.duet-hero-product{max-width:1110px;padding-right:0;padding-left:0}}.duet-hero.duet-theme-turva.duet-hero-product .background-area{position:relative;height:auto;overflow:visible}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid{position:relative;top:0;width:100%;height:auto;aspect-ratio:576/250;padding:0;overflow:visible;}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid{height:250px;aspect-ratio:auto}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid{padding-right:28px;padding-left:28px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid{height:auto;aspect-ratio:53/32;padding-right:0;padding-left:0}}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background{position:relative;top:auto;height:100%}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .background-mask,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .background-mask{display:none;background-image:none}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image{position:static;width:100%;height:100%;border-radius:0;mask-image:none}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image .brand-shaped-image-bg,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image .brand-shaped-image-bg{position:static;width:100%;height:100%;transform:none}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image .brand-shaped-image-bg picture,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image .brand-shaped-image-bg picture{display:block;width:100%;height:100%}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image .brand-shaped-image-bg img,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image .brand-shaped-image-bg img{position:static;width:100%;height:100%;object-fit:cover;object-position:0 50%;transform:none}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image{border-radius:0 0 12px 12px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-image,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-image{border-radius:12px}}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon{top:auto;right:20px;bottom:-16px;width:auto;height:auto;padding:0;background-color:rgb(23, 42, 59);border-radius:8px;mask-image:none}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon duet-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon duet-icon{top:0;width:62px;height:62px}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon{right:40px;bottom:-24px;padding:8px}.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon duet-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon duet-icon{width:80px;height:80px}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon{right:68px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.narrow .background .brand-shaped-icon,.duet-hero.duet-theme-turva.duet-hero-product .background-area .background-container.fluid .background .brand-shaped-icon{right:40px}}.duet-hero.duet-theme-turva.duet-hero-product .duet-hero-wrapper .duet-hero-text{width:100%}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-product .duet-hero-wrapper{margin-top:28px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-product .duet-hero-wrapper{padding:0}}.duet-hero.duet-theme-turva.duet-hero-content{padding:0;margin:20px auto;background:rgb(255, 255, 255)}.duet-hero.duet-theme-turva.duet-hero-content .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-content .background-mask{left:181px}}.duet-hero.duet-theme-turva.duet-hero-content .brand-shaped-image{top:-155px;right:0;left:0;width:420px;height:420px;margin:0 auto;border-radius:0;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:none}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-content .brand-shaped-image{top:-230px;width:687px;height:637px}}.duet-hero.duet-theme-turva.duet-hero-content .brand-shaped-image .brand-shaped-image-bg{width:600px;height:280px;transform:translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-content .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-theme-turva.duet-hero-content.duet-hero-narrow .background-area{max-width:888px}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-content.duet-hero-narrow .background-area{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-content.duet-hero-narrow .background-area{padding:0 72px}}.duet-hero.duet-theme-turva.duet-hero-content .background-area{position:static;padding:0 16px;margin:0 auto}@media (min-width: 36em){.duet-hero.duet-theme-turva.duet-hero-content .background-area{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-content .background-area{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-theme-turva.duet-hero-content .background-area{max-width:1110px;padding:0}}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background{position:static;height:auto}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .background-mask{display:none;background-image:none}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .brand-shaped-image{position:static;width:auto;height:auto}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .brand-shaped-image .brand-shaped-image-wrapper{width:auto;height:auto}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .brand-shaped-image .brand-shaped-image-bg{position:static;width:100%;height:auto;aspect-ratio:5/2;transform:none}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .brand-shaped-image .brand-shaped-image-bg picture{display:block;width:100%;height:100%}.duet-hero.duet-theme-turva.duet-hero-content .background-area .background .brand-shaped-image .brand-shaped-image-bg img{position:static;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.duet-hero.duet-theme-turva.duet-hero-content .brand-shaped-image{border-radius:12px;mask-image:none}.duet-hero.duet-theme-turva.duet-hero-content .duet-hero-wrapper{margin-top:28px}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-content .duet-hero-wrapper{margin-top:36px}}.duet-hero.duet-theme-turva.duet-hero-with-image{padding-top:0}.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-mask{margin:0}@media screen and (min-width: 1450px){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-mask{transform:translateX(108%)}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-with-image{padding-top:48px}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-with-image{padding-top:72px}}.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{top:0;height:auto;aspect-ratio:16/10;padding-bottom:0;margin:36px auto;border-radius:16px;transform:none}@media screen and (min-width: 440px){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{width:80%}}@media (min-width: 48em){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{margin-top:0}}@media (min-width: 62em){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{top:72px;right:-80px;width:536px}}@media (min-width: 76.25em){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{right:-60px;width:650px}}@media screen and (min-width: 1450px){.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper{right:0}}.duet-hero.duet-theme-turva.duet-hero-with-image .duet-hero-image-wrapper .duet-hero-image{top:0;left:0;width:100%;height:100%;transform:none}.duet-hero.duet-theme-turva .duet-hero-wrapper{position:static;margin-top:0}.duet-hero.duet-theme-turva .duet-hero-link{color:rgb(230, 23, 64)}.duet-hero.duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow{color:rgb(140, 0, 30) !important}.duet-hero.duet-theme-turva .duet-hero-action-arrow{color:rgb(230, 23, 64)}";
|
|
12888
13054
|
|
|
12889
13055
|
/**
|
|
12890
13056
|
* @part duet-hero - piercing selector for styling the hero container
|
|
@@ -13010,6 +13176,11 @@ class DuetHero {
|
|
|
13010
13176
|
* Image position.
|
|
13011
13177
|
*/
|
|
13012
13178
|
this.imagePosition = "auto";
|
|
13179
|
+
/**
|
|
13180
|
+
* Make the image load with higher or lower priority. Value "high" sets the img's attributes fetchpriority and loading to
|
|
13181
|
+
* "high" and "eager", while value "low" sets those attributes to "low" and "lazy"
|
|
13182
|
+
*/
|
|
13183
|
+
this.imagePriority = "high";
|
|
13013
13184
|
/**
|
|
13014
13185
|
* Style variation of the hero area.
|
|
13015
13186
|
*/
|
|
@@ -13118,17 +13289,17 @@ class DuetHero {
|
|
|
13118
13289
|
const campaignOrSection = this.variation === "campaign" || this.variation === "section";
|
|
13119
13290
|
const imageSizeIsCover = this.imageSize === "cover";
|
|
13120
13291
|
const imagePositionIsCenter = this.imagePosition === "center";
|
|
13121
|
-
const
|
|
13122
|
-
|
|
13123
|
-
|
|
13124
|
-
|
|
13125
|
-
|
|
13126
|
-
|
|
13127
|
-
|
|
13128
|
-
|
|
13129
|
-
|
|
13130
|
-
|
|
13131
|
-
|
|
13292
|
+
const imageClass = `${imageSizeIsCover ? "cover" : ""} ${imagePositionIsCenter ? "center" : ""}`.trim();
|
|
13293
|
+
const getPictureSource = (className) => ({
|
|
13294
|
+
img: {
|
|
13295
|
+
src: this.image,
|
|
13296
|
+
alt: this.imageAlt || "",
|
|
13297
|
+
loading: this.imagePriority === "low" ? "lazy" : "eager",
|
|
13298
|
+
fetchpriority: this.imagePriority,
|
|
13299
|
+
class: className || "",
|
|
13300
|
+
},
|
|
13301
|
+
sources: parsePossibleJSON(this.sources),
|
|
13302
|
+
});
|
|
13132
13303
|
const buttonStyles = {
|
|
13133
13304
|
transform: "translateX(-8px)",
|
|
13134
13305
|
};
|
|
@@ -13165,7 +13336,7 @@ class DuetHero {
|
|
|
13165
13336
|
outlineColor = "color-primary-turva";
|
|
13166
13337
|
}
|
|
13167
13338
|
}
|
|
13168
|
-
return (hAsync("div", { key: '
|
|
13339
|
+
return (hAsync("div", { key: 'dfdf7ff48804ea8afc843f2901dae041929c9266', role: "region", class: {
|
|
13169
13340
|
"duet-hero": true,
|
|
13170
13341
|
"duet-theme-turva": this.theme === "turva",
|
|
13171
13342
|
"duet-has-category-icon": !!this.categoryIcon,
|
|
@@ -13183,17 +13354,17 @@ class DuetHero {
|
|
|
13183
13354
|
"duet-hero-text-center": this.variation !== "product" && ((this.textCenter && !this.leftAlign) || campaignOrSection),
|
|
13184
13355
|
"duet-hero-left-align": this.variation === "product" || (this.leftAlign && !campaignOrSection),
|
|
13185
13356
|
"duet-hero-narrow": this.layout === "narrow",
|
|
13186
|
-
}, part: "duet-hero" }, campaignOrSection && this.image && (hAsync("div", { key: '
|
|
13187
|
-
this.processedBack && (hAsync("div", { key: '
|
|
13357
|
+
}, part: "duet-hero" }, campaignOrSection && this.image && (hAsync("div", { key: '38e648e7447b8db00a773ff4025d68500401f7bc', class: "background-area" }, hAsync("div", { key: '803534bf55dc7737cd41ec1d75fbed052334a19a', class: "background-container" }, hAsync("div", { key: '27d0577a3993d7eaa767812700ff290986535b20', class: "background" }, hAsync(DuetPicture, Object.assign({ key: '6cc4a5648f7466ed44125cd22e35a6eeb725b18a' }, getPictureSource(imageClass)))), hAsync("div", { key: '76a95c713cd90761ea2d670389183e2c04a97a80', class: "brand-shape" })))), this.variation === "product" && this.image && (hAsync("div", { key: 'c436973c44f7d497a70a96a51eb0f96be6eda95a', class: { "background-area": true, [this.layout]: true } }, hAsync("div", { key: 'e5a17290d952644ba521a4b3976387456f650cd4', class: { "background-container": true, [this.layout]: true } }, hAsync("div", { key: '8fdf828e65411a86393e096d8f3b6415076d97e0', class: { background: true, [this.layout]: true } }, hAsync("div", { key: '0ada9a2b55d78b2774063d099cb03a8e09693584', class: { "background-mask": true, [this.layout]: true } }), this.theme !== "turva" && hAsync("div", { key: 'b24d91804b31920da022285d0565667c8e92997e', class: { "brand-shape": true, [this.layout]: true } }), hAsync("div", { key: '226619d3d283b31fa7e8caadaf49473a170abb3a', class: { "brand-shaped-image": true, [this.layout]: true } }, hAsync("div", { key: '0a0415ca70e98b277bf151f28e1f4f1639338fa6', class: { "brand-shaped-image-wrapper": true, [this.layout]: true } }, hAsync("div", { key: 'c866eb1fa36ab6cc43e8839669069046c2faae60', class: { "brand-shaped-image-bg": true, [this.layout]: true } }, hAsync(DuetPicture, Object.assign({ key: 'a98b41e51c70043f55128a19718911f321b7527f' }, getPictureSource()))))), this.categoryIcon && (hAsync("div", { key: '0d3b0c0428a32d2df977a6ac63be04ed6a7f72c6', class: { "brand-shaped-icon": true, [this.layout]: true } }, hAsync("duet-icon", { key: '7af6dee3ca69df4b1d8e87830636ec18ad3a40b7', class: { [this.layout]: true }, background: "none", name: this.categoryIcon, margin: "none", size: "auto", responsive: false }))))))), this.variation === "content" && this.image && (hAsync("div", { key: '20bd7ce2aca1d5062f0f0e1f4889a97ec308b1d9', class: "background-area" }, hAsync("div", { key: '1847e876158decc257b4445501d1bb8e208ddb0e', class: "background" }, hAsync("div", { key: '236489bc1fff1be4cf44d267dfbb5c3bcb119dad', class: "background-mask" }), this.theme !== "turva" && hAsync("div", { key: '3c1e73a037c1ec3b129caaac2a689bf60ce62710', class: "brand-shape" }), hAsync("div", { key: '9cfc2c3b6f5022d863fd6c869ffda7e0df51e013', class: "brand-shaped-image" }, hAsync("div", { key: '8471e4f399016fb37f5f5e46f8bab0865179c6a3', class: "brand-shaped-image-wrapper" }, hAsync("div", { key: '68bfcd1b748c5f7d0b3661152a489707f12024ac', class: "brand-shaped-image-bg" }, hAsync(DuetPicture, Object.assign({ key: '78a267d0198018669353675e01ad0ca70491b36f' }, getPictureSource())))))))), hAsync("div", { key: '4ab0bf9e9dee5b6889db6cc396cd304eda1bd870', class: { "duet-hero-wrapper": true, [this.layout]: true } }, this.image && this.variation === "image" && (hAsync("div", { key: '208c46264f1ea0ce04845324a68cf5848ad95535', class: "duet-hero-image-mask" }, hAsync("div", { key: 'b95a0b0a8840c5835a4e9668bd9481fcd9bfa87b', class: "duet-hero-image-wrapper" }, hAsync("div", { key: '04633cc8d3020b921c42551a5e065bc942540fcc', class: "duet-hero-image" }, hAsync(DuetPicture, Object.assign({ key: '7415ca53535a1295d42eb2b29cc6dbe7a93a04ae' }, getPictureSource(imageClass))))))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
|
|
13358
|
+
this.processedBack && (hAsync("div", { key: '59cbdb9c4195074e03310b65a88b4bafd74f9916', class: "duet-hero-back" }, hAsync("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, {
|
|
13188
13359
|
label: this.processedBack.label,
|
|
13189
13360
|
href: this.processedBack.href,
|
|
13190
13361
|
id: this.processedBack.id,
|
|
13191
13362
|
analyticsId: this.processedBack.analyticsId,
|
|
13192
|
-
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("duet-icon", { key: '
|
|
13363
|
+
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("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 })), hAsync("div", { key: '7ee11a778839f281ce31673e60f4923ff223e3ac', class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (hAsync("duet-paragraph", { key: '7d7f43ba3e592cbad30f8f28000ff361209bf443', margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium", "aria-hidden": "true" }, this.preHeading ? (this.preHeading) : (hAsync("span", null, hAsync("slot", { name: "pre-heading" }))))), hAsync("slot", { key: 'e73727e5aa7fad6aaaceabcf6f81c6572f0a15a9', name: "badge" }), (this.heading || this.hasHeadingSlot) && (hAsync("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 : hAsync("slot", { name: "heading" }))), campaignOrSection && this.hasSubHeadingSlot && (hAsync("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" }, hAsync("slot", { key: '9588038687bc9dfcb10a04b5e5cdaa6e3ef253de', name: "subheading" }))), this.description && (hAsync("duet-paragraph", { key: 'f0d60545403dfcc453d79aa1bfdd5582b876ae49', theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (hAsync("duet-list", { key: '7006a276c36ca7001df5c93d6fc3e792f8a07169', theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (hAsync("duet-list-item", null, hAsync("span", { slot: "label" }, item.label), hAsync("span", { slot: "value" }, item.value)))))), this.buttonLabel && (hAsync("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)), hAsync("slot", { key: '87703efb26e4376a71a692aa444988dacbf45d68' })), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (hAsync("div", { key: '92123389406d8b37e76d0305fb7a2e1d194ce1d4', class: "duet-hero-links" }, this.processedActions.map(item => (hAsync("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, hAsync("div", { class: "duet-hero-action-icon" }, hAsync("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), hAsync("span", null, item.label), item.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (hAsync("div", { class: "duet-hero-action-arrow" }, hAsync("duet-icon", { icon: newWindowIcon.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
|
|
13193
13364
|
this.variation !== "image" &&
|
|
13194
13365
|
!campaignOrSection &&
|
|
13195
13366
|
this.variation !== "product" &&
|
|
13196
|
-
this.variation !== "content" && hAsync("div",
|
|
13367
|
+
this.variation !== "content" && (hAsync("div", { key: 'cd09b6b83414a647857f014ddd08f9b49b4d122a', class: "duet-hero-image" }, hAsync(DuetPicture, Object.assign({ key: '68b91f0d9db476f3aa31c63b2a04465705e61658' }, getPictureSource(imageClass))))), hAsync("slot", { key: '8f23feb29e40591b85303a1864fb5736274b7596', name: "bottom" }))));
|
|
13197
13368
|
}
|
|
13198
13369
|
get element() { return getElement(this); }
|
|
13199
13370
|
static get watchers() { return {
|
|
@@ -13230,6 +13401,8 @@ class DuetHero {
|
|
|
13230
13401
|
"imageSize": [1, "image-size"],
|
|
13231
13402
|
"imagePosition": [1, "image-position"],
|
|
13232
13403
|
"imageAlt": [1, "image-alt"],
|
|
13404
|
+
"imagePriority": [1, "image-priority"],
|
|
13405
|
+
"sources": [1],
|
|
13233
13406
|
"variation": [1],
|
|
13234
13407
|
"back": [8],
|
|
13235
13408
|
"listItems": [8, "list-items"],
|
|
@@ -13361,11 +13534,11 @@ class DuetIcon {
|
|
|
13361
13534
|
: {};
|
|
13362
13535
|
const iconStyles = Object.assign({}, iconRotationStyles);
|
|
13363
13536
|
const shapeStyle = this.shape === "brand-rotated" ? "duet-icon-shape-brand" : `duet-icon-shape-${this.shape}`;
|
|
13364
|
-
return (hAsync(Host, { key: '
|
|
13537
|
+
return (hAsync(Host, { key: '4165c86903dae730023be910be36389c7151045d', class: {
|
|
13365
13538
|
"duet-m-0": this.margin === "none",
|
|
13366
13539
|
"duet-icon-has-outline": !!this.outline,
|
|
13367
13540
|
"duet-icon-has-background": !!this.background,
|
|
13368
|
-
} }, hAsync("span", { key: '
|
|
13541
|
+
} }, hAsync("span", { key: '9efda9e15441290db9c499f59fc3f4feed86e5b2', "aria-hidden": "true", style: styles, class: {
|
|
13369
13542
|
"duet-icon": true,
|
|
13370
13543
|
"duet-theme-turva": this.theme === "turva",
|
|
13371
13544
|
"duet-theme-default": this.theme === "default",
|
|
@@ -13374,7 +13547,7 @@ class DuetIcon {
|
|
|
13374
13547
|
[shapeStyle]: true,
|
|
13375
13548
|
rotated: this.shape === "brand-rotated" && this.theme !== "turva",
|
|
13376
13549
|
"duet-icon-not-responsive": !this.responsive,
|
|
13377
|
-
} }, hAsync("span", { key: '
|
|
13550
|
+
} }, hAsync("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 }))));
|
|
13378
13551
|
}
|
|
13379
13552
|
get element() { return getElement(this); }
|
|
13380
13553
|
static get watchers() { return {
|
|
@@ -13452,11 +13625,11 @@ class DuetIndicator {
|
|
|
13452
13625
|
inheritGlobalTheme(this);
|
|
13453
13626
|
}
|
|
13454
13627
|
render() {
|
|
13455
|
-
return (hAsync(Host, { key: '
|
|
13628
|
+
return (hAsync(Host, { key: '329e985ec026dde828ee0e4f896bbbf68054a4ce' }, hAsync("span", { key: '688c53ea00e20e7c2aa612ed6cdaede9a83655f9', class: {
|
|
13456
13629
|
"duet-indicator": true,
|
|
13457
13630
|
[`duet-indicator-${this.variation}`]: true,
|
|
13458
13631
|
"duet-theme-turva": this.theme === "turva",
|
|
13459
|
-
} }), hAsync("duet-visually-hidden", { key: '
|
|
13632
|
+
} }), hAsync("duet-visually-hidden", { key: '37a42c32af9d6d46946d30239592a4794e16de93' }, this.getAccessibleLabel())));
|
|
13460
13633
|
}
|
|
13461
13634
|
get element() { return getElement(this); }
|
|
13462
13635
|
static get style() { return duetIndicatorCss; }
|
|
@@ -13566,6 +13739,7 @@ class DuetInput {
|
|
|
13566
13739
|
this.topCaptionPlaceholderId = createID("DuetCaptionPlaceholderTop");
|
|
13567
13740
|
this.chipCountId = createID("DuetInputChipCount");
|
|
13568
13741
|
this.errorId = createID("DuetError");
|
|
13742
|
+
this.maxlengthAnnouncementKey = 0;
|
|
13569
13743
|
this.disallowPatternRegex = null;
|
|
13570
13744
|
this.clearLabel = {
|
|
13571
13745
|
en: "Clear",
|
|
@@ -13602,6 +13776,11 @@ class DuetInput {
|
|
|
13602
13776
|
fi: "valittu",
|
|
13603
13777
|
sv: "valt",
|
|
13604
13778
|
};
|
|
13779
|
+
this.maxlengthReachedLabel = {
|
|
13780
|
+
en: "This field has a maximum length of {max} characters. Limit reached.",
|
|
13781
|
+
fi: "Tämän kentän enimmäispituus on {max} merkkiä. Raja on saavutettu.",
|
|
13782
|
+
sv: "Det här fältet har en maximal längd på {max} tecken. Gränsen är nådd.",
|
|
13783
|
+
};
|
|
13605
13784
|
/**
|
|
13606
13785
|
* State() variables
|
|
13607
13786
|
*/
|
|
@@ -13611,6 +13790,10 @@ class DuetInput {
|
|
|
13611
13790
|
*/
|
|
13612
13791
|
this.isFocused = false;
|
|
13613
13792
|
this._accessiblePopup = undefined;
|
|
13793
|
+
/**
|
|
13794
|
+
* Text announced to screen readers when the maxlength limit is reached.
|
|
13795
|
+
*/
|
|
13796
|
+
this.maxlengthAnnouncement = "";
|
|
13614
13797
|
/**
|
|
13615
13798
|
* Indicates the id or a string of space seperated ids of a component(s) that describes the input.
|
|
13616
13799
|
*/
|
|
@@ -13741,9 +13924,22 @@ class DuetInput {
|
|
|
13741
13924
|
* Component event handling.
|
|
13742
13925
|
*/
|
|
13743
13926
|
this.onInput = (ev) => {
|
|
13744
|
-
|
|
13927
|
+
var _a;
|
|
13928
|
+
// In addition to input event, maxlength handling uses also keyDown and paste events as input event may not be
|
|
13929
|
+
// triggered when entry is truncated by the browser.
|
|
13930
|
+
if (this.maxlength) {
|
|
13931
|
+
const wasAtMaxlength = (((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) || 0) >= this.maxlength;
|
|
13932
|
+
const nativeLength = this.nativeInput.value.length;
|
|
13745
13933
|
// Android doesn't honor maxlength
|
|
13746
|
-
|
|
13934
|
+
const inputOverflow = nativeLength > this.maxlength;
|
|
13935
|
+
if (inputOverflow) {
|
|
13936
|
+
this.nativeInput.value = this.nativeInput.value.slice(0, this.maxlength);
|
|
13937
|
+
}
|
|
13938
|
+
const limitJustReached = !wasAtMaxlength && nativeLength === this.maxlength;
|
|
13939
|
+
const limitExceededWhileFull = wasAtMaxlength && inputOverflow;
|
|
13940
|
+
if (limitJustReached || limitExceededWhileFull) {
|
|
13941
|
+
this.handleMaxlengthLimitReached();
|
|
13942
|
+
}
|
|
13747
13943
|
}
|
|
13748
13944
|
if (this.disallowPatternRegex) {
|
|
13749
13945
|
cleanValue(this.nativeInput, this.disallowPatternRegex);
|
|
@@ -13789,6 +13985,30 @@ class DuetInput {
|
|
|
13789
13985
|
component: "duet-input",
|
|
13790
13986
|
});
|
|
13791
13987
|
};
|
|
13988
|
+
this.onInputKeyDown = (ev) => {
|
|
13989
|
+
if (this.maxlength && isCharacterInsertKey(ev) && this.isAtMaxlengthWithoutSelection()) {
|
|
13990
|
+
this.handleMaxlengthLimitReached();
|
|
13991
|
+
}
|
|
13992
|
+
};
|
|
13993
|
+
this.onInputPaste = () => {
|
|
13994
|
+
if (this.maxlength && this.isAtMaxlengthWithoutSelection()) {
|
|
13995
|
+
this.handleMaxlengthLimitReached();
|
|
13996
|
+
}
|
|
13997
|
+
};
|
|
13998
|
+
this.isAtMaxlengthWithoutSelection = () => {
|
|
13999
|
+
const input = this.nativeInput;
|
|
14000
|
+
const inputIsWithoutSelection = input.selectionStart === input.selectionEnd;
|
|
14001
|
+
const inputIsAtMaxlength = input.value.length >= this.maxlength;
|
|
14002
|
+
return inputIsWithoutSelection && inputIsAtMaxlength;
|
|
14003
|
+
};
|
|
14004
|
+
this.handleMaxlengthLimitReached = () => {
|
|
14005
|
+
clearTimeout(this.maxlengthAnnouncementTimeoutId);
|
|
14006
|
+
this.maxlengthAnnouncement = "";
|
|
14007
|
+
this.maxlengthAnnouncementTimeoutId = setTimeout(() => {
|
|
14008
|
+
this.maxlengthAnnouncementKey++;
|
|
14009
|
+
this.maxlengthAnnouncement = this.maxlengthReachedLabel[this.language].replace("{max}", String(this.maxlength));
|
|
14010
|
+
}, 300);
|
|
14011
|
+
};
|
|
13792
14012
|
/**
|
|
13793
14013
|
* Private functions
|
|
13794
14014
|
*/
|
|
@@ -14068,10 +14288,15 @@ class DuetInput {
|
|
|
14068
14288
|
if (this.type === "password") {
|
|
14069
14289
|
return "off";
|
|
14070
14290
|
}
|
|
14291
|
+
const tokens = this.autoComplete.split(/\s+/);
|
|
14071
14292
|
// If attribute includes "email", e.g. "work email", don't overwrite it
|
|
14072
|
-
if (this.type === "email" && this.autoComplete !== "off" && !
|
|
14293
|
+
if (this.type === "email" && this.autoComplete !== "off" && !tokens.includes("email")) {
|
|
14073
14294
|
return "email";
|
|
14074
14295
|
}
|
|
14296
|
+
// If attribute includes "tel", e.g. "mobile tel", don't overwrite it
|
|
14297
|
+
if (this.type === "tel" && this.autoComplete !== "off" && !tokens.includes("tel")) {
|
|
14298
|
+
return "tel";
|
|
14299
|
+
}
|
|
14075
14300
|
return this.autoComplete;
|
|
14076
14301
|
}
|
|
14077
14302
|
/**
|
|
@@ -14138,7 +14363,7 @@ class DuetInput {
|
|
|
14138
14363
|
this.type !== "password" &&
|
|
14139
14364
|
this.type !== "time" &&
|
|
14140
14365
|
this.variation !== "button";
|
|
14141
|
-
return (hAsync(Host, { key: '
|
|
14366
|
+
return (hAsync(Host, { key: '1119e8e51f3a490e34665e77ce32ec21f7bc70c7', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (hAsync("duet-visually-hidden", { key: '31afa65dcb1b161f8c5a87c65953a26a552066b8', "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement[this.language]} ${selectedTime.toLocaleTimeString()}` : "")), hAsync("div", { key: '5574afef8c592593193cbf0c99eaf8eaa84dbf11', class: {
|
|
14142
14367
|
"duet-input-container": true,
|
|
14143
14368
|
"duet-theme-turva": this.theme === "turva",
|
|
14144
14369
|
[`duet-input-variation-${this.variation}`]: true,
|
|
@@ -14155,11 +14380,11 @@ class DuetInput {
|
|
|
14155
14380
|
"has-prefix": !!this.fieldPrefix,
|
|
14156
14381
|
"has-suffix": !!this.fieldSuffix,
|
|
14157
14382
|
disabled: this.disabled,
|
|
14158
|
-
} }, hAsync("div", { key: '
|
|
14383
|
+
} }, hAsync("div", { key: 'cd0dfb4e8ef821c84d342fff017da9b3e6938134', class: "duet-input-label-container" }, hAsync(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 && (hAsync("duet-tooltip", { key: 'f263424aa51a59f4252cad4b4a1347b5986869ae', class: "duet-input-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), hAsync("slot", { key: 'b4afd5ae65bbc03083b81996965cb354d6fd2a35', name: "tooltip" })), this.caption && (hAsync("duet-caption", { key: '1d126824ee2ef4b7a4dae8650363e9da0b58c288', id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { key: 'adb5b8fa3b3de37c96d74fd1b888de75689a3ce0', class: {
|
|
14159
14384
|
"duet-input-relative": true,
|
|
14160
14385
|
"duet-theme-turva": this.theme === "turva",
|
|
14161
14386
|
"has-error": !!this.error,
|
|
14162
|
-
} }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (hAsync("duet-caption", { key: '
|
|
14387
|
+
} }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (hAsync("duet-caption", { key: 'fcadd06bf9e0dc4115c0bd004de23fa5692b03fc', id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), this.chips && (hAsync("duet-visually-hidden", { key: '84a8a1feed5a0895936f5e1d5ee310c6282f1678', id: this.chipCountId }, ", ", `${this.getAllChips().length} ${getLocaleString(this.chipsSelectedDesriptionLabel)}`, ",")), this.variation === "button-left" && hAsync("slot", { key: '90533c1b234e2644eb97317f903abbf04fee8138', name: "button-left" }), this.fieldPrefix && (hAsync("span", { key: '151fd6757766b8c7e86ded73639d87bb32814089', class: "input-adornment prefix", id: this.prefixId }, this.fieldPrefix)), hAsync("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: {
|
|
14163
14388
|
"duet-input": true,
|
|
14164
14389
|
disabled: this.disabled,
|
|
14165
14390
|
"is-number": this.component === "number",
|
|
@@ -14167,17 +14392,17 @@ class DuetInput {
|
|
|
14167
14392
|
"after-chip": this.getAllChips().length > 0,
|
|
14168
14393
|
"align-right": this.inputAlign === "right",
|
|
14169
14394
|
[`input-padding-${this.inputPadding}`]: true,
|
|
14170
|
-
}, 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 && (hAsync("span", { key: '
|
|
14395
|
+
}, 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 && (hAsync("duet-visually-hidden", { key: `maxlength-announcement-${this.maxlengthAnnouncementKey}`, "aria-live": "polite", "aria-atomic": "true" }, this.maxlengthAnnouncement)), this.fieldSuffix && (hAsync("span", { key: 'b2d284fc05798f7dab08555f524cabf4f94f0e19', class: "input-adornment suffix", id: this.suffixId }, this.fieldSuffix)), !this.value && hasInputIcon && (hAsync("div", { key: '8364a8a7687b6e37279585edf55da9005673f4df', class: "duet-input-icon" }, hAsync("duet-icon", { key: '1b420da3e76241f1e105ce5ef8b9f40e6490424d', margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (hAsync("div", { key: 'c67978258fbf64a22563a8e139b7a7de012bb4ca', class: {
|
|
14171
14396
|
"duet-input-clear-icon": true,
|
|
14172
14397
|
"duet-input-clear-icon-single": !hasInputIcon,
|
|
14173
14398
|
"duet-input-clear-icon-double": !!this.icon,
|
|
14174
14399
|
"duet-input-clear-icon-button": this.variation === "button",
|
|
14175
14400
|
[`input-padding-${this.inputPadding}`]: true,
|
|
14176
|
-
} }, hAsync("button", { key: '
|
|
14401
|
+
} }, hAsync("button", { key: 'b243244d6d5184c42a9afb93483479a0b07bad7d', onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel[this.language], "aria-keyshortcuts": "Escape" }, hAsync("duet-icon", { key: '2ff21863005e55dc7a4dc1a16e2e2e40ad7f85cf', margin: "none", size: "medium", name: "action-clear-input", color: "currentColor" })))), this.icon && this.variation !== "button" && (hAsync("div", { key: '7732892f159a6c7c9ad7c89b0031052b1ed45502', class: "duet-input-icon" }, hAsync("duet-icon", { key: '97de6dc8ff0c506db494dc36edc6d0107792c2b9', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && hAsync("slot", { key: '5c940caf605e2eaff4db2a36c63548db78f36f41', name: "button" }), this.variation === "revealable" && (hAsync("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
|
|
14177
14402
|
? this.hidePasswordLabel[this.language]
|
|
14178
|
-
: this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (hAsync("duet-visually-hidden", { key: '
|
|
14403
|
+
: this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (hAsync("duet-visually-hidden", { key: 'cc394dbd7d28fc9e1cf0a864c67e7e7a6a835d1a' }, hAsync("span", { key: '20033ed28c86634d6faf03180e53cff84def1329', "aria-live": "polite" }, this.isPasswordRevealed
|
|
14179
14404
|
? this.passwordShownAriaAnnouncement[this.language]
|
|
14180
|
-
: this.passwordHiddenAriaAnnouncement[this.language]))), hAsync("slot", { key: '
|
|
14405
|
+
: this.passwordHiddenAriaAnnouncement[this.language]))), hAsync("slot", { key: 'b72c50503fa80fd1ba6764b7b3348bc5d7b2813c' })), hAsync("span", { key: '25790e8c5147bb271fefa6cbce2343287b57c816', class: "duet-input-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: 'c62d261a03ebec492aed9c65a836525e47660cfc', class: "duet-input-error" }, this.error)))));
|
|
14181
14406
|
}
|
|
14182
14407
|
get element() { return getElement(this); }
|
|
14183
14408
|
static get watchers() { return {
|
|
@@ -14245,6 +14470,7 @@ class DuetInput {
|
|
|
14245
14470
|
"isPasswordRevealed": [32],
|
|
14246
14471
|
"isFocused": [32],
|
|
14247
14472
|
"_accessiblePopup": [32],
|
|
14473
|
+
"maxlengthAnnouncement": [32],
|
|
14248
14474
|
"setFocus": [64],
|
|
14249
14475
|
"resetCursor": [64],
|
|
14250
14476
|
"clearInput": [64],
|
|
@@ -14390,24 +14616,24 @@ class DuetLayout {
|
|
|
14390
14616
|
* Always the last one in the class.
|
|
14391
14617
|
*/
|
|
14392
14618
|
render() {
|
|
14393
|
-
return (hAsync(Host, { key: '
|
|
14619
|
+
return (hAsync(Host, { key: 'c3ba619c0c3088257b425ba8f5022ebef33c1100', class: {
|
|
14394
14620
|
center: this.center,
|
|
14395
14621
|
"duet-middle": this.middle,
|
|
14396
14622
|
"duet-ie": isInternetExplorer(),
|
|
14397
|
-
} }, hAsync("div", { key: '
|
|
14623
|
+
} }, hAsync("div", { key: 'd627f63579dfb957bf3abe17191e8a8e943f0aae', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, this.hasTop && (hAsync("div", { key: '4586ff77f2ef4209020a2401eef63273527a2e27', class: {
|
|
14398
14624
|
"duet-layout-top": true,
|
|
14399
14625
|
"duet-center": this.center,
|
|
14400
|
-
} }, hAsync("div", { key: '
|
|
14626
|
+
} }, hAsync("div", { key: 'daebb47e73054b59bb0459dc3327e0e60b17ebbe', class: "duet-layout-top-wrapper" }, hAsync("slot", { key: '339fac00b53c0b4f532cfc77d5743217b5f72057', name: "top" })))), hAsync("div", { key: 'bbf287d1f0aa701c40553a426b7a77b0a1c24c17', class: {
|
|
14401
14627
|
"duet-layout": true,
|
|
14402
14628
|
"has-sidebar": this.hasSidebar,
|
|
14403
14629
|
"duet-center": this.center,
|
|
14404
14630
|
[`padding-${this.paddingBreakpoint}`]: !!this.paddingBreakpoint,
|
|
14405
|
-
} }, hAsync("main", { key: '
|
|
14631
|
+
} }, hAsync("main", { key: '0d75aa9aeb65fa61f8e0ff114cee467abe49f1cd', class: "duet-main" }, this.hasPageHeading && hAsync("slot", { key: 'fd0ed7464c54122f1cfbbfbfc40f78d8c9ab41c7', name: "page-heading" }), hAsync("slot", { key: '1004e4007a1d82e22147ddf3a883e8ddc9c7b0dc', name: "main" })), this.hasSidebar && (hAsync("aside", { key: '167c6d2495c8bbc7cd0275f723e0810b9fc311b6', class: "duet-sidebar" }, hAsync("div", { key: 'f0bbcbeb756bf18ba1b678c405c3890fb00ad857', class: {
|
|
14406
14632
|
"duet-sidebar-container": true,
|
|
14407
14633
|
"has-tabs": this.tabs,
|
|
14408
14634
|
sticky: this.sticky,
|
|
14409
14635
|
[this.stickyDistance]: this.sticky,
|
|
14410
|
-
} }, hAsync("slot", { key: '
|
|
14636
|
+
} }, hAsync("slot", { key: 'b8b30e8b29bb87ea6a0c0891ca5f841d0921f72b', name: "sidebar" }))))))));
|
|
14411
14637
|
}
|
|
14412
14638
|
get element() { return getElement(this); }
|
|
14413
14639
|
static get style() { return duetLayoutCss; }
|
|
@@ -14667,10 +14893,10 @@ class DuetLink {
|
|
|
14667
14893
|
const Tag = !this.url && this.variation !== "default" ? "button" : "a";
|
|
14668
14894
|
const role = !this.url && this.variation === "default" ? "button" : null;
|
|
14669
14895
|
const isButton = Tag === "button";
|
|
14670
|
-
return (hAsync(Host, { key: '
|
|
14896
|
+
return (hAsync(Host, { key: '1cac563de2598ea4f66a666a8e9ba85d74ef4d29', class: {
|
|
14671
14897
|
[`duet-link-${this.variation}`]: true,
|
|
14672
14898
|
"duet-m-0": this.margin === "none",
|
|
14673
|
-
} }, hAsync(Tag, { key: '
|
|
14899
|
+
} }, hAsync(Tag, { key: '0ff450feb862488c1bfaf626a234559904f301a1', href: this.url, class: {
|
|
14674
14900
|
"duet-link": true,
|
|
14675
14901
|
"duet-link-is-external": this.external,
|
|
14676
14902
|
"duet-link-is-download": !!this.download,
|
|
@@ -14860,7 +15086,7 @@ class DuetList {
|
|
|
14860
15086
|
* Always the last one in the class.
|
|
14861
15087
|
*/
|
|
14862
15088
|
render() {
|
|
14863
|
-
return (hAsync("dl", { key: '
|
|
15089
|
+
return (hAsync("dl", { key: 'c83e43f3d82e32198e0a5d45a0812b8358f6be07', class: { "duet-list-component": true, "duet-m-0": this.margin === "none" } }, hAsync("slot", { key: '7a65328f555edf10f4da02166eebcfcf8b8f68f7' })));
|
|
14864
15090
|
}
|
|
14865
15091
|
get element() { return getElement(this); }
|
|
14866
15092
|
static get watchers() { return {
|
|
@@ -14926,7 +15152,7 @@ class DuetListItem {
|
|
|
14926
15152
|
* Always the last one in the class.
|
|
14927
15153
|
*/
|
|
14928
15154
|
render() {
|
|
14929
|
-
return (hAsync(Host, { key: '
|
|
15155
|
+
return (hAsync(Host, { key: 'b7809fbe9217be4d6986d8124e5d6739e8e5c506', class: {
|
|
14930
15156
|
"duet-theme-turva": this.theme === "turva",
|
|
14931
15157
|
"duet-no-stacking": !this.responsive,
|
|
14932
15158
|
"duet-list-item-breakpoint-x-small": this.breakpoint === "x-small",
|
|
@@ -14934,7 +15160,7 @@ class DuetListItem {
|
|
|
14934
15160
|
"duet-list-item-breakpoint-medium": this.breakpoint === "medium",
|
|
14935
15161
|
"duet-list-item-breakpoint-large": this.breakpoint === "large",
|
|
14936
15162
|
"duet-list-item-breakpoint-x-large": this.breakpoint === "x-large",
|
|
14937
|
-
} }, hAsync("dt", { key: '
|
|
15163
|
+
} }, hAsync("dt", { key: 'b359df218ae6b2e1240b125d8d81a3555f57b33f' }, hAsync("slot", { key: '778f57296c84f300810462d15a42eeed8a1ac03a', name: "label" })), hAsync("dd", { key: 'f28fc64caa353dbc6e042a094ebad697146a0ffa' }, hAsync("slot", { key: '734ef1bfe403082bc681b151d842e45c4341d3cb', name: "value" }))));
|
|
14938
15164
|
}
|
|
14939
15165
|
get element() { return getElement(this); }
|
|
14940
15166
|
static get style() { return duetListItemCss; }
|
|
@@ -15072,7 +15298,7 @@ class DuetLogo {
|
|
|
15072
15298
|
*/
|
|
15073
15299
|
render() {
|
|
15074
15300
|
const TagName = this.href ? "a" : "div";
|
|
15075
|
-
return (hAsync(Host, { key: '
|
|
15301
|
+
return (hAsync(Host, { key: 'b66ac360589fd13695f735c6c659bc4f94e2375e', class: { "duet-m-0": this.margin === "none" } }, hAsync(TagName, { key: '91a1d72ee9da1ac978938f28eaab541f3dc7a2ce', href: this.href, ref: link => (this.nativeLink = link), "aria-label": this.accessibleLabel, class: {
|
|
15076
15302
|
"duet-logo": true,
|
|
15077
15303
|
[this.size]: true,
|
|
15078
15304
|
"duet-logo-inverse": this.inverse,
|
|
@@ -15232,17 +15458,17 @@ class DuetMenuBar {
|
|
|
15232
15458
|
render() {
|
|
15233
15459
|
const slideoutAvailable = document.querySelectorAll("duet-slideout").length > 0;
|
|
15234
15460
|
const isUsedAsAdditionalHorizontalNav = slideoutAvailable && !this.logo;
|
|
15235
|
-
return (hAsync(Host, { key: '
|
|
15461
|
+
return (hAsync(Host, { key: '8e72a749ab5f9a2b180ea11670931e4a5f1dfc48' }, hAsync("nav", { key: '13aa3dead3343cbd11debfec1c4e4c7b6d58ea41', class: {
|
|
15236
15462
|
"duet-menu-bar": true,
|
|
15237
15463
|
"duet-theme-turva": this.theme === "turva",
|
|
15238
15464
|
"horizontal-nav": isUsedAsAdditionalHorizontalNav,
|
|
15239
15465
|
"duet-menu-bar-slim": !this.centerSlotUsed,
|
|
15240
15466
|
hidden: this.hidden && this.hideOnScroll,
|
|
15241
15467
|
bottom: this.onBottom,
|
|
15242
|
-
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: '
|
|
15468
|
+
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: 'f6f5066520f23e2f40105c60550f9ca09a3f3ce4', class: "top" }), hAsync("div", { key: '1bc95be8d4b824e14c1ab97ea7b6131bdf80ae84', class: { container: true, "with-info-text": !!this.logoInfoText && !this.centerSlotUsed }, ref: el => (this.container = el), onScroll: () => this.scrollbarCheck() }, this.logo && (hAsync("div", { key: '1126ebdb087ef0879f0a3367a7c230d1b161e14c' }, hAsync("duet-logo", { key: '770ef75946420cf9122526af88eac7afec069ae2', class: "medium", size: "medium", margin: "none", theme: this.theme, href: this.logoHref, accessibleLabel: this.logoLinkAccessibleLabel, onClick: this.handleLogoClick, language: this.language }), hAsync("duet-logo", { key: '400f1b37fe02584a549d7b20e9a8df46ecfdf1b3', class: "large", size: "large", margin: "none", theme: this.theme, href: this.logoHref, accessibleLabel: this.logoLinkAccessibleLabel, onClick: this.handleLogoClick, language: this.language }), hAsync("duet-logo", { key: '91c920bbb82868d57688e80a8cb8ce9e0862d44a', class: "only-symbol", onlySymbol: true, margin: "none", theme: this.theme, href: this.logoHref, accessibleLabel: this.logoLinkAccessibleLabel, onClick: this.handleLogoClick, language: this.language }), this.logoInfoText && !this.centerSlotUsed && (hAsync("div", { key: 'fffe9b63fe88c88c7513747e8c7c4c6132a09bc3', class: {
|
|
15243
15469
|
"duet-logo-info-text": true,
|
|
15244
15470
|
"duet-theme-turva": this.theme === "turva",
|
|
15245
|
-
} }, this.logoInfoText)))), hAsync("div", { key: '
|
|
15471
|
+
} }, this.logoInfoText)))), hAsync("div", { key: '7f0792cfa41b0056d5cc7cc307664b527d0b5936', class: "list center", role: "list" }, hAsync("div", { key: '0c670a1650d4733e837851a0205225e559bb62ed', class: "more-left", hidden: !this.leftMoreVisible, role: "presentation" }), hAsync("slot", { key: 'ff44edce07857e78676b4dbcf06f078d6974d15b', name: "center" }), hAsync("div", { key: '6b742ff9c5f993a8814689cea374a5befc4c88ec', class: "more-right", hidden: !this.rightMoreVisible, role: "presentation" })), hAsync("div", { key: 'c1fd0a243705d349ff084880a3523c4ebf62d474', class: "list right", role: "list" }, hAsync("slot", { key: '1662a98510c36ad29a273cda970b3b91cc1a48ef', name: "right" }))), hAsync("div", { key: 'baa3b56ef2c6320468a982cc84052b1294638599', class: "bottom" }))));
|
|
15246
15472
|
}
|
|
15247
15473
|
get element() { return getElement(this); }
|
|
15248
15474
|
static get style() { return duetMenuBarCss; }
|
|
@@ -15321,10 +15547,10 @@ class DuetMenuBarButton {
|
|
|
15321
15547
|
* Always the last one in the class.
|
|
15322
15548
|
*/
|
|
15323
15549
|
render() {
|
|
15324
|
-
return (hAsync(Host, { key: '
|
|
15550
|
+
return (hAsync(Host, { key: 'c3137b7868b438a2d3f0769ecfcd876c39b6b762', role: "listitem", onfocus: () => this.setFocus() }, hAsync("button", { key: '2a1b919990d487b374479d4d71ab1ab271c52d63', ref: button => (this.nativeButton = button), class: {
|
|
15325
15551
|
"duet-menu-bar-button": true,
|
|
15326
15552
|
"duet-theme-turva": this.theme === "turva",
|
|
15327
|
-
}, "aria-controls": this.accessibleControls, "aria-label": this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }, this.icon && (hAsync("duet-icon", { key: '
|
|
15553
|
+
}, "aria-controls": this.accessibleControls, "aria-label": this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }, this.icon && (hAsync("duet-icon", { key: 'ccf0897bfd45251012c0e9f66d492cd2c51521f8', class: "menu-bar-button-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: '1d5c21e0880c7cac3313ada7623ba81e2eea9bdf' }))));
|
|
15328
15554
|
}
|
|
15329
15555
|
get element() { return getElement(this); }
|
|
15330
15556
|
static get style() { return duetMenuBarButtonCss; }
|
|
@@ -15414,17 +15640,17 @@ class DuetMenuBarDropdown {
|
|
|
15414
15640
|
* Always the last one in the class.
|
|
15415
15641
|
*/
|
|
15416
15642
|
render() {
|
|
15417
|
-
return (hAsync(Host, { key: '
|
|
15643
|
+
return (hAsync(Host, { key: '7c841d8d215853a62a92f5730eed29b2b7552e5f', role: "listitem" }, hAsync("div", { key: '7021c554d6aafa114e225ebd328c9d1aa400a82f', class: {
|
|
15418
15644
|
"duet-menu-bar-dropdown": true,
|
|
15419
15645
|
"duet-theme-turva": this.theme === "turva",
|
|
15420
15646
|
active: this.open,
|
|
15421
15647
|
[`duet-menu-bar-dropdown--slot-${this.getVariant()}`]: true,
|
|
15422
|
-
} }, hAsync("button", { key: '
|
|
15648
|
+
} }, hAsync("button", { key: 'ed8b6ec296f51a222f37a11a9f979df8efb83525', ref: element => (this.button = element), "aria-label": this.accessibleLabel, "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
|
|
15423
15649
|
active: this.open,
|
|
15424
|
-
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '
|
|
15650
|
+
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '0cb68c07d1b89f968757595fde07aff18be326a3', class: "menu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: '014d839c7407fe48b8139e8d5b4b61fff7e2f9de', class: "label" }, hAsync("slot", { key: '45f00327bfdb72f879469ef815cf73f044d331d0', name: "label" }), hAsync("duet-icon", { key: 'fc550998f3a736271007766634b153838849de45', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: 'fbb77489a38cdd3c7e6edb70659898600db01a14', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
|
|
15425
15651
|
items: true,
|
|
15426
15652
|
hidden: !this.open,
|
|
15427
|
-
} }, hAsync("slot", { key: '
|
|
15653
|
+
} }, hAsync("slot", { key: 'f943770b922349bf805d0aaaadf47e70d0db10d4' })))));
|
|
15428
15654
|
}
|
|
15429
15655
|
get element() { return getElement(this); }
|
|
15430
15656
|
static get style() { return duetMenuBarDropdownCss; }
|
|
@@ -15491,11 +15717,11 @@ class DuetMenuBarDropdownLink {
|
|
|
15491
15717
|
* Always the last one in the class.
|
|
15492
15718
|
*/
|
|
15493
15719
|
render() {
|
|
15494
|
-
return (hAsync(Host, { key: '
|
|
15720
|
+
return (hAsync(Host, { key: '9aec16ee648442b0ffb731e612cc0a051f849e06' }, hAsync("a", { key: 'a879395faece3c5211eea56c497c45908969889d', class: {
|
|
15495
15721
|
"duet-menu-bar-dropdown-link": true,
|
|
15496
15722
|
[`duet-menu-bar-dropdown-link--slot-${this.getVariant()}`]: true,
|
|
15497
15723
|
"duet-theme-turva": this.theme === "turva",
|
|
15498
|
-
}, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '
|
|
15724
|
+
}, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '2e6bed63404ffa961753c38929f9726240d8daf2', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("slot", { key: 'eecdd8e7217d2eaf1d08438b17a18a3a377b8332' }))));
|
|
15499
15725
|
}
|
|
15500
15726
|
get element() { return getElement(this); }
|
|
15501
15727
|
static get style() { return duetMenuBarDropdownLinkCss; }
|
|
@@ -15581,11 +15807,11 @@ class DuetMenuBarItem {
|
|
|
15581
15807
|
*/
|
|
15582
15808
|
render() {
|
|
15583
15809
|
const TagName = this.url ? "a" : "button";
|
|
15584
|
-
return (hAsync(Host, { key: '
|
|
15810
|
+
return (hAsync(Host, { key: '132d5bd2465b0d1d847c544579ff69c5229faf9a', role: "listitem" }, hAsync(TagName, { key: '486539812ce02259d1ee5e1366aa019371e59e5c', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
|
|
15585
15811
|
"duet-menu-bar-item": true,
|
|
15586
15812
|
"duet-theme-turva": this.theme === "turva",
|
|
15587
15813
|
active: this.active,
|
|
15588
|
-
}, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '
|
|
15814
|
+
}, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '9b6d8d303debd7037dde3c8af5780e937a180ed9', class: "leading-icon", size: "auto", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: 'd7a37a3a78860c03d9d0876f29382dbb066accf1' }), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: 'd0d12aa8778d8be71cb4323758932176c6fb48c7', class: {
|
|
15589
15815
|
"trailing-icon": !!this.trailingIcon,
|
|
15590
15816
|
"trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
|
|
15591
15817
|
"external-icon": !!this.external,
|
|
@@ -15650,11 +15876,11 @@ class DuetMenuBarLink {
|
|
|
15650
15876
|
* Always the last one in the class.
|
|
15651
15877
|
*/
|
|
15652
15878
|
render() {
|
|
15653
|
-
return (hAsync(Host, { key: '
|
|
15879
|
+
return (hAsync(Host, { key: '858334fb783a2f4df99678148750056417235872', role: "listitem" }, hAsync("a", { key: '7429380cb4dd0764af78fb92f6036edcbc503fcb', class: {
|
|
15654
15880
|
"duet-menu-bar-link": true,
|
|
15655
15881
|
"duet-theme-turva": this.theme === "turva",
|
|
15656
15882
|
active: this.active,
|
|
15657
|
-
}, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '
|
|
15883
|
+
}, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: 'cbcbea291b31e18a928e0bc5ba3d9fade0a5be18', class: "menu-bar-link-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: 'e3bdab3464edebc3009bb50436c82a94700b68e6' }))));
|
|
15658
15884
|
}
|
|
15659
15885
|
get element() { return getElement(this); }
|
|
15660
15886
|
static get style() { return duetMenuBarLinkCss; }
|
|
@@ -15990,14 +16216,14 @@ class DuetModal {
|
|
|
15990
16216
|
var _a, _b;
|
|
15991
16217
|
const iconColor = postfixTheme("primary", this.theme);
|
|
15992
16218
|
const closeColor = postfixTheme("secondary", this.theme);
|
|
15993
|
-
const closingButton = (hAsync("div", { key: '
|
|
15994
|
-
return (hAsync("div", { key: '
|
|
16219
|
+
const closingButton = (hAsync("div", { key: 'ec2c3a88ed4381cdfe04d5e09c6973f50926938b', class: "duet-modal-close" }, hAsync("duet-button", { key: '3ba54ca9d928a311351d7daccfe20c1a94dcb6a3', ref: button => (this.buttonEl = button), variation: "plain", accessibleLabel: this.accessibleCloseLabel, color: closeColor, iconSize: "large", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: ev => this.closeModal(ev), fixed: true })));
|
|
16220
|
+
return (hAsync("div", { key: '44ad4e8bf6516da0e6350649f8e4cae009f7cf07', ref: modal => (this.modalEl = modal), "aria-label": (_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.heading, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: this.variation === "loader" ? "alert" : "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", class: {
|
|
15995
16221
|
"duet-modal-container": true,
|
|
15996
16222
|
"duet-theme-turva": this.theme === "turva",
|
|
15997
16223
|
"duet-modal-active": this.open,
|
|
15998
16224
|
"duet-modal-slide-up": this.variation === "slide-up",
|
|
15999
16225
|
"duet-modal-has-sticky-header": this.hasStickyHeader,
|
|
16000
|
-
} }, hAsync("duet-overlay", { key: '
|
|
16226
|
+
} }, hAsync("duet-overlay", { key: 'd2eb31d5195cced7a59ca29dbd2e2f0ef84e2655', "z-index": "-1", visible: this.open, variation: this.variation === "loader" ? "white" : "default" }), hAsync("div", { key: '4703b85e9d49409f26720fe00b270370afa97f76', ref: modalInner => (this.modalInnerEl = modalInner), class: {
|
|
16001
16227
|
"duet-modal-inner": true,
|
|
16002
16228
|
[this.size]: true,
|
|
16003
16229
|
"duet-modal-slide-up": this.variation === "slide-up",
|
|
@@ -16008,22 +16234,22 @@ class DuetModal {
|
|
|
16008
16234
|
this.closeModal(e);
|
|
16009
16235
|
}
|
|
16010
16236
|
}
|
|
16011
|
-
} }, hAsync("div", { key: '
|
|
16237
|
+
} }, hAsync("div", { key: 'caa7a84911505b70ffe1e15ea73bd4489eac49e2', ref: modalContentEl => (this.modalContentEl = modalContentEl), "aria-live": this.accessibleAnnounceChanges === "all" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "all" ? "true" : null, class: {
|
|
16012
16238
|
"duet-modal": true,
|
|
16013
16239
|
"duet-modal-has-sticky-header": this.hasStickyHeader,
|
|
16014
16240
|
[this.size]: true,
|
|
16015
16241
|
[this.variation]: true,
|
|
16016
|
-
} }, this.gutterSize !== "none" && !this.hasStickyHeader && hAsync("duet-spacer", { key: '
|
|
16242
|
+
} }, this.gutterSize !== "none" && !this.hasStickyHeader && hAsync("duet-spacer", { key: 'e9d16355dbf2de5937a1a3bf5fa7e27833270238' }), this.hasStickyHeader ? (hAsync("div", { class: "duet-modal-sticky-header" }, closingButton, hAsync("slot", { name: "sticky-header" }))) : (closingButton), hAsync("div", { key: '9d9ef9ea5b47d2107b49066c1d156c886fb6f972', class: {
|
|
16017
16243
|
"duet-modal-body": true,
|
|
16018
16244
|
"duet-modal-gutter-none": this.gutterSize === "none",
|
|
16019
16245
|
"duet-modal-gutter-small": this.gutterSize === "small",
|
|
16020
16246
|
"duet-modal-gutter-medium": this.gutterSize === "medium",
|
|
16021
16247
|
"duet-modal-gutter-large": this.gutterSize === "large",
|
|
16022
|
-
}, "aria-live": this.accessibleAnnounceChanges === "heading" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "heading" ? "true" : null }, hAsync("div", { key: '
|
|
16248
|
+
}, "aria-live": this.accessibleAnnounceChanges === "heading" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "heading" ? "true" : null }, hAsync("div", { key: 'be0b90e2577c2760b6f95200a917649cd6b35287', class: "duet-modal-header" }, hAsync("span", { key: 'e2dd5ce0f9609e9fc096ad49e9d6d0ee2a01699d', class: "duet-modal-inner-slot-top" }, hAsync("slot", { key: 'dbc67d9fc55310cabc65484b4518b8cadcfef874', name: "top" })), this.icon && hAsync("duet-icon", { key: '095d2b5e9b29cf0a849711b7472d424731d9d36c', name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (hAsync("duet-heading", { key: '3cdcdd876b89be930fb67d715a0873f9305b787b', "visual-level": (_b = this.headingVisualLevel) !== null && _b !== void 0 ? _b : this.headingLevel, level: this.headingLevel, theme: this.theme }, this.heading))), this.variation === "loader" && (hAsync("div", { key: '3d5cd64a2ed94e45180836515083f8885295c4d6', class: "duet-modal-spinner" }, hAsync("duet-spinner", { key: '693a9b5947855ff18c0f3089a3b437ccb543d9d0', size: "large", color: postfixTheme("primary", this.theme) }))), hAsync("div", { key: '9b07821006bf82a6707579789376d42febf652b8', "aria-live": this.variation === "loader"
|
|
16023
16249
|
? "assertive"
|
|
16024
16250
|
: this.accessibleAnnounceChanges === "body"
|
|
16025
16251
|
? "polite"
|
|
16026
|
-
: null, "aria-atomic": this.accessibleAnnounceChanges === "body" ? "true" : null, class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el) }, hAsync("slot", { key: '
|
|
16252
|
+
: null, "aria-atomic": this.accessibleAnnounceChanges === "body" ? "true" : null, class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el) }, hAsync("slot", { key: '0008beb6b6f6bac06c6ce3dddb661157dfedf4e1' })))))));
|
|
16027
16253
|
}
|
|
16028
16254
|
get element() { return getElement(this); }
|
|
16029
16255
|
static get watchers() { return {
|
|
@@ -16339,23 +16565,23 @@ class DuetMultiselect {
|
|
|
16339
16565
|
*/
|
|
16340
16566
|
render() {
|
|
16341
16567
|
var _a;
|
|
16342
|
-
return (hAsync(Host, { key: '
|
|
16568
|
+
return (hAsync(Host, { key: '4b8d1905f6d83802479254ed818eddc225a07884', class: {
|
|
16343
16569
|
"duet-m-0": this.margin === "none",
|
|
16344
16570
|
"duet-expand": this.expand,
|
|
16345
|
-
} }, hAsync("div", { key: '
|
|
16571
|
+
} }, hAsync("div", { key: '5448159c21e1975424169c66faa9442471e97390', class: {
|
|
16346
16572
|
"duet-multiselect-container": true,
|
|
16347
16573
|
"duet-label-hidden": this.labelHidden,
|
|
16348
16574
|
"duet-theme-turva": this.theme === "turva",
|
|
16349
16575
|
"duet-input-top-caption-shown": this.isCaptionVisible,
|
|
16350
16576
|
"has-error": !!this.error,
|
|
16351
|
-
}, onKeyDown: (e) => this.onMultiselectKeyDown(e) }, hAsync(DuetInternalLabel, { key: '
|
|
16577
|
+
}, onKeyDown: (e) => this.onMultiselectKeyDown(e) }, hAsync(DuetInternalLabel, { key: '572ae7df62eeb7870c958fa8812a032f685252c1', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: this.identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: 'd6ce07a6fe3994af5ff7e8639febe7380738853e', class: "duet-multiselect-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: 'cabbf0070861de762ff0e7b1fa390fc021c6e56c', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: '501998a95ac97a8e41aff3f77bb3caef192dcc07', id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { key: 'c32972b8bff8afd700203c2906a1b49b7656555f', class: "duet-multiselect-wrapper" }, hAsync("button", { key: '07e7b36d4264aaff222086f518aeeef2c1f9e7d1', id: this.identifier, ref: el => (this.multiselectElement = el), class: { "duet-multiselect": true, "duet-multiselect-active": this.checkboxesVisible }, tabindex: "0", onClick: () => this.toggleCheckboxes(), onFocus: e => this.onFocus(e), onBlur: e => this.onBlur(e), role: "combobox", "aria-expanded": this.checkboxesVisible ? "true" : "false", "aria-haspopup": "listbox", "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-owns": `${this.identifier}-checkboxes`, onKeyDown: (e) => this.onMultiselectInputKeyDown(e), disabled: this.disabled }, hAsync("span", { key: 'aaa61bce02a50eca851f48da7ee461474bbae0f3', role: "textbox", "aria-readonly": "true", "aria-multiline": "false", "aria-autocomplete": "none", "aria-controls": `${this.identifier}-checkboxes`, "aria-label": this.placeholderLabel[this.language], class: "duet-multiselect-label" }, this.placeholder), this.value && this.value.length > 0 && (hAsync("span", { key: 'b869479691f3a394d89f8720efd7868c13f5fbec', class: "duet-multiselect-badge" }, this.value.length, hAsync("duet-visually-hidden", { key: 'fcbb5b6dd4b0dc6f4abae50aec12eb21da92d0f4' }, this.selectedLangObject[this.language], ",", " ", Array.isArray(this.value) ? this.value.map(item => item.label).join(", ") : ""))), hAsync("svg", { key: '68dc4a3ad25722f3a39628147244ce459a17d6c5', class: { "duet-multiselect-icon": true, "duet-multiselect-icon--rotate": this.checkboxesVisible }, fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '8aeddd5a385ca37e54869993b90bd1838449d526', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" }))), hAsync("div", { key: 'f46a4bb216b778776acfa1aff5a9867afa236789', id: `${this.identifier}-checkboxes`, role: "listbox", class: {
|
|
16352
16578
|
"duet-multiselect-checkboxes": true,
|
|
16353
16579
|
"duet-multiselect-checkboxes-active": this.checkboxesVisible,
|
|
16354
|
-
}, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, ((_a = this.processedItems) === null || _a === void 0 ? void 0 : _a.length) && this.allControls && (hAsync("div", { key: '
|
|
16580
|
+
}, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, ((_a = this.processedItems) === null || _a === void 0 ? void 0 : _a.length) && this.allControls && (hAsync("div", { key: '3907f7054436f56ed50866ab0e191c00c2dd17d7', class: "duet-multiselect-all-control-buttons" }, hAsync("button", { key: 'e502215643ea66e08be0b55c3ba1deeed79bdaad', class: "duet-multiselect-select-all", onClick: this.handleSelectAllClick, id: this.getOptionIdentifier(-2), onKeyDown: (e) => this.onCheckboxKeyDown(e, -2) }, this.selectAllLabel[this.language]), hAsync("button", { key: 'a63b642a9e24bc18d88e567f1b6c480f074ad578', class: "duet-multiselect-clear-all", onClick: this.handleClearAllClick, id: this.getOptionIdentifier(-1), onKeyDown: (e) => this.onCheckboxKeyDown(e, -1) }, this.clearAllLabel[this.language]))), this.processedItems &&
|
|
16355
16581
|
this.processedGroups.map(group => (hAsync("fieldset", null, group.label && hAsync("legend", null, group.label), group.items.map((item, key) => {
|
|
16356
16582
|
var _a, _b;
|
|
16357
16583
|
return (hAsync("duet-checkbox", { identifier: this.getOptionIdentifier(key), role: "option", label: item.label, value: item.value, key: item.value, checked: (_a = this.value) === null || _a === void 0 ? void 0 : _a.includes(item), "accessible-selected": ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(item)) ? "true" : undefined, disabled: !this.checkboxesVisible || item.disabled, onDuetChange: e => this.toggleCheckbox(e, item), onKeyDown: (e) => this.onCheckboxKeyDown(e, key), theme: this.theme }));
|
|
16358
|
-
})))))), hAsync("span", { key: '
|
|
16584
|
+
})))))), hAsync("span", { key: '221b275486bef481c990d6625bc92120cd452e83', class: "duet-multiselect-help duet-multiselect-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '022173402cfe3a2facde3bf6f9ba63c22b68a949' }, this.error)))));
|
|
16359
16585
|
}
|
|
16360
16586
|
get element() { return getElement(this); }
|
|
16361
16587
|
static get watchers() { return {
|
|
@@ -16430,7 +16656,7 @@ class DuetNav {
|
|
|
16430
16656
|
* Always the last one in the class.
|
|
16431
16657
|
*/
|
|
16432
16658
|
render() {
|
|
16433
|
-
return (hAsync(Host, { key: '
|
|
16659
|
+
return (hAsync(Host, { key: 'cfe229a2c9358cf42d3de731743f9294662d104f' }, hAsync("div", { key: 'aa379a4209ebe14ffd066b760e1649bf1e70d5de', class: { container: true, sticky: this.sticky } }, hAsync("slot", { key: '75a8a41301126ff2702908d3d60077afc8dd466f' }), hAsync("slot", { key: '5c2b378bc0a9258e1e6de5776b5395cdbfeb4625', name: "mobile" }), hAsync("slot", { key: '457a685985e8dda33bfd158e4caa497816aec4e8', name: "desktop" }))));
|
|
16434
16660
|
}
|
|
16435
16661
|
get element() { return getElement(this); }
|
|
16436
16662
|
static get style() { return duetNavCss; }
|
|
@@ -16523,11 +16749,11 @@ class DuetNotification {
|
|
|
16523
16749
|
return `${indicatorText}${slottedText}${slottedText.endsWith(".") ? "" : "."} ${this.date}`;
|
|
16524
16750
|
}
|
|
16525
16751
|
render() {
|
|
16526
|
-
return (hAsync("div", { key: '
|
|
16752
|
+
return (hAsync("div", { key: 'e116ef2939b8668fc7279240fdf496f47517525b', role: "listitem", class: {
|
|
16527
16753
|
"duet-notification": true,
|
|
16528
16754
|
"duet-notification-highlight": this.highlight,
|
|
16529
16755
|
"duet-theme-turva": this.theme === "turva",
|
|
16530
|
-
} }, hAsync("a", { key: '
|
|
16756
|
+
} }, hAsync("a", { key: 'ac7b3f44a84463a437c6954d034b535dffcbc978', ref: element => (this.linkElement = element), href: this.url, target: this.external ? "_blank" : "_self", "aria-label": this.getAriaLabelText() }, hAsync("div", { key: '42276fe951fbbabbf6ff6b3f2051d11157890e2a', class: "duet-notification-container" }, hAsync("div", { key: '56dcb28c55e3881f6d3db4e19b92bd31bc414172', class: "duet-indicator-container" }, this.highlight && (hAsync("duet-indicator", { key: 'fd07536d88807026f7b41ab30ad85ea3e1af6032', variation: "new", "accessible-label": this.accessibleLabelUnread }))), hAsync("div", { key: 'e3daee0b1da9007ccf0338e2c093e46eec357331', class: "duet-notification-content" }, hAsync("slot", { key: '9bdcdf46004eac0eeabf90599190a403420e255b' })), hAsync("div", { key: '2b8ac8c2a2ee2552011334bb902fcf179359641c', class: "duet-notification-date" }, this.date)))));
|
|
16531
16757
|
}
|
|
16532
16758
|
get element() { return getElement(this); }
|
|
16533
16759
|
static get style() { return duetNotificationCss; }
|
|
@@ -16674,13 +16900,13 @@ class DuetNotificationDrawer {
|
|
|
16674
16900
|
* Always the last one in the class.
|
|
16675
16901
|
*/
|
|
16676
16902
|
render() {
|
|
16677
|
-
return (hAsync("div", { key: '
|
|
16903
|
+
return (hAsync("div", { key: '69b878842a591a528c9c8218abb3dae14e995406', class: {
|
|
16678
16904
|
"duet-drawer": true,
|
|
16679
16905
|
"duet-theme-turva": this.theme === "turva",
|
|
16680
|
-
}, onKeyDown: this.handleKeyDown }, hAsync("button", { key: '
|
|
16906
|
+
}, onKeyDown: this.handleKeyDown }, hAsync("button", { key: 'b430067e1fdca09a1c6ac0e162be9e2d5acd434f', ref: el => (this.drawerButtonEl = el), type: "button", class: {
|
|
16681
16907
|
"duet-drawer-toggle": true,
|
|
16682
16908
|
"duet-theme-turva": this.theme === "turva",
|
|
16683
|
-
}, id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (hAsync("div", { key: '
|
|
16909
|
+
}, id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (hAsync("div", { key: '55a526c885dc7ea660730e97fdc25fe0943dd2e2', class: "duet-drawer-icon" }, hAsync("duet-icon", { key: '37e3d9b20ed6f54da0a1445a76b68dc4dfa0b308', margin: "none", size: "x-small", name: this.icon, color: "currentColor" }), this.badge && hAsync("duet-indicator", { key: '90c45774b6cf888241d8d82c35380d05692106c6', variation: "change" }))), hAsync("span", { key: '92725e4a7119dbc5050599fefe7a17871b2f6d81', class: "duet-drawer-label" }, this.label), hAsync("div", { key: 'ba9fad66fc02ccf040d048a9d9706fc29b5d31c7', class: "duet-drawer-caret" }, hAsync("duet-icon", { key: '6e631282017345e59c7b7acdf7ccfa713d4a3bd2', margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" }))), hAsync("div", { key: '15342aa1db7638af746efb9401483f38f5d34b0f', id: "duet-drawer-content", class: {
|
|
16684
16910
|
"duet-drawer-content": true,
|
|
16685
16911
|
"duet-drawer-right": this.direction === "right",
|
|
16686
16912
|
"duet-drawer-left": this.direction === "left",
|
|
@@ -17187,15 +17413,15 @@ class DuetNumberInput {
|
|
|
17187
17413
|
const identifier = this.identifier || this.inputId;
|
|
17188
17414
|
const maxlength = `${this.localizeValue(this.max)}${this.getUnitString()}`.length;
|
|
17189
17415
|
const cleanedValue = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
|
|
17190
|
-
return (hAsync(Host, { key: '
|
|
17416
|
+
return (hAsync(Host, { key: '1e1ec1d4970da103cdd9fbb867e469e414365adb', class: {
|
|
17191
17417
|
"duet-theme-turva": this.theme === "turva",
|
|
17192
17418
|
"duet-expand": this.expand,
|
|
17193
17419
|
"duet-m-0": this.margin === "none",
|
|
17194
|
-
} }, hAsync("div", { key: '
|
|
17420
|
+
} }, hAsync("div", { key: '43bfdda224ef424c81d08a5bc5285348124dd6a0', class: "duet-number-container" }, hAsync("duet-input", { key: 'aa962811d9d95fc08a8211f3bdbb94cba87f0924', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value}${this.getUnitString()}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, hAsync("slot", { key: 'd0692236e001777d3e384ab54a02449d38e7cd44', name: "tooltip", slot: "tooltip" }), hAsync("div", { key: '493fa102da11525ac2688c4ae163324cd0b244d1', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, hAsync("button", { key: 'f6cfe72311cd6d5723471f72fa06d3c6173ac0cb', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, hAsync("duet-visually-hidden", { key: 'caea39a259e4ac79fc5c086f92d6205c96bfe081' }, this.accessibleSubtract
|
|
17195
17421
|
.replace(/\{\s*step\s*\}/, `${this.step}`)
|
|
17196
|
-
.replace(/\{\s*unit\s*\}/, `${this.unit}`)), hAsync("duet-icon", { key: '
|
|
17422
|
+
.replace(/\{\s*unit\s*\}/, `${this.unit}`)), hAsync("duet-icon", { key: 'ba9ad012c760bb989ab3b2d4c12209f4a0c3555d', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), hAsync("button", { key: 'f1c5f085b3d18b1f4f48c2a8c59ef8a945d9ee32', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, hAsync("duet-visually-hidden", { key: 'ee5a3d12e54e5523cab33865e148455e385e2082' }, this.accessibleAdd
|
|
17197
17423
|
.replace(/\{\s*step\s*\}/, `${this.step}`)
|
|
17198
|
-
.replace(/\{\s*unit\s*\}/, `${this.unit}`)), hAsync("duet-icon", { key: '
|
|
17424
|
+
.replace(/\{\s*unit\s*\}/, `${this.unit}`)), hAsync("duet-icon", { key: '1f2597d788f3738c1ffd0b6a4564b31546238228', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (hAsync("duet-visually-hidden", { key: '0bc549da309c663646b90e88329a755f0bd96a8a', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
|
|
17199
17425
|
}
|
|
17200
17426
|
get element() { return getElement(this); }
|
|
17201
17427
|
static get style() { return duetNumberInputCss; }
|
|
@@ -17307,7 +17533,7 @@ class DuetOverlay {
|
|
|
17307
17533
|
* Always the last one in the class.
|
|
17308
17534
|
*/
|
|
17309
17535
|
render() {
|
|
17310
|
-
return (hAsync(Host, { key: '
|
|
17536
|
+
return (hAsync(Host, { key: 'a962e9115a51fcbb322726c314b96e3dbc92920e', "aria-hidden": "true" }, hAsync("div", { key: '6d648d8dc0e371e27900f612a79dc943e3087005', style: { zIndex: this.zIndex }, class: {
|
|
17311
17537
|
"duet-overlay": true,
|
|
17312
17538
|
"duet-theme-turva": this.theme === "turva",
|
|
17313
17539
|
"keep-stacking-context": this.keepStackingContext,
|
|
@@ -17397,15 +17623,15 @@ class DuetPageHeading {
|
|
|
17397
17623
|
*/
|
|
17398
17624
|
render() {
|
|
17399
17625
|
const layout = this.layout === "narrow" ? "narrow" : this.layout === "fluid" ? "fluid" : "auto";
|
|
17400
|
-
return (hAsync("div", { key: '
|
|
17626
|
+
return (hAsync("div", { key: '3328f3fe2eae32ac303bd225286f8cb120ab61c4', class: {
|
|
17401
17627
|
"duet-page-heading": true,
|
|
17402
17628
|
"duet-theme-turva": this.theme === "turva",
|
|
17403
17629
|
"has-icon": !!this.icon,
|
|
17404
17630
|
[layout]: true,
|
|
17405
|
-
} }, hAsync("div", { key: '
|
|
17631
|
+
} }, hAsync("div", { key: '6004c4cad41df3235c35028e22b99687822834a3', class: "background" }, this.theme === "turva" && hAsync("div", { key: '96c29409898ad2d9e17f7a239de51564edeb6c3d', class: "background-mask" }), this.theme !== "turva" && this.shape !== "none" && hAsync("div", { key: '98927459ce052f21595e04456755f717bef082eb', class: "brand-shape" }), this.theme !== "turva" && this.shape !== "none" && hAsync("div", { key: '227a5d17a08578a3be98c62f2d70462b5c4b8b46', class: "brand-shape second-shape" }), this.icon && (hAsync("div", { key: '63df03a73b3f9fed6a2da169909fc3d9f66d5626', class: {
|
|
17406
17632
|
"brand-shaped-icon": true,
|
|
17407
17633
|
"secondary-background": this.iconBackground === "secondary" && this.theme !== "turva",
|
|
17408
|
-
} }, hAsync("duet-icon", { key: '
|
|
17634
|
+
} }, hAsync("duet-icon", { key: '37acbb96cb330205c3ebe49a067ac13aed9e41e4', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), hAsync("div", { key: '1e1418a1f8d795ea22ef9d109a492df7e02c18da', class: { heading: true, "has-back-button": this.hasButtonSlot } }, hAsync("slot", { key: 'd6b003c8333758e02039e2d9c34fc14e4a29d8e5', name: "heading" }), this.hasButtonSlot && (hAsync("div", { key: 'e41431ef7cd5f5fabebe5f0a6bd8130b1fd7e127', class: "button-container" }, hAsync("slot", { key: 'c04b5938d41a029b7e6eed4024a6c09790f5cc71', name: "button" }))), this.progressCurrentStep !== undefined && this.progressTotalSteps > 0 && (hAsync("div", { key: 'ee4a64fc94e17fdeb0cfc4885412d6cef97582e3' }, hAsync("duet-spacer", { key: '5c39c12f1ed87439b8c8273b4c919f865fda45af', size: "large" }), hAsync("div", { key: '7174a3aa5f24863cdb4b4a194f1003610fdb9ae8', role: "presentation" }, this.progressIndicator()))))));
|
|
17409
17635
|
}
|
|
17410
17636
|
get element() { return getElement(this); }
|
|
17411
17637
|
static get style() { return duetPageHeadingCss; }
|
|
@@ -17812,32 +18038,32 @@ class DuetPagination {
|
|
|
17812
18038
|
* Always the last one in the class.
|
|
17813
18039
|
*/
|
|
17814
18040
|
render() {
|
|
17815
|
-
return (hAsync(Host, { key: '
|
|
18041
|
+
return (hAsync(Host, { key: '713861c49972efc0620c9d6425aebc4621c60725', onKeyDown: e => this.onKeyboardDown(e), class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("nav", { key: '26f0be5edcc3d2e83961c40a097e804360ec82e4', role: "navigation", "aria-labelledby": this.accessibleLabelledBy ? `${this.accessibleLabelledBy} ${this.listId}` : this.listId, "aria-describedby": this.accessibleDescribedBy ? `${this.accessibleDescribedBy} ${this.listId}` : this.listId, "aria-descriptions": this.accessibleDescription, "aria-details": this.accessibleDetails, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
|
|
17816
18042
|
"duet-pagination-nav": true,
|
|
17817
18043
|
[`duet-pagination-variation-${this.variation}`]: true,
|
|
17818
|
-
} }, this.numbersStore !== "" && (hAsync("div", { key: '
|
|
18044
|
+
} }, this.numbersStore !== "" && (hAsync("div", { key: 'e048dc669a90234e04206d2e919477c456437171', "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, hAsync("duet-badge", { key: '4cc0ec61a9b412f51a71b90b1ff1f371d20b6b77', theme: this.theme }, "jump to page : ", this.numbersStore))), hAsync("ol", { key: 'a21618609f5e18d5febe55d009164ae2b6104cee', id: this.listId, class: {
|
|
17819
18045
|
"duet-pagination": true,
|
|
17820
18046
|
"duet-pagination-is-dimmed": this.numbersStore !== "",
|
|
17821
|
-
}, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (hAsync("li", { key: '
|
|
18047
|
+
}, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (hAsync("li", { key: 'f398d058c0ebf2bdab7ab945bed0b4548bbbfe83', class: {
|
|
17822
18048
|
"duet-pagination-page-button": true,
|
|
17823
18049
|
"duet-pagination-button-first": true,
|
|
17824
|
-
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '
|
|
18050
|
+
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '045fb3a76f525bf38592dbd063d786d85ef0aef4', disabled: (this.internalSectionIndex === 0 && this.current <= 1) || this.disabled, "data-direction": "back", accessibleLabel: this.accessibleLabels.first_page, title: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), "icon-name": "action-move-to-first", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }))), hAsync("li", { key: 'a34ff449e6b0f6bfdf045751e137d7bbf82745b0', class: {
|
|
17825
18051
|
"duet-pagination-page-button": true,
|
|
17826
18052
|
"duet-pagination-button-first": true,
|
|
17827
|
-
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '
|
|
18053
|
+
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '499f743f212068efe40d91da50a6a5d3a36b1bb8', disabled: !!((this.internalSectionIndex === 0 && this.current <= 1) ||
|
|
17828
18054
|
(this.current <= 1 && this.processedPageLinks) ||
|
|
17829
|
-
this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (hAsync(Fragment, { key: '
|
|
17830
|
-
this.shouldDisplayNavigation() && (hAsync(Fragment, { key: '
|
|
18055
|
+
this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (hAsync(Fragment, { key: '855d343b101d8a4cb531e5534121c32fcebb6537' }, hAsync("li", { key: '87e9bf3c0e7709986f8425c68dcf453e37ecea53', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, hAsync("duet-button", { key: 'ff073c3fb7001b83e9bd8254b5f0058350681aab', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-back", "center-text": "true", variation: "plain", color: this.theme !== "turva" ? "secondary" : "secondary-turva", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }, hAsync("div", { key: '2534ef73dffd5a2894f64e37b9b93ef921eeae9b', class: "duet-pagination-page-number" }, "1"))), hAsync("li", { key: '41366d11be98973382389f639c4361fa88b3ee03', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, hAsync("duet-button", { key: '85acf7a3650a337686849a07b94e3c5ebe3985fc', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-back", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1), theme: this.theme }, hAsync("div", { key: '0cb3f15c9fbf047ebd3f42a9ea312e2b7eb7cda5', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026"))))), (this.shouldDisplayNavigation() && this.renderPageNumbers()) || this.renderSelect(), (this.internalSectionIndex + 1) * this.visibleItems < this.totalPages &&
|
|
18056
|
+
this.shouldDisplayNavigation() && (hAsync(Fragment, { key: 'c330810aeb916a70838b5902a945179516c08c2a' }, (this.internalSectionIndex + 1) * this.visibleItems !== this.totalPages - 1 && (hAsync("li", { key: 'e7827136e1d02443b965071e73e678f3db1d5045', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, hAsync("duet-button", { key: 'ddf79df091880166ff5717d7ad56068afba21e8b', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1), theme: this.theme }, hAsync("div", { key: 'eab0f9616b5a0a283d2cfdfa12de2c0a8e7b4c6a', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026")))), hAsync("li", { key: 'b90fc9f829527d1d0cede68970d1bdbeeb00097c', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, hAsync("duet-button", { key: 'b842abee7b341e75edbb9242f32febb0fd9027d0', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), theme: this.theme, url: this.processedPageLinks
|
|
17831
18057
|
? this.processedPageLinks[this.processedPageLinks.length - 1]
|
|
17832
|
-
: undefined }, hAsync("div", { key: '
|
|
18058
|
+
: undefined }, hAsync("div", { key: '7a39f4ad0995c18ebd0ffbd95b507272b17b5fe9', class: "duet-pagination-page-number" }, this.totalPages))))), hAsync("li", { key: 'ad540cc00840f8452ef0bb93ee6aaa7bdc7b9a9a', class: {
|
|
17833
18059
|
"duet-pagination-page-button": true,
|
|
17834
18060
|
"duet-pagination-button-last": true,
|
|
17835
|
-
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '
|
|
18061
|
+
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: 'e4fc05e7c0163974b0929387122200f56b352d7f', disabled: !!((this.current === this.totalPages &&
|
|
17836
18062
|
this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
|
|
17837
|
-
(this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (hAsync("li", { key: '
|
|
18063
|
+
(this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (hAsync("li", { key: '0f09b068770c1bf14c76d0d2c36e2138fdb3e5af', class: {
|
|
17838
18064
|
"duet-pagination-page-button": true,
|
|
17839
18065
|
"duet-pagination-button-last": true,
|
|
17840
|
-
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: '
|
|
18066
|
+
}, role: "menuitem", part: "navigation-arrow" }, hAsync("duet-action-button", { key: 'e53ee2acdfdf60f158d51607df8ee61f9af16b25', disabled: (this.current === this.totalPages &&
|
|
17841
18067
|
this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
|
|
17842
18068
|
this.disabled, accessibleLabel: this.accessibleLabels.last_page, title: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), "icon-name": "action-move-to-last", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.totalPages - 1] : undefined })))))));
|
|
17843
18069
|
}
|
|
@@ -17910,14 +18136,14 @@ class DuetPanel {
|
|
|
17910
18136
|
inheritGlobalTheme(this);
|
|
17911
18137
|
}
|
|
17912
18138
|
render() {
|
|
17913
|
-
return (hAsync(Host, { key: '
|
|
18139
|
+
return (hAsync(Host, { key: 'c2b446e4eff02ce722d5fc470d9aedcb453e2dd2', class: { "duet-m-0": this.margin === "none" } }, hAsync("section", { key: '1039cfb9fa6e615149ca632ffd85da61d9b00f91', "aria-label": this.accessibleLabel, "aria-labelledby": this.accessibleLabelledBy, "aria-describedby": this.accessibleDescribedBy, class: {
|
|
17914
18140
|
"duet-panel": true,
|
|
17915
18141
|
"duet-theme-turva": this.theme === "turva",
|
|
17916
18142
|
[this.variation.split("-")[0]]: true,
|
|
17917
18143
|
[this.variation.split("-")[1]]: true,
|
|
17918
18144
|
[`padding-${this.padding}`]: true,
|
|
17919
18145
|
border: this.border,
|
|
17920
|
-
} }, hAsync("slot", { key: '
|
|
18146
|
+
} }, hAsync("slot", { key: 'c923ad024bfad0670229a5da4ba140f5747549e4' }))));
|
|
17921
18147
|
}
|
|
17922
18148
|
get element() { return getElement(this); }
|
|
17923
18149
|
static get style() { return duetPanelCss; }
|
|
@@ -17990,7 +18216,7 @@ class DuetParagraph {
|
|
|
17990
18216
|
const color = getColorByName(this.color);
|
|
17991
18217
|
// aria-describedby is to fix accessibility issue in Chrome where duet-paragraphs
|
|
17992
18218
|
// are not announced when placed inside duet-modal
|
|
17993
|
-
return (hAsync(Host, { key: '
|
|
18219
|
+
return (hAsync(Host, { key: 'e1478a81d9627fcff4c00c71d03fc9fe91642bbc', "aria-describedby": this.id }, hAsync("p", { key: '78658b077c0692618bb7d6855bbd6605abd7b13f', id: this.id, class: {
|
|
17994
18220
|
"duet-paragraph": true,
|
|
17995
18221
|
"duet-paragraph-small": this.size === "small",
|
|
17996
18222
|
"duet-paragraph-semi-bold": this.weight === "semi-bold",
|
|
@@ -17999,7 +18225,7 @@ class DuetParagraph {
|
|
|
17999
18225
|
[this.variation]: true,
|
|
18000
18226
|
"duet-theme-turva": this.theme === "turva",
|
|
18001
18227
|
"duet-inherit-color": !this.color && this.inheritingParents.some(p => this.element.closest(p)),
|
|
18002
|
-
}, style: { color }, part: "duet-paragraph" }, hAsync("slot", { key: '
|
|
18228
|
+
}, style: { color }, part: "duet-paragraph" }, hAsync("slot", { key: '83e026a3225a92a554c68da2eff4c7eb5eab36d5' }))));
|
|
18003
18229
|
}
|
|
18004
18230
|
get element() { return getElement(this); }
|
|
18005
18231
|
static get style() { return duetParagraphCss; }
|
|
@@ -19856,6 +20082,11 @@ class DuetPhoneInput {
|
|
|
19856
20082
|
* Visually hide the label, but still show it to screen readers.
|
|
19857
20083
|
*/
|
|
19858
20084
|
this.labelHidden = false;
|
|
20085
|
+
/**
|
|
20086
|
+
* Set the type of automatic completion by the browser. Must include "tel", may also include token "home", "work" or
|
|
20087
|
+
* "mobile". If you must disable automatic completion (not recommended) use "off"
|
|
20088
|
+
*/
|
|
20089
|
+
this.autoComplete = "tel";
|
|
19859
20090
|
/**
|
|
19860
20091
|
* Display the input in error state along with an error message.
|
|
19861
20092
|
*/
|
|
@@ -20102,6 +20333,7 @@ class DuetPhoneInput {
|
|
|
20102
20333
|
"labelHidden": [4, "label-hidden"],
|
|
20103
20334
|
"caption": [1],
|
|
20104
20335
|
"name": [1],
|
|
20336
|
+
"autoComplete": [1, "auto-complete"],
|
|
20105
20337
|
"error": [513],
|
|
20106
20338
|
"tooltip": [1],
|
|
20107
20339
|
"maxlength": [2],
|
|
@@ -22009,11 +22241,11 @@ class DuetPopupMenuItem {
|
|
|
22009
22241
|
};
|
|
22010
22242
|
// Without the role ternary Safari/iPhone wouldn't announce the label for role menuitem.
|
|
22011
22243
|
// This is a tradeoff and now Safari announces these items as buttons and links with the label.
|
|
22012
|
-
return (hAsync(Host, { key: '
|
|
22244
|
+
return (hAsync(Host, { key: 'dc904d95dbb1b0274fcdadcea67ce47aba4d7fe5', role: this.accessibleRole === "menuitem" && this.isSafariBrowser ? null : this.accessibleRole }, hAsync(TagName, { key: 'ee50bbb09eba600e81b860df3102e0a2cd6288f2', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage, "aria-current": this.active ? "true" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '2393da90d783cc2cde59d87a05035d3539009c94', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), hAsync("span", { key: '3b89e70152736a394a1d783146d7fcf7042af27c', class: "duet-popup-menu-item-label" }, hAsync("slot", { key: '7e2c5bff4d032a76c871b346477c1380d41ac23e' })), (this.trailingIcon || this.active || (this.url && this.external)) && (hAsync("duet-icon", { key: '1307e84b95a9f3f731701377a93275e00b17682e', name: this.url && this.external
|
|
22013
22245
|
? newWindowIcon.title
|
|
22014
22246
|
: this.active
|
|
22015
22247
|
? "messaging-checked-small"
|
|
22016
|
-
: this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { key: '
|
|
22248
|
+
: this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { key: 'ccdd5e50e27621e4c9bddc18ddfb4fa32c5df087', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
|
|
22017
22249
|
}
|
|
22018
22250
|
get element() { return getElement(this); }
|
|
22019
22251
|
static get style() { return duetPopupMenuItemCss; }
|
|
@@ -22137,7 +22369,7 @@ class DuetProgress {
|
|
|
22137
22369
|
}; }
|
|
22138
22370
|
}
|
|
22139
22371
|
|
|
22140
|
-
const duetPromoCardCss = "*,*::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;margin-right:4px !important;margin-bottom:2px !important;display:block;width:auto}:host:last-child,:host:last-of-type{margin-right:0 !important}[alignment=form-distribute]>:host:last-of-type:not(:last-child){margin-right:4px !important}:host(.duet-m-0){margin:0 !important}.duet-promo-card{display:flex;flex-direction:column;width:100%;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;color:rgb(8, 42, 77);text-align:left;border-radius:20px}.duet-promo-card.duet-p-0{padding:0 !important}.duet-promo-card.duet-m-0{margin:0 !important}.duet-promo-card .content-wrapper{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;border-radius:20px}.duet-promo-card .content-wrapper:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-promo-card .content-wrapper:focus,.duet-promo-card .content-wrapper:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-promo-card .image{position:relative;width:100%;overflow:hidden;object-fit:cover;border-top-left-radius:20px;border-top-right-radius:20px}.duet-promo-card .content{display:flex;flex-grow:1;flex-direction:column;gap:8px;padding:20px}@media (min-width: 36em){.duet-promo-card .content{padding:28px}}.duet-promo-card .action{display:flex;flex-grow:1;align-items:flex-end;padding-top:16px}.duet-promo-card.no-bg-color .content{padding:20px 0 0}.duet-promo-card.no-bg-color .image{border-radius:16px}.duet-promo-card-link{transition:box-shadow 300ms ease}.duet-promo-card-link:hover{box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(0, 41, 77, 0.1)}::slotted(.duet-heading){margin:inherit !important;font-size:inherit !important;line-height:inherit !important;color:inherit !important}.duet-theme-turva.duet-promo-card{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-theme-turva.duet-promo-card-link:hover{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(117, 117, 117, 0.15)}";
|
|
22372
|
+
const duetPromoCardCss = "*,*::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;margin-right:4px !important;margin-bottom:2px !important;display:block;width:auto}:host:last-child,:host:last-of-type{margin-right:0 !important}[alignment=form-distribute]>:host:last-of-type:not(:last-child){margin-right:4px !important}:host(.duet-m-0){margin:0 !important}.duet-promo-card{display:flex;flex-direction:column;width:100%;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;color:rgb(8, 42, 77);text-align:left;border-radius:20px}.duet-promo-card.duet-p-0{padding:0 !important}.duet-promo-card.duet-m-0{margin:0 !important}.duet-promo-card .content-wrapper{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;border-radius:20px}.duet-promo-card .content-wrapper:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-promo-card .content-wrapper:focus,.duet-promo-card .content-wrapper:focus.duet-theme-turva{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-promo-card picture{display:block;width:100%}.duet-promo-card .image{position:relative;width:100%;overflow:hidden;object-fit:cover;border-top-left-radius:20px;border-top-right-radius:20px}.duet-promo-card .content{display:flex;flex-grow:1;flex-direction:column;gap:8px;padding:20px}@media (min-width: 36em){.duet-promo-card .content{padding:28px}}.duet-promo-card .action{display:flex;flex-grow:1;align-items:flex-end;padding-top:16px}.duet-promo-card.no-bg-color .content{padding:20px 0 0}.duet-promo-card.no-bg-color .image{border-radius:16px}.duet-promo-card-link{transition:box-shadow 300ms ease}.duet-promo-card-link:hover{box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(0, 41, 77, 0.1)}::slotted(.duet-heading){margin:inherit !important;font-size:inherit !important;line-height:inherit !important;color:inherit !important}.duet-theme-turva.duet-promo-card{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-theme-turva.duet-promo-card-link:hover{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(117, 117, 117, 0.15)}";
|
|
22141
22373
|
|
|
22142
22374
|
/**
|
|
22143
22375
|
* @slot pre-heading - Slot for pre-heading content.
|
|
@@ -22209,12 +22441,22 @@ class DuetPromoCard {
|
|
|
22209
22441
|
backgroundColor: backgroundColor ? backgroundColor : "none",
|
|
22210
22442
|
};
|
|
22211
22443
|
const TagName = this.url ? "a" : "div";
|
|
22212
|
-
|
|
22444
|
+
const pictureSource = {
|
|
22445
|
+
img: {
|
|
22446
|
+
src: this.image,
|
|
22447
|
+
alt: this.imageAlt || "",
|
|
22448
|
+
loading: this.imagePriority === "high" ? "eager" : "lazy",
|
|
22449
|
+
fetchpriority: this.imagePriority,
|
|
22450
|
+
class: "image",
|
|
22451
|
+
},
|
|
22452
|
+
sources: parsePossibleJSON(this.sources),
|
|
22453
|
+
};
|
|
22454
|
+
return (hAsync(Host, { key: '97dab264c5d107592d20f0f417be8f19afe3d8fd', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: 'c45359578b2b47d473998c61c848da71b70c800d', class: {
|
|
22213
22455
|
"duet-promo-card": true,
|
|
22214
22456
|
"duet-theme-turva": this.theme === "turva",
|
|
22215
22457
|
"no-bg-color": !this.backgroundColor,
|
|
22216
22458
|
"duet-promo-card-link": !!this.url,
|
|
22217
|
-
}, style: bannerStyles }, hAsync(TagName, { key: '
|
|
22459
|
+
}, style: bannerStyles }, hAsync(TagName, { key: 'ef88f3802caf987b1f4507d4666e4c1e995c03ed', href: this.url, class: { "content-wrapper": true, "duet-theme-turva": this.theme === "turva" }, ref: element => (this.aOrDivElement = element) }, hAsync(DuetPicture, Object.assign({ key: '56569975e0e19da32854f893faa7735b8ad02aed' }, pictureSource)), hAsync("div", { key: '2f7457dfc83c5d90fb9bab5db26a4785d48af1c1', class: "content" }, this.hasPreHeadingSlot && (hAsync("div", { key: '2219e5e9347de718cd7a1d7d647e8309ee650831', class: "pre-heading" }, hAsync("slot", { key: 'd5da5a114026a15e4dcbef0017a9e4e626f1f4dd', name: "pre-heading" }))), this.hasHeadingSlot && (hAsync("div", { key: 'c3c9d6e2cde6750417e55cd568e92c2c6e1e794f', class: "heading" }, hAsync("duet-heading", { key: '30369ab97d1b23ebb0efd58498f088663a7fd77f', theme: this.theme, level: this.hasHeadingSlotNative ? "div" : this.headingLevel, "visual-level": "h3", margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: '697f670a938866d937aed46cf361e3fb038047b9' }, hAsync("slot", { key: '20d4d9b0ebccd08a2c3058284bbe6ab7cf5631b6', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: '6336dc1b21d5e7e2280000db82489ef2ebce379d', class: "description" }, hAsync("duet-paragraph", { key: '1d5200f1d385d5600a4db1aafc9ff8f8adfc0945', theme: this.theme, margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: 'a814b4225fc2b5882542079a92057a5aa4be8a25' }, hAsync("slot", { key: '8dfe422bb5fa8a28be96b4a61a02c00d53158dca', name: "description" }))))), this.hasActionSlot && (hAsync("div", { key: '37b653137388b4a43968de02eb65a4b9907c3022', class: "action" }, hAsync("slot", { key: '594172da1335d25e8856e4d7f8db3543a82a8f2e', name: "action" }))))))));
|
|
22218
22460
|
}
|
|
22219
22461
|
get element() { return getElement(this); }
|
|
22220
22462
|
static get style() { return duetPromoCardCss; }
|
|
@@ -22228,6 +22470,8 @@ class DuetPromoCard {
|
|
|
22228
22470
|
"textColor": [1, "text-color"],
|
|
22229
22471
|
"image": [1],
|
|
22230
22472
|
"imageAlt": [1, "image-alt"],
|
|
22473
|
+
"imagePriority": [1, "image-priority"],
|
|
22474
|
+
"sources": [1],
|
|
22231
22475
|
"headingLevel": [1, "heading-level"],
|
|
22232
22476
|
"url": [1],
|
|
22233
22477
|
"setFocus": [64]
|
|
@@ -22420,17 +22664,17 @@ class DuetRadio {
|
|
|
22420
22664
|
* Always the last one in the class.
|
|
22421
22665
|
*/
|
|
22422
22666
|
render() {
|
|
22423
|
-
return (hAsync(Host, { key: '
|
|
22667
|
+
return (hAsync(Host, { key: '7042b59543dd4cf7627ca41b07a3fee3598c684d', class: {
|
|
22424
22668
|
vertical: this.groupDirection === "vertical",
|
|
22425
22669
|
horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
|
|
22426
22670
|
"horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
|
|
22427
22671
|
"duet-m-0": this.margin === "none",
|
|
22428
|
-
} }, hAsync("div", { key: '
|
|
22672
|
+
} }, hAsync("div", { key: '39a07c45edaba71d4380c430c48a9f8f2d5e6786', class: { "duet-radio-container": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", { key: '5c3161f12b2def6f54245a063751ba5608fa13fd', name: "input" }), hAsync("label", { key: 'a98ef594efee0f9ef478eb4163c4757dec88b3b4', inert: true, ref: element => (this.labelElement = element), class: {
|
|
22429
22673
|
"duet-label": true,
|
|
22430
22674
|
checked: this.checked,
|
|
22431
22675
|
focus: this.focus,
|
|
22432
22676
|
disabled: this.disabled || this.groupDisabled,
|
|
22433
|
-
} }, hAsync("div", { key: '
|
|
22677
|
+
} }, hAsync("div", { key: 'a1293298a68f71ccf0b6bba309bae33ff66932a9', class: "duet-label-content" }, this.hasLabel ? hAsync("slot", { name: "label" }) : this.label)))));
|
|
22434
22678
|
}
|
|
22435
22679
|
get element() { return getElement(this); }
|
|
22436
22680
|
static get style() { return duetRadioCss; }
|
|
@@ -22625,7 +22869,7 @@ class DuetRadioGroup {
|
|
|
22625
22869
|
* Always the last one in the class.
|
|
22626
22870
|
*/
|
|
22627
22871
|
render() {
|
|
22628
|
-
return (hAsync(Host, { key: '
|
|
22872
|
+
return (hAsync(Host, { key: 'efd5c1575bcaa27689fda3d887405f1f8c89d40b', onDuetChange: this.onSelect, class: { horizontal: this.direction === "horizontal" } }, hAsync("duet-fieldset", { key: 'e7a49a48e778e7536ec79e4dd3f6cc1657c38f39', label: this.label, labelHidden: this.labelHidden, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: 'bb72a0c834b31079cd07c6894c98192f346876a7', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '8e0657188162e21abc47f50b341776e83b358476', name: "tooltip", slot: "tooltip" }), hAsync("div", { key: '800d524204ac076c087cdd7916077613b454475d', class: { "duet-radio-group": true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '265f7219a181ecc24adf1708a1dd3e2d69b23253' })))));
|
|
22629
22873
|
}
|
|
22630
22874
|
get element() { return getElement(this); }
|
|
22631
22875
|
static get watchers() { return {
|
|
@@ -22813,13 +23057,13 @@ class DuetRangeSlider {
|
|
|
22813
23057
|
const rangeStyles = {
|
|
22814
23058
|
background: `-webkit-linear-gradient(left,${active} 0%,${active} ${percentage}%,${inactive} ${percentage}%)`,
|
|
22815
23059
|
};
|
|
22816
|
-
return (hAsync(Host, { key: '
|
|
23060
|
+
return (hAsync(Host, { key: 'e210a09d9e24ecda74f73465103e52fd0ef3e151', class: { "duet-m-0": this.margin === "none", "duet-expand": this.expand } }, hAsync("div", { key: 'c06f45aec60dddfd2bc63c0c37e985fb4892262c', class: {
|
|
22817
23061
|
"duet-range-container": true,
|
|
22818
23062
|
"duet-label-hidden": this.labelHidden,
|
|
22819
23063
|
"duet-theme-turva": this.theme === "turva",
|
|
22820
23064
|
"duet-ie": isInternetExplorer(),
|
|
22821
23065
|
"duet-range-disabled": this.disabled,
|
|
22822
|
-
} }, hAsync(DuetInternalLabel, { key: '
|
|
23066
|
+
} }, hAsync(DuetInternalLabel, { key: '3c28b5f14ecf125f07146f93500cfc765e895583', theme: theme, color: this.labelColor, weight: this.labelWeight, margin: "small", for: identifier }, this.label), hAsync("output", { key: 'a87614cb264ff78db2d931ae109f6c982c057c9d', "aria-hidden": "true", htmlFor: identifier, class: "duet-output" }, this.value.toLocaleString(this.locale), this.unit), hAsync("input", { key: 'efeb770492d9fb26cf60c72b9a5dda6de43dc583', onInput: this.onInput, onChange: this.onChange, ref: input => (this.nativeInput = input), type: "range", min: this.min, max: this.max, step: this.step, value: this.value, style: rangeStyles, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this.value, "aria-valuetext": `${this.value} ${this.unit}`, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, id: identifier, name: this.name, disabled: this.disabled, required: this.required, class: "duet-range" }))));
|
|
22823
23067
|
}
|
|
22824
23068
|
get element() { return getElement(this); }
|
|
22825
23069
|
static get style() { return duetRangeSliderCss; }
|
|
@@ -23048,10 +23292,10 @@ class DuetRangeStepper {
|
|
|
23048
23292
|
* Always the last one in the class.
|
|
23049
23293
|
*/
|
|
23050
23294
|
render() {
|
|
23051
|
-
return (hAsync("div", { key: '
|
|
23295
|
+
return (hAsync("div", { key: 'adfdba923ae5fd9a6dfba50fe1c4f55e3b87a865', class: {
|
|
23052
23296
|
"duet-range-stepper": true,
|
|
23053
23297
|
"duet-theme-turva": this.theme === "turva",
|
|
23054
|
-
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { key: '
|
|
23298
|
+
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { key: '4377af5c4c12a8fd56b793dc809cfa21aa2e7850', class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), hAsync("duet-action-button", { key: '02f43f05ea407fd7d55a108dc6656e0f05490dc3', disabled: this.disabled || this.buttonLeftDisabled, class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small", title: "" }), hAsync("duet-action-button", { key: '0b970f02212426d7e73e3fe136f14e2ff3c44879', disabled: this.disabled || this.buttonRightDisabled, class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small", title: "" })));
|
|
23055
23299
|
}
|
|
23056
23300
|
get element() { return getElement(this); }
|
|
23057
23301
|
static get watchers() { return {
|
|
@@ -23362,18 +23606,18 @@ class DuetScrollable {
|
|
|
23362
23606
|
* Always the last one in the class.
|
|
23363
23607
|
*/
|
|
23364
23608
|
render() {
|
|
23365
|
-
return (hAsync(Host, { key: '
|
|
23609
|
+
return (hAsync(Host, { key: 'e4fcbff642e107e2d34afda150b6d018d9495bfa', class: {
|
|
23366
23610
|
"duet-theme-turva": this.theme === "turva",
|
|
23367
23611
|
"duet-theme-default": this.theme === "default",
|
|
23368
|
-
} }, this.hasCollapseButtonLabelSlot && (hAsync("div", { key: '
|
|
23612
|
+
} }, this.hasCollapseButtonLabelSlot && (hAsync("div", { key: '0812bcf7ea5189d289b2802404f7a5b72f84e914', class: {
|
|
23369
23613
|
collapse: true,
|
|
23370
23614
|
hide: !this.needsScrolling && !this.collapsed,
|
|
23371
|
-
} }, hAsync("duet-button", { key: '
|
|
23615
|
+
} }, hAsync("duet-button", { key: 'b800fd6f995333456428d33f3bd879d998e69161', variation: "plain", margin: "none", "center-text": true, onClick: () => this.collapsedOnClick() }, hAsync("slot", { key: '28a8ddf0c43d1fc83562f90222107add5742c568', name: "collapse-button-label" })))), hAsync("div", { key: 'd8dbfd839185724f0c731fd05fc7318edd55f8ef', class: {
|
|
23372
23616
|
"duet-scrollable-items": true,
|
|
23373
23617
|
buttons: this.buttons,
|
|
23374
23618
|
center: this.center,
|
|
23375
23619
|
"duet-theme-turva": this.theme === "turva",
|
|
23376
|
-
} }, this.buttons && this.renderButton("left"), hAsync("div", { key: '
|
|
23620
|
+
} }, this.buttons && this.renderButton("left"), hAsync("div", { key: '52896f20aa1556374ae606865b9baa3d26e5f309', class: {
|
|
23377
23621
|
"duet-scrollable-list": true,
|
|
23378
23622
|
[`duet-scrollable-list--${this.buttonPosition}`]: true,
|
|
23379
23623
|
[`gap-${this.gap}`]: true,
|
|
@@ -23381,7 +23625,7 @@ class DuetScrollable {
|
|
|
23381
23625
|
[`duet-overflow-padding--${this.padding}`]: this.padding !== "none",
|
|
23382
23626
|
[`duet-scrollable-list--${this.buttonPosition}`]: this.buttonPosition === "absolute",
|
|
23383
23627
|
"duet-scrollable-stretch": this.stretch,
|
|
23384
|
-
}, onScroll: () => this.updateScrollButtons(), ref: element => (this.scrollPaneElement = element) }, hAsync("slot", { key: '
|
|
23628
|
+
}, onScroll: () => this.updateScrollButtons(), ref: element => (this.scrollPaneElement = element) }, hAsync("slot", { key: '033251e2116f215b006650c265e0f28b51b4255c' })), this.buttons && this.renderButton("right"))));
|
|
23385
23629
|
}
|
|
23386
23630
|
get element() { return getElement(this); }
|
|
23387
23631
|
static get watchers() { return {
|
|
@@ -23441,13 +23685,13 @@ class DuetSectionLayout {
|
|
|
23441
23685
|
* Always the last one in the class.
|
|
23442
23686
|
*/
|
|
23443
23687
|
render() {
|
|
23444
|
-
return (hAsync(Host, { key: '
|
|
23688
|
+
return (hAsync(Host, { key: '5a776657b9c39546b9e60e4437f56e15cefca547', class: {
|
|
23445
23689
|
"duet-middle": this.middle,
|
|
23446
23690
|
"duet-ie": isInternetExplorer(),
|
|
23447
|
-
} }, hAsync("div", { key: '
|
|
23691
|
+
} }, hAsync("div", { key: '31100845e191b0057e10ec7e1cffe3b4f4b4f1b7', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '2e9d933ca7deecedc04f5ed2f23ad181e408d130', class: {
|
|
23448
23692
|
"duet-layout": true,
|
|
23449
23693
|
[`padding-${this.paddingBreakpoint}`]: !!this.paddingBreakpoint,
|
|
23450
|
-
} }, hAsync("section", { key: '
|
|
23694
|
+
} }, hAsync("section", { key: '6b78add4081f704f1aad60bd587101060ae3fe01', class: "duet-main" }, hAsync("slot", { key: '50949eaf1466fdc6c3e9687085eecf0f91a88a38' }))))));
|
|
23451
23695
|
}
|
|
23452
23696
|
get element() { return getElement(this); }
|
|
23453
23697
|
static get style() { return duetSectionLayoutCss; }
|
|
@@ -23660,23 +23904,23 @@ class DuetSelect {
|
|
|
23660
23904
|
*/
|
|
23661
23905
|
render() {
|
|
23662
23906
|
const identifier = this.identifier || this.selectId;
|
|
23663
|
-
return (hAsync(Host, { key: '
|
|
23907
|
+
return (hAsync(Host, { key: '799e751c3066521f3910c7e2bc2f1b4f01a05f2c', class: {
|
|
23664
23908
|
"duet-m-0": this.margin === "none",
|
|
23665
23909
|
"duet-expand": this.expand,
|
|
23666
23910
|
[`duet-select-variation-${this.variation}`]: true,
|
|
23667
|
-
} }, hAsync("div", { key: '
|
|
23911
|
+
} }, hAsync("div", { key: '8ec31867c99664d323116a2d157edf312eb876d9', class: {
|
|
23668
23912
|
"duet-select-container": true,
|
|
23669
23913
|
"duet-label-hidden": this.labelHidden,
|
|
23670
23914
|
"duet-theme-turva": this.theme === "turva",
|
|
23671
23915
|
[`duet-select-variation-${this.variation}`]: true,
|
|
23672
23916
|
"duet-input-top-caption-shown": this.isCaptionVisible,
|
|
23673
23917
|
"has-error": !!this.error,
|
|
23674
|
-
} }, hAsync(DuetInternalLabel, { key: '
|
|
23918
|
+
} }, hAsync(DuetInternalLabel, { key: '9694bfe254e28f6410a09c0a29e8ffe90bcc197a', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: '8fac7e29561cacaed838f86255b710e12cf1e10c', direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: 'c118cf285f1596c85dd059fddfcd2a50fdb48a25', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: '7876fa88354fffd01170deb8fa2f2e2fcd860fe1', id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { key: '0cbf3b4fcf5157ff3c99be21f90207845dc0a12f', class: "duet-select-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: '46c2e4892c502a84b7fa294a4d7dfd89dd365bbe', id: this.topCaptionPlaceholderId, class: "duet-select-placeholder", size: "small" }, this.placeholder)), hAsync("slot", { key: 'c149307dc10d95ac9344429c7cb59afc8e7c8f1c' }), hAsync("select", { key: 'f87920eea326497e41432be046c0a4bc2b881f82', ref: select => (this.nativeSelect = select), disabled: this.disabled, name: this.name, id: identifier, role: this.role, "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, required: this.required }, this.placeholder && (hAsync("option", { key: '5609b3644ed2101cc3854bce7dcb15f5bcc72c79', disabled: true, selected: true, value: "" }, this.placeholder)), !this.processedItems ? (hAsync("option", null, "Virhe valintoja ladattaessa. P\u00E4ivit\u00E4 sivu ja kokeile uusiksi.")) : (this.processedItems.map(item => {
|
|
23675
23919
|
return isOptionGroup(item) ? this.renderOptionGroup(item) : this.renderOption(item);
|
|
23676
|
-
}))), hAsync("div", { key: '
|
|
23920
|
+
}))), hAsync("div", { key: 'b720c0d90de10217e72b8871927fe949302bce19', class: {
|
|
23677
23921
|
"duet-select": true,
|
|
23678
23922
|
[`duet-select-variation-${this.variation}`]: true,
|
|
23679
|
-
}, "aria-hidden": "true" }, hAsync("span", { key: this.value, class: "duet-select-selected-value" }, this.getSelectedItemLabel()), (this.variation === "default" && (hAsync("svg", { key: '
|
|
23923
|
+
}, "aria-hidden": "true" }, hAsync("span", { key: this.value, class: "duet-select-selected-value" }, this.getSelectedItemLabel()), (this.variation === "default" && (hAsync("svg", { key: '90a28c7ccb87098d9f4963e4b633f9ed73ce135d', role: "img", class: "duet-select-icon", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: 'aaf93f626f11f884d04a8ada7ac4c822859429a1', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" })))) || (hAsync("duet-icon", { key: '2bed857103ccb9dc5f21ef9c161afec22e38d417', theme: this.theme, name: "action-arrow-down-small", color: "currentColor", margin: "none", size: this.variation === "compact" ? "xxx-small" : "xx-small" }))), hAsync("span", { key: 'af52dc23224f33ed088274a5c2561508217ba5df', class: "duet-keep-container-height", role: "presention", "aria-hidden": "true" }, "_")), hAsync("span", { key: '68d71610557182c9be1913478e6177b7a66388ab', class: "duet-select-help", id: this.errorId, "aria-live": this.accessibleLiveError, "aria-atomic": "true", "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: 'e49610ecbba0ae7e275e182bdfc0941d1870cdbb', class: "duet-select-error" }, this.error)))));
|
|
23680
23924
|
}
|
|
23681
23925
|
get element() { return getElement(this); }
|
|
23682
23926
|
static get watchers() { return {
|
|
@@ -23756,9 +24000,9 @@ class DuetShapedImage {
|
|
|
23756
24000
|
const style = {
|
|
23757
24001
|
"--rotation": `${this.rotation}deg`,
|
|
23758
24002
|
};
|
|
23759
|
-
return (hAsync(Host, { key: '
|
|
24003
|
+
return (hAsync(Host, { key: 'ef370d616b1e83aa0015053fd55534fe9a927593', class: { "duet-theme-turva": this.theme === "turva", "duet-m-0": this.margin === "none" } }, hAsync("span", { key: '7ea96cb888a313aeb8a2b7f2a7c5a0c6d9ac2880', class: {
|
|
23760
24004
|
"shaped-image": true,
|
|
23761
|
-
}, role: "img", "aria-label": this.accessibleLabel, style: style }, hAsync("span", { key: '
|
|
24005
|
+
}, role: "img", "aria-label": this.accessibleLabel, style: style }, hAsync("span", { key: '2330f5b57f2ca912e048426bd1c2d105a264335d', class: "shaped-image-mask", role: "presentation" }, hAsync("span", { key: 'fbcf988fc8fdb69899e9598ebb7549f14174d478', class: "shaped-image-img", role: "presentation", style: { backgroundImage: `url("${this.src}")` } })))));
|
|
23762
24006
|
}
|
|
23763
24007
|
static get style() { return duetShapedImageCss; }
|
|
23764
24008
|
static get cmpMeta() { return {
|
|
@@ -23828,12 +24072,12 @@ class DuetShareChart {
|
|
|
23828
24072
|
this.itemsTotalValue = this.items.reduce((total, { value }) => total + value, 0);
|
|
23829
24073
|
}
|
|
23830
24074
|
render() {
|
|
23831
|
-
return (hAsync(Host, { key: '
|
|
24075
|
+
return (hAsync(Host, { key: 'ba78b52814e18d4a98cf429a006a3363c004fae2' }, hAsync("div", { key: '545e5ae574e55f8f516c28b2611386306667dc08', class: "duet-share-chart-horizontal-bar", role: "presentation" }, this.items
|
|
23832
24076
|
.filter(i => !!i.value)
|
|
23833
24077
|
.map(item => (hAsync("span", { class: "duet-share-chart-share", style: {
|
|
23834
24078
|
width: `${(item.value / this.itemsTotalValue) * 100}%`,
|
|
23835
24079
|
backgroundColor: getColorByName(item.color, this.theme),
|
|
23836
|
-
} })))), hAsync("ul", { key: '
|
|
24080
|
+
} })))), hAsync("ul", { key: '84ded0fa2267a1187feda3ac3d0774b8628532ce', class: "duet-share-chart-item-list" }, this.items.map(item => (hAsync("li", { class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("span", { class: "duet-share-chart-item-color", style: { background: getColorByName(item.color, this.theme) } }), hAsync("span", { class: "duet-share-chart-item-text" }, item.text, ":"), hAsync("span", { class: "duet-share-chart-item-value" }, "\u00A0", formatNumber(item.value), "\u00A0", this.unit), this.unit !== "%" && (hAsync("duet-visually-hidden", null, `${formatNumber((item.value / this.itemsTotalValue) * 100, 0)} %`)))))), hAsync("slot", { key: '5657cc260498b721b27387d03a650a677498b872' })));
|
|
23837
24081
|
}
|
|
23838
24082
|
get element() { return getElement(this); }
|
|
23839
24083
|
static get style() { return duetShareChartCss; }
|
|
@@ -23860,7 +24104,7 @@ class DuetShareChartItem {
|
|
|
23860
24104
|
this.value = 0;
|
|
23861
24105
|
}
|
|
23862
24106
|
render() {
|
|
23863
|
-
return (hAsync(Host, { key: '
|
|
24107
|
+
return (hAsync(Host, { key: '7dae91f324815ceba5f573b93a8aba6a992c424c' }, hAsync("div", { key: 'd5ded78fcdcd3f050a3215eb3b65e8a3a7dcb8e7', hidden: true }, hAsync("slot", { key: '4c892c9c3a1f162e54e7cdbc1c812657402f95be' }))));
|
|
23864
24108
|
}
|
|
23865
24109
|
get element() { return getElement(this); }
|
|
23866
24110
|
static get cmpMeta() { return {
|
|
@@ -24010,12 +24254,12 @@ class DuetShowMore {
|
|
|
24010
24254
|
* Always the last one of the class.
|
|
24011
24255
|
*/
|
|
24012
24256
|
render() {
|
|
24013
|
-
return (hAsync(Host, { key: '
|
|
24257
|
+
return (hAsync(Host, { key: 'd09f18e15e280f4a09bae1d89d8eb471c4b885a3' }, hAsync("div", { key: '949dbbcd73eb37252f098b4bc3e169ec0e3adc5b', class: {
|
|
24014
24258
|
"duet-show-more": true,
|
|
24015
24259
|
"duet-theme-turva": this.theme === "turva",
|
|
24016
24260
|
"duet-m-0": this.margin === "none",
|
|
24017
24261
|
open: this.open,
|
|
24018
|
-
} }, hAsync("div", { key: '
|
|
24262
|
+
} }, hAsync("div", { key: '5c78082532033803e3d40d1b855b73eb03b91416', ref: ref => (this.contentElement = ref), class: { content: true, "duet-theme-turva": this.theme === "turva" }, id: this.contentId, tabindex: this.open ? "-1" : "" }, hAsync("div", { key: 'ee8ff8232b890ccc701009ceec3c1949f63c1298', class: { "slotted-content": true } }, hAsync("slot", { key: '8c48e2cf5d3b4c62e03b1ebf3486041f30bd92dd' }))), hAsync("duet-button", { key: 'f310b7cc5c62fd6300054a8147d0b8733ca6dee7', id: this.buttonId, variation: "plain", "accessible-label": this.buttonAriaOpen ? this.showLessAccessibleLabel : this.showMoreAccessibleLabel, "accessible-expanded": this.buttonAriaOpen ? "true" : "false", "accessible-controls": this.contentId, accessiblePressed: this.isSafariBrowser ? this.open : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown, "icon-right": true, icon: this.open ? "action-arrow-up-small" : "action-arrow-down-small", "icon-size": "medium-small", size: "small", margin: this.buttonMargin, padding: this.buttonPadding, theme: this.theme === "turva" ? "turva" : "default" }, hAsync("span", { key: '059e01e1c0ea1424eaac85471b3d4a80258f3aec' }, this.open ? this.showLessLabel : this.showMoreLabel)))));
|
|
24019
24263
|
}
|
|
24020
24264
|
get element() { return getElement(this); }
|
|
24021
24265
|
static get style() { return duetShowMoreCss; }
|
|
@@ -24483,7 +24727,13 @@ class DuetSlideout {
|
|
|
24483
24727
|
return;
|
|
24484
24728
|
}
|
|
24485
24729
|
const path = ev.composedPath();
|
|
24486
|
-
|
|
24730
|
+
const isOneTrustClick = path.some(target => {
|
|
24731
|
+
if (!(target instanceof Element)) {
|
|
24732
|
+
return false;
|
|
24733
|
+
}
|
|
24734
|
+
return Boolean(target.closest("[id^='onetrust-']"));
|
|
24735
|
+
});
|
|
24736
|
+
if (!isOneTrustClick && !path.includes(this.dialog) && !path.includes(this.openButton)) {
|
|
24487
24737
|
this.toggleMenu(ev);
|
|
24488
24738
|
}
|
|
24489
24739
|
}
|
|
@@ -24536,17 +24786,17 @@ class DuetSlideout {
|
|
|
24536
24786
|
};
|
|
24537
24787
|
const topLevelOpenMenuBarTranslation = getLocaleString(this.topLevelOpenMenuBarLangObject);
|
|
24538
24788
|
const exitTranslation = getLocaleString(this.exitLangObject);
|
|
24539
|
-
return (hAsync(Host, { key: '
|
|
24789
|
+
return (hAsync(Host, { key: '0108b967b88b222c02678c818e16c9b7082e565f' }, hAsync("div", { key: 'ede488f0a452f668d8762bf343aac847202eb4db', class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, this.modal && hAsync("duet-overlay", { key: '88e7002a39c769781f72cd680f4aabbf8a75a1af', visible: this.open, zIndex: "600" }), hAsync("div", { key: '7f8a29e110f8be3f4575b66f7d374bd27b6e9eaf', ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
|
|
24540
24790
|
dialog: true,
|
|
24541
24791
|
hidden: !this.open,
|
|
24542
24792
|
modal: this.modal,
|
|
24543
|
-
}, style: styles }, hAsync(FocusGuard, { key: '
|
|
24793
|
+
}, style: styles }, hAsync(FocusGuard, { key: 'e62a77fddb1231b075f5cd54cd1b882fe7d61976', moveFocusTo: this.closeButton }), hAsync("div", { key: 'e6a1feee906e95af23c3f41c5a0b6871d8196a45', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: 'a91a16a339b6c51b7d34d4eb594c318662bf9a8d', class: "top" }, hAsync("button", { key: 'daa5d0a898487a3da98b911c4ca57f5a4608d242', ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
|
|
24544
24794
|
"slideout-close": true,
|
|
24545
24795
|
active: this.open,
|
|
24546
24796
|
"duet-theme-turva": this.theme === "turva",
|
|
24547
|
-
}, onClick: this.onClick, inert: this.openPanel }, hAsync("duet-icon", { key: '
|
|
24797
|
+
}, onClick: this.onClick, inert: this.openPanel }, hAsync("duet-icon", { key: '85ca78592d2f03801c02b30b2e23ca8153ebf7af', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '9c3b0cb1ca5f6528f62023b180903017fe8e7a08', class: "sticky-header" }, hAsync("slot", { key: '6e09d463fbe87684f26f1bd778b9beaeeb105cae', name: "sticky-header" }))), hAsync("div", { key: 'f8d0792c76b29d516beae014bbc4468b884370c4', id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
|
|
24548
24798
|
items: true,
|
|
24549
|
-
} }, hAsync("slot", { key: '
|
|
24799
|
+
} }, hAsync("slot", { key: '334688b5dee96e633747c6a8c38f5a5da6677e13' })), hAsync(FocusGuard, { key: '129eea547ce75a8325c6aed5d3bccd6f6b380d9f', moveFocusTo: this.closeButton })))));
|
|
24550
24800
|
}
|
|
24551
24801
|
get element() { return getElement(this); }
|
|
24552
24802
|
static get watchers() { return {
|
|
@@ -24616,7 +24866,7 @@ class DuetSlideoutLang {
|
|
|
24616
24866
|
*/
|
|
24617
24867
|
render() {
|
|
24618
24868
|
const langTranslation = getLocaleString(this.chooseLangObject);
|
|
24619
|
-
return (hAsync(Host, { key: '
|
|
24869
|
+
return (hAsync(Host, { key: 'fb16f7ca32c1c5b70c7cb19b34d39e0de068a71d' }, hAsync("div", { key: 'fe1252db925d2af57a4dc783d777dbdf691994b5', class: "duet-slideout-lang", role: "group", "aria-label": langTranslation }, hAsync("duet-icon", { key: 'a4597bafb6db9221e482610d9283c992aa42cca9', name: "navigation-language", margin: "none", color: "secondary", size: "small" }), hAsync("slot", { key: 'df424707a999430019c6cd6853b58ea0d55d2463' }))));
|
|
24620
24870
|
}
|
|
24621
24871
|
get element() { return getElement(this); }
|
|
24622
24872
|
static get style() { return duetSlideoutLangCss; }
|
|
@@ -24706,12 +24956,12 @@ class DuetSlideoutLink {
|
|
|
24706
24956
|
* Always the last one in the class.
|
|
24707
24957
|
*/
|
|
24708
24958
|
render() {
|
|
24709
|
-
return (hAsync(Host, { key: '
|
|
24959
|
+
return (hAsync(Host, { key: '71791bded96b7d6edf41608fc4d9c492741ddbce' }, hAsync("a", { key: '9c8645e7357b0e6a0d5f4407f82f96c6f42aea5a', target: !this.href ? null : this.external ? "_blank" : "_self", class: {
|
|
24710
24960
|
"duet-slideout-link": true,
|
|
24711
24961
|
"duet-theme-turva": this.theme === "turva",
|
|
24712
24962
|
active: this.active,
|
|
24713
24963
|
[this.size]: true,
|
|
24714
|
-
}, href: this.href, "aria-current": this.active ? "true" : "false", lang: this.targetLanguage, hreflang: this.targetLanguage, "aria-label": (this.href && getAccessibleLinkLabel(this)) || this.accessibleLabel, rel: this.external ? "noopener" : undefined }, this.icon && (hAsync("duet-icon", { key: '
|
|
24964
|
+
}, href: this.href, "aria-current": this.active ? "true" : "false", lang: this.targetLanguage, hreflang: this.targetLanguage, "aria-label": (this.href && getAccessibleLinkLabel(this)) || this.accessibleLabel, rel: this.external ? "noopener" : undefined }, this.icon && (hAsync("duet-icon", { key: '8f76be0cc20b53561e9f1bbd954a8e19e1bf98a3', name: this.icon, color: "secondary", size: this.menuItem ? "x-small" : "small", margin: "none" })), hAsync("div", { key: 'f1e91400ccba4abe58478161a5123dac9e006554', class: "label" }, hAsync("span", { key: 'c93d3f5220ce1ac55c83985bb1df18511bba18a4' }, hAsync("span", { key: 'af6eba590285a896e6f4b9f9d87db82beb0ef9dd', class: "label-container" }, hAsync("span", { key: '62e6519e6f026941b5ac4f8cc65e638d11512002', class: "label-content" }, hAsync("slot", { key: 'fe67fbd9819d698956bfd3595ebd70e2d03536d8' })), this.external && (hAsync("duet-icon", { key: '56d97a47dc264cf28c0b4b08efa53751ea6c8537', class: "external-icon", theme: this.theme, name: newWindowIcon.title, margin: "none", size: "auto", color: "currentColor" }))), hAsync("slot", { key: '88c0508cea00310b08cfb79fe23d7f1e07c44305', name: "description" })), this.caret && (hAsync("duet-icon", { key: '186cd9ee20d9c4302e115c857ebcbc0493289870', name: "action-arrow-right", color: "secondary", size: "x-small", margin: "none" }))))));
|
|
24715
24965
|
}
|
|
24716
24966
|
get element() { return getElement(this); }
|
|
24717
24967
|
static get style() { return duetSlideoutLinkCss; }
|
|
@@ -24888,25 +25138,25 @@ class DuetSlideoutPanel {
|
|
|
24888
25138
|
};
|
|
24889
25139
|
const exitTranslation = getLocaleString(this.exitLangObject);
|
|
24890
25140
|
const backTranslation = getLocaleString(this.backLangObject);
|
|
24891
|
-
return (hAsync(Host, { key: '
|
|
25141
|
+
return (hAsync(Host, { key: 'e178d050a7d1b05d109805a292a393556fdc8185' }, hAsync("div", { key: '6c79968641b06a29f67e2ee641f45ff9523fef0d', class: {
|
|
24892
25142
|
"duet-slideout-panel": true,
|
|
24893
25143
|
"duet-theme-turva": this.theme === "turva",
|
|
24894
25144
|
active: this.open,
|
|
24895
|
-
} }, this.badge && hAsync("duet-indicator", { key: '
|
|
25145
|
+
} }, this.badge && hAsync("duet-indicator", { key: '3a621eee3a9e3c82817f57fcaaf685f6697607d1', variation: "change" }), hAsync("button", { key: 'e09accc15fcea78b7dfe5587e82991d0cff908e9', ref: element => (this.openButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
|
|
24896
25146
|
link: true,
|
|
24897
25147
|
active: this.active,
|
|
24898
25148
|
"duet-theme-turva": this.theme === "turva",
|
|
24899
|
-
}, onClick: this.onClick, inert: this.open }, this.icon && (hAsync("div", { key: '
|
|
25149
|
+
}, onClick: this.onClick, inert: this.open }, this.icon && (hAsync("div", { key: 'f0ad586caf516ba48ad9dc622717cd26963877ec', class: "duet-slideout-icon" }, hAsync("duet-icon", { key: '0b215b49365a40d3ea430879b67ac194ecea6030', name: this.icon, size: "small", margin: "none", color: "secondary" }))), hAsync("span", { key: 'ee8744b33869fa9843cc2ee305b6e3044260adb5', class: "label" }, hAsync("span", { key: '1bd04fd656e987c3805b01032d110fe6fc2caa29', class: { "label-text": true, [this.labelSize]: true } }, hAsync("slot", { key: '93765e7360ebcf9109e6967b06adccfc2edac5b9', name: "label" })), hAsync("duet-icon", { key: 'bfe90da7a1c9f29b695d3c5ffbea797903ca1ddb', class: "caret", name: "action-arrow-right", margin: "none", size: "x-small", color: "secondary" }))), hAsync("div", { key: 'fe3bf0c1c3af57d903d4e06f904dcdd531d4f703', ref: element => (this.dialog = element), class: {
|
|
24900
25150
|
dialog: true,
|
|
24901
25151
|
hidden: !this.open,
|
|
24902
|
-
}, style: styles }, hAsync(FocusGuard, { key: '
|
|
25152
|
+
}, style: styles }, hAsync(FocusGuard, { key: '379e1ff56a13ccc13d288a973907700cef490a18', moveFocusTo: this.closeButton }), hAsync("div", { key: '39ac4d2d35871298e8c66c0601a063ea93842ce6', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: '2efa0a702a7f820938802f843dbfb26290875184', class: "top" }, hAsync("button", { key: '61fe6909d29eb82186b3330fa845902ddb4ef052', ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-label": `${backTranslation}`, type: "button", class: {
|
|
24903
25153
|
back: true,
|
|
24904
25154
|
"duet-theme-turva": this.theme === "turva",
|
|
24905
|
-
}, onClick: this.onClick }, hAsync("duet-icon", { key: '
|
|
25155
|
+
}, onClick: this.onClick }, hAsync("duet-icon", { key: '9d7aeca2c733cbf7493a6baa370734f5bea1d2e4', class: "caret", name: "action-arrow-left", margin: "none", size: "small", color: "secondary" })), hAsync("span", { key: 'cc5ae783e309097773eba3215e89e77fbeeec5bf' }, this.label.innerHTML), hAsync("button", { key: '664a157c39f96f3ff3a4be09d43165a9399c7e7d', class: { close: true, "duet-theme-turva": this.theme === "turva" }, type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, hAsync("duet-icon", { key: 'e72d12534a4f2fdcbcd81cd611e581e36c47f921', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '16891dafb3ef15b8c555d7a20eb3a3737b6169a0', class: "sticky-header" }, hAsync("slot", { key: 'b852b6aba1b4f0f617a1b58ca4986c3dcd0d1eca', name: "sticky-header" }))), hAsync("div", { key: '1ff351ecda603ac948d65acceaff49feb3c850e2', tabindex: "-1", role: "menu",
|
|
24906
25156
|
//TODO: slideout menu fades out, needs to be instant
|
|
24907
25157
|
id: "menu", "aria-labelledby": "button", class: {
|
|
24908
25158
|
items: true,
|
|
24909
|
-
} }, hAsync("slot", { key: '
|
|
25159
|
+
} }, hAsync("slot", { key: 'f39b7e0202e0b6553dbb402be4678659161d749a' })), hAsync(FocusGuard, { key: '7ea263ade3d868218bdfa507129b238c2caaf8a3', moveFocusTo: this.closeButton })))));
|
|
24910
25160
|
}
|
|
24911
25161
|
get element() { return getElement(this); }
|
|
24912
25162
|
static get watchers() { return {
|
|
@@ -24987,18 +25237,18 @@ class DuetSlideoutPanelDropdown {
|
|
|
24987
25237
|
* Always the last one in the class.
|
|
24988
25238
|
*/
|
|
24989
25239
|
render() {
|
|
24990
|
-
return (hAsync(Host, { key: '
|
|
25240
|
+
return (hAsync(Host, { key: '6731d76d5bb4f77aec9aada9825967e260d0f041' }, hAsync("div", { key: 'd746d29ae7d36c11330934d76cbabc3169bf5e61', class: {
|
|
24991
25241
|
"duet-slideout-panel-dropdown": true,
|
|
24992
25242
|
"duet-theme-turva": this.theme === "turva",
|
|
24993
25243
|
active: this.open,
|
|
24994
|
-
} }, hAsync("button", { key: '
|
|
25244
|
+
} }, hAsync("button", { key: '4660cdc322f09987348f760e910e0ae5ae9562e5', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
|
|
24995
25245
|
active: this.active,
|
|
24996
25246
|
"duet-theme-turva": this.theme === "turva",
|
|
24997
|
-
}, onClick: this.onClick }, this.icon && hAsync("duet-icon", { key: '
|
|
25247
|
+
}, onClick: this.onClick }, this.icon && hAsync("duet-icon", { key: '54984e4a5f9911c893403034cd705197b05e0a0a', name: this.icon, size: "small", margin: "none", color: "secondary" }), hAsync("span", { key: 'e7c0afa8e83039615cd6541c8a96ac4d07227883', class: "label" }, hAsync("slot", { key: '15b1c44212b96cfba8106d79484df27cb6b72d98', name: "label" }), hAsync("duet-icon", { key: 'fdf3569a5ffc27ca16256dbb5ed697dabc6c6084', class: "caret", name: "action-arrow-down-small", margin: "none", size: "xx-small", color: "secondary" }))), hAsync("div", { key: 'a33d7c18c02689a09b66f6b2ae626ff691a36d64', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
|
|
24998
25248
|
items: true,
|
|
24999
25249
|
hidden: !this.open,
|
|
25000
25250
|
"duet-theme-turva": this.theme === "turva",
|
|
25001
|
-
} }, hAsync("slot", { key: '
|
|
25251
|
+
} }, hAsync("slot", { key: 'b187d077c28702f134241dd0d63ca52dedfec7b5' })))));
|
|
25002
25252
|
}
|
|
25003
25253
|
get element() { return getElement(this); }
|
|
25004
25254
|
static get style() { return duetSlideoutPanelDropdownCss; }
|
|
@@ -25042,7 +25292,7 @@ class DuetSpacer {
|
|
|
25042
25292
|
* Always the last one in the class.
|
|
25043
25293
|
*/
|
|
25044
25294
|
render() {
|
|
25045
|
-
return (hAsync(Host, { key: '
|
|
25295
|
+
return (hAsync(Host, { key: 'b494dd7486aac50ad7c79b76b0476a66fb197a89', class: {
|
|
25046
25296
|
"duet-spacer": true,
|
|
25047
25297
|
"duet-spacer-xx-small": this.breakpoint === "xx-small",
|
|
25048
25298
|
"duet-spacer-x-small": this.breakpoint === "x-small",
|
|
@@ -25097,7 +25347,7 @@ class DuetSpinner {
|
|
|
25097
25347
|
*/
|
|
25098
25348
|
render() {
|
|
25099
25349
|
const color = !!this.color && this.color === "currentColor" ? "currentColor" : getColorByName(this.color, this.theme);
|
|
25100
|
-
return (hAsync(Host, { key: '
|
|
25350
|
+
return (hAsync(Host, { key: 'f8c4a6b68356300f7738d2c59038d47abdf54124' }, hAsync("div", { key: 'a8aeaf976bec157057a095337bcad89d26eebd8a', class: {
|
|
25101
25351
|
"duet-spinner": true,
|
|
25102
25352
|
[this.size]: true,
|
|
25103
25353
|
"duet-theme-turva": this.theme === "turva",
|
|
@@ -25205,11 +25455,11 @@ class DuetStatusIcon {
|
|
|
25205
25455
|
}
|
|
25206
25456
|
}
|
|
25207
25457
|
render() {
|
|
25208
|
-
return (hAsync(Host, { key: '
|
|
25458
|
+
return (hAsync(Host, { key: '2ed8b9396a6fc4051299df605b5293b4ad851f10', class: {
|
|
25209
25459
|
[`duet-status-icon-${this.getVariation()}`]: true,
|
|
25210
25460
|
"duet-strong-bg": this.strong,
|
|
25211
25461
|
"duet-m-0": this.margin === "none",
|
|
25212
|
-
} }, hAsync("duet-icon", { key: '
|
|
25462
|
+
} }, hAsync("duet-icon", { key: '01f92fdcfbb79c7bb32ea0dae0251bfad3f8f867', icon: this.getIcon(), size: this.size, margin: "none" })));
|
|
25213
25463
|
}
|
|
25214
25464
|
static get style() { return duetStatusIconCss; }
|
|
25215
25465
|
static get cmpMeta() { return {
|
|
@@ -25331,13 +25581,13 @@ class DuetStep {
|
|
|
25331
25581
|
* Always the last one in the class.
|
|
25332
25582
|
*/
|
|
25333
25583
|
render() {
|
|
25334
|
-
return (hAsync("div", { key: '
|
|
25584
|
+
return (hAsync("div", { key: '37dcde2a09c0e543e37af2938511c4e872d5cae3', class: {
|
|
25335
25585
|
"duet-step": true,
|
|
25336
25586
|
[`is-${this.state}`]: true,
|
|
25337
25587
|
"rounded-top": this.roundedTop,
|
|
25338
25588
|
"rounded-bottom": this.roundedBottom,
|
|
25339
25589
|
"duet-theme-turva": this.theme === "turva",
|
|
25340
|
-
} }, hAsync("div", { key: '
|
|
25590
|
+
} }, hAsync("div", { key: '60cc26eaba669788bb129ee58c8396455bcbe98e', class: "duet-step-heading", id: this.buttonId, role: this.state !== "current" ? "button" : "region", "aria-current": this.state === "current" ? "step" : undefined, tabindex: this.state !== "current" ? "0" : undefined, "aria-disabled": this.isClickDisabled().toString(), "aria-expanded": (this.state === "current").toString(), "aria-controls": this.contentId, "aria-selected": (this.state === "current").toString(), onClick: this.handleClick, onKeyDown: this.handleKeyDown, ref: element => (this.buttonElement = element) }, hAsync("div", { key: 'd8bf199c1d4708327bc68f2ca7ca34881e606d9d', "aria-hidden": "true" }, hAsync("div", { key: '85d3a85ac2a10d5d890752aca579d63d307b2b40', class: "duet-step-counter" }, this.renderStepCounter())), hAsync("duet-spacer", { key: '601144eff6f14bb9a339f50496acd851426e42f4', direction: "horizontal", size: "large", breakpoint: "small" }), hAsync("duet-spacer", { key: 'cbee8cd26ef8ff6a7da62b4103ca125f2d507563', direction: "horizontal", size: "medium", breakpoint: "x-small" }), hAsync("div", { key: '98021d88fc8448ed6f6a74b933c7bc0fd8f26ec5' }, hAsync("duet-heading", { key: 'fd4de9e77b6d8bc773ca4431344cf97bdfe136be', theme: this.theme, level: this.headingLevel, visualLevel: "h4", color: this.headingColor(), margin: "none" }, this.heading)), hAsync("duet-spacer", { key: '1da55e5c04eca24aa75cc45977ddaa5d0de92020', direction: "horizontal", size: "large" }), hAsync("div", { key: '300dddded08ecc1b218a501076f95f2fd9b8a233', class: "duet-step-heading-slot" }, hAsync("slot", { key: '7a2cabe2f5d9855beb86893c4b9446217ba7725d', name: "heading-content" }))), hAsync("div", { key: 'f1ea6a3b0bc0c6a2572e6912ec674c42432f5f56', class: "duet-step-content-wrapper" }, hAsync("div", { key: '9bd2104be04904785340ecce44e3b91093555aad', class: "duet-step-content", role: "region", "aria-labelledby": this.buttonId, id: this.contentId }, hAsync("slot", { key: 'fa019373955fff315ba8324a011a6cdc64bdadd1' })))));
|
|
25341
25591
|
}
|
|
25342
25592
|
get element() { return getElement(this); }
|
|
25343
25593
|
static get style() { return duetStepCss; }
|
|
@@ -25484,7 +25734,7 @@ class DuetStepper {
|
|
|
25484
25734
|
* Always the last one in the class.
|
|
25485
25735
|
*/
|
|
25486
25736
|
render() {
|
|
25487
|
-
return (hAsync(Host, { key: '
|
|
25737
|
+
return (hAsync(Host, { key: '6f441de1f6aa9336d4981a9727b0a5b79267ce06', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'bb37128420e9ec5b31375d46408fa6b201c23a73', class: { "duet-stepper": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("duet-visually-hidden", { key: 'e39cc64f5bcac69f03283de656b47440b8cd6141', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement()), hAsync("slot", { key: '747ef3274ad5dda720a3632086ae1b240e6f30f8' }))));
|
|
25488
25738
|
}
|
|
25489
25739
|
get element() { return getElement(this); }
|
|
25490
25740
|
static get watchers() { return {
|
|
@@ -25638,19 +25888,19 @@ class DuetSubmenuBar {
|
|
|
25638
25888
|
* Always the last one in the class.
|
|
25639
25889
|
*/
|
|
25640
25890
|
render() {
|
|
25641
|
-
return (hAsync(Host, { key: '
|
|
25891
|
+
return (hAsync(Host, { key: 'f4def1bd42afddbfd791262c81fa4cb6b53aa0bf' }, hAsync("nav", { key: '0c99d3101944026ef30ecb17cc15036c7a49f69f', class: {
|
|
25642
25892
|
"duet-submenu-bar": true,
|
|
25643
25893
|
"duet-theme-turva": this.theme === "turva",
|
|
25644
25894
|
hidden: this.hidden,
|
|
25645
|
-
}, "aria-label": this.accessibleLabel }, this.hasItems && (hAsync("button", { key: '
|
|
25895
|
+
}, "aria-label": this.accessibleLabel }, this.hasItems && (hAsync("button", { key: 'b06a70d212f178d944b069955af8d3c3eaf2dcd3', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
|
|
25646
25896
|
active: this.open,
|
|
25647
|
-
}, onClick: this.onClick }, hAsync("span", { key: '
|
|
25897
|
+
}, onClick: this.onClick }, hAsync("span", { key: '7915c6c4efaaec0625dad9fc232fe7037bc136ff', class: "label" }, hAsync("slot", { key: '3ba013e59bd0e392c3648611266ecbb405d4a831', name: "label" }), hAsync("duet-icon", { key: '72d21eb9586a7a21b50db832903217462dc7b24d', theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), hAsync("div", { key: 'f8e0d135231fc961dd80f795c1d82d9d7906da6e', class: {
|
|
25648
25898
|
"menu-container": true,
|
|
25649
25899
|
hidden: !this.open,
|
|
25650
|
-
}, role: "presentation" }, hAsync("div", { key: '
|
|
25900
|
+
}, role: "presentation" }, hAsync("div", { key: '6975ea468c45d4be064e96565773c0266b38e7ab', role: this.mobile ? "menu" : null, id: "menu", "aria-labelledby": this.mobile ? "button" : null, "aria-expanded": this.mobile ? (this.open ? "true" : "false") : null, class: {
|
|
25651
25901
|
items: true,
|
|
25652
25902
|
hidden: !this.open,
|
|
25653
|
-
}, ref: element => (this.itemsContainer = element) }, hAsync("div", { key: '
|
|
25903
|
+
}, ref: element => (this.itemsContainer = element) }, hAsync("div", { key: '0c037e643939277845dd75e4f98eb83c2ed41f99', class: "list", role: this.mobile ? "presentation" : "list" }, hAsync("slot", { key: 'c0d94264c8cd5824c1c45df63bf5eb67897e2700' }), hAsync("div", { key: '64bcd133e88697445e17abbf4dabf2ea4ed40fd0', class: "list-padding" }))), hAsync("duet-overlay", { key: 'dedf8c34bcca605bb8ba3895930d66c7bfaafe6a', "keep-stacking-context": true, visible: this.open, "display-device": "not-large", transition: "immediate" })))));
|
|
25654
25904
|
}
|
|
25655
25905
|
get element() { return getElement(this); }
|
|
25656
25906
|
static get watchers() { return {
|
|
@@ -25782,18 +26032,18 @@ class DuetSubmenuBarDropdown {
|
|
|
25782
26032
|
* Always the last one in the class.
|
|
25783
26033
|
*/
|
|
25784
26034
|
render() {
|
|
25785
|
-
return (hAsync(Host, { key: '
|
|
26035
|
+
return (hAsync(Host, { key: 'bcb3f683de71c0bc8b9c87f8c3bc7ef5600c6fa0', role: "listitem" }, hAsync("div", { key: 'ec440dbd58f7aa8a152d1e6517801ffffb4795a6', class: {
|
|
25786
26036
|
"duet-submenu-bar-dropdown": true,
|
|
25787
26037
|
"duet-theme-turva": this.theme === "turva",
|
|
25788
26038
|
open: this.open,
|
|
25789
26039
|
active: this.active,
|
|
25790
|
-
} }, hAsync("button", { key: '
|
|
26040
|
+
} }, hAsync("button", { key: 'f67b293a2fd28a3c0e3e062461de2890beb6f174', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
|
|
25791
26041
|
open: this.open,
|
|
25792
26042
|
active: this.active,
|
|
25793
|
-
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '
|
|
26043
|
+
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '10bfe310933a9f989ae31ded0cbced2a0a14db8a', class: "submenu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: '3c53621e7555e4df6a62ac41cfacb19dbc2630b9', class: "label" }, hAsync("span", { key: '60cd09a846746be5d50c9851d1a2d3d66a61682e', class: "label-text" }, hAsync("slot", { key: '0a0ad898618514d5b4f510d6be7e3c0074a86af1', name: "label" })), hAsync("duet-icon", { key: '69a6d28eba4f72b06c035cd529553ae16da14253', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: 'f5889cb60d5f244d99e8e5cce9486388166e4034', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
|
|
25794
26044
|
items: true,
|
|
25795
26045
|
hidden: !this.open,
|
|
25796
|
-
} }, hAsync("slot", { key: '
|
|
26046
|
+
} }, hAsync("slot", { key: '48c26d5ac4af48cc2a0811966278d49b315723f3' })))));
|
|
25797
26047
|
}
|
|
25798
26048
|
get element() { return getElement(this); }
|
|
25799
26049
|
static get style() { return duetSubmenuBarDropdownCss; }
|
|
@@ -25862,12 +26112,12 @@ class DuetSubmenuBarDropdownLink {
|
|
|
25862
26112
|
* Always the last one in the class.
|
|
25863
26113
|
*/
|
|
25864
26114
|
render() {
|
|
25865
|
-
return (hAsync(Host, { key: '
|
|
26115
|
+
return (hAsync(Host, { key: '4576334bddababcad4705978843a1ae08e34e72d' }, hAsync("a", { key: '8e115648050ee9bde7d9fffb9dc3b895b0c46cc3', class: {
|
|
25866
26116
|
"duet-submenu-bar-dropdown-link": true,
|
|
25867
26117
|
"duet-theme-turva": this.theme === "turva",
|
|
25868
26118
|
highlight: this.highlight,
|
|
25869
26119
|
active: this.active,
|
|
25870
|
-
}, "aria-current": this.active ? "true" : "false", href: this.href, onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '
|
|
26120
|
+
}, "aria-current": this.active ? "true" : "false", href: this.href, onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '3cb691c70dea145bcd829655518d1e2da8ec4a48', name: this.icon, size: "x-small", margin: "none", color: "currentColor" }), hAsync("span", { key: 'd68d5f69f86de6ea467ea7acd2e6901950846c4c', class: "label-container" }, hAsync("span", { key: '4d40b23d4ca997fa9261b19f36934c678f0f67d6', class: "label" }, hAsync("slot", { key: 'adf85ab136a5ddbac43131933ebd5863274562e7' })), this.caret && hAsync("duet-icon", { key: 'c766790219038e9fc9b8bfe3454f5641020965ac', name: "action-arrow-right-small", size: "xxx-small", margin: "none" })), this.active && (hAsync("duet-icon", { key: '75759a4e4dd6032b73cf12fa7630b33f995e7499', class: "active-check", name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
|
|
25871
26121
|
}
|
|
25872
26122
|
get element() { return getElement(this); }
|
|
25873
26123
|
static get style() { return duetSubmenuBarDropdownLinkCss; }
|
|
@@ -25963,7 +26213,7 @@ class DuetSubmenuBarItem {
|
|
|
25963
26213
|
render() {
|
|
25964
26214
|
const TagName = this.url ? "a" : "button";
|
|
25965
26215
|
const role = this.url ? "link" : "button";
|
|
25966
|
-
return (hAsync(Host, { key: '
|
|
26216
|
+
return (hAsync(Host, { key: 'de4d2352d792c0adffd35bc86e9450b970bf8b0b', role: "listitem" }, hAsync(TagName, { key: 'd07f89e5b67f9898e7ad18385c29956226bbd875', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: { "duet-submenu-bar-item": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.url, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, role: role, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '0355e7d2be9da67841b162371e4c22bed4a58bf8', class: "leading-icon", theme: this.theme, name: this.leadingIcon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: 'c6cb759071a39f0ef8d86fcc657aabc6c174f6a8', class: "label" }, hAsync("span", { key: '35b683122ff7739979a3c10ea756df2e0becccfe', class: "label-text" }, hAsync("slot", { key: '530d2eec823596ae1a6c9148684a500bd48ebfae' })), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: '95d91c2031615a6960ae2d476a92034f37cd5e7f', class: {
|
|
25967
26217
|
"trailing-icon": !!this.trailingIcon,
|
|
25968
26218
|
"trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
|
|
25969
26219
|
"external-icon": !!this.external,
|
|
@@ -26035,7 +26285,7 @@ class DuetSubmenuBarLink {
|
|
|
26035
26285
|
* Always the last one in the class.
|
|
26036
26286
|
*/
|
|
26037
26287
|
render() {
|
|
26038
|
-
return (hAsync(Host, { key: '
|
|
26288
|
+
return (hAsync(Host, { key: 'f21f33d16d3f1e5435db17e9cd84b5c6be8b9a27', role: "listitem" }, hAsync("a", { key: 'd0a5cbf0af61c71728e231fe37161b3771d32239', class: { "duet-submenu-bar-link": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.href, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false" }, this.icon && (hAsync("duet-icon", { key: '62d39b5711cb99bbe1e6a5116d365926cbb7a00e', class: "submenu-bar-link-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("span", { key: '0c4fad2999da91f0c87910c43f30c028482581ca', class: "label" }, hAsync("slot", { key: '9f803721b07edf060c3a0c3c65190f8205ab0422' })))));
|
|
26039
26289
|
}
|
|
26040
26290
|
get element() { return getElement(this); }
|
|
26041
26291
|
static get style() { return duetSubmenuBarLinkCss; }
|
|
@@ -26161,7 +26411,7 @@ class DuetTab {
|
|
|
26161
26411
|
* Always the last one in the class.
|
|
26162
26412
|
*/
|
|
26163
26413
|
render() {
|
|
26164
|
-
return (hAsync("div", { key: '
|
|
26414
|
+
return (hAsync("div", { key: '91c006415c8db98625168cc1509f085f9f25424e', ref: element => {
|
|
26165
26415
|
if (!this.contentId) {
|
|
26166
26416
|
this.tabpanelElement = element;
|
|
26167
26417
|
}
|
|
@@ -26170,7 +26420,7 @@ class DuetTab {
|
|
|
26170
26420
|
"duet-tab": true,
|
|
26171
26421
|
selected: this.selected,
|
|
26172
26422
|
"has-content-id": !!this.contentId,
|
|
26173
|
-
}, "aria-description": this.accessibleDescription, "aria-labelledby": this.accessibleLabelledBy, tabindex: "-1" }, hAsync("slot", { key: '
|
|
26423
|
+
}, "aria-description": this.accessibleDescription, "aria-labelledby": this.accessibleLabelledBy, tabindex: "-1" }, hAsync("slot", { key: 'cbcb9eb3c000e67f2aa896af7159101672c5c8af' })));
|
|
26174
26424
|
}
|
|
26175
26425
|
get element() { return getElement(this); }
|
|
26176
26426
|
static get watchers() { return {
|
|
@@ -26481,13 +26731,13 @@ class DuetTabGroup {
|
|
|
26481
26731
|
[largeBreakpoint]: ["default", "plain", "plain-scrolling"].includes(this.variation) ? true : false,
|
|
26482
26732
|
"duet-theme-turva": this.theme === "turva",
|
|
26483
26733
|
}, onClick: () => this.onTabSelect(index), onKeyDown: ev => this.handleKeyDown(ev) }, this.variation === "checked" ? (hAsync("div", { class: { "checked-tab-content": true, "stackable-checked-tab-content": this.tabs.length <= 3 } }, hAsync("div", { class: { "checked-tab-description": true, "stackable-description": this.tabs.length <= 3 } }, hAsync("p", null, element.label), hAsync("p", { class: { "tab-caption": true, selected: element.selected } }, element.caption)), hAsync("div", { class: { "stackable-checkmark": this.tabs.length <= 3 } }, hAsync("duet-checkmark", { theme: this.theme, checked: element.selected, type: "radio", "presentation-only": true, center: true })))) : (element.label), element.indicator && (hAsync("duet-indicator", { variation: element.indicator, "accessible-label": element.indicatorAccessibleLabel })))));
|
|
26484
|
-
return (hAsync("div", { key: '
|
|
26734
|
+
return (hAsync("div", { key: '417e3a0eb99cdf3d6df636586be7435cad2144ac', class: {
|
|
26485
26735
|
"duet-tab-group": true,
|
|
26486
26736
|
"duet-theme-turva": this.theme === "turva",
|
|
26487
26737
|
[variationClass]: true,
|
|
26488
26738
|
"duet-tab-plain-scrolling": this.variation === "plain-scrolling",
|
|
26489
26739
|
"duet-tab-group-scrolls": true,
|
|
26490
|
-
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: '
|
|
26740
|
+
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: 'da12d48bcbb77d4e88ca34c63ee54c63db53eacd', role: "tablist", class: {
|
|
26491
26741
|
"duet-m-0": this.margin === "none" || this.variation === "checked",
|
|
26492
26742
|
"duet-tab-group-tabs": true,
|
|
26493
26743
|
"duet-tab-group-hidden": this.tabs.length > 3 && !isSwipeScrollable,
|
|
@@ -26498,11 +26748,11 @@ class DuetTabGroup {
|
|
|
26498
26748
|
} }, this.variation === "checked" ? (buttons) : (hAsync("div", { class: {
|
|
26499
26749
|
"duet-tab-group-scrollable-wrapper": true,
|
|
26500
26750
|
"duet-tab-group-fill-space-wrapper": this.fillSpace && this.variation === "default",
|
|
26501
|
-
} }, this.fillSpace && !this.stretch && this.variation === "default" && (hAsync("div", { class: "duet-scrollable-stretch-overlay" }, hAsync("div", { class: "background" }), hAsync("div", { class: "border" }))), hAsync("duet-scrollable", { selected: this.selected, identifier: this.identifier, gap: ["default", "plain", "plain-scrolling"].includes(this.variation) ? "none" : "large", buttonPosition: this.variation === "default" ? "absolute" : "relative", center: this.isCentered() ? this.isCentered() : this.element.style.textAlign == "center", theme: this.theme, stretch: this.stretch }, buttons)))), hAsync("div", { key: '
|
|
26751
|
+
} }, this.fillSpace && !this.stretch && this.variation === "default" && (hAsync("div", { class: "duet-scrollable-stretch-overlay" }, hAsync("div", { class: "background" }), hAsync("div", { class: "border" }))), hAsync("duet-scrollable", { selected: this.selected, identifier: this.identifier, gap: ["default", "plain", "plain-scrolling"].includes(this.variation) ? "none" : "large", buttonPosition: this.variation === "default" ? "absolute" : "relative", center: this.isCentered() ? this.isCentered() : this.element.style.textAlign == "center", theme: this.theme, stretch: this.stretch }, buttons)))), hAsync("div", { key: '25e346444619db75d262e11a84acdfaaafa2257c', class: {
|
|
26502
26752
|
"duet-tab-group-content": true,
|
|
26503
26753
|
"duet-m-0": this.margin === "none",
|
|
26504
26754
|
"checked-group-content": this.variation === "checked",
|
|
26505
|
-
} }, hAsync("slot", { key: '
|
|
26755
|
+
} }, hAsync("slot", { key: 'c63f225ca6cd084bb78f4f3bcc046d21c9d47e0a' }))));
|
|
26506
26756
|
}
|
|
26507
26757
|
get element() { return getElement(this); }
|
|
26508
26758
|
static get style() { return duetTabGroupCss; }
|
|
@@ -26608,7 +26858,7 @@ duet-table {
|
|
|
26608
26858
|
th {
|
|
26609
26859
|
font-weight: ${fontWeightSemiBold};
|
|
26610
26860
|
line-height: ${lineHeightSmall};
|
|
26611
|
-
color: ${
|
|
26861
|
+
color: ${colorForegroundSecondary};
|
|
26612
26862
|
text-align: left;
|
|
26613
26863
|
}
|
|
26614
26864
|
|
|
@@ -26760,7 +27010,7 @@ duet-table {
|
|
|
26760
27010
|
}
|
|
26761
27011
|
}
|
|
26762
27012
|
|
|
26763
|
-
|
|
27013
|
+
|
|
26764
27014
|
|
|
26765
27015
|
tbody th {
|
|
26766
27016
|
padding-top: calc(${spaceLarge} * 2) !important;
|
|
@@ -26946,7 +27196,7 @@ duet-table {
|
|
|
26946
27196
|
}
|
|
26947
27197
|
}
|
|
26948
27198
|
}
|
|
26949
|
-
|
|
27199
|
+
|
|
26950
27200
|
duet-table.duet-theme-turva table {
|
|
26951
27201
|
font-family: ${fontFamilyTextTurva};
|
|
26952
27202
|
}
|
|
@@ -26956,7 +27206,7 @@ duet-table.duet-theme-turva td {
|
|
|
26956
27206
|
}
|
|
26957
27207
|
|
|
26958
27208
|
duet-table.duet-theme-turva th {
|
|
26959
|
-
color: ${
|
|
27209
|
+
color: ${colorForegroundSecondaryTurva};
|
|
26960
27210
|
}
|
|
26961
27211
|
|
|
26962
27212
|
duet-table.duet-theme-turva tbody th {
|
|
@@ -27152,7 +27402,7 @@ class DuetTable {
|
|
|
27152
27402
|
}
|
|
27153
27403
|
}
|
|
27154
27404
|
render() {
|
|
27155
|
-
return (hAsync(Host, { key: '
|
|
27405
|
+
return (hAsync(Host, { key: '1dee35eb36b222e57e85e68f730b6460a8b9e63c', class: {
|
|
27156
27406
|
[`duet-table-${this.variation}`]: true,
|
|
27157
27407
|
"duet-table-flattened": !this.matchesBreakpoint,
|
|
27158
27408
|
// sticky only valid when in regular table layout
|
|
@@ -27161,7 +27411,7 @@ class DuetTable {
|
|
|
27161
27411
|
"duet-m-0": this.margin === "none",
|
|
27162
27412
|
"duet-theme-turva": this.theme === "turva",
|
|
27163
27413
|
"duet-table-hide-head-visually": this.hideHeadVisually,
|
|
27164
|
-
} }, hAsync("slot", { key: '
|
|
27414
|
+
} }, hAsync("slot", { key: '933771b95dbc033acc97acf8396d23e2fa5e7651' })));
|
|
27165
27415
|
}
|
|
27166
27416
|
get element() { return getElement(this); }
|
|
27167
27417
|
static get watchers() { return {
|
|
@@ -27187,6 +27437,131 @@ class DuetTable {
|
|
|
27187
27437
|
}; }
|
|
27188
27438
|
}
|
|
27189
27439
|
|
|
27440
|
+
const duetTeaserCss = "*,\n*::after,\n*::before {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n}\n\n:host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n background: transparent;\n border: 0;\n display: block;\n width: auto;\n container-type: inline-size;\n}\n\n.duet-teaser {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n border-radius: 16px;\n}\n.duet-teaser .image-wrap,\n.duet-teaser .icon-wrap {\n margin-bottom: 16px;\n}\n.duet-teaser .image-wrap {\n display: inline-block;\n overflow: hidden;\n border-radius: 16px;\n}\n.duet-teaser .image-wrap .duet-teaser-image {\n display: block;\n width: 100%;\n aspect-ratio: 16/10;\n object-fit: cover;\n}\n.duet-teaser .icon-wrap .duet-teaser-icon {\n display: block;\n width: 30px;\n width: 62px;\n height: 30px;\n height: 62px;\n}\n@container (width > 450px) {\n .duet-teaser .icon-wrap .duet-teaser-icon {\n width: 36px;\n width: 76px;\n height: 36px;\n height: 76px;\n }\n}\n.duet-teaser ::slotted(.teaser-heading) {\n margin: 0 0 1rem 0;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1.25;\n}\n.duet-teaser ::slotted(.teaser-heading-h5) {\n font-size: 1.25rem;\n font-weight: 600;\n line-height: 1.25;\n}\n.duet-teaser .duet-teaser-body {\n display: flex;\n flex-direction: column;\n}\n.duet-teaser .duet-teaser-body .duet-teaser-meta {\n order: -1;\n padding-top: 8px;\n}\n.duet-teaser.duet-teaser-link {\n text-decoration: none;\n}\n.duet-teaser.duet-teaser-link:focus {\n outline: 2px solid;\n outline-offset: 2px;\n outline-color: rgba(0, 119, 179, 0.8);\n}\n.duet-theme-turva .duet-teaser.duet-teaser-link:focus, .duet-teaser.duet-teaser-link:focus.duet-theme-turva {\n outline: 2px solid;\n outline-offset: 2px;\n outline-color: rgba(53, 79, 101, 0.8);\n}\n.duet-teaser.duet-teaser-link .image-wrap {\n display: inline-block;\n overflow: hidden;\n}\n.duet-teaser.duet-teaser-link .image-wrap img {\n transition: transform 300ms ease;\n}\n.duet-teaser.duet-teaser-link ::slotted(.teaser-heading) {\n color: rgb(0, 75, 129);\n}\n.duet-teaser.duet-teaser-link:hover .teaser-heading {\n color: rgb(0, 97, 155);\n}\n.duet-teaser.duet-teaser-link:hover .image-wrap img {\n transform: scale(1.1);\n transition: transform 300ms ease;\n}\n.duet-teaser.duet-teaser-link:hover ::slotted(.teaser-heading) {\n color: rgb(0, 97, 155);\n text-decoration: underline;\n}\n\n.duet-theme-turva.duet-teaser {\n font-family: \"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n}\n.duet-theme-turva.duet-teaser-link ::slotted(.teaser-heading) {\n color: rgb(140, 0, 30);\n}\n.duet-theme-turva.duet-teaser-link:hover ::slotted(.teaser-heading) {\n color: rgb(185, 3, 41);\n}";
|
|
27441
|
+
|
|
27442
|
+
const LONG_HEADING_LENGTH = 60;
|
|
27443
|
+
/**
|
|
27444
|
+
* @slot links - Slot for links or buttons related to the teaser. Only default duet-link and plain duet-button components should be used in this slot. Not rendered when the `url` property is set.
|
|
27445
|
+
*/
|
|
27446
|
+
class DuetTeaser {
|
|
27447
|
+
constructor(hostRef) {
|
|
27448
|
+
registerInstance(this, hostRef);
|
|
27449
|
+
/**
|
|
27450
|
+
* Theme.
|
|
27451
|
+
*/
|
|
27452
|
+
this.theme = "";
|
|
27453
|
+
/**
|
|
27454
|
+
* The actual heading level used in the HTML markup.
|
|
27455
|
+
*/
|
|
27456
|
+
this.headingLevel = "h3";
|
|
27457
|
+
/**
|
|
27458
|
+
* Controls the visual size of the heading. Headings longer than 60 characters
|
|
27459
|
+
* always use "h5" visually, regardless of this setting.
|
|
27460
|
+
*/
|
|
27461
|
+
this.headingVisualLevel = "h3";
|
|
27462
|
+
/**
|
|
27463
|
+
* Background color for the icon
|
|
27464
|
+
*/
|
|
27465
|
+
this.iconBackground = "color-background-accent-secondary";
|
|
27466
|
+
/**
|
|
27467
|
+
* Color for the icon
|
|
27468
|
+
*/
|
|
27469
|
+
this.iconColor = "color-foreground-accent-secondary";
|
|
27470
|
+
/**
|
|
27471
|
+
* Creates/updates the actual heading element as a light DOM child of the
|
|
27472
|
+
* host, slotted into the "heading" slot.
|
|
27473
|
+
*/
|
|
27474
|
+
this.headingSetUp = () => {
|
|
27475
|
+
const existing = this.element.querySelector(":scope > [slot='heading']");
|
|
27476
|
+
if (!this.heading) {
|
|
27477
|
+
existing === null || existing === void 0 ? void 0 : existing.remove();
|
|
27478
|
+
return;
|
|
27479
|
+
}
|
|
27480
|
+
const tagMatches = (existing === null || existing === void 0 ? void 0 : existing.tagName.toLowerCase()) === this.headingLevel;
|
|
27481
|
+
const headingElement = tagMatches ? existing : document.createElement(this.headingLevel);
|
|
27482
|
+
headingElement.slot = "heading";
|
|
27483
|
+
headingElement.textContent = this.heading;
|
|
27484
|
+
headingElement.className = `teaser-heading teaser-heading-${this.getHeadingVisualLevel()}`;
|
|
27485
|
+
if (!tagMatches) {
|
|
27486
|
+
existing === null || existing === void 0 ? void 0 : existing.remove();
|
|
27487
|
+
this.element.appendChild(headingElement);
|
|
27488
|
+
}
|
|
27489
|
+
};
|
|
27490
|
+
}
|
|
27491
|
+
/**
|
|
27492
|
+
* Component lifecycle events.
|
|
27493
|
+
*/
|
|
27494
|
+
componentWillLoad() {
|
|
27495
|
+
inheritGlobalTheme(this);
|
|
27496
|
+
this.hasLinksSlot = hasSlot(this.element, "links");
|
|
27497
|
+
checkNamedSlotElement(this.element, "links", "duet-link[variation=default],duet-link:not([variation]),duet-button[variation=plain]", 0, true);
|
|
27498
|
+
}
|
|
27499
|
+
componentDidRender() {
|
|
27500
|
+
this.headingSetUp();
|
|
27501
|
+
}
|
|
27502
|
+
/**
|
|
27503
|
+
* Sets focus on underlying a element.
|
|
27504
|
+
* Available only when url attribute is used.
|
|
27505
|
+
* Use this method instead of the native `focus()`.
|
|
27506
|
+
*/
|
|
27507
|
+
async setFocus(options) {
|
|
27508
|
+
if (this.url && this.aOrDivElement) {
|
|
27509
|
+
this.aOrDivElement.focus(options);
|
|
27510
|
+
}
|
|
27511
|
+
}
|
|
27512
|
+
getHeadingVisualLevel() {
|
|
27513
|
+
return this.heading && this.heading.length > LONG_HEADING_LENGTH ? "h5" : this.headingVisualLevel;
|
|
27514
|
+
}
|
|
27515
|
+
/**
|
|
27516
|
+
* render() function
|
|
27517
|
+
* Always the last one of the class.
|
|
27518
|
+
*/
|
|
27519
|
+
render() {
|
|
27520
|
+
const TagName = this.url ? "a" : "div";
|
|
27521
|
+
const pictureSource = {
|
|
27522
|
+
img: {
|
|
27523
|
+
src: this.image,
|
|
27524
|
+
alt: this.imageAlt || "",
|
|
27525
|
+
loading: this.imagePriority === "high" ? "eager" : "lazy",
|
|
27526
|
+
fetchpriority: this.imagePriority,
|
|
27527
|
+
class: "duet-teaser-image",
|
|
27528
|
+
},
|
|
27529
|
+
sources: parsePossibleJSON(this.sources),
|
|
27530
|
+
};
|
|
27531
|
+
return (hAsync(Host, { key: 'e65b22becf6cc35870584bb5d4984a5c92c52f80' }, hAsync(TagName, { key: '39bab1e7a6e59414e18110a6513634c4da99dbe6', href: this.url, class: {
|
|
27532
|
+
"duet-teaser": true,
|
|
27533
|
+
"duet-theme-turva": this.theme === "turva",
|
|
27534
|
+
"duet-teaser-link": !!this.url,
|
|
27535
|
+
}, ref: element => (this.aOrDivElement = element) }, this.image ? (hAsync("div", { class: "image-wrap" }, hAsync(DuetPicture, Object.assign({}, pictureSource)))) : (this.icon && (hAsync("div", { class: "icon-wrap" }, hAsync("duet-icon", { class: "duet-teaser-icon", shape: "brand", color: this.iconColor, background: this.iconBackground, name: this.icon, margin: "none" })))), hAsync("div", { key: '985108c747576fb8fa5e522402ad6518d471a8c5', class: "duet-teaser-body" }, this.heading && (hAsync("div", { key: '2c49e6b10827a31060a9a0263d20648835008aa0' }, hAsync("slot", { key: '4f4470ff29f50d5b4deaa6b1e28593156c4d5b06', name: "heading" }))), this.meta && (hAsync("duet-paragraph", { key: '86b2aca7b9b6345e14bb0e21d1e92bda158288c4', class: "duet-teaser-meta", margin: "none" }, this.meta)), this.description && hAsync("duet-paragraph", { key: '1a4979c9fcc3e6b75724a8cf031a401d47992d43' }, this.description), !this.url && this.hasLinksSlot && (hAsync("duet-grid", { key: 'f5d445c279ed382840cc879bf84317d329b060a4', direction: "vertical" }, hAsync("slot", { key: '259f34f776ea59e48904321663fd54d864aa4dc0', name: "links" })))))));
|
|
27536
|
+
}
|
|
27537
|
+
get element() { return getElement(this); }
|
|
27538
|
+
static get style() { return duetTeaserCss; }
|
|
27539
|
+
static get cmpMeta() { return {
|
|
27540
|
+
"$flags$": 265,
|
|
27541
|
+
"$tagName$": "duet-teaser",
|
|
27542
|
+
"$members$": {
|
|
27543
|
+
"theme": [1025],
|
|
27544
|
+
"heading": [1],
|
|
27545
|
+
"headingLevel": [1, "heading-level"],
|
|
27546
|
+
"headingVisualLevel": [1, "heading-visual-level"],
|
|
27547
|
+
"description": [1],
|
|
27548
|
+
"meta": [1],
|
|
27549
|
+
"url": [1],
|
|
27550
|
+
"image": [1],
|
|
27551
|
+
"imageAlt": [1, "image-alt"],
|
|
27552
|
+
"imagePriority": [1, "image-priority"],
|
|
27553
|
+
"sources": [1],
|
|
27554
|
+
"icon": [1],
|
|
27555
|
+
"iconBackground": [1, "icon-background"],
|
|
27556
|
+
"iconColor": [1, "icon-color"],
|
|
27557
|
+
"setFocus": [64]
|
|
27558
|
+
},
|
|
27559
|
+
"$listeners$": undefined,
|
|
27560
|
+
"$lazyBundleId$": "-",
|
|
27561
|
+
"$attrsToReflect$": []
|
|
27562
|
+
}; }
|
|
27563
|
+
}
|
|
27564
|
+
|
|
27190
27565
|
const duetTextareaCss = ".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{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-right:16px !important;margin-bottom:12px !important;display:block;width:100%;max-width:100%;text-align:left}: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}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}:host.duet-expand{width:100% !important}}:host(.duet-m-0){margin:0 !important}duet-tooltip,::slotted(duet-tooltip){position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip,::slotted(duet-tooltip){position:relative;top:4px;right:auto}}.duet-textarea-container{position:relative;width:100%;height:100%}.duet-textarea-container .duet-input-top-caption{display:none}.duet-textarea-container.duet-input-top-caption-shown .duet-input-top-caption{display:flex !important}.duet-textarea-wrapper{position:relative}.duet-textarea-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-textarea{padding:15px !important;position:relative;z-index:100;display:block;width:100%;min-width:8rem;min-height:160px;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;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(8, 42, 77);resize:vertical;background:rgb(255, 255, 255);border:1px solid rgb(127, 150, 165);border-radius:4px}.duet-textarea:focus{outline:2px solid;outline-offset:0;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-textarea:focus,.duet-textarea:focus.duet-theme-turva{outline:2px solid;outline-offset:0;outline-color:rgba(53, 79, 101, 0.8)}.has-error .duet-textarea{outline-offset:-1px;background-color:rgb(255, 240, 243) !important;border-color:rgb(214, 28, 82) !important}.duet-textarea[rows]{min-height:auto}.duet-textarea::placeholder{color:rgb(98, 121, 138);opacity:1 !important}.duet-textarea:focus::placeholder{color:rgb(181, 198, 208)}.duet-textarea[disabled]{color:rgb(98, 121, 138) !important;cursor:not-allowed !important;outline:none !important;background:rgb(228, 236, 239) !important;border-color:rgb(181, 198, 208) !important;opacity:1 !important;-webkit-text-fill-color:rgb(8, 42, 77) !important}.duet-textarea[disabled]::placeholder{color:rgb(8, 42, 77);opacity:1 !important}.duet-textarea:hover:not(:disabled):not(:focus){outline:2px solid;outline-color:rgb(127, 150, 165) !important;outline-offset:-1px}.duet-theme-turva .duet-textarea:hover:not(:disabled):not(:focus),.duet-textarea:hover:not(:disabled):not(:focus).duet-theme-turva{outline-color:rgb(120, 145, 164) !important}.has-error .duet-textarea:hover:not(:disabled):not(:focus){outline-offset:-1px;background-color:rgb(255, 240, 243) !important;border-color:rgb(214, 28, 82) !important;outline-width:2px;outline-color:rgb(214, 28, 82) !important}.duet-textarea:focus{outline:2px solid;outline-color:rgb(0, 119, 179) !important;outline-offset:-1px}.duet-theme-turva .duet-textarea:focus,.duet-textarea:focus.duet-theme-turva{outline-color:rgb(23, 42, 59) !important}.has-error .duet-textarea:focus{outline-offset:-1px;background-color:rgb(255, 240, 243) !important;border-color:rgb(214, 28, 82) !important;outline-width:2px;outline-color:rgb(214, 28, 82) !important;background:rgb(255, 255, 255) !important}.duet-textarea:not(:focus):not(:hover):invalid{outline:none}.duet-textarea-help{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;line-height:1.25}.duet-textarea-help span{display:block;margin-top:8px}.has-error .duet-textarea-help{color:rgb(214, 28, 82)}.duet-label-hidden .duet-internal-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0)}.duet-character-count{display:block;margin:8px 0 0 auto}.duet-theme-turva .duet-textarea{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);border-color:rgb(120, 145, 164)}.duet-theme-turva .duet-textarea::placeholder{color:rgb(120, 145, 164)}.duet-theme-turva .duet-textarea:focus{border-color:rgb(23, 42, 59)}.duet-theme-turva .duet-textarea:focus::placeholder{color:rgb(178, 194, 205)}.duet-theme-turva .duet-textarea[disabled]::placeholder{color:rgb(23, 42, 59)}.duet-theme-turva .duet-textarea[disabled]{color:rgb(95, 122, 143) !important;cursor:not-allowed !important;outline:none !important;background:rgb(228, 233, 237) !important;border-color:rgb(178, 194, 205) !important;opacity:1 !important;-webkit-text-fill-color:rgb(23, 42, 59) !important}.duet-theme-turva.has-error .duet-textarea-help{color:rgb(214, 28, 82)}.duet-theme-turva .duet-textarea-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(120, 145, 164)}";
|
|
27191
27566
|
|
|
27192
27567
|
const CharacterCount = ({ value, maxlength, theme }) => {
|
|
@@ -27424,17 +27799,17 @@ class DuetTextarea {
|
|
|
27424
27799
|
*/
|
|
27425
27800
|
render() {
|
|
27426
27801
|
const identifier = this.identifier || this.textareaId;
|
|
27427
|
-
return (hAsync(Host, { key: '
|
|
27802
|
+
return (hAsync(Host, { key: 'c645b374c5569d125e844312777f69b913951785', class: {
|
|
27428
27803
|
"duet-m-0": this.margin === "none",
|
|
27429
27804
|
"duet-has-counter": this.counter && !this.error,
|
|
27430
27805
|
"duet-expand": this.expand,
|
|
27431
|
-
} }, hAsync("div", { key: '
|
|
27806
|
+
} }, hAsync("div", { key: '5c57fd8c8f91750d834147fa416e8cda82dcf025', class: {
|
|
27432
27807
|
"duet-textarea-container": true,
|
|
27433
27808
|
"duet-theme-turva": this.theme === "turva",
|
|
27434
27809
|
"duet-label-hidden": this.labelHidden,
|
|
27435
27810
|
"duet-input-top-caption-shown": this.isCaptionVisible,
|
|
27436
27811
|
"has-error": !!this.error,
|
|
27437
|
-
} }, hAsync(DuetInternalLabel, { key: '
|
|
27812
|
+
} }, hAsync(DuetInternalLabel, { key: '7cf923d382d2623fa18ec9ad084275e2b9792ebf', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: '09a04a79bc4f13351c51ffca8332d863c7d22280', direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), hAsync("slot", { key: 'f46daf8b99a53de5e5164f0f9f357ae91e1aa586', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: 'a2b9079234a7ec3b9b793e7912bcd4c8addc9e70', id: this.topCaptionId, size: "medium", theme: this.theme === "turva" ? "turva" : "default" }, this.caption)), hAsync("div", { key: '7f68db3beca35abb4fb53fa1056d99857e1e8316', class: "duet-textarea-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: '250b6e1eb6abbb79f71e176c1c241cb1fa3da18f', id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)), hAsync("textarea", { key: 'c50e5d4e25d0a499cd6a1bfc03cbc546d92a3b74', onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, rows: this.rows, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })), hAsync("duet-grid", { key: '20b668af694a652ea88adc161052fbff65517eb5', alignment: "stretch" }, hAsync("duet-grid-item", { key: 'b795843db0959cc83c8724dbd587debd68f58594', margin: "none", fill: true }, hAsync("div", { key: 'ab3999585663d8d1081fe39b43a35933af7ca9b8', class: "duet-textarea-help duet-textarea-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '4ad7dbac61a6398ec4f8459449162d002030f29e' }, this.error))), hAsync("duet-grid-item", { key: '25e2bb115dada7a5b0baaa58efcad756c3cdfc30', margin: "none", class: "duet-character-count-caption" }, this.counter && hAsync(CharacterCount, { key: '3e68a56f36758415be927efbc10cf267ec4d414e', theme: this.theme, value: this.value, maxlength: this.maxlength }))), this.counter && this.maxlength && (hAsync("duet-visually-hidden", { key: '7af4e00427232548222397a4439f2e71a54ac586', id: this.characterCountId, class: "visually-hidden-counter", "aria-live": "polite" }, this.visuallyHiddenCounterText)))));
|
|
27438
27813
|
}
|
|
27439
27814
|
get element() { return getElement(this); }
|
|
27440
27815
|
static get watchers() { return {
|
|
@@ -27603,11 +27978,11 @@ class DuetToggle {
|
|
|
27603
27978
|
*/
|
|
27604
27979
|
render() {
|
|
27605
27980
|
const identifier = this.identifier || this.toggleId;
|
|
27606
|
-
return (hAsync(Host, { key: '
|
|
27981
|
+
return (hAsync(Host, { key: '8e33f58775179856fa30813d64699b5fd99d8340', onClick: this.disabled || this.loading ? undefined : this.onClick, class: {
|
|
27607
27982
|
"duet-m-0": this.margin === "none",
|
|
27608
27983
|
"duet-toggle-is-disabled": this.disabled,
|
|
27609
27984
|
"duet-toggle-is-loading": this.loading,
|
|
27610
|
-
} }, hAsync("div", { key: '
|
|
27985
|
+
} }, hAsync("div", { key: '814cdf2738bbf743e689d706d00999d2476474a9', class: {
|
|
27611
27986
|
"duet-toggle": true,
|
|
27612
27987
|
"duet-theme-turva": this.theme === "turva",
|
|
27613
27988
|
"duet-side-label": this.labelPosition !== "top",
|
|
@@ -27615,7 +27990,7 @@ class DuetToggle {
|
|
|
27615
27990
|
"duet-label-hidden": this.labelHidden,
|
|
27616
27991
|
"duet-toggle-is-disabled": this.disabled,
|
|
27617
27992
|
"duet-toggle-is-loading": this.loading,
|
|
27618
|
-
} }, hAsync(DuetInternalLabel, { key: '
|
|
27993
|
+
} }, hAsync(DuetInternalLabel, { key: '48309fafb420e187486b8de7eef212f614008295', theme: this.theme, color: this.labelColor, weight: this.labelWeight, for: identifier, margin: this.labelPosition === "top" ? "auto" : "none" }, this.label), hAsync("div", { key: 'b4f62f86018a7bb7f34a450175ad996c63059ed3', class: "duet-switch" }, hAsync("input", { key: '8c314ffe85e67fa4740ef3bb6357c17e4fc2659a', type: "checkbox", value: this.value, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, id: identifier, role: this.role, name: this.name, checked: this.checked, required: this.required, disabled: this.disabled || this.loading, ref: input => (this.nativeInput = input) }), hAsync("div", { key: '6e55a2738a881cf60ab6699e2e8e1fc0026362a3', class: { "duet-slider": true, "duet-theme-turva": this.theme === "turva" } }), this.loading && hAsync("duet-spinner", { key: '1ae23364dffc828696a3591fab7e48832a18653a', color: "primary" }))), this.loading && (hAsync("duet-visually-hidden", { key: 'a4f566fbcdb66615228cf9fc16056378cc41eda3', "aria-live": "polite" }, this.accessibleLabelLoading || DuetStringsLoadingDefaults[getLanguage()])), this.loadingComplete && (hAsync("duet-visually-hidden", { key: 'db35c9a6927a435ed193f696e8a775f74b7d47cb', "aria-live": "polite" }, this.accessibleLabelComplete || DuetStringsCompleteDefaults[getLanguage()]))));
|
|
27619
27994
|
}
|
|
27620
27995
|
get element() { return getElement(this); }
|
|
27621
27996
|
static get watchers() { return {
|
|
@@ -27696,11 +28071,11 @@ class DuetToolbar {
|
|
|
27696
28071
|
: this.variation === "secondary"
|
|
27697
28072
|
? "secondary"
|
|
27698
28073
|
: "default";
|
|
27699
|
-
return (hAsync(Host, { key: '
|
|
28074
|
+
return (hAsync(Host, { key: 'a4427ddcb41378eb22a7ef7f077c9fdf1d290880' }, hAsync("nav", { key: '255a4f21a692c5a1231d619f33a73bfece27de9c', class: {
|
|
27700
28075
|
"duet-toolbar": true,
|
|
27701
28076
|
"duet-theme-turva": this.theme === "turva",
|
|
27702
28077
|
[variation]: true,
|
|
27703
|
-
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: '
|
|
28078
|
+
}, "aria-label": this.accessibleLabel }, hAsync("div", { key: 'ac3f72269798fe1d29734ed2848149b1f3197815', class: "container" }, hAsync("div", { key: '01fd28d4455b94221b7664475f7f8d948851b1ae', class: "list", role: "list" }, hAsync("slot", { key: '51d7c5144022b4d1e580a9d33e9fff683e06e537', name: "left" })), hAsync("div", { key: '2fd278a57422a9751f84a4faedbb26cfd8a6095c', class: "list", role: "list" }, hAsync("slot", { key: '0e7197b5ed23a575b00e3c5dca361da1b1dfbfb0', name: "right" }))))));
|
|
27704
28079
|
}
|
|
27705
28080
|
get element() { return getElement(this); }
|
|
27706
28081
|
static get style() { return duetToolbarCss; }
|
|
@@ -27781,18 +28156,18 @@ class DuetToolbarDropdown {
|
|
|
27781
28156
|
itemsAlign = this.element.parentElement.getAttribute("slot") === "left" ? "right" : "left";
|
|
27782
28157
|
}
|
|
27783
28158
|
const variation = this.variation === "negative" ? "negative" : "white";
|
|
27784
|
-
return (hAsync(Host, { key: '
|
|
28159
|
+
return (hAsync(Host, { key: '260d43c3c36ccc6473ada8644b3cdd6a59ae12b8', role: "listitem" }, hAsync("div", { key: 'cd8bcc17284e41d498018e7a0f8bc202b263c27c', class: {
|
|
27785
28160
|
"duet-toolbar-dropdown": true,
|
|
27786
28161
|
"duet-theme-turva": this.theme === "turva",
|
|
27787
28162
|
[itemsAlign]: true,
|
|
27788
28163
|
[variation]: true,
|
|
27789
|
-
} }, hAsync("button", { key: '
|
|
28164
|
+
} }, hAsync("button", { key: '8a4052995f9e9c148b96254b173ea8cad339b9b5', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel, id: "button", type: "button", class: {
|
|
27790
28165
|
active: this.active,
|
|
27791
28166
|
open: this.open,
|
|
27792
|
-
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '
|
|
28167
|
+
}, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: 'cc9305e0cab43bdddd6b29985921bc0e3ac6f2cc', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("span", { key: 'bfa1bcc44a13762c3c7ed54b788ac83e4f9eaf36', class: "label" }, hAsync("slot", { key: 'bb0fca1e6dd3a2bedb48f3cc737847fa92f4f887', name: "label" }), hAsync("duet-icon", { key: '8a4ebc94bf7951dcab09cd91c77858559020da81', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: '95fbfa1b864246ce99b84ca5a99832683d0cfea3', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
|
|
27793
28168
|
items: true,
|
|
27794
28169
|
hidden: !this.open,
|
|
27795
|
-
} }, hAsync("slot", { key: '
|
|
28170
|
+
} }, hAsync("slot", { key: '029b14e34e87faf198b6d77b234d40c9579d72f7' })))));
|
|
27796
28171
|
}
|
|
27797
28172
|
get element() { return getElement(this); }
|
|
27798
28173
|
static get style() { return duetToolbarDropdownCss; }
|
|
@@ -27858,11 +28233,11 @@ class DuetToolbarDropdownLink {
|
|
|
27858
28233
|
* Always the last one in the class.
|
|
27859
28234
|
*/
|
|
27860
28235
|
render() {
|
|
27861
|
-
return (hAsync(Host, { key: '
|
|
28236
|
+
return (hAsync(Host, { key: 'b00b4ee6b05837bd3221558d4031e19655e78c2d' }, hAsync("a", { key: '4bc395b03ce0515b092b261364b0461838ce5cbc', class: {
|
|
27862
28237
|
"duet-toolbar-dropdown-link": true,
|
|
27863
28238
|
"duet-theme-turva": this.theme === "turva",
|
|
27864
28239
|
active: this.active,
|
|
27865
|
-
}, href: this.href, lang: this.targetLanguage, hreflang: this.targetLanguage, role: "link menuitem", "aria-label": this.accessibleLabel, "aria-current": this.active ? "true" : "false", onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '
|
|
28240
|
+
}, href: this.href, lang: this.targetLanguage, hreflang: this.targetLanguage, role: "link menuitem", "aria-label": this.accessibleLabel, "aria-current": this.active ? "true" : "false", onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: 'f8d7e0d960179596c5ee99525bfbd9ee2bdc5509', name: this.icon, size: "x-small", margin: "none" }), hAsync("span", { key: '6713e5f3ad08944baddaa01c8264293861d2aae2', class: "label" }, hAsync("slot", { key: 'd64f498eb934e4e40c3851eff2565412bfdad6d0' })), this.active && (hAsync("duet-icon", { key: '454ecd536a2b3643e93b7373fa5c9820a33cecdf', name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
|
|
27866
28241
|
}
|
|
27867
28242
|
get element() { return getElement(this); }
|
|
27868
28243
|
static get style() { return duetToolbarDropdownLinkCss; }
|
|
@@ -27965,17 +28340,17 @@ class DuetToolbarItem {
|
|
|
27965
28340
|
: this.variation === "secondary"
|
|
27966
28341
|
? "secondary"
|
|
27967
28342
|
: "default";
|
|
27968
|
-
return (hAsync(Host, { key: '
|
|
28343
|
+
return (hAsync(Host, { key: '96487fd2e42789280cf1dc0538ff07b0f1f79264', role: "listitem" }, this.badge && hAsync("duet-indicator", { key: '5bfd9faa52039e80c72afce6d477602c5b6e3f8e', variation: "change" }), hAsync(TagName, { key: 'b5c8b5ac1cfe6549946e9820a2dd540490c606da', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
|
|
27969
28344
|
"duet-toolbar-item": true,
|
|
27970
28345
|
"duet-theme-turva": this.theme === "turva",
|
|
27971
28346
|
active: this.active,
|
|
27972
28347
|
[variation]: true,
|
|
27973
|
-
}, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("div", { key: '
|
|
28348
|
+
}, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("div", { key: '082cebef94f34c57a5617891c46e05cfc59f3c2c', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: '802fab1146fc2154f1c80e097e10464507548e5f', size: "x-small", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" }), this.badge && hAsync("div", { key: 'a484198c098521fd9e8745ac234f6dbc231f029c', class: "duet-toolbar-badge" }))), hAsync("slot", { key: '0993265ee4d23c17f425ee776ec9c14cb6454308' }), (this.trailingIcon || (this.url && this.external)) && (hAsync("div", { key: '90af7cbc5f00e4dc859cde8ae0d1166b358f097e', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: 'd2df808e4c985501fbd5bb96946f2d9c20a2b116', class: {
|
|
27974
28349
|
"trailing-icon": !!this.trailingIcon,
|
|
27975
28350
|
"trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
|
|
27976
28351
|
"external-icon": !!(this.url && this.external),
|
|
27977
28352
|
rotate: this.trailingIcon === "action-arrow-down-small" && this.accessibleExpanded,
|
|
27978
|
-
}, theme: this.theme, name: this.trailingIcon ? this.trailingIcon : this.url && this.external ? newWindowIcon.title : "", margin: "none", size: "auto", color: "currentColor" }), this.badge && this.trailingIcon !== "action-arrow-down-small" && hAsync("div", { key: '
|
|
28353
|
+
}, theme: this.theme, name: this.trailingIcon ? this.trailingIcon : this.url && this.external ? newWindowIcon.title : "", margin: "none", size: "auto", color: "currentColor" }), this.badge && this.trailingIcon !== "action-arrow-down-small" && hAsync("div", { key: 'e9b4919435ccd37e9906c033822de9195c57d73e', class: "duet-toolbar-badge" }))))));
|
|
27979
28354
|
}
|
|
27980
28355
|
get element() { return getElement(this); }
|
|
27981
28356
|
static get style() { return duetToolbarItemCss; }
|
|
@@ -28042,12 +28417,12 @@ class DuetToolbarLink {
|
|
|
28042
28417
|
*/
|
|
28043
28418
|
render() {
|
|
28044
28419
|
const variation = this.variation === "negative" ? "negative" : "white";
|
|
28045
|
-
return (hAsync(Host, { key: '
|
|
28420
|
+
return (hAsync(Host, { key: 'f932af82492da79cb86e7c40bbb887e7228489eb', role: "listitem" }, hAsync("a", { key: 'ad12f0ddfa37ebe9be01756fd35696a00687a736', class: {
|
|
28046
28421
|
"duet-toolbar-link": true,
|
|
28047
28422
|
"duet-theme-turva": this.theme === "turva",
|
|
28048
28423
|
active: this.active,
|
|
28049
28424
|
[variation]: true,
|
|
28050
|
-
}, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '
|
|
28425
|
+
}, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '143aac785a87f5989758021a4aa61a1794e9bada', size: "x-small", name: this.icon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: '9e6764f6a433cd437e0d248a09f87727cf9799cf' }))));
|
|
28051
28426
|
}
|
|
28052
28427
|
get element() { return getElement(this); }
|
|
28053
28428
|
static get style() { return duetToolbarLinkCss; }
|
|
@@ -28400,14 +28775,14 @@ class DuetTooltipButton {
|
|
|
28400
28775
|
* Always the last one in the class.
|
|
28401
28776
|
*/
|
|
28402
28777
|
render() {
|
|
28403
|
-
const visuallyHidden = hAsync("duet-visually-hidden", { key: '
|
|
28404
|
-
return (hAsync(Host, { key: '
|
|
28778
|
+
const visuallyHidden = hAsync("duet-visually-hidden", { key: 'a1f134eb2b35ec5fa474cec67587058e0cf9aad1' }, this.accessibleLabel);
|
|
28779
|
+
return (hAsync(Host, { key: '5f14833c83030b15a1f9377e2dd3a4fcfe9551fe' }, hAsync("button", { key: '330df985e0ade31c2dbdba3b7d0149742c77b02d', ref: el => (this.buttonElement = el), "aria-controls": this.tooltipId, "aria-expanded": this.active ? "true" : "false", type: "button", class: {
|
|
28405
28780
|
"duet-tooltip-button": true,
|
|
28406
28781
|
"duet-tooltip-button-has-label": !!this.label,
|
|
28407
28782
|
"duet-theme-turva": this.theme === "turva",
|
|
28408
28783
|
"duet-tooltip-button-negative": this.negative,
|
|
28409
28784
|
"duet-tooltip-button-in-badge": this.inBadge,
|
|
28410
|
-
} }, hAsync("svg", { key: '
|
|
28785
|
+
} }, hAsync("svg", { key: 'f2d13cb590a885f19398aa5668d3bff5fbdcd5de', "aria-hidden": "true", role: "img", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '3f7d2c195567d326319cd30f84c3b62aab028f30', d: "m13.5 17.25c-1.241 0-2.25-1.009-2.25-2.25v-3.75h-.75c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h.75c.827 0 1.5.673 1.5 1.5v3.75c0 .414.336.75.75.75h.75c.414 0 .75.336.75.75s-.336.75-.75.75z" }), hAsync("circle", { key: '393be8809c4fa503e1638a5b424a6f55d1c4358a', cx: "11.625", cy: "7.125", r: "1.125" }), hAsync("path", { key: '92977962b50e4f53fa9d2b3f3df9febae0f70256', d: "m12 24c-6.617 0-12-5.383-12-12s5.383-12 12-12 12 5.383 12 12-5.383 12-12 12zm0-22.5c-5.79 0-10.5 4.71-10.5 10.5s4.71 10.5 10.5 10.5 10.5-4.71 10.5-10.5-4.71-10.5-10.5-10.5z" })), this.label ? (hAsync("span", { class: "duet-tooltip-label" }, this.label, visuallyHidden)) : (visuallyHidden))));
|
|
28411
28786
|
}
|
|
28412
28787
|
get element() { return getElement(this); }
|
|
28413
28788
|
static get style() { return duetTooltipButtonCss; }
|
|
@@ -28473,14 +28848,14 @@ class DuetTooltipPopup {
|
|
|
28473
28848
|
this.contentEl.focus();
|
|
28474
28849
|
}
|
|
28475
28850
|
render() {
|
|
28476
|
-
return (hAsync(Host, { key: '
|
|
28851
|
+
return (hAsync(Host, { key: '678752dd505719576a22fb62106bb57ea1b6854a' }, hAsync("div", { key: 'fc85219c32e7013c66aa895c96e0da3141e8dfca', class: {
|
|
28477
28852
|
"duet-tooltip": true,
|
|
28478
28853
|
"duet-theme-turva": this.theme === "turva",
|
|
28479
28854
|
"duet-tooltip-active": this.active === true,
|
|
28480
|
-
} }, hAsync(FocusGuard, { key: '
|
|
28855
|
+
} }, hAsync(FocusGuard, { key: '4b35fea7062e07b744028e60d97f0093e1f1630f', moveFocusTo: this.buttonEl }), hAsync("div", { key: '7ca1e5455df1d7759f3b885ea6e3b2ef65b4ad25', ref: element => (this.contentEl = element), class: {
|
|
28481
28856
|
"duet-tooltip-content-area": true,
|
|
28482
28857
|
"duet-theme-turva": this.theme === "turva",
|
|
28483
|
-
}, tabindex: -1, id: this.tooltipId }, hAsync("slot", { key: '
|
|
28858
|
+
}, tabindex: -1, id: this.tooltipId }, hAsync("slot", { key: 'e9ca64614c0b10767772a29260a50a1ad3c98638' })), hAsync("div", { key: '672fb0df64ac13f3b6608738bca0310ee679f663', ref: element => (this.arrowEl = element), class: { arrow: true, [this.placement]: true }, style: this.arrowStyles }, hAsync("div", { key: '8c7013f5eeb4d74ab615abb0cc08c4de67555fa8', class: { "arrow-container": true, [this.placement]: true } })), hAsync("button", { key: '691ad59b5485fe06bec6f2716f833f096c3a4339', type: "button", class: "duet-tooltip-close", onClick: this.handleCloseClick, ref: el => (this.buttonEl = el) }, hAsync("duet-icon", { key: '33e72bd58a21e087218081bd41f2dc5a678569fa', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xxx-small" }), hAsync("duet-visually-hidden", { key: '6c331c361ff9e653466ac2e1b99531f1d0eb7ec4' }, this.accessibleCloseLabel)), hAsync(FocusGuard, { key: '8c3297577babe082e650f8e75b2713fac2a2c377', moveFocusTo: this.contentEl }))));
|
|
28484
28859
|
}
|
|
28485
28860
|
get element() { return getElement(this); }
|
|
28486
28861
|
static get style() { return duetTooltipPopupCss; }
|
|
@@ -28629,14 +29004,14 @@ class DuetTray {
|
|
|
28629
29004
|
* Always the last one in the class.
|
|
28630
29005
|
*/
|
|
28631
29006
|
render() {
|
|
28632
|
-
return (hAsync("div", { key: '
|
|
29007
|
+
return (hAsync("div", { key: '0838308a751d5bd344d9dcf549972c164bc486d3', class: {
|
|
28633
29008
|
"duet-tray": true,
|
|
28634
29009
|
"duet-tray-is-active": this.active,
|
|
28635
29010
|
"duet-tray-is-hidden": this.hiddenState,
|
|
28636
29011
|
"duet-tray-is-responsive": this.responsive,
|
|
28637
29012
|
"duet-theme-turva": this.theme === "turva",
|
|
28638
29013
|
"duet-tray-is-expandable": this.hasAdditionalContent,
|
|
28639
|
-
} }, hAsync("div", { key: '
|
|
29014
|
+
} }, hAsync("div", { key: '53974066f858b18963305b8765ae22d268a46df3', class: "duet-tray-default-content", role: "status" }, hAsync("slot", { key: 'be7397d2f73ae4147ca097c7567c4fe10b59b2e8' })), this.hasAdditionalContent && (hAsync(Fragment, { key: 'c698de98aa274785a9287095f9a2b19a1e3707a4' }, hAsync("button", { key: '7b0a76ccba8af4c2e3851cbbbf9dd3e2de73a674', "aria-expanded": this.expanded ? "true" : "false", "aria-controls": this.expandableId, onClick: ev => this.toggleExpandable(ev), class: { "duet-tray-button": true, "duet-tray-is-expanded": this.expanded } }, hAsync("duet-icon", { key: 'abf622b92b58b146b03f6717670dc1bd6de3c1fd', name: "action-arrow-down", size: "small", color: "currentColor", margin: "none" }), hAsync("duet-visually-hidden", { key: '3d191e5254f83b0500fd3d15f6ff578efa264da7' }, this.expanded ? this.accessibleCloseLabel : this.accessibleOpenLabel)), hAsync("div", { key: 'd82fa1ac499869d855de59b7855e2375fd811b80', id: this.expandableId, class: { "duet-tray-expandable": true, active: this.expanded } }, hAsync("div", { key: '62b911579dc9e0013bd7e57f1ba4f77098cc7b33', class: "duet-tray-expandable-content" }, hAsync("slot", { key: 'c16585065375ed05c264abd6b15c0f02482d9c81', name: "additional" })))))));
|
|
28640
29015
|
}
|
|
28641
29016
|
get element() { return getElement(this); }
|
|
28642
29017
|
static get style() { return duetTrayCss; }
|
|
@@ -29951,10 +30326,10 @@ class DuetUpload {
|
|
|
29951
30326
|
this.externalUploadButton.accessibleLabel = `${this.externalUploadButton.innerText}. ${caption}`;
|
|
29952
30327
|
}
|
|
29953
30328
|
// @ts-ignore
|
|
29954
|
-
return (hAsync(Host, { key: '
|
|
30329
|
+
return (hAsync(Host, { key: '18e9b69e6b294624c3caa4197ac3064ad377edb4', class: { "duet-m-0": this.margin === "none" } }, hAsync("duet-fieldset", { key: '54bea5df88e753afe0765f709639c895c83182f7', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, hAsync("slot", { key: '6eb5775f80ab5f44f44e3d14140348b86e8f7739', name: "header" }), !this.files.size && (hAsync("duet-empty-state", { key: '63e7bbc89678d80abdc5a85b7e90db25af8f2063', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, hAsync("duet-paragraph", { key: 'cabd4d22d34a0c59af38028a68b9aa9da78e648e', margin: "none" }, this.fileListEmpty))), !!this.files.size && hAsync("slot", { key: 'a8c8852e2552939af25edd121979d38dd98014ed', name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { key: '29a21718b2bb28697aa159e663226899bec68b74', 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 && hAsync("slot", { key: '3c0b11350cf2bd0dfbbb4436841c0fb255a696ba', name: "filefooter" }), hAsync("slot", { key: 'ace089c7e46c8c7e3d495f53c796494c5102d800', name: "uploadfooter" }), this.captionOnBottom && (hAsync("duet-caption", { key: '46dee1a0c5ede802dbbaa757ead7758153b02333', margin: "none", size: "small" }, hAsync("div", { key: 'bf5885654a9a43b388484b906392f88d1519d4ef', class: "upload-bottom-caption" }, caption))), hAsync("slot", { key: 'aa6f54876cbc89d68f1c199b41032967b8fdc0a7', name: "afterfooter" }), !this.hideButton && (hAsync(Fragment, { key: '0c26de4c43da284d32d022f94c7ffdc70744971a' }, hAsync("duet-spacer", { key: 'a89ce9a25c0ca6c15c74162224e8f229f4f4d28c', size: "large" }), hAsync("duet-button", { key: '4bcc0ede230f033b84f1acba6c6f2c29704d5477', id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel || `${this.buttonLabel}. ${caption}`, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel))), (this.fileMaxReached ||
|
|
29955
30330
|
this.bytesMaxReached ||
|
|
29956
30331
|
this.filesToUploadExceedsLimit ||
|
|
29957
|
-
this.filesToUploadTotalSizeIsAboveMax) && (hAsync(Fragment, { key: '
|
|
30332
|
+
this.filesToUploadTotalSizeIsAboveMax) && (hAsync(Fragment, { key: 'b63c5090df58fbeeb81d21c2962e2e4bf374475c' }, hAsync("duet-spacer", { key: '23665cef847c4e6a4b5f892a4fb680efb7a5ac3a', size: "medium" }), hAsync("duet-alert", { key: '05ac7cfb41b89c78833aef892eb63ace7cde0424', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && getI18nError("duet-upload-203", this.errorCodes)))), hAsync("duet-visually-hidden", { key: 'ce48b9cd57df20b21e7d1e6e82a6fb36ccfa0bb8', "aria-hidden": "true" }, hAsync("input", { key: '5c6545180d5327d5790327897478dacade1df102', ref: input => {
|
|
29958
30333
|
this.nativeInput = input;
|
|
29959
30334
|
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
29960
30335
|
"duet-upload": true,
|
|
@@ -30296,7 +30671,7 @@ class DuetUploadAriaStatus {
|
|
|
30296
30671
|
* Always the last one in the class.
|
|
30297
30672
|
*/
|
|
30298
30673
|
render() {
|
|
30299
|
-
return (hAsync(Host, { key: '
|
|
30674
|
+
return (hAsync(Host, { key: '9c5fda7baf87f2da5f17457f7cef35de49d7e9ba', role: "status", "aria-live": "assertive", "aria-atomic": "true", "aria-relevant": "all" }, hAsync("duet-visually-hidden", { key: '46fa9e08ae5a48ae3033846cb67e0c57f319d51e' }, this.statusMessage)));
|
|
30300
30675
|
}
|
|
30301
30676
|
get element() { return getElement(this); }
|
|
30302
30677
|
static get watchers() { return {
|
|
@@ -30476,9 +30851,9 @@ class DuetUploadItem {
|
|
|
30476
30851
|
const { uid, meta, item } = this.data;
|
|
30477
30852
|
const Badges = meta && meta.badges ? (hAsync("span", null, meta.badges.map(badgeText => (hAsync("duet-badge", { color: "primary" }, badgeText))))) : undefined;
|
|
30478
30853
|
const actionDescription = `${meta && meta.badges ? meta.badges.join(",") : ""} ${item.name}`;
|
|
30479
|
-
return (hAsync("div", { key: '
|
|
30854
|
+
return (hAsync("div", { key: '1e8a7b12404ac8539c77b5a1b93c062e3f586464', class: {
|
|
30480
30855
|
"upload-item-row": true,
|
|
30481
|
-
} }, this.showCategory && (hAsync("div", { key: '
|
|
30856
|
+
} }, this.showCategory && (hAsync("div", { key: '362a940d6d61fb4bceb8f994cc1fac5bc1d9d0fb', class: "item-categories" }, hAsync("duet-heading", { key: '57d3573e6094316e98327ff4ddf7782ff624e6bb', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.categoryLabel)), Badges)), hAsync("div", { key: '7e7bd71276e64ff416542e1ebf0db39659d863ef', class: { "item-name": true, "no-category": !this.showCategory } }, !!this.label && (hAsync("duet-heading", { key: '8647031137125b3d66db9ea1d29237eb9d4a782a', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.label))), this.getFileNameLine()), hAsync("div", { key: 'a5f5fd7dfe122082e97378b9cae8f0196a99b5e8', class: "item-actions" }, this.actions.map(actionItem => {
|
|
30482
30857
|
return (hAsync("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle: this.getActionButtonTitle(actionItem), ref: button => (this.actionButton = button) }));
|
|
30483
30858
|
}))));
|
|
30484
30859
|
}
|
|
@@ -30518,7 +30893,7 @@ class DuetVisuallyHidden {
|
|
|
30518
30893
|
* Always the last one in the class.
|
|
30519
30894
|
*/
|
|
30520
30895
|
render() {
|
|
30521
|
-
return (hAsync(Host, { key: '
|
|
30896
|
+
return (hAsync(Host, { key: '29e733429b9aa2454e094a667e28c97eeb489d9e', class: "duet-visually-hidden" }, hAsync("slot", { key: '73596a3d050b4f00d6a3261070811062a91a2519' })));
|
|
30522
30897
|
}
|
|
30523
30898
|
get element() { return getElement(this); }
|
|
30524
30899
|
static get style() { return duetVisuallyHiddenCss; }
|
|
@@ -30623,6 +30998,7 @@ registerComponents([
|
|
|
30623
30998
|
DuetTab,
|
|
30624
30999
|
DuetTabGroup,
|
|
30625
31000
|
DuetTable,
|
|
31001
|
+
DuetTeaser,
|
|
30626
31002
|
DuetTextarea,
|
|
30627
31003
|
DuetToggle,
|
|
30628
31004
|
DuetToolbar,
|