@duetds/components 4.33.0 → 4.34.1
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 +487 -198
- package/lib/cjs/{dom-c850c8d7.js → dom-52a4f07a.js} +1 -1
- package/lib/cjs/duet-alert.cjs.entry.js +1 -1
- package/lib/cjs/duet-badge.cjs.entry.js +1 -1
- package/lib/cjs/duet-button_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
- package/lib/cjs/duet-card.cjs.entry.js +2 -2
- package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
- package/lib/cjs/duet-choice_2.cjs.entry.js +2 -3
- package/lib/cjs/duet-collapsible.cjs.entry.js +5 -453
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
- package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
- package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-editable-table-button.cjs.entry.js +96 -0
- package/lib/cjs/{duet-upload.cjs.entry.js → duet-editable-table_4.cjs.entry.js} +463 -32
- package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
- package/lib/cjs/duet-fieldset.cjs.entry.js +62 -0
- package/lib/cjs/duet-footer.cjs.entry.js +2 -2
- package/lib/cjs/duet-grid_2.cjs.entry.js +26 -3
- package/lib/cjs/duet-header_2.cjs.entry.js +220 -47
- package/lib/cjs/duet-hero.cjs.entry.js +1 -1
- package/lib/cjs/duet-icon.cjs.entry.js +8 -6
- package/lib/cjs/duet-input_2.cjs.entry.js +3 -4
- package/lib/cjs/duet-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-list_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-modal.cjs.entry.js +2 -2
- package/lib/cjs/duet-notification_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
- package/lib/cjs/duet-progress.cjs.entry.js +1 -1
- package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
- package/lib/cjs/duet-select.cjs.entry.js +1 -1
- package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-tab_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
- package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
- package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
- package/lib/cjs/duet-tray.cjs.entry.js +1 -1
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +100 -0
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
- package/lib/cjs/duet.cjs.js +4 -4
- package/lib/cjs/{focus-utils-a7a1fb8b.js → focus-utils-30f5dc06.js} +1 -1
- package/lib/cjs/form-search-d61b2843.js +8 -0
- package/lib/cjs/{index-b724d698.js → index-1c10bbfb.js} +2 -2
- package/lib/cjs/loader.cjs.js +3 -3
- package/lib/cjs/{shadow-css-e3edeed1.js → shadow-css-e1b62a99.js} +1 -1
- package/lib/cjs/token-utils-05bd23b4.js +77 -0
- package/lib/cjs/tokens-8596cece.js +459 -0
- package/lib/collection/collection-manifest.json +11 -10
- package/lib/collection/components/duet-choice/duet-choice.js +0 -1
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +4 -1
- package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +13 -6
- package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +25 -3
- package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +3 -3
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +58 -2
- package/lib/collection/components/duet-footer/duet-footer.css +1 -0
- package/lib/collection/components/duet-grid/duet-grid.js +25 -2
- package/lib/collection/components/duet-header/duet-header-dropdown.js +27 -0
- package/lib/collection/components/duet-header/duet-header-hamburger.js +9 -0
- package/lib/collection/components/duet-header/duet-header-icon.js +9 -0
- package/lib/collection/components/duet-header/duet-header.css +272 -39
- package/lib/collection/components/duet-header/duet-header.js +316 -122
- package/lib/collection/components/duet-icon/duet-icon.js +11 -5
- package/lib/collection/components/duet-link/duet-link.js +4 -1
- package/lib/collection/components/duet-list-item/duet-list-item.css +1 -1
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +4 -3
- package/lib/collection/components/duet-table/duet-table.css +42 -17
- package/lib/collection/components/duet-table/duet-table.js +2 -2
- package/lib/collection/components/duet-upload/duet-upload.js +98 -51
- package/lib/collection/components/duet-upload/{duet-upload-editable-item-error.js → upload-editable-item-error.js} +0 -0
- package/lib/collection/components/duet-upload/{duet-upload-editable-item-inprogres.js → upload-editable-item-inprogres.js} +0 -0
- package/lib/collection/components/duet-upload/{duet-upload-editable-item-success.js → upload-editable-item-success.js} +0 -0
- package/lib/collection/components/duet-upload/{duet-upload-validators.js → upload-validators.js} +0 -0
- package/lib/collection/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.js +3 -3
- package/lib/collection/utils/template-utils.js +33 -0
- package/lib/collection/utils/token-utils.js +67 -14
- package/lib/custom-elements-bundle/index.js +468 -121
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/{p-060d79be.entry.js → p-08498e46.entry.js} +1 -1
- package/lib/duet/p-0bb75f62.system.entry.js +4 -0
- package/lib/duet/p-0d546cd6.system.entry.js +4 -0
- package/lib/duet/{p-263bc9cd.system.entry.js → p-1164a119.system.entry.js} +1 -1
- package/lib/duet/{p-a890da72.entry.js → p-13f72df0.entry.js} +1 -1
- package/lib/duet/{p-387823af.system.entry.js → p-15945ba7.system.entry.js} +1 -1
- package/lib/duet/{p-35a3794e.js → p-183726f7.js} +0 -0
- package/lib/duet/{p-7fee0d23.system.entry.js → p-1842a4db.system.entry.js} +1 -1
- package/lib/duet/{p-4607af59.entry.js → p-1a4204b7.entry.js} +1 -1
- package/lib/duet/{p-b4e87f02.system.entry.js → p-1d8d319c.system.entry.js} +1 -1
- package/lib/duet/{p-9dca5c22.system.entry.js → p-2b1707bd.system.entry.js} +1 -1
- package/lib/duet/{p-8b5ca0e7.system.entry.js → p-2c89e016.system.entry.js} +1 -1
- package/lib/duet/p-309f9094.entry.js +4 -0
- package/lib/duet/{p-67d9a9a9.system.entry.js → p-30f15c84.system.entry.js} +1 -1
- package/lib/duet/p-39cd816e.entry.js +4 -0
- package/lib/duet/{p-86daec1c.entry.js → p-3d47d6d4.entry.js} +1 -1
- package/lib/duet/{p-d744d188.system.entry.js → p-3e9fe1c7.system.entry.js} +1 -1
- package/lib/duet/{p-a9859a82.entry.js → p-3ff50cee.entry.js} +1 -1
- package/lib/duet/{p-b42d81c3.system.js → p-41938e76.system.js} +1 -1
- package/lib/duet/p-420c000b.entry.js +4 -0
- package/lib/duet/{p-cdd70b93.entry.js → p-477c6c71.entry.js} +1 -1
- package/lib/duet/p-478d2995.entry.js +4 -0
- package/lib/duet/p-4b400f7d.system.entry.js +4 -0
- package/lib/duet/p-4b480fdc.entry.js +4 -0
- package/lib/duet/p-50b4fb2c.js +4 -0
- package/lib/duet/{p-987edcd0.js → p-52621211.js} +0 -0
- package/lib/duet/{p-94169303.entry.js → p-545dcb04.entry.js} +1 -1
- package/lib/duet/{p-8f826843.system.entry.js → p-571015b8.system.entry.js} +1 -1
- package/lib/duet/{p-9481e312.entry.js → p-580c57ea.entry.js} +1 -1
- package/lib/duet/{p-2bb1460c.entry.js → p-5cf1d847.entry.js} +1 -1
- package/lib/duet/{p-c2e77278.entry.js → p-5d2ddf99.entry.js} +1 -1
- package/lib/duet/{p-af41d894.system.entry.js → p-5db0676e.system.entry.js} +1 -1
- package/lib/duet/p-603a61dc.system.entry.js +4 -0
- package/lib/duet/{p-aba68b7b.entry.js → p-6b1b2655.entry.js} +1 -1
- package/lib/duet/{p-597d99c7.entry.js → p-6bb9a991.entry.js} +1 -1
- package/lib/duet/p-6dc026cf.system.entry.js +4 -0
- package/lib/duet/{p-c18a599e.system.js → p-6e4fd6ba.system.js} +0 -0
- package/lib/duet/p-71261eb7.entry.js +4 -0
- package/lib/duet/{p-751542a0.system.entry.js → p-71a94fb9.system.entry.js} +1 -1
- package/lib/duet/{p-e12f2b8b.system.js → p-76b98e4d.system.js} +1 -1
- package/lib/duet/{p-f8ce39fb.entry.js → p-80d40375.entry.js} +1 -1
- package/lib/duet/{p-548d484e.js → p-80f90fef.js} +1 -1
- package/lib/duet/p-8143f3de.js +4 -0
- package/lib/duet/{p-bf93a991.entry.js → p-87703af9.entry.js} +1 -1
- package/lib/duet/p-8ad673ef.entry.js +4 -0
- package/lib/duet/{p-d4118b6e.system.entry.js → p-8adcc2f9.system.entry.js} +1 -1
- package/lib/duet/{p-4a87e9ab.system.entry.js → p-8e478364.system.entry.js} +1 -1
- package/lib/duet/p-8f477bd6.system.js +4 -0
- package/lib/duet/{p-00735436.entry.js → p-8fcaeb1b.entry.js} +1 -1
- package/lib/duet/p-93a51797.entry.js +4 -0
- package/lib/duet/{p-a5b9c192.system.entry.js → p-95edfcb8.system.entry.js} +1 -1
- package/lib/duet/p-97dc72c2.system.entry.js +4 -0
- package/lib/duet/p-99cd16d8.system.entry.js +4 -0
- package/lib/duet/{p-e964d062.entry.js → p-9c3b48fc.entry.js} +1 -1
- package/lib/duet/{p-5826523b.entry.js → p-9dad09a8.entry.js} +1 -1
- package/lib/duet/{p-8cb7416d.entry.js → p-9db71699.entry.js} +1 -1
- package/lib/duet/{p-b32224fe.system.entry.js → p-a0129887.system.entry.js} +1 -1
- package/lib/duet/p-a16a58c1.system.js +4 -0
- package/lib/duet/{p-2443bdca.system.entry.js → p-a4c0ce83.system.entry.js} +1 -1
- package/lib/duet/{p-48d1eb1f.system.entry.js → p-a9dc4dd9.system.entry.js} +1 -1
- package/lib/duet/p-aa5ba0fd.entry.js +4 -0
- package/lib/duet/{p-d3a3c3c7.system.entry.js → p-af7685aa.system.entry.js} +1 -1
- package/lib/duet/{p-6e6e76db.system.entry.js → p-b061516e.system.entry.js} +1 -1
- package/lib/duet/{p-58750bae.system.entry.js → p-b1401fd8.system.entry.js} +1 -1
- package/lib/duet/{p-b3744481.entry.js → p-b71cbe4b.entry.js} +1 -1
- package/lib/duet/p-c0472744.system.entry.js +4 -0
- package/lib/duet/{p-27d80cef.system.entry.js → p-c04ca724.system.entry.js} +1 -1
- package/lib/duet/{p-e2a44156.js → p-c33d1202.js} +1 -1
- package/lib/duet/{p-374fb7e6.system.entry.js → p-c85583d4.system.entry.js} +1 -1
- package/lib/duet/{p-aef1b720.system.entry.js → p-ca2b3f6a.system.entry.js} +1 -1
- package/lib/duet/{p-3af5d66f.entry.js → p-ca68c8f0.entry.js} +1 -1
- package/lib/duet/{p-acc57c77.entry.js → p-cecdebf3.entry.js} +1 -1
- package/lib/duet/p-d004da5f.js +4 -0
- package/lib/duet/{p-984576c9.entry.js → p-d1d6dc7a.entry.js} +1 -1
- package/lib/duet/{p-794659ac.entry.js → p-d9a93e45.entry.js} +1 -1
- package/lib/duet/{p-d1c19f04.system.entry.js → p-dc27e127.system.entry.js} +1 -1
- package/lib/duet/p-df37c5cd.entry.js +4 -0
- package/lib/duet/{p-6a19b5ec.entry.js → p-e10f1828.entry.js} +1 -1
- package/lib/duet/{p-a207b008.entry.js → p-e5120c30.entry.js} +1 -1
- package/lib/duet/p-e54705b2.system.js +4 -0
- package/lib/duet/{p-0d22396e.system.js → p-e5c1751e.system.js} +0 -0
- package/lib/duet/{p-dfe79666.system.entry.js → p-f1c7f166.system.entry.js} +2 -2
- package/lib/duet/p-f1dbb4ec.entry.js +4 -0
- package/lib/duet/{p-aee24388.system.entry.js → p-f3cd9499.system.entry.js} +1 -1
- package/lib/duet/{p-4b6ebe40.system.entry.js → p-f55ea1cc.system.entry.js} +1 -1
- package/lib/duet/{p-e76b722f.entry.js → p-f7700f25.entry.js} +1 -1
- package/lib/duet/p-fa99eaa4.system.js +4 -0
- package/lib/duet/{p-c36b4da0.entry.js → p-fd009368.entry.js} +1 -1
- package/lib/duet/{p-237e47b4.system.entry.js → p-fe1a2f0d.system.entry.js} +1 -1
- package/lib/duet/p-fe3806e2.system.entry.js +4 -0
- package/lib/duet/{p-4e28da18.system.entry.js → p-ffcfbd7a.system.entry.js} +1 -1
- package/lib/esm/{dom-58cd15f6.js → dom-5d060ace.js} +1 -1
- package/lib/esm/duet-alert.entry.js +1 -1
- package/lib/esm/duet-badge.entry.js +1 -1
- package/lib/esm/duet-button_2.entry.js +2 -2
- package/lib/esm/duet-caption_4.entry.js +3 -3
- package/lib/esm/duet-card.entry.js +2 -2
- package/lib/esm/duet-checkbox.entry.js +1 -1
- package/lib/esm/duet-choice_2.entry.js +2 -3
- package/lib/esm/duet-collapsible.entry.js +4 -452
- package/lib/esm/duet-cookie-consent.entry.js +1 -1
- package/lib/esm/duet-date-picker.entry.js +2 -2
- package/lib/esm/duet-divider_2.entry.js +1 -1
- package/lib/esm/duet-editable-table-button.entry.js +92 -0
- package/lib/esm/{duet-upload.entry.js → duet-editable-table_4.entry.js} +461 -33
- package/lib/esm/duet-empty-state.entry.js +1 -1
- package/lib/esm/duet-fieldset.entry.js +58 -0
- package/lib/esm/duet-footer.entry.js +2 -2
- package/lib/esm/duet-grid_2.entry.js +26 -3
- package/lib/esm/duet-header_2.entry.js +220 -47
- package/lib/esm/duet-hero.entry.js +1 -1
- package/lib/esm/duet-icon.entry.js +8 -6
- package/lib/esm/duet-input_2.entry.js +2 -3
- package/lib/esm/duet-layout.entry.js +1 -1
- package/lib/esm/duet-list_2.entry.js +2 -2
- package/lib/esm/duet-modal.entry.js +2 -2
- package/lib/esm/duet-notification_2.entry.js +2 -2
- package/lib/esm/duet-number-input.entry.js +1 -1
- package/lib/esm/duet-progress.entry.js +1 -1
- package/lib/esm/duet-radio_2.entry.js +1 -1
- package/lib/esm/duet-range-slider.entry.js +1 -1
- package/lib/esm/duet-select.entry.js +1 -1
- package/lib/esm/duet-step_2.entry.js +1 -1
- package/lib/esm/duet-tab_2.entry.js +1 -1
- package/lib/esm/duet-textarea.entry.js +1 -1
- package/lib/esm/duet-toggle.entry.js +1 -1
- package/lib/esm/duet-tooltip.entry.js +1 -1
- package/lib/esm/duet-tray.entry.js +1 -1
- package/lib/esm/duet-upload-aria-status.entry.js +96 -0
- package/lib/esm/duet-visually-hidden.entry.js +1 -1
- package/lib/esm/duet.js +4 -4
- package/lib/esm/{focus-utils-1fe0dcd0.js → focus-utils-bf7d1e80.js} +1 -1
- package/lib/esm/form-search-ea8e19ae.js +6 -0
- package/lib/esm/{index-84d97bd1.js → index-f813a624.js} +2 -2
- package/lib/esm/loader.js +3 -3
- package/lib/esm/{shadow-css-7c726abb.js → shadow-css-13d024f4.js} +1 -1
- package/lib/esm/token-utils-75f78ca4.js +75 -0
- package/lib/esm/tokens-e110dc89.js +453 -0
- package/lib/esm-es5/{dom-58cd15f6.js → dom-5d060ace.js} +0 -0
- package/lib/esm-es5/duet-alert.entry.js +1 -1
- package/lib/esm-es5/duet-badge.entry.js +1 -1
- package/lib/esm-es5/duet-button_2.entry.js +1 -1
- package/lib/esm-es5/duet-caption_4.entry.js +1 -1
- package/lib/esm-es5/duet-card.entry.js +1 -1
- package/lib/esm-es5/duet-checkbox.entry.js +1 -1
- package/lib/esm-es5/duet-choice_2.entry.js +1 -1
- package/lib/esm-es5/duet-collapsible.entry.js +2 -2
- package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
- package/lib/esm-es5/duet-date-picker.entry.js +1 -1
- package/lib/esm-es5/duet-divider_2.entry.js +1 -1
- package/lib/esm-es5/duet-editable-table-button.entry.js +4 -0
- package/lib/esm-es5/duet-editable-table_4.entry.js +4 -0
- package/lib/esm-es5/duet-empty-state.entry.js +1 -1
- package/lib/esm-es5/duet-fieldset.entry.js +4 -0
- package/lib/esm-es5/duet-footer.entry.js +1 -1
- package/lib/esm-es5/duet-grid_2.entry.js +2 -2
- package/lib/esm-es5/duet-header_2.entry.js +2 -2
- package/lib/esm-es5/duet-hero.entry.js +1 -1
- package/lib/esm-es5/duet-icon.entry.js +1 -1
- package/lib/esm-es5/duet-input_2.entry.js +1 -1
- package/lib/esm-es5/duet-layout.entry.js +1 -1
- package/lib/esm-es5/duet-list_2.entry.js +1 -1
- package/lib/esm-es5/duet-modal.entry.js +1 -1
- package/lib/esm-es5/duet-notification_2.entry.js +1 -1
- package/lib/esm-es5/duet-number-input.entry.js +1 -1
- package/lib/esm-es5/duet-progress.entry.js +1 -1
- package/lib/esm-es5/duet-radio_2.entry.js +1 -1
- package/lib/esm-es5/duet-range-slider.entry.js +1 -1
- package/lib/esm-es5/duet-select.entry.js +1 -1
- package/lib/esm-es5/duet-step_2.entry.js +1 -1
- package/lib/esm-es5/duet-tab_2.entry.js +1 -1
- package/lib/esm-es5/duet-textarea.entry.js +1 -1
- package/lib/esm-es5/duet-toggle.entry.js +1 -1
- package/lib/esm-es5/duet-tooltip.entry.js +1 -1
- package/lib/esm-es5/duet-tray.entry.js +1 -1
- package/lib/esm-es5/duet-upload-aria-status.entry.js +4 -0
- package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
- package/lib/esm-es5/duet.js +1 -1
- package/lib/esm-es5/{focus-utils-1fe0dcd0.js → focus-utils-bf7d1e80.js} +1 -1
- package/lib/esm-es5/form-search-ea8e19ae.js +4 -0
- package/lib/esm-es5/{index-84d97bd1.js → index-f813a624.js} +1 -1
- package/lib/esm-es5/loader.js +1 -1
- package/lib/esm-es5/{shadow-css-7c726abb.js → shadow-css-13d024f4.js} +0 -0
- package/lib/esm-es5/token-utils-75f78ca4.js +4 -0
- package/lib/esm-es5/tokens-e110dc89.js +4 -0
- package/lib/html.html-data.json +4925 -0
- package/lib/types/common-types.d.ts +0 -1
- package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +3 -0
- package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +1 -0
- package/lib/types/components/duet-editable-table/duet-editable-table-item.d.ts +5 -1
- package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +1 -0
- package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +10 -0
- package/lib/types/components/duet-grid/duet-grid.d.ts +1 -0
- package/lib/types/components/duet-header/duet-header-dropdown.d.ts +16 -0
- package/lib/types/components/duet-header/duet-header-hamburger.d.ts +2 -0
- package/lib/types/components/duet-header/duet-header-icon.d.ts +8 -0
- package/lib/types/components/duet-header/duet-header.d.ts +41 -4
- package/lib/types/components/duet-icon/duet-icon.d.ts +1 -1
- package/lib/types/components/duet-link/duet-link.d.ts +3 -0
- package/lib/types/components/duet-table/duet-table.d.ts +1 -1
- package/lib/types/components/duet-upload/duet-upload.d.ts +46 -18
- package/lib/types/components/duet-upload/{duet-upload-editable-item-error.d.ts → upload-editable-item-error.d.ts} +0 -0
- package/lib/types/components/duet-upload/{duet-upload-editable-item-inprogres.d.ts → upload-editable-item-inprogres.d.ts} +0 -0
- package/lib/types/components/duet-upload/{duet-upload-editable-item-success.d.ts → upload-editable-item-success.d.ts} +0 -0
- package/lib/types/components/duet-upload/{duet-upload-validators.d.ts → upload-validators.d.ts} +0 -0
- package/lib/types/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.d.ts +2 -2
- package/lib/types/components.d.ts +71 -35
- package/lib/types/stencil-public-runtime.d.ts +6 -4
- package/lib/types/utils/template-utils.d.ts +13 -0
- package/lib/types/utils/token-utils.d.ts +8 -2
- package/package.json +13 -13
- package/lib/cjs/duet-editable-table-button_3.cjs.entry.js +0 -232
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +0 -336
- package/lib/cjs/js-utils-33a9dbe3.js +0 -16
- package/lib/cjs/token-utils-63a9c8dc.js +0 -30
- package/lib/duet/p-10deead0.system.js +0 -4
- package/lib/duet/p-1208c84f.entry.js +0 -4
- package/lib/duet/p-155ef581.system.entry.js +0 -4
- package/lib/duet/p-16c48c5d.entry.js +0 -4
- package/lib/duet/p-1797df7b.system.entry.js +0 -4
- package/lib/duet/p-1a08fc22.system.entry.js +0 -4
- package/lib/duet/p-28e02c08.entry.js +0 -4
- package/lib/duet/p-33c58756.entry.js +0 -4
- package/lib/duet/p-3c1971d8.js +0 -4
- package/lib/duet/p-5ea0cd19.entry.js +0 -4
- package/lib/duet/p-63d5bf73.system.entry.js +0 -4
- package/lib/duet/p-6cc3be76.system.entry.js +0 -4
- package/lib/duet/p-6e363557.system.js +0 -4
- package/lib/duet/p-7368b14e.system.entry.js +0 -4
- package/lib/duet/p-7e8d5bb9.system.entry.js +0 -4
- package/lib/duet/p-81867417.system.js +0 -4
- package/lib/duet/p-9d73343a.entry.js +0 -4
- package/lib/duet/p-a6a84ec6.entry.js +0 -4
- package/lib/duet/p-b25d3769.js +0 -4
- package/lib/duet/p-c34329f3.entry.js +0 -4
- package/lib/duet/p-de07c7d7.entry.js +0 -4
- package/lib/duet/p-f0a4b68d.system.entry.js +0 -4
- package/lib/duet/p-f364eb96.entry.js +0 -4
- package/lib/esm/duet-editable-table-button_3.entry.js +0 -226
- package/lib/esm/duet-editable-table_3.entry.js +0 -330
- package/lib/esm/js-utils-b69f17df.js +0 -14
- package/lib/esm/token-utils-590d9413.js +0 -28
- package/lib/esm-es5/duet-editable-table-button_3.entry.js +0 -4
- package/lib/esm-es5/duet-editable-table_3.entry.js +0 -4
- package/lib/esm-es5/duet-upload.entry.js +0 -4
- package/lib/esm-es5/js-utils-b69f17df.js +0 -4
- package/lib/esm-es5/token-utils-590d9413.js +0 -4
package/hydrate/index.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
7
|
|
|
8
8
|
/*!
|
|
9
|
-
Stencil Mock Doc v2.
|
|
9
|
+
Stencil Mock Doc v2.12.1 | MIT Licensed | https://stenciljs.com
|
|
10
10
|
*/
|
|
11
11
|
const CONTENT_REF_ID = 'r';
|
|
12
12
|
const ORG_LOCATION_ID = 'o';
|
|
@@ -551,7 +551,7 @@ class MockCSSStyleDeclaration {
|
|
|
551
551
|
const splt = rule.split(':');
|
|
552
552
|
if (splt.length > 1) {
|
|
553
553
|
const prop = splt[0].trim();
|
|
554
|
-
const value = splt
|
|
554
|
+
const value = splt.slice(1).join(':').trim();
|
|
555
555
|
if (prop !== '' && value !== '') {
|
|
556
556
|
this._styles.set(jsCaseToCssCase(prop), value);
|
|
557
557
|
}
|
|
@@ -1514,6 +1514,9 @@ class MockNode {
|
|
|
1514
1514
|
return null;
|
|
1515
1515
|
}
|
|
1516
1516
|
contains(otherNode) {
|
|
1517
|
+
if (otherNode === this) {
|
|
1518
|
+
return true;
|
|
1519
|
+
}
|
|
1517
1520
|
return this.childNodes.includes(otherNode);
|
|
1518
1521
|
}
|
|
1519
1522
|
removeChild(childNode) {
|
|
@@ -4702,7 +4705,6 @@ function hydrateFactory($stencilWindow, $stencilHydrateOpts, $stencilHydrateResu
|
|
|
4702
4705
|
|
|
4703
4706
|
const NAMESPACE = 'duet';
|
|
4704
4707
|
const BUILD = /* duet */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: false, cssAnnotations: true, cssVarShim: false, devTools: false, disconnectedCallback: true, dynamicImportShim: false, element: false, event: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: true, hydratedAttribute: false, hydratedClass: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, safari10: false, scoped: true, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, shadowDomShim: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
|
|
4705
|
-
const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.2.3"};
|
|
4706
4708
|
|
|
4707
4709
|
const TAB_KEY = 9;
|
|
4708
4710
|
var appGlobalScript = () => {
|
|
@@ -6151,26 +6153,73 @@ var tokens$2 = /*#__PURE__*/Object.freeze({
|
|
|
6151
6153
|
mediaQueryXxxLarge: mediaQueryXxxLarge
|
|
6152
6154
|
});
|
|
6153
6155
|
|
|
6154
|
-
const
|
|
6155
|
-
function
|
|
6156
|
-
|
|
6156
|
+
const allowedThemes = ["turva"];
|
|
6157
|
+
function isDashCase(str) {
|
|
6158
|
+
const dash = str.includes("-");
|
|
6159
|
+
const barredString = str.includes(" ") || str.includes("_");
|
|
6160
|
+
const barredStartingString = str.charAt(0) === "-";
|
|
6161
|
+
return dash && !barredString && !barredStartingString;
|
|
6162
|
+
}
|
|
6163
|
+
function capitalize(str = "") {
|
|
6164
|
+
return `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
6157
6165
|
}
|
|
6158
|
-
function
|
|
6159
|
-
return
|
|
6166
|
+
function lowerCaseFirst(str = "") {
|
|
6167
|
+
return `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
6160
6168
|
}
|
|
6161
|
-
function
|
|
6162
|
-
|
|
6163
|
-
|
|
6169
|
+
function camelize(str = "") {
|
|
6170
|
+
const arr = str.split("-");
|
|
6171
|
+
//loop through each element of the array and capitalize the first letter.'
|
|
6172
|
+
arr.forEach((string, index) => {
|
|
6173
|
+
arr[index] = capitalize(string);
|
|
6174
|
+
});
|
|
6175
|
+
return arr.join("");
|
|
6176
|
+
}
|
|
6177
|
+
function getTheme(theme = "") {
|
|
6178
|
+
if (allowedThemes.includes(theme.toLowerCase())) {
|
|
6179
|
+
return theme.toLowerCase();
|
|
6164
6180
|
}
|
|
6165
|
-
|
|
6166
|
-
|
|
6181
|
+
return "";
|
|
6182
|
+
}
|
|
6183
|
+
function hasColor(str = "") {
|
|
6184
|
+
return str.indexOf("Color") === 0 || str.indexOf("color") === 0;
|
|
6185
|
+
}
|
|
6186
|
+
function addColor(str = "") {
|
|
6187
|
+
if (str && !isDashCase(str) && !hasColor(str)) {
|
|
6188
|
+
return `color${capitalize(str)}`;
|
|
6167
6189
|
}
|
|
6168
|
-
return
|
|
6190
|
+
return str;
|
|
6169
6191
|
}
|
|
6170
|
-
function
|
|
6171
|
-
|
|
6172
|
-
|
|
6192
|
+
function addTheme(str, theme) {
|
|
6193
|
+
const hasTheme = getTheme(theme).length;
|
|
6194
|
+
if (hasTheme && str.indexOf(theme) === -1) {
|
|
6195
|
+
return `${str}${capitalize(theme)}`;
|
|
6173
6196
|
}
|
|
6197
|
+
return str;
|
|
6198
|
+
}
|
|
6199
|
+
function getColorByName(name, theme = "") {
|
|
6200
|
+
if (!name) {
|
|
6201
|
+
return undefined;
|
|
6202
|
+
}
|
|
6203
|
+
const defaultColor = convertToColorName(name);
|
|
6204
|
+
const themedColor = convertToColorName(name, theme);
|
|
6205
|
+
// lets just try to get the color first to save some cycles
|
|
6206
|
+
let resolvedToken = tokens$2[themedColor];
|
|
6207
|
+
if (!resolvedToken) {
|
|
6208
|
+
resolvedToken = tokens$2[defaultColor];
|
|
6209
|
+
}
|
|
6210
|
+
return resolvedToken;
|
|
6211
|
+
}
|
|
6212
|
+
function convertToColorName(name = "", theme = "") {
|
|
6213
|
+
let colorResolution = name;
|
|
6214
|
+
const dash = isDashCase(name);
|
|
6215
|
+
if (dash) {
|
|
6216
|
+
colorResolution = camelize(colorResolution);
|
|
6217
|
+
}
|
|
6218
|
+
colorResolution = addColor(colorResolution);
|
|
6219
|
+
colorResolution = addTheme(colorResolution, theme);
|
|
6220
|
+
// takes care of the case where colorPrimaryDark ends up with ColorPrimaryDark
|
|
6221
|
+
colorResolution = lowerCaseFirst(colorResolution);
|
|
6222
|
+
return colorResolution;
|
|
6174
6223
|
}
|
|
6175
6224
|
|
|
6176
6225
|
const duetButtonCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-button,*.sc-duet-button::after,*.sc-duet-button::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-button-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}/*!@:host:last-child, :host:last-of-type*/.sc-duet-button-h:last-child,.sc-duet-button-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){/*!@:host*/.sc-duet-button-h{width:100%}}/*!@:host(.duet-small)*/.duet-small.sc-duet-button-h{margin-right:2px !important;margin-bottom:8px !important}/*!@:host(.duet-small):last-child, :host(.duet-small):last-of-type*/.duet-small.sc-duet-button-h:last-child,.duet-small.sc-duet-button-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){/*!@:host(.duet-small)*/.duet-small.sc-duet-button-h{width:auto}}/*!@:host(.duet-expand)*/.duet-expand.sc-duet-button-h{width:100% !important}/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-button-h{margin:0 !important}/*!@:host(.duet-fixed)*/.duet-fixed.sc-duet-button-h{width:auto !important}/*!@:host(:last-child)*/.sc-duet-button-h:last-child{margin-right:0 !important}/*!@.duet-button-container*/.duet-button-container.sc-duet-button{position:relative;width:100%}/*!@.duet-button*/.duet-button.sc-duet-button{padding:14px 27px 15px !important;-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:block;width:100%;min-width:8rem;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;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:#0077b3 !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:2px;border-radius:20rem;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, box-shadow 300ms ease}/*!@.duet-button.duet-p-0*/.duet-button.duet-p-0.sc-duet-button{padding:0 !important}/*!@.duet-button.duet-m-0*/.duet-button.duet-m-0.sc-duet-button{margin:0 !important}/*!@.duet-button.duet-button-is-small:not(.duet-button-icon-only)*/.duet-button.duet-button-is-small.sc-duet-button:not(.duet-button-icon-only){padding:9px 19px 10px !important;min-width:5.3333333333rem;font-size:0.875rem}/*!@.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon*/.duet-button.duet-button-is-small.sc-duet-button:not(.duet-button-icon-only).icon{padding-left:48px !important}/*!@.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon-right*/.duet-button.duet-button-is-small.sc-duet-button:not(.duet-button-icon-only).icon-right{padding-right:48px !important;padding-left:20px !important}/*!@.duet-theme-turva .duet-button*/.duet-theme-turva.sc-duet-button .duet-button.sc-duet-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#c60c30 !important}/*!@.duet-button .duet-button-contents*/.duet-button.sc-duet-button .duet-button-contents.sc-duet-button{position:relative;display:inline-block;margin:0 auto;pointer-events:none}/*!@.duet-button.duet-no-wrap*/.duet-button.duet-no-wrap.sc-duet-button{white-space:nowrap}/*!@.duet-button.icon*/.duet-button.icon.sc-duet-button{padding-left:52px !important}/*!@.duet-button.icon-right*/.duet-button.icon-right.sc-duet-button{padding-right:52px !important;padding-left:28px !important}/*!@.duet-button svg*/.duet-button.sc-duet-button svg.sc-duet-button{width:100%;min-width:100%;fill:currentColor}/*!@.duet-button .duet-button-icon*/.duet-button.sc-duet-button .duet-button-icon.sc-duet-button{position:absolute;top:50%;left:-28px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin:0 !important;transform:translateY(-50%)}/*!@.duet-button .duet-button-icon duet-icon*/.duet-button.sc-duet-button .duet-button-icon.sc-duet-button duet-icon.sc-duet-button{width:16px;height:16px}/*!@.duet-button .duet-button-icon.right*/.duet-button.sc-duet-button .duet-button-icon.right.sc-duet-button{right:-28px;left:auto}/*!@.duet-button .duet-button-icon.large*/.duet-button.sc-duet-button .duet-button-icon.large.sc-duet-button{left:-32px;width:20px;height:20px}/*!@.duet-button .duet-button-icon.large duet-icon*/.duet-button.sc-duet-button .duet-button-icon.large.sc-duet-button duet-icon.sc-duet-button{width:20px;height:20px}/*!@.duet-button .duet-button-icon.large.right*/.duet-button.sc-duet-button .duet-button-icon.large.right.sc-duet-button{right:-32px;left:auto}/*!@.duet-button .duet-button-icon.medium-small*/.duet-button.sc-duet-button .duet-button-icon.medium-small.sc-duet-button{left:-16px;width:10px;height:10px;padding-top:1px}/*!@.duet-button .duet-button-icon.medium-small duet-icon*/.duet-button.sc-duet-button .duet-button-icon.medium-small.sc-duet-button duet-icon.sc-duet-button{width:10px;height:10px}/*!@.duet-button .duet-button-icon.medium-small.right*/.duet-button.sc-duet-button .duet-button-icon.medium-small.right.sc-duet-button{right:-16px;left:auto}/*!@.duet-button .duet-button-icon.small*/.duet-button.sc-duet-button .duet-button-icon.small.sc-duet-button{left:-16px;width:7px;height:7px}/*!@.duet-button .duet-button-icon.small duet-icon*/.duet-button.sc-duet-button .duet-button-icon.small.sc-duet-button duet-icon.sc-duet-button{width:7px;height:7px}/*!@.duet-button .duet-button-icon.small.right*/.duet-button.sc-duet-button .duet-button-icon.small.right.sc-duet-button{right:-16px;left:auto}/*!@.duet-button:focus*/.duet-button.sc-duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-button:focus*/.duet-theme-turva.sc-duet-button .duet-button.sc-duet-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-button:active*/.duet-button.sc-duet-button:active{opacity:0.75;transition:none}/*!@.duet-button.default*/.duet-button.default.sc-duet-button{border-color:#e1e3e6}/*!@.duet-theme-turva .duet-button.default*/.duet-theme-turva.sc-duet-button .duet-button.default.sc-duet-button{color:#c60c30 !important;border-color:#e4e4e6}/*!@.duet-button.default:hover*/.duet-button.default.sc-duet-button:hover{border-color:#0077b3}/*!@.duet-theme-turva .duet-button.default:hover*/.duet-theme-turva.sc-duet-button .duet-button.default.sc-duet-button:hover{border-color:#c60c30}/*!@.duet-button.default.duet-button-negative*/.duet-button.default.duet-button-negative.sc-duet-button{background-color:white}/*!@.duet-theme-turva .duet-button.default.duet-button-negative*/.duet-theme-turva.sc-duet-button .duet-button.default.duet-button-negative.sc-duet-button{background-color:#e4e4e6 !important}/*!@.duet-button.default.duet-button-negative:hover*/.duet-button.default.duet-button-negative.sc-duet-button:hover{color:#0077b3 !important;border-color:#0077b3}/*!@.duet-theme-turva .duet-button.default.duet-button-negative:hover*/.duet-theme-turva.sc-duet-button .duet-button.default.duet-button-negative.sc-duet-button:hover{color:#c60c30 !important;border-color:#c60c30}/*!@.duet-button.primary*/.duet-button.primary.sc-duet-button{color:white !important;background:#0077b3;border-color:#0077b3}/*!@.duet-theme-turva .duet-button.primary*/.duet-theme-turva.sc-duet-button .duet-button.primary.sc-duet-button{color:white !important;background:#c60c30;border-color:#c60c30}/*!@.duet-button.primary:hover*/.duet-button.primary.sc-duet-button:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}/*!@.duet-theme-turva .duet-button.primary:hover*/.duet-theme-turva.sc-duet-button .duet-button.primary.sc-duet-button:hover{background:#940925;border-color:#940925}/*!@.duet-button.primary:focus*/.duet-button.primary.sc-duet-button:focus{outline:0;box-shadow:0 0 0 1px white, 0 0 0 4px rgba(0, 119, 179, 0.75)}/*!@.duet-theme-turva .duet-button.primary:focus*/.duet-theme-turva.sc-duet-button .duet-button.primary.sc-duet-button:focus{box-shadow:0 0 0 1px white, 0 0 0 4px rgba(23, 28, 58, 0.7)}/*!@.duet-button.secondary*/.duet-button.secondary.sc-duet-button{color:#00294d !important;background:transparent;border-color:#00294d}/*!@.duet-theme-turva .duet-button.secondary*/.duet-theme-turva.sc-duet-button .duet-button.secondary.sc-duet-button{color:#171c3a !important;border-color:#171c3a}/*!@.duet-button.secondary:hover*/.duet-button.secondary.sc-duet-button:hover{color:#0077b3 !important;border-color:#0077b3}/*!@.duet-theme-turva .duet-button.secondary:hover*/.duet-theme-turva.sc-duet-button .duet-button.secondary.sc-duet-button:hover{color:#c60c30 !important;border-color:#c60c30}/*!@.duet-button.secondary.duet-button-negative*/.duet-button.secondary.duet-button-negative.sc-duet-button{color:#e1e3e6 !important;border-color:white}/*!@.duet-theme-turva .duet-button.secondary.duet-button-negative*/.duet-theme-turva.sc-duet-button .duet-button.secondary.duet-button-negative.sc-duet-button{color:#e4e4e6 !important}/*!@.duet-button.secondary.duet-button-negative:hover*/.duet-button.secondary.duet-button-negative.sc-duet-button:hover{color:#0077b3 !important;border-color:#0077b3}/*!@.duet-theme-turva .duet-button.secondary.duet-button-negative:hover*/.duet-theme-turva.sc-duet-button .duet-button.secondary.duet-button-negative.sc-duet-button:hover{color:#c60c30 !important;border-color:#c60c30}/*!@.duet-button.negative*/.duet-button.negative.sc-duet-button{color:#00294d !important;background:white;border-color:white}/*!@.duet-theme-turva .duet-button.negative*/.duet-theme-turva.sc-duet-button .duet-button.negative.sc-duet-button{color:#171c3a !important}/*!@.duet-button.negative:hover*/.duet-button.negative.sc-duet-button:hover{color:white !important;background:transparent;border-color:white}/*!@.duet-button.negative:focus*/.duet-button.negative.sc-duet-button:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}/*!@.duet-theme-turva .duet-button.negative:focus*/.duet-theme-turva.sc-duet-button .duet-button.negative.sc-duet-button:focus{box-shadow:0 0 0 1px #171c3a, 0 0 0 4px rgba(255, 255, 255, 0.7)}/*!@.duet-button.destructive*/.duet-button.destructive.sc-duet-button{color:#de2362 !important;background:white;border-color:#de2362}/*!@.duet-theme-turva .duet-button.destructive*/.duet-theme-turva.sc-duet-button .duet-button.destructive.sc-duet-button{color:#e02a0d !important;background:white;border-color:#e02a0d}/*!@.duet-button.destructive:hover*/.duet-button.destructive.sc-duet-button:hover{color:white !important;background:#b21c4e;border-color:#b21c4e}/*!@.duet-theme-turva .duet-button.destructive:hover*/.duet-theme-turva.sc-duet-button .duet-button.destructive.sc-duet-button:hover{color:white !important;background:#b3220a;border-color:#b3220a}/*!@.duet-button.plain*/.duet-button.plain.sc-duet-button{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}/*!@.duet-theme-turva .duet-button.plain*/.duet-theme-turva.sc-duet-button .duet-button.plain.sc-duet-button{color:#c60c30 !important;background:transparent;border-color:transparent}/*!@.duet-button.plain.icon*/.duet-button.plain.icon.sc-duet-button{padding-left:20px !important}/*!@.duet-button.plain.icon.icon-right*/.duet-button.plain.icon.icon-right.sc-duet-button{padding-right:20px !important;padding-left:0 !important}/*!@.duet-button.plain.icon.medium*/.duet-button.plain.icon.medium.sc-duet-button{padding-left:24px !important}/*!@.duet-button.plain.icon.medium.icon-right*/.duet-button.plain.icon.medium.icon-right.sc-duet-button{padding-right:24px !important;padding-left:0 !important}/*!@.duet-button.plain.icon.large*/.duet-button.plain.icon.large.sc-duet-button{padding-left:30px !important}/*!@.duet-button.plain.icon.large.icon-right*/.duet-button.plain.icon.large.icon-right.sc-duet-button{padding-right:30px !important;padding-left:0 !important}/*!@.duet-button.plain .duet-button-icon.left*/.duet-button.plain.sc-duet-button .duet-button-icon.left.sc-duet-button{left:-16.6666666667px !important}/*!@.duet-button.plain .duet-button-icon.left.medium*/.duet-button.plain.sc-duet-button .duet-button-icon.left.medium.sc-duet-button{left:-24px !important}/*!@.duet-button.plain .duet-button-icon.left.large*/.duet-button.plain.sc-duet-button .duet-button-icon.left.large.sc-duet-button{left:-30px !important}/*!@.duet-button.plain .duet-button-icon.right*/.duet-button.plain.sc-duet-button .duet-button-icon.right.sc-duet-button{right:-16.6666666667px !important}/*!@.duet-button.plain .duet-button-icon.right.medium*/.duet-button.plain.sc-duet-button .duet-button-icon.right.medium.sc-duet-button{right:-24px !important}/*!@.duet-button.plain .duet-button-icon.right.large*/.duet-button.plain.sc-duet-button .duet-button-icon.right.large.sc-duet-button{right:-30px !important}/*!@.duet-button.plain[disabled]*/.duet-button.plain[disabled].sc-duet-button{color:#657787 !important;background:transparent !important;border-color:transparent !important}/*!@.duet-theme-turva .duet-button.plain[disabled]*/.duet-theme-turva.sc-duet-button .duet-button.plain[disabled].sc-duet-button{color:transparent !important;background:transparent !important;border-color:#e4e4e6 !important}/*!@.duet-button.plain:hover*/.duet-button.plain.sc-duet-button:hover{color:#004d80 !important;background:transparent !important}/*!@.duet-theme-turva .duet-button.plain:hover*/.duet-theme-turva.sc-duet-button .duet-button.plain.sc-duet-button:hover{color:#940925 !important}/*!@.duet-button.plain.duet-button-negative*/.duet-button.plain.duet-button-negative.sc-duet-button{color:white !important}/*!@.duet-theme-turva .duet-button.plain.duet-button-negative*/.duet-theme-turva.sc-duet-button .duet-button.plain.duet-button-negative.sc-duet-button{color:#e4e4e6 !important}/*!@.duet-button.plain.duet-button-negative:hover*/.duet-button.plain.duet-button-negative.sc-duet-button:hover{color:#0077b3 !important}/*!@.duet-theme-turva .duet-button.plain.duet-button-negative:hover*/.duet-theme-turva.sc-duet-button .duet-button.plain.duet-button-negative.sc-duet-button:hover{color:#c60c30 !important}/*!@.duet-button.duet-button-icon-only*/.duet-button.duet-button-icon-only.sc-duet-button{min-width:48px;min-height:48px;padding:0 !important}/*!@.duet-button.duet-button-icon-only .duet-button-contents*/.duet-button.duet-button-icon-only.sc-duet-button .duet-button-contents.sc-duet-button{position:static}/*!@.duet-button.duet-button-icon-only .duet-button-icon.left.large,\n.duet-button.duet-button-icon-only .duet-button-icon.left.medium,\n.duet-button.duet-button-icon-only .duet-button-icon.left.small*/.duet-button.duet-button-icon-only.sc-duet-button .duet-button-icon.left.large.sc-duet-button,.duet-button.duet-button-icon-only.sc-duet-button .duet-button-icon.left.medium.sc-duet-button,.duet-button.duet-button-icon-only.sc-duet-button .duet-button-icon.left.small.sc-duet-button{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}/*!@.duet-button[disabled], .duet-button[disabled]:hover, .duet-button.duet-button-negative[disabled], .duet-button.duet-button-negative[disabled]:hover*/.duet-button[disabled].sc-duet-button,.duet-button[disabled].sc-duet-button:hover,.duet-button.duet-button-negative[disabled].sc-duet-button,.duet-button.duet-button-negative[disabled].sc-duet-button:hover{color:#657787 !important;background:#e1e3e6 !important;border-color:#e1e3e6 !important;box-shadow:none !important}/*!@.duet-theme-turva .duet-button[disabled], .duet-theme-turva .duet-button[disabled]:hover, .duet-theme-turva .duet-button.duet-button-negative [disabled], .duet-theme-turva .duet-button.duet-button-negative [disabled]:hover*/.duet-theme-turva.sc-duet-button .duet-button[disabled].sc-duet-button,.duet-theme-turva.sc-duet-button .duet-button[disabled].sc-duet-button:hover,.duet-theme-turva.sc-duet-button .duet-button.duet-button-negative.sc-duet-button [disabled].sc-duet-button,.duet-theme-turva.sc-duet-button .duet-button.duet-button-negative.sc-duet-button [disabled].sc-duet-button:hover{color:#747475 !important;background:#e4e4e6 !important;border-color:#e4e4e6 !important}/*!@.duet-button-is-loading.primary*/.duet-button-is-loading.primary.sc-duet-button{color:white}/*!@.duet-button-is-loading.default*/.duet-button-is-loading.default.sc-duet-button{color:#0077b3}/*!@.duet-button-is-loading.default.duet-theme-turva*/.duet-button-is-loading.default.duet-theme-turva.sc-duet-button{color:#c60c30}/*!@.duet-button-is-loading .duet-button-contents*/.duet-button-is-loading.sc-duet-button .duet-button-contents.sc-duet-button{visibility:hidden;opacity:0}";
|
|
@@ -7092,7 +7141,6 @@ class DuetChoice {
|
|
|
7092
7141
|
*/
|
|
7093
7142
|
render() {
|
|
7094
7143
|
const identifier = this.identifier || this.choiceId;
|
|
7095
|
-
console.log(this.element);
|
|
7096
7144
|
return (hAsync(Host, { class: {
|
|
7097
7145
|
horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
|
|
7098
7146
|
"horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
|
|
@@ -7839,6 +7887,9 @@ var tokens$1 = /*#__PURE__*/Object.freeze({
|
|
|
7839
7887
|
|
|
7840
7888
|
const duetCollapsibleCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-collapsible,*.sc-duet-collapsible::after,*.sc-duet-collapsible::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-collapsible-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;display:block;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.5;color:#00294d}/*!@:host(.duet-theme-turva)*/.duet-theme-turva.sc-duet-collapsible-h{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-collapsible-h{margin:0 !important}/*!@.duet-collapsible-content*/.duet-collapsible-content.sc-duet-collapsible{display:none;padding-left:18px;margin-top:8px;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;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;color:#00294d}@media (max-width: 35.9375em){/*!@.duet-collapsible-content*/.duet-collapsible-content.sc-duet-collapsible{font-size:0.875rem}}/*!@.duet-collapsible-content.duet-theme-turva*/.duet-collapsible-content.duet-theme-turva.sc-duet-collapsible{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}/*!@:host([open]) .duet-collapsible-content*/[open].sc-duet-collapsible-h .duet-collapsible-content.sc-duet-collapsible{display:block}/*!@.duet-collapsible-heading*/.duet-collapsible-heading.sc-duet-collapsible{-webkit-user-select:none;user-select:none;display:flex;align-items:center;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:#00294d;cursor:pointer;border-radius:4px}/*!@.duet-collapsible-heading.duet-collapsible-normal-weight*/.duet-collapsible-heading.duet-collapsible-normal-weight.sc-duet-collapsible{font-weight:400}/*!@.duet-collapsible-heading.duet-theme-turva*/.duet-collapsible-heading.duet-theme-turva.sc-duet-collapsible{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}/*!@.duet-collapsible-heading .duet-collapsible-heading-content*/.duet-collapsible-heading.sc-duet-collapsible .duet-collapsible-heading-content.sc-duet-collapsible{flex:1}/*!@.duet-collapsible-heading:focus*/.duet-collapsible-heading.sc-duet-collapsible:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-collapsible-heading:focus*/.user-is-tabbing.sc-duet-collapsible-h .duet-collapsible-heading.sc-duet-collapsible:focus{border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing.duet-theme-turva) .duet-collapsible-heading:focus*/.user-is-tabbing.duet-theme-turva.sc-duet-collapsible-h .duet-collapsible-heading.sc-duet-collapsible:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-collapsible-heading-icon*/.duet-collapsible-heading-icon.sc-duet-collapsible{margin-right:8px !important;display:flex;align-items:center;justify-content:center;color:#00294d;transition:transform 300ms ease}/*!@.duet-collapsible-heading-icon:last-child, .duet-collapsible-heading-icon:last-of-type*/.duet-collapsible-heading-icon.sc-duet-collapsible:last-child,.duet-collapsible-heading-icon.sc-duet-collapsible:last-of-type{margin-right:0 !important}/*!@[aria-expanded=true] .duet-collapsible-heading-icon*/[aria-expanded=true].sc-duet-collapsible .duet-collapsible-heading-icon.sc-duet-collapsible{transform:rotate(180deg)}";
|
|
7841
7889
|
|
|
7890
|
+
/**
|
|
7891
|
+
* @part duet-collapsible-heading-content - piercing selector for styling the heading content
|
|
7892
|
+
*/
|
|
7842
7893
|
class DuetCollapsible {
|
|
7843
7894
|
constructor(hostRef) {
|
|
7844
7895
|
registerInstance(this, hostRef);
|
|
@@ -7957,7 +8008,7 @@ class DuetCollapsible {
|
|
|
7957
8008
|
"duet-collapsible-heading": true,
|
|
7958
8009
|
"duet-theme-turva": this.theme === "turva",
|
|
7959
8010
|
"duet-collapsible-normal-weight": this.headingWeight === "normal",
|
|
7960
|
-
}, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", tabindex: "0", ref: button => (this.nativeButton = button), "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, hAsync("div", { class: "duet-collapsible-heading-icon" }, hAsync("duet-icon", { margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary", size: this.getEquivalentIconSize(), icon: actionArrowDownSmall.svg })), hAsync("div", { class: "duet-collapsible-heading-content" }, this.heading)), hAsync("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", null))));
|
|
8011
|
+
}, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", tabindex: "0", ref: button => (this.nativeButton = button), "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, hAsync("div", { class: "duet-collapsible-heading-icon" }, hAsync("duet-icon", { margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary", size: this.getEquivalentIconSize(), icon: actionArrowDownSmall.svg })), hAsync("div", { class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading)), hAsync("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", null))));
|
|
7961
8012
|
}
|
|
7962
8013
|
get element() { return getElement(this); }
|
|
7963
8014
|
static get style() { return duetCollapsibleCss; }
|
|
@@ -8923,11 +8974,43 @@ const debounce = (func, timeout = 50) => {
|
|
|
8923
8974
|
};
|
|
8924
8975
|
};
|
|
8925
8976
|
|
|
8977
|
+
/**
|
|
8978
|
+
* Produces a function which uses template strings to do simple interpolation from objects.
|
|
8979
|
+
*
|
|
8980
|
+
* Usage:
|
|
8981
|
+
* var makeMeKing = generateTemplateFn('${name} is now the king of ${country}!');
|
|
8982
|
+
*
|
|
8983
|
+
* console.log(makeMeKing({ name: 'Bryan', country: 'Scotland'}));
|
|
8984
|
+
* // Logs 'Bryan is now the king of Scotland!'
|
|
8985
|
+
*/
|
|
8986
|
+
const generateTemplateFn = (function () {
|
|
8987
|
+
const cache = {};
|
|
8988
|
+
function generateTemplate(template) {
|
|
8989
|
+
if (typeof template !== "string") {
|
|
8990
|
+
template = template.outerHTML;
|
|
8991
|
+
}
|
|
8992
|
+
let fn = cache[template];
|
|
8993
|
+
if (!fn) {
|
|
8994
|
+
// Replace ${expressions} (etc) with ${map.expressions}.
|
|
8995
|
+
const sanitized = template
|
|
8996
|
+
.replace(/\$\{([\s]*[^;\s\{]+[\s]*)\}/g, function (_, match) {
|
|
8997
|
+
return `\$\{map.${match.trim()}\}`;
|
|
8998
|
+
})
|
|
8999
|
+
// Afterwards, replace anything that's not ${map.expressions}' (etc) with a blank string.
|
|
9000
|
+
.replace(/(\$\{(?!map\.)[^}]+\})/g, "");
|
|
9001
|
+
fn = Function("map", `return \`${sanitized}\``);
|
|
9002
|
+
}
|
|
9003
|
+
return fn;
|
|
9004
|
+
}
|
|
9005
|
+
return generateTemplate;
|
|
9006
|
+
})();
|
|
9007
|
+
|
|
8926
9008
|
const duetEditableTableCss = "/*!@duet-editable-table*/duet-editable-table.sc-duet-editable-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@.duet-editable-table-header tr .duet-editable-table-header-hidden*/.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";
|
|
8927
9009
|
|
|
8928
9010
|
class DuetEditableTable {
|
|
8929
9011
|
constructor(hostRef) {
|
|
8930
9012
|
registerInstance(this, hostRef);
|
|
9013
|
+
this.template = undefined;
|
|
8931
9014
|
/**
|
|
8932
9015
|
* State() variables
|
|
8933
9016
|
* @internal
|
|
@@ -8937,6 +9020,10 @@ class DuetEditableTable {
|
|
|
8937
9020
|
* Map of items that contain list of things.
|
|
8938
9021
|
*/
|
|
8939
9022
|
this.items = new Map();
|
|
9023
|
+
/**
|
|
9024
|
+
* Key used to set vertical alignment of action buttons
|
|
9025
|
+
*/
|
|
9026
|
+
this.alignment = "middle";
|
|
8940
9027
|
/**
|
|
8941
9028
|
* Array of internationalized defaults for the default groups labels.
|
|
8942
9029
|
*/
|
|
@@ -8985,12 +9072,40 @@ class DuetEditableTable {
|
|
|
8985
9072
|
* Exposes the aria role for optimizing accessibility.
|
|
8986
9073
|
*/
|
|
8987
9074
|
this.accessibleRole = undefined;
|
|
9075
|
+
/**
|
|
9076
|
+
* Theme of the table.
|
|
9077
|
+
*/
|
|
9078
|
+
this.theme = "";
|
|
8988
9079
|
/**
|
|
8989
9080
|
* Private methods.
|
|
8990
9081
|
*/
|
|
8991
9082
|
this.kick = debounce(() => {
|
|
8992
9083
|
this.tick = Date.now();
|
|
8993
9084
|
}, 100); // will trigger re-render
|
|
9085
|
+
/**
|
|
9086
|
+
* If a user defines a template section within editable table, try to read an use it.
|
|
9087
|
+
*/
|
|
9088
|
+
this.getTemplate = () => {
|
|
9089
|
+
const templateDom = this.element.getElementsByTagName("template");
|
|
9090
|
+
if (templateDom === null || templateDom === void 0 ? void 0 : templateDom.length) {
|
|
9091
|
+
const templateString = templateDom[0].content.firstElementChild.outerHTML;
|
|
9092
|
+
return generateTemplateFn(templateString);
|
|
9093
|
+
}
|
|
9094
|
+
else {
|
|
9095
|
+
return false;
|
|
9096
|
+
}
|
|
9097
|
+
};
|
|
9098
|
+
this.getItemData = (data) => {
|
|
9099
|
+
const { item, group, uid } = data;
|
|
9100
|
+
if (this.template) {
|
|
9101
|
+
return {
|
|
9102
|
+
group,
|
|
9103
|
+
uid,
|
|
9104
|
+
item: this.template(item),
|
|
9105
|
+
};
|
|
9106
|
+
}
|
|
9107
|
+
return { item, group, uid };
|
|
9108
|
+
};
|
|
8994
9109
|
this.filterMap = needle => {
|
|
8995
9110
|
if (needle === "all") {
|
|
8996
9111
|
return Array.from(this.items);
|
|
@@ -9002,6 +9117,9 @@ class DuetEditableTable {
|
|
|
9002
9117
|
* Component lifecycle events.
|
|
9003
9118
|
*/
|
|
9004
9119
|
componentWillLoad() {
|
|
9120
|
+
// look for a <template> region in the duet-editable-table
|
|
9121
|
+
this.template = this.getTemplate();
|
|
9122
|
+
// take care of the case where groups and actions are defined as html properties instead of javascript objects
|
|
9005
9123
|
if (typeof this.groups === "string") {
|
|
9006
9124
|
this.internalGroupArray = sanitizeString(this.groups);
|
|
9007
9125
|
}
|
|
@@ -9040,7 +9158,7 @@ class DuetEditableTable {
|
|
|
9040
9158
|
? getLocaleString(group.actionLabel)
|
|
9041
9159
|
: getLocaleString(this.actionLabelDefaults))))), hAsync("tbody", null, currentGroup.map(dataAsArray => {
|
|
9042
9160
|
const [key, value] = dataAsArray;
|
|
9043
|
-
return (hAsync("duet-editable-table-item", { keyName: key, data:
|
|
9161
|
+
return (hAsync("duet-editable-table-item", { theme: this.theme, keyName: key, data: this.getItemData(value), groupId: group.id, part: group.id, alignment: this.alignment, actions: this.internalActionsArray }));
|
|
9044
9162
|
})))));
|
|
9045
9163
|
})));
|
|
9046
9164
|
}
|
|
@@ -9051,6 +9169,7 @@ class DuetEditableTable {
|
|
|
9051
9169
|
"$tagName$": "duet-editable-table",
|
|
9052
9170
|
"$members$": {
|
|
9053
9171
|
"items": [1040],
|
|
9172
|
+
"alignment": [1],
|
|
9054
9173
|
"groupsLabelDefaults": [16],
|
|
9055
9174
|
"actionLabelDefaults": [16],
|
|
9056
9175
|
"groups": [1],
|
|
@@ -9077,7 +9196,7 @@ class DuetEditableTableButton {
|
|
|
9077
9196
|
/**
|
|
9078
9197
|
* Theme of the empty state component.
|
|
9079
9198
|
*/
|
|
9080
|
-
this.theme =
|
|
9199
|
+
this.theme = undefined;
|
|
9081
9200
|
/**
|
|
9082
9201
|
* action items passed from host component
|
|
9083
9202
|
* @internal
|
|
@@ -9104,6 +9223,15 @@ class DuetEditableTableButton {
|
|
|
9104
9223
|
this.onMouseLeave = () => {
|
|
9105
9224
|
this.isHovering = false;
|
|
9106
9225
|
};
|
|
9226
|
+
this.getColours = (byName = false) => {
|
|
9227
|
+
let colorHover = this.actions.color_hover;
|
|
9228
|
+
let colorBlur = this.actions.color;
|
|
9229
|
+
if (byName) {
|
|
9230
|
+
colorHover = getColorByName(this.actions.color_hover, this.theme);
|
|
9231
|
+
colorBlur = getColorByName(this.actions.color, this.theme);
|
|
9232
|
+
}
|
|
9233
|
+
return this.isHovering ? colorHover : colorBlur;
|
|
9234
|
+
};
|
|
9107
9235
|
}
|
|
9108
9236
|
/**
|
|
9109
9237
|
/**
|
|
@@ -9132,10 +9260,8 @@ class DuetEditableTableButton {
|
|
|
9132
9260
|
*/
|
|
9133
9261
|
render() {
|
|
9134
9262
|
return (hAsync("button", { style: {
|
|
9135
|
-
"border-color": this.
|
|
9136
|
-
|
|
9137
|
-
: getColorByName(this.actions.color),
|
|
9138
|
-
}, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, role: "menuitem", class: "duet-editable-table-actions-items-button", "aria-label": this.actions.label ? getLocaleString(this.actions.label) : undefined, onClick: ev => this.emitActionEvent(ev) }, hAsync("duet-icon", { class: "duet-editable-table-actions-items-icon", size: "x-small", name: this.actions.icon, color: this.isHovering ? this.actions.color_hover : this.actions.color, margin: "none" })));
|
|
9263
|
+
"border-color": this.getColours(true),
|
|
9264
|
+
}, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, role: "menuitem", class: "duet-editable-table-actions-items-button", "aria-label": this.actions.label ? getLocaleString(this.actions.label) : undefined, onClick: ev => this.emitActionEvent(ev) }, hAsync("duet-icon", { class: "duet-editable-table-actions-items-icon", size: "x-small", name: this.actions.icon, color: this.getColours(), margin: "none" })));
|
|
9139
9265
|
}
|
|
9140
9266
|
get el() { return getElement(this); }
|
|
9141
9267
|
static get style() { return duetEditableTableButtonCss; }
|
|
@@ -9157,12 +9283,12 @@ class DuetEditableTableButton {
|
|
|
9157
9283
|
}
|
|
9158
9284
|
|
|
9159
9285
|
//simple functional component that renders the data in the table
|
|
9160
|
-
const TableData = ({ data, groupId }, _children) => {
|
|
9286
|
+
const TableData = ({ data, groupId, alignment }, _children) => {
|
|
9161
9287
|
if (typeof data === "string") {
|
|
9162
|
-
return hAsync("td", { innerHTML: data, class: "duet-editable-table-content", part: `${groupId}content
|
|
9288
|
+
return (hAsync("td", { innerHTML: data, class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }));
|
|
9163
9289
|
}
|
|
9164
9290
|
else {
|
|
9165
|
-
return (hAsync("td", { class: "duet-editable-table-content", part: `${groupId}content
|
|
9291
|
+
return (hAsync("td", { class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }, data));
|
|
9166
9292
|
}
|
|
9167
9293
|
};
|
|
9168
9294
|
|
|
@@ -9186,6 +9312,10 @@ class DuetEditableTableItem {
|
|
|
9186
9312
|
* @internal
|
|
9187
9313
|
*/
|
|
9188
9314
|
this.groupId = "";
|
|
9315
|
+
/**
|
|
9316
|
+
* Key used to set vertical alignment of action buttons
|
|
9317
|
+
*/
|
|
9318
|
+
this.alignment = "middle";
|
|
9189
9319
|
/**
|
|
9190
9320
|
* Key used to identify item, when running actions
|
|
9191
9321
|
*/
|
|
@@ -9214,7 +9344,7 @@ class DuetEditableTableItem {
|
|
|
9214
9344
|
* Always the last one in the class.
|
|
9215
9345
|
*/
|
|
9216
9346
|
render() {
|
|
9217
|
-
return (hAsync(Host, { role: "row" }, hAsync(TableData, { data: this.data.item, groupId: this.groupId }), hAsync("td", { class: "duet-editable-table-actions" }, hAsync("div", { class: "duet-editable-table-actions-items", part: `${this.groupId}actions` }, this.actions.map(result => {
|
|
9347
|
+
return (hAsync(Host, { role: "row" }, hAsync(TableData, { data: this.data.item, alignment: this.alignment, groupId: this.groupId }), hAsync("td", { class: "duet-editable-table-actions", style: { verticalAlign: this.alignment } }, hAsync("div", { class: "duet-editable-table-actions-items", part: `${this.groupId}actions` }, this.actions.map(result => {
|
|
9218
9348
|
const { map = undefined } = result;
|
|
9219
9349
|
// if map has been specified, only show the current action if groupID matches the map array
|
|
9220
9350
|
if (map && !map.includes(this.groupId)) {
|
|
@@ -9235,6 +9365,7 @@ class DuetEditableTableItem {
|
|
|
9235
9365
|
"theme": [1025],
|
|
9236
9366
|
"actions": [16],
|
|
9237
9367
|
"groupId": [1, "group-id"],
|
|
9368
|
+
"alignment": [1],
|
|
9238
9369
|
"keyName": [1, "key-name"],
|
|
9239
9370
|
"data": [1040],
|
|
9240
9371
|
"isHovering": [32]
|
|
@@ -9371,7 +9502,7 @@ var actionNewWindow={"title":"action-new-window","tags":"arrow open new window t
|
|
|
9371
9502
|
|
|
9372
9503
|
var actionNewWindowSmall={"title":"action-new-window-small","tags":"arrow open new window tab external linksquare box rectangle action small","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M10.5 2a1.5 1.5 0 0 1 .14 3H3.75c-.38 0-.7.28-.74.65l-.01.1v14.5c0 .38.28.7.65.74l.1.01h14.5c.38 0 .7-.28.74-.65l.01-.1v-6.89a1.5 1.5 0 0 1 3 0v6.89A3.75 3.75 0 0 1 18.25 24H3.75A3.75 3.75 0 0 1 0 20.25V5.75A3.75 3.75 0 0 1 3.75 2zm12-2c.78 0 1.42.6 1.5 1.36V7.5a1.5 1.5 0 0 1-3 .14V5.12l-5.44 5.44a1.5 1.5 0 0 1-2.22-2l.1-.12L18.88 3H16.5A1.5 1.5 0 0 1 15 1.64V1.5c0-.78.6-1.42 1.36-1.5h.14z\"/></svg>"};
|
|
9373
9504
|
|
|
9374
|
-
const duetFooterCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-footer,*.sc-duet-footer::after,*.sc-duet-footer::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-footer-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex-shrink:0;width:100%}/*!@.duet-footer*/.duet-footer.sc-duet-footer{display:block;width:100%;padding-top:20px;padding-bottom:16px;margin-top:48px;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;line-height:1.5;color:white;text-align:left;background:#00294d}/*!@.duet-footer.duet-p-0*/.duet-footer.duet-p-0.sc-duet-footer{padding:0 !important}/*!@.duet-footer.duet-m-0*/.duet-footer.duet-m-0.sc-duet-footer{margin:0 !important}@media (min-width: 36em){/*!@.duet-footer*/.duet-footer.sc-duet-footer{padding-top:36px}}@media (min-width: 62em){/*!@.duet-footer*/.duet-footer.sc-duet-footer{padding-top:48px;padding-bottom:36px}}/*!@.duet-footer.duet-theme-turva*/.duet-footer.duet-theme-turva.sc-duet-footer{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:#c60c30}/*!@.duet-footer a*/.duet-footer.sc-duet-footer a.sc-duet-footer{color:white;text-decoration:none}@media (min-width: 62em){/*!@.duet-footer a*/.duet-footer.sc-duet-footer a.sc-duet-footer{border-radius:4px}}/*!@.duet-footer a:focus*/.duet-footer.sc-duet-footer a.sc-duet-footer:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-footer a:focus*/.user-is-tabbing.sc-duet-footer-h .duet-footer.sc-duet-footer a.sc-duet-footer:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva a:focus*/.user-is-tabbing.sc-duet-footer-h .duet-theme-turva.sc-duet-footer a.sc-duet-footer:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{position:relative;margin:0 auto}@media (min-width: 62em){/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{padding:0 72px 0 48px}}@media (min-width: 76.25em){/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{max-width:1110px;padding:0 20px 0 0}}/*!@.duet-footer-top*/.duet-footer-top.sc-duet-footer{width:100%}@media (min-width: 62em){/*!@.duet-footer-top*/.duet-footer-top.sc-duet-footer{display:flex;flex-direction:row;align-items:center;justify-content:space-between}}/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:16px !important}@media (min-width: 36em){/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:28px !important}}@media (min-width: 62em){/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:0 !important}}/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{padding:16px !important;display:flex;flex-direction:row;align-items:center;width:100%;font-weight:600;border-bottom:1px solid rgba(255, 255, 255, 0.2);transition:background-color 300ms ease}@media (min-width: 36em){/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{padding-right:20px !important;padding-left:28px !important}}@media (min-width: 62em){/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{width:auto;min-width:0;padding-right:0 !important;padding-left:0 !important;border:0}}/*!@.duet-footer-link:first-of-type*/.duet-footer-link.sc-duet-footer:first-of-type{margin-top:20px;border-top:1px solid rgba(255, 255, 255, 0.2)}@media (min-width: 62em){/*!@.duet-footer-link:first-of-type*/.duet-footer-link.sc-duet-footer:first-of-type{margin:0;border:0}}/*!@.duet-footer-link span*/.duet-footer-link.sc-duet-footer span.sc-duet-footer{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}/*!@.duet-footer-link:hover*/.duet-footer-link.sc-duet-footer:hover{background:rgba(0, 0, 0, 0.1)}@media (min-width: 62em){/*!@.duet-footer-link:hover*/.duet-footer-link.sc-duet-footer:hover{background:transparent}}/*!@.duet-footer-icon*/.duet-footer-icon.sc-duet-footer{display:flex;align-items:center;justify-content:center;padding:12px;margin-right:16px;background:#0077b3;border-radius:50%;transition:300ms ease}/*!@.duet-theme-turva .duet-footer-icon*/.duet-theme-turva.sc-duet-footer .duet-footer-icon.sc-duet-footer{background:transparent;box-shadow:0 0 0 1px white}/*!@a:hover .duet-footer-icon*/a.sc-duet-footer:hover .duet-footer-icon.sc-duet-footer{background:#006ba1}/*!@.duet-theme-turva a:hover .duet-footer-icon*/.duet-theme-turva.sc-duet-footer a.sc-duet-footer:hover .duet-footer-icon.sc-duet-footer{background:transparent}/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{display:flex;align-items:center;justify-content:center;width:20px;min-width:20px;max-width:20px;height:20px;max-height:20px;margin-left:auto;color:white;transition:transform 300ms ease}@media (min-width: 62em){/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{width:10px;min-width:10px;margin-top:3px;margin-left:8px}}@media (min-width: 62em){/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{margin-right:0}}/*!@a:hover .duet-footer-arrow*/a.sc-duet-footer:hover .duet-footer-arrow.sc-duet-footer{transform:translateX(4px)}/*!@.duet-footer-arrow duet-icon*/.duet-footer-arrow.sc-duet-footer duet-icon.sc-duet-footer{width:20px;height:20px}@media (min-width: 62em){/*!@.duet-footer-arrow duet-icon*/.duet-footer-arrow.sc-duet-footer duet-icon.sc-duet-footer{width:10px;height:10px}}/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding:20px !important;font-size:0.875rem}@media (min-width: 36em){/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding:28px !important}}@media (min-width: 62em){/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding-left:8px !important}}/*!@.duet-footer-menu a*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer{text-decoration:none}/*!@.duet-footer-menu a:hover, .duet-footer-menu a:focus*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:hover,.duet-footer-menu.sc-duet-footer a.sc-duet-footer:focus{text-decoration:underline}/*!@.duet-footer-menu a:hover .duet-footer-divider, .duet-footer-menu a:focus .duet-footer-divider*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:hover .duet-footer-divider.sc-duet-footer,.duet-footer-menu.sc-duet-footer a.sc-duet-footer:focus .duet-footer-divider.sc-duet-footer{text-decoration:none}/*!@.duet-footer-menu .duet-footer-divider*/.duet-footer-menu.sc-duet-footer .duet-footer-divider.sc-duet-footer{display:inline-block;margin:0 8px}/*!@.duet-footer-menu a:last-of-type .duet-footer-divider*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:last-of-type .duet-footer-divider.sc-duet-footer{display:none}/*!@.duet-footer-copyright*/.duet-footer-copyright.sc-duet-footer{color:white}/*!@.duet-footer-simple*/.duet-footer-simple.sc-duet-footer{padding:0;margin:0;margin-top:16px;color:#00294d;background:transparent !important;border-top:1px solid #e1e3e6}/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{max-width:100%;padding:0 20px;margin:0}@media (min-width: 62em){/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{padding:0 36px}}@media (min-width: 106.25em){/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{padding:0 48px}}/*!@.duet-footer-simple .duet-footer-copyright,\n.duet-footer-simple .duet-footer-menu a*/.duet-footer-simple.sc-duet-footer .duet-footer-copyright.sc-duet-footer,.duet-footer-simple.sc-duet-footer .duet-footer-menu.sc-duet-footer a.sc-duet-footer{color:#00294d}/*!@.duet-footer-simple .duet-footer-menu*/.duet-footer-simple.sc-duet-footer .duet-footer-menu.sc-duet-footer{padding:20px 0 !important}/*!@.duet-footer-simple.duet-theme-turva*/.duet-footer-simple.duet-theme-turva.sc-duet-footer{color:#171c3a;border-color:#e4e4e6}/*!@.duet-footer-simple.duet-theme-turva .duet-footer-copyright,\n.duet-footer-simple.duet-theme-turva .duet-footer-menu a*/.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-copyright.sc-duet-footer,.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-menu.sc-duet-footer a.sc-duet-footer{color:#171c3a}/*!@.duet-footer-external*/.duet-footer-external.sc-duet-footer{display:inline-block;margin-left:4px;color:#0077b3}/*!@.duet-theme-turva .duet-footer-external*/.duet-theme-turva.sc-duet-footer .duet-footer-external.sc-duet-footer{color:white}/*!@.duet-footer-simple.duet-theme-turva .duet-footer-external*/.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-external.sc-duet-footer{color:#c60c30}";
|
|
9505
|
+
const duetFooterCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-footer,*.sc-duet-footer::after,*.sc-duet-footer::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-footer-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex-shrink:0;width:100%}/*!@.duet-footer*/.duet-footer.sc-duet-footer{display:block;width:100%;padding-top:20px;padding-bottom:16px;margin-top:48px;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;line-height:1.5;color:white;text-align:left;background:#00294d}/*!@.duet-footer.duet-p-0*/.duet-footer.duet-p-0.sc-duet-footer{padding:0 !important}/*!@.duet-footer.duet-m-0*/.duet-footer.duet-m-0.sc-duet-footer{margin:0 !important}@media (min-width: 36em){/*!@.duet-footer*/.duet-footer.sc-duet-footer{padding-top:36px}}@media (min-width: 62em){/*!@.duet-footer*/.duet-footer.sc-duet-footer{padding-top:48px;padding-bottom:36px}}/*!@.duet-footer.duet-theme-turva*/.duet-footer.duet-theme-turva.sc-duet-footer{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:#c60c30}/*!@.duet-footer a*/.duet-footer.sc-duet-footer a.sc-duet-footer{color:white;text-decoration:none}@media (min-width: 62em){/*!@.duet-footer a*/.duet-footer.sc-duet-footer a.sc-duet-footer{border-radius:4px}}/*!@.duet-footer a:focus*/.duet-footer.sc-duet-footer a.sc-duet-footer:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-footer a:focus*/.user-is-tabbing.sc-duet-footer-h .duet-footer.sc-duet-footer a.sc-duet-footer:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva a:focus*/.user-is-tabbing.sc-duet-footer-h .duet-theme-turva.sc-duet-footer a.sc-duet-footer:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{position:relative;margin:0 auto}@media (min-width: 62em){/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{padding:0 72px 0 48px}}@media (min-width: 76.25em){/*!@.duet-footer-wrapper*/.duet-footer-wrapper.sc-duet-footer{max-width:1110px;padding:0 20px 0 0}}/*!@.duet-footer-top*/.duet-footer-top.sc-duet-footer{width:100%}@media (min-width: 62em){/*!@.duet-footer-top*/.duet-footer-top.sc-duet-footer{display:flex;flex-direction:row;align-items:center;justify-content:space-between}}/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:16px !important}@media (min-width: 36em){/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:28px !important}}@media (min-width: 62em){/*!@duet-logo*/duet-logo.sc-duet-footer{margin-left:0 !important}}/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{padding:16px !important;display:flex;flex-direction:row;align-items:center;width:100%;font-weight:600;border-bottom:1px solid rgba(255, 255, 255, 0.2);transition:background-color 300ms ease}@media (min-width: 36em){/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{padding-right:20px !important;padding-left:28px !important}}@media (min-width: 62em){/*!@.duet-footer-link*/.duet-footer-link.sc-duet-footer{width:auto;min-width:0;padding-right:0 !important;padding-left:0 !important;border:0}}/*!@.duet-footer-link:first-of-type*/.duet-footer-link.sc-duet-footer:first-of-type{margin-top:20px;border-top:1px solid rgba(255, 255, 255, 0.2)}@media (min-width: 62em){/*!@.duet-footer-link:first-of-type*/.duet-footer-link.sc-duet-footer:first-of-type{margin:0;border:0}}/*!@.duet-footer-link span*/.duet-footer-link.sc-duet-footer span.sc-duet-footer{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}/*!@.duet-footer-link:hover*/.duet-footer-link.sc-duet-footer:hover{background:rgba(0, 0, 0, 0.1)}@media (min-width: 62em){/*!@.duet-footer-link:hover*/.duet-footer-link.sc-duet-footer:hover{background:transparent}}/*!@.duet-footer-icon*/.duet-footer-icon.sc-duet-footer{display:flex;align-items:center;justify-content:center;padding:12px;margin-right:16px;background:#0077b3;border-radius:50%;transition:300ms ease}/*!@.duet-theme-turva .duet-footer-icon*/.duet-theme-turva.sc-duet-footer .duet-footer-icon.sc-duet-footer{background:transparent;box-shadow:0 0 0 1px white}/*!@a:hover .duet-footer-icon*/a.sc-duet-footer:hover .duet-footer-icon.sc-duet-footer{background:#006ba1}/*!@.duet-theme-turva a:hover .duet-footer-icon*/.duet-theme-turva.sc-duet-footer a.sc-duet-footer:hover .duet-footer-icon.sc-duet-footer{background:transparent}/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{display:flex;align-items:center;justify-content:center;width:20px;min-width:20px;max-width:20px;height:20px;max-height:20px;margin-left:auto;color:white;transition:transform 300ms ease}@media (min-width: 62em){/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{width:10px;min-width:10px;margin-top:3px;margin-left:8px}}@media (min-width: 62em){/*!@.duet-footer-arrow*/.duet-footer-arrow.sc-duet-footer{margin-right:0}}/*!@a:hover .duet-footer-arrow*/a.sc-duet-footer:hover .duet-footer-arrow.sc-duet-footer{transform:translateX(4px)}/*!@.duet-footer-arrow duet-icon*/.duet-footer-arrow.sc-duet-footer duet-icon.sc-duet-footer{width:20px;height:20px}@media (min-width: 62em){/*!@.duet-footer-arrow duet-icon*/.duet-footer-arrow.sc-duet-footer duet-icon.sc-duet-footer{width:10px;height:10px}}/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding:20px !important;font-size:0.875rem}@media (min-width: 36em){/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding:28px !important}}@media (min-width: 62em){/*!@.duet-footer-menu*/.duet-footer-menu.sc-duet-footer{padding-left:8px !important}}/*!@.duet-footer-menu a*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer{text-decoration:none;white-space:nowrap}/*!@.duet-footer-menu a:hover, .duet-footer-menu a:focus*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:hover,.duet-footer-menu.sc-duet-footer a.sc-duet-footer:focus{text-decoration:underline}/*!@.duet-footer-menu a:hover .duet-footer-divider, .duet-footer-menu a:focus .duet-footer-divider*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:hover .duet-footer-divider.sc-duet-footer,.duet-footer-menu.sc-duet-footer a.sc-duet-footer:focus .duet-footer-divider.sc-duet-footer{text-decoration:none}/*!@.duet-footer-menu .duet-footer-divider*/.duet-footer-menu.sc-duet-footer .duet-footer-divider.sc-duet-footer{display:inline-block;margin:0 8px}/*!@.duet-footer-menu a:last-of-type .duet-footer-divider*/.duet-footer-menu.sc-duet-footer a.sc-duet-footer:last-of-type .duet-footer-divider.sc-duet-footer{display:none}/*!@.duet-footer-copyright*/.duet-footer-copyright.sc-duet-footer{color:white}/*!@.duet-footer-simple*/.duet-footer-simple.sc-duet-footer{padding:0;margin:0;margin-top:16px;color:#00294d;background:transparent !important;border-top:1px solid #e1e3e6}/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{max-width:100%;padding:0 20px;margin:0}@media (min-width: 62em){/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{padding:0 36px}}@media (min-width: 106.25em){/*!@.duet-footer-simple .duet-footer-wrapper*/.duet-footer-simple.sc-duet-footer .duet-footer-wrapper.sc-duet-footer{padding:0 48px}}/*!@.duet-footer-simple .duet-footer-copyright,\n.duet-footer-simple .duet-footer-menu a*/.duet-footer-simple.sc-duet-footer .duet-footer-copyright.sc-duet-footer,.duet-footer-simple.sc-duet-footer .duet-footer-menu.sc-duet-footer a.sc-duet-footer{color:#00294d}/*!@.duet-footer-simple .duet-footer-menu*/.duet-footer-simple.sc-duet-footer .duet-footer-menu.sc-duet-footer{padding:20px 0 !important}/*!@.duet-footer-simple.duet-theme-turva*/.duet-footer-simple.duet-theme-turva.sc-duet-footer{color:#171c3a;border-color:#e4e4e6}/*!@.duet-footer-simple.duet-theme-turva .duet-footer-copyright,\n.duet-footer-simple.duet-theme-turva .duet-footer-menu a*/.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-copyright.sc-duet-footer,.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-menu.sc-duet-footer a.sc-duet-footer{color:#171c3a}/*!@.duet-footer-external*/.duet-footer-external.sc-duet-footer{display:inline-block;margin-left:4px;color:#0077b3}/*!@.duet-theme-turva .duet-footer-external*/.duet-theme-turva.sc-duet-footer .duet-footer-external.sc-duet-footer{color:white}/*!@.duet-footer-simple.duet-theme-turva .duet-footer-external*/.duet-footer-simple.duet-theme-turva.sc-duet-footer .duet-footer-external.sc-duet-footer{color:#c60c30}";
|
|
9375
9506
|
|
|
9376
9507
|
const i18n$1 = {
|
|
9377
9508
|
fi: { lahi: "© LähiTapiola", turva: "© Turva" },
|
|
@@ -9525,6 +9656,11 @@ function isGridItem(element) {
|
|
|
9525
9656
|
class DuetGrid {
|
|
9526
9657
|
constructor(hostRef) {
|
|
9527
9658
|
registerInstance(this, hostRef);
|
|
9659
|
+
this.mql = [
|
|
9660
|
+
window.matchMedia(media_query_large.replace(/'/g, "")),
|
|
9661
|
+
window.matchMedia(media_query_medium.replace(/'/g, "")),
|
|
9662
|
+
window.matchMedia(media_query_small.replace(/'/g, "")),
|
|
9663
|
+
];
|
|
9528
9664
|
this.distributeFormElement = false;
|
|
9529
9665
|
/**
|
|
9530
9666
|
* Enable or disable the automatic responsive behaviour of the grid component.
|
|
@@ -9579,10 +9715,18 @@ class DuetGrid {
|
|
|
9579
9715
|
this.mutationO = watchForOptions(el, "duet-grid-item", () => {
|
|
9580
9716
|
this.updateGridItems();
|
|
9581
9717
|
});
|
|
9718
|
+
// the next two functions are used to watch for changes in the grid items, and are process intensive - so only run when needed
|
|
9582
9719
|
if (this.distributeFormElement) {
|
|
9583
9720
|
this.mutation1 = watchForElement(el, "duet-input", () => {
|
|
9584
9721
|
this.updateGridItemsWithInputFields();
|
|
9585
9722
|
});
|
|
9723
|
+
// listen for potential mediaquery changes and reset layout
|
|
9724
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
9725
|
+
// addEventListener is not available in Stencil hydrate
|
|
9726
|
+
if (this.mql[i].addEventListener) {
|
|
9727
|
+
this.mql[i].addEventListener("change", this.updateGridItemsWithInputFields.bind(this));
|
|
9728
|
+
}
|
|
9729
|
+
}
|
|
9586
9730
|
}
|
|
9587
9731
|
this.updateGridItems();
|
|
9588
9732
|
}
|
|
@@ -9595,6 +9739,13 @@ class DuetGrid {
|
|
|
9595
9739
|
this.mutation1.disconnect();
|
|
9596
9740
|
this.mutation1 = undefined;
|
|
9597
9741
|
}
|
|
9742
|
+
// listen for potential mediaquery changes and reset layout
|
|
9743
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
9744
|
+
// addEventListener is not available in Stencil hydrate
|
|
9745
|
+
if (this.mql[i].removeEventListener) {
|
|
9746
|
+
this.mql[i].removeEventListener("change", this.updateGridItemsWithInputFields.bind(this));
|
|
9747
|
+
}
|
|
9748
|
+
}
|
|
9598
9749
|
}
|
|
9599
9750
|
/**
|
|
9600
9751
|
* Local methods
|
|
@@ -9608,6 +9759,8 @@ class DuetGrid {
|
|
|
9608
9759
|
}
|
|
9609
9760
|
async updateGridItemsWithInputFields() {
|
|
9610
9761
|
const items = Array.from(this.element.children).filter(isGridItem);
|
|
9762
|
+
// if layout changes to columns instead of row, remove all padding
|
|
9763
|
+
const hasColumnLayout = window ? window.getComputedStyle(this.element).flexDirection === "column" : false;
|
|
9611
9764
|
let maxHeight = 0;
|
|
9612
9765
|
const sizes = [];
|
|
9613
9766
|
items.forEach(item => {
|
|
@@ -9619,10 +9772,10 @@ class DuetGrid {
|
|
|
9619
9772
|
items.forEach(item => {
|
|
9620
9773
|
const inputErrorDom = item.querySelector("span.duet-input-error");
|
|
9621
9774
|
const height = inputErrorDom ? this.outerHeight(inputErrorDom) : 0;
|
|
9622
|
-
if (height < maxHeight) {
|
|
9775
|
+
if (height < maxHeight && !hasColumnLayout) {
|
|
9623
9776
|
item.setAttribute("style", `padding-bottom: ${maxHeight - height}px;`);
|
|
9624
9777
|
}
|
|
9625
|
-
else if (height === maxHeight) {
|
|
9778
|
+
else if (height === maxHeight || hasColumnLayout) {
|
|
9626
9779
|
item.setAttribute("style", `padding-bottom: 0px;`);
|
|
9627
9780
|
}
|
|
9628
9781
|
});
|
|
@@ -9753,6 +9906,8 @@ class DuetGridItem {
|
|
|
9753
9906
|
}; }
|
|
9754
9907
|
}
|
|
9755
9908
|
|
|
9909
|
+
var formSearch={"title":"form-search","tags":"form search magnifying glass","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M23.245 23.996a.743.743 0 0 1-.53-.22L16.2 17.26a9.824 9.824 0 0 1-2.553 1.579 9.766 9.766 0 0 1-7.51.069 9.745 9.745 0 0 1-5.359-5.262c-1.025-2.412-1.05-5.08-.069-7.51S3.558 1.802 5.97.777a9.744 9.744 0 0 1 7.51-.069c2.431.981 4.334 2.849 5.359 5.262s1.05 5.08.069 7.51a9.807 9.807 0 0 1-1.649 2.718l6.517 6.518a.75.75 0 0 1-.531 1.28zM9.807 1.49a8.259 8.259 0 0 0-3.25.667c-2.044.869-3.627 2.481-4.458 4.54s-.81 4.318.058 6.362a8.26 8.26 0 0 0 4.54 4.458 8.259 8.259 0 0 0 6.362-.059 8.285 8.285 0 0 0 2.594-1.736.365.365 0 0 1 .077-.076 8.245 8.245 0 0 0 1.786-2.728 8.255 8.255 0 0 0-.059-6.362 8.257 8.257 0 0 0-4.54-4.458 8.28 8.28 0 0 0-3.11-.608z\"/></svg>"};
|
|
9910
|
+
|
|
9756
9911
|
var navigationContactDropdown={"title":"navigation-contact-dropdown","tags":"navigation contact dropdown speech bubbles","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M20.247 24a.743.743 0 0 1-.53-.22l-4.28-4.28h-.439c-3.308 0-6-2.692-6-6s2.692-6 6-6h3c3.309.001 6 2.692 6 6a5.974 5.974 0 0 1-3 5.179v4.571a.75.75 0 0 1-.751.75zm-5.25-15c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5h.75c.198 0 .391.08.53.22l3.22 3.22v-3.213c0-.289.169-.555.429-.678a4.51 4.51 0 0 0 2.571-4.049 4.504 4.504 0 0 0-4.498-4.499h-3.002z\"/><path d=\"M3.747 16.5a.747.747 0 0 1-.75-.75v-4.57a5.967 5.967 0 0 1-2.65-3.171A5.948 5.948 0 0 1 .57 3.431 6.014 6.014 0 0 1 5.985 0h3.012a6.04 6.04 0 0 1 5.752 4.286.751.751 0 0 1-.718.964.755.755 0 0 1-.719-.536A4.531 4.531 0 0 0 8.997 1.5h-3a4.511 4.511 0 0 0-4.071 2.572c-.512 1.084-.571 2.302-.167 3.431s1.224 2.032 2.308 2.545c.261.123.43.39.43.678v3.214l1.72-1.72a.744.744 0 0 1 1.06 0 .752.752 0 0 1 0 1.061l-3 3a.744.744 0 0 1-.53.219z\"/></svg>"};
|
|
9757
9912
|
|
|
9758
9913
|
var navigationLanguage={"title":"navigation-language","tags":"navigation language earth world map","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M11.996 24c-2.732 0-5.309-.901-7.453-2.605l-.017-.012-.031-.025a12.68 12.68 0 0 1-.238-.196c-.071-.06-.142-.122-.213-.184l-.143-.126c-.13-.118-.257-.24-.381-.363l-.018-.018a11.904 11.904 0 0 1-3.445-9.695l.001-.007c.018-.174.041-.348.067-.523l.019-.125c.028-.174.058-.348.093-.521l.003-.013C1.379 4.031 6.321 0 11.996 0c6.617 0 12 5.383 12 12 0 1.083-.148 2.164-.44 3.214l-.009.032a12.172 12.172 0 0 1-.671 1.809s-.072.155-.1.212a11.896 11.896 0 0 1-.189.368A11.987 11.987 0 0 1 11.996 24zm-6.181-3.519a10.388 10.388 0 0 0 6.181 2.019c3.471 0 6.642-1.669 8.611-4.497h-.59a2.244 2.244 0 0 1-2.22-1.879L17.111 12h-.944a2.252 2.252 0 0 1-2.182-2.796l.75-3A2.245 2.245 0 0 1 16.917 4.5h2.416A10.49 10.49 0 0 0 1.934 9h4.391c1.034 0 1.932.701 2.183 1.704l.75 3a2.235 2.235 0 0 1-.592 2.137c-.425.425-.99.659-1.591.659h-.464zm-4.248-9.687-.015.116a9.092 9.092 0 0 0-.053.96l-.002.17c.001.145.005.29.011.435l.006.127c.009.154.02.308.035.461l.005.041c.071.68.209 1.354.411 2.003l.009.028a10.457 10.457 0 0 0 2.537 4.222l.75-3.751A.75.75 0 0 1 5.996 15h1.079a.75.75 0 0 0 .728-.932l-.75-3a.751.751 0 0 0-.729-.568H1.606l-.039.294zM16.917 6a.75.75 0 0 0-.728.568l-.75 3a.752.752 0 0 0 .728.932h1.579c.368 0 .679.264.74.627l.791 4.75a.748.748 0 0 0 .74.626h1.461c.171-.358.321-.727.449-1.1l.021-.062A10.486 10.486 0 0 0 20.598 6z\"/></svg>"};
|
|
@@ -9943,7 +10098,41 @@ const enableBodyScroll = targetElement => {
|
|
|
9943
10098
|
}
|
|
9944
10099
|
};
|
|
9945
10100
|
|
|
9946
|
-
const duetHeaderCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-header,*.sc-duet-header::after,*.sc-duet-header::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-header-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){/*!@:host*/.sc-duet-header-h{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){/*!@:host*/.sc-duet-header-h{position:sticky;top:-4rem;z-index:400}}/*!@.duet-header-reserved-space*/.duet-header-reserved-space.sc-duet-header{height:4rem}@media (min-width: 62em){/*!@.duet-header-reserved-space.duet-with-links*/.duet-header-reserved-space.duet-with-links.sc-duet-header{height:7rem}}/*!@.duet-header*/.duet-header.sc-duet-header{-webkit-user-select:none;user-select:none;position:fixed;top:0;left:0;z-index:400;display:block;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:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left}/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}@media (min-width: 62em){/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){/*!@.duet-header*/.duet-header.sc-duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}/*!@.duet-header.duet-header-inactive*/.duet-header.duet-header-inactive.sc-duet-header{position:fixed}}/*!@.duet-header **/.duet-header.sc-duet-header *.sc-duet-header{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}/*!@.duet-header-top*/.duet-header-top.sc-duet-header{position:relative;z-index:200;display:flex;flex-direction:row;align-items:center;width:100%;height:4rem;padding:0 16px;background:white;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}@media (min-width: 62em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{z-index:100;padding:0 28px;box-shadow:none}/*!@.duet-header-top duet-logo*/.duet-header-top.sc-duet-header duet-logo.sc-duet-header{padding-right:4px}}@media (min-width: 106.25em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{padding:0 48px}}/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{border-color:#e4e4e6;box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{box-shadow:none}}/*!@.duet-theme-turva .duet-header-top duet-logo*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header duet-logo.sc-duet-header{left:-80px !important;margin-top:-8px !important}/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{max-width:200px;padding-left:16px;margin-top:1px;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #cfd2d4}/*!@.duet-theme-turva .duet-header-top .duet-header-region*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{border-color:#cfcfd1}@media (max-width: 35.9375em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{display:none}}@media (min-width: 62em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{padding-left:19px}}/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:fixed;top:4rem;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;width:100%;overflow-y:auto;visibility:hidden;background:#f5f8fa;opacity:0;-webkit-overflow-scrolling:touch}/*!@.duet-theme-turva .duet-header-bottom*/.duet-theme-turva.sc-duet-header .duet-header-bottom.sc-duet-header{background:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;top:auto;bottom:auto;z-index:200;flex-direction:row;overflow:visible;visibility:visible;background:white;opacity:1}/*!@.duet-header-bottom.duet-header-inactive*/.duet-header-bottom.duet-header-inactive.sc-duet-header{position:relative}}/*!@.duet-header-bottom.active*/.duet-header-bottom.active.sc-duet-header{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;transition:none !important}}/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:1;transition:none !important;transform:none}}/*!@.active .duet-header-items,\n.active .duet-header-bottom-utils,\n.active .duet-header-utils*/.active.sc-duet-header .duet-header-items.sc-duet-header,.active.sc-duet-header .duet-header-bottom-utils.sc-duet-header,.active.sc-duet-header .duet-header-utils.sc-duet-header{opacity:1;transform:translateY(0)}/*!@.duet-header-items*/.duet-header-items.sc-duet-header{position:relative;z-index:300;display:block;width:100%;font-size:1rem;font-weight:400;line-height:1.5;background:white}@media (min-width: 62em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{padding-left:43.6363636364px}}/*!@.duet-header-items a*/.duet-header-items.sc-duet-header a.sc-duet-header{position:relative;display:block;width:100%;height:48px;padding:0 20px;overflow:hidden;font-size:1rem;font-weight:600;line-height:48px;color:#00294d;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){/*!@.duet-header-items a*/.duet-header-items.sc-duet-header a.sc-duet-header{border-radius:4px}}/*!@.duet-theme-turva .duet-header-items a*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.sc-duet-header{font-weight:600;color:#171c3a;border-color:#e1e3e6}/*!@.duet-header-items a:hover*/.duet-header-items.sc-duet-header a.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-items a:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.sc-duet-header:hover{color:#444445}/*!@.duet-header-items a:focus*/.duet-header-items.sc-duet-header a.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-items a:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-items.sc-duet-header a.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-items a:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-items a*/.duet-header-items.sc-duet-header a.sc-duet-header{width:auto;max-width:300px;padding:0 12px;overflow:hidden;font-size:0.875rem;text-overflow:ellipsis;border:0}}/*!@.duet-header-items a.active*/.duet-header-items.sc-duet-header a.active.sc-duet-header{color:#0077b3;-moz-osx-font-smoothing:auto;-webkit-font-smoothing:subpixel-antialiased}/*!@.duet-theme-turva .duet-header-items a.active*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.active.sc-duet-header{color:#c60c30}/*!@.duet-header-items a.active:hover*/.duet-header-items.sc-duet-header a.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-items a.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-items a.active::after*/.duet-header-items.sc-duet-header a.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-items a.active::after*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header a.active.sc-duet-header::after{background:#c60c30}@media (min-width: 62em){/*!@.duet-header-items a.active::after*/.duet-header-items.sc-duet-header a.active.sc-duet-header::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-right:-8px;margin-left:auto;cursor:pointer;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-header-toggle:focus*/.duet-header-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:none}}/*!@.duet-header-hamburger*/.duet-header-hamburger.sc-duet-header{position:relative;width:24px;height:24px;margin-top:5px !important;pointer-events:none;transition:0.4s ease-in-out;backface-visibility:hidden}/*!@.duet-header-hamburger .duet-header-bar*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{position:absolute;left:0;display:block;width:100%;height:2px;background:#00294d;border-radius:20rem;opacity:1;transition:0.25s ease-in-out;transform:rotate(0deg) scale(0.98)}/*!@.duet-theme-turva .duet-header-hamburger .duet-header-bar*/.duet-theme-turva.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{background:#171c3a}/*!@.duet-header-hamburger .duet-header-bar:nth-child(1)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:0}/*!@.duet-header-hamburger .duet-header-bar:nth-child(2), .duet-header-hamburger .duet-header-bar:nth-child(3)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2),.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){top:7px}/*!@.duet-header-hamburger .duet-header-bar:nth-child(4)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:14px}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(1)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:7px;left:50%;width:0%}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(2)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2){transform:rotate(45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(3)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){transform:rotate(-45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(4)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:7px;left:50%;width:0%}/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{position:absolute;top:-4rem;right:0;z-index:999999999;flex-direction:row;align-items:center;justify-content:space-between;width:auto;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{margin-right:36px}}@media (min-width: 62em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{margin-right:36px}}/*!@button*/button.sc-duet-header{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-theme-turva button*/.duet-theme-turva.sc-duet-header button.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-header-button*/.duet-header-button.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 20px;overflow:hidden;font-size:1rem;font-weight:400;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-bottom:1px solid #e1e3e6;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-theme-turva .duet-header-button*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header{color:#171c3a;border-color:#e4e4e6}/*!@.duet-header-button:hover*/.duet-header-button.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-button:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:hover{color:#444445}/*!@.duet-header-button:focus*/.duet-header-button.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-button:active*/.duet-header-button.sc-duet-header:active{opacity:0.75}@media (min-width: 62em){/*!@.duet-header-button*/.duet-header-button.sc-duet-header{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}/*!@.duet-header-button::before*/.duet-header-button.sc-duet-header::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}/*!@.duet-theme-turva .duet-header-button::before*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header::before{background:#cfcfd1}}/*!@.duet-header-button.active*/.duet-header-button.active.sc-duet-header{color:#0077b3;border-radius:0}/*!@.duet-theme-turva .duet-header-button.active*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header{color:#c60c30}/*!@.duet-header-button.active:hover*/.duet-header-button.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-button.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-button.active::after*/.duet-header-button.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-button.active::after*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header::after{color:#c60c30}/*!@.duet-header-no-action*/.duet-header-no-action.sc-duet-header{pointer-events:none}/*!@.duet-header-user-label*/.duet-header-user-label.sc-duet-header{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child::before,\n.duet-header-utils > *:last-child button::before*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child::before,.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child button.sc-duet-header::before{display:none}}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child .duet-header-dropdown-content*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child .duet-header-dropdown-content.sc-duet-header{right:0;left:auto}}/*!@.duet-header-language*/.duet-header-language.sc-duet-header{text-transform:uppercase}/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{display:inline-flex;min-width:12px;margin-right:12px;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{margin-right:8px}}/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{position:absolute;top:50%;right:20px;display:flex;width:10px;height:10px;margin-left:8px;line-height:normal;pointer-events:none;transition:300ms ease;transform:translateY(-50%);transform-origin:50% 50%}@media (min-width: 62em){/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{width:7px;height:7px}}/*!@.duet-header-caret duet-icon*/.duet-header-caret.sc-duet-header duet-icon.sc-duet-header{width:10px}/*!@.duet-header-dropdown-toggle.active .duet-header-caret*/.duet-header-dropdown-toggle.active.sc-duet-header .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(180deg)}/*!@.duet-header-dropdown-toggle:focus*/.duet-header-dropdown-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown-toggle:active*/.duet-header-dropdown-toggle.sc-duet-header:active{outline:none}/*!@.duet-header-badge*/.duet-header-badge.sc-duet-header{display:inline-block;width:6px;height:6px;margin-top:16px;margin-left:5px;vertical-align:top;background:#f7b228;border-radius:50%;box-shadow:0 0 0 1px #c18b1f}/*!@.duet-theme-turva .duet-header-badge*/.duet-theme-turva.sc-duet-header .duet-header-badge.sc-duet-header{background:#faa40f}/*!@.duet-header-dropdown*/.duet-header-dropdown.sc-duet-header{position:relative}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{display:none !important}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#004d80;border-bottom:1px solid #f5f8fa}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#444445;border-color:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border:0}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{display:none;padding-bottom:16px;background:#f5f8fa;border-bottom:1px solid #e1e3e6}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{position:absolute;top:100%;left:0;z-index:600;display:block;min-width:170px;padding-top:16px;padding-left:0;visibility:hidden;border:0;border-radius:4px;border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:300ms ease;transform:scale(0.85) translateZ(0) translateY(-20px)}}/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{display:block}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content a*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{padding:3px 8px 4px !important;position:relative;display:block;width:100%;padding-right:16px;padding-left:48px !important;overflow:hidden;font-size:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:300ms ease}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{color:#171c3a}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{padding-left:20px !important}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:hover{background:#e6f2f8}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:hover{background:#f9e6ea}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:focus*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{padding-right:36px;font-weight:600;vertical-align:baseline;pointer-events:none}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{font-weight:700}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{color:white;background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-link-external.sc-duet-header{margin-left:4px}/*!@.duet-header-back .duet-header-top*/.duet-header-back.sc-duet-header .duet-header-top.sc-duet-header{flex-direction:row;align-items:center;justify-content:center}/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}/*!@.duet-header-back .duet-header-toggle*/.duet-header-back.sc-duet-header .duet-header-toggle.sc-duet-header{display:none !important}/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{padding:8px 16px 9px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:160px;height:1px;overflow:hidden;font-weight:600;color:#0077b3;text-align:center;text-decoration:none;background:white;border-radius:4px;opacity:0}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-header-skip:focus, .duet-header-skip:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header:focus,.duet-header-skip.sc-duet-header:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-theme-turva .duet-header-skip*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header{min-width:120px;color:#171c3a}@media (min-width: 106.25em){/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{margin-left:20px}}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}";
|
|
10101
|
+
const DuetHeaderIcon = (props, _children) => {
|
|
10102
|
+
const iconSize = props.iconSize ? props.iconSize : "x-small";
|
|
10103
|
+
return (hAsync("span", { class: "duet-header-icon" },
|
|
10104
|
+
hAsync("duet-icon", { margin: "none", size: iconSize, icon: props.icon, color: "currentColor" })));
|
|
10105
|
+
};
|
|
10106
|
+
|
|
10107
|
+
const DuetHeaderDropdown = (props, _children) => {
|
|
10108
|
+
const accessibleLabel = props.accessibleText ? props.accessibleText : props.label;
|
|
10109
|
+
return (hAsync("div", { class: { ["duet-header-dropdown"]: true, [props.className]: !!props.className } },
|
|
10110
|
+
hAsync("button", { ref: props.toggleRef, "aria-haspopup": "listbox", "aria-controls": props.id, "aria-expanded": props.isOpen ? "true" : "false", "aria-labelledby": `${props.id}-accessible-label`, id: `${props.id}-button`, type: "button", class: {
|
|
10111
|
+
[props.id]: true,
|
|
10112
|
+
"duet-header-dropdown-toggle": true,
|
|
10113
|
+
"duet-header-button": true,
|
|
10114
|
+
active: props.active,
|
|
10115
|
+
}, onClick: props.onToggle },
|
|
10116
|
+
props.icon && hAsync(DuetHeaderIcon, { icon: props.icon }),
|
|
10117
|
+
hAsync("span", { "aria-hidden": "true", id: `${props.id}-label`, class: "duet-header-dropdown-label" }, props.label),
|
|
10118
|
+
props.badge && hAsync("div", { class: "duet-header-badge" }),
|
|
10119
|
+
hAsync("div", { class: "duet-header-caret", "aria-hidden": "true" },
|
|
10120
|
+
hAsync("duet-icon", { margin: "none", size: "auto", icon: actionArrowDownSmall.svg, color: "currentColor" })),
|
|
10121
|
+
hAsync("duet-visually-hidden", { id: `${props.id}-accessible-label` }, accessibleLabel)),
|
|
10122
|
+
hAsync("div", { ref: props.itemsRef, tabindex: "-1", role: "menu", id: props.id, "aria-labelledby": `${props.id}-button`, class: {
|
|
10123
|
+
"duet-header-dropdown-content": true,
|
|
10124
|
+
[`${props.id}-items`]: true,
|
|
10125
|
+
active: props.isOpen,
|
|
10126
|
+
} }, _children)));
|
|
10127
|
+
};
|
|
10128
|
+
|
|
10129
|
+
const DuetHeaderHamburger = () => (hAsync("div", { class: "duet-header-hamburger" },
|
|
10130
|
+
hAsync("span", { class: "duet-header-bar" }),
|
|
10131
|
+
hAsync("span", { class: "duet-header-bar" }),
|
|
10132
|
+
hAsync("span", { class: "duet-header-bar" }),
|
|
10133
|
+
hAsync("span", { class: "duet-header-bar" })));
|
|
10134
|
+
|
|
10135
|
+
const duetHeaderCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-header,*.sc-duet-header::after,*.sc-duet-header::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-header-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){/*!@:host*/.sc-duet-header-h{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){/*!@:host*/.sc-duet-header-h{position:sticky;top:-4rem;z-index:400}}@supports (position: -webkit-sticky){/*!@:host(.duet-header-multi-level-desktop-variation)*/.duet-header-multi-level-desktop-variation.sc-duet-header-h{top:0}}@supports (position: sticky){/*!@:host(.duet-header-multi-level-desktop-variation)*/.duet-header-multi-level-desktop-variation.sc-duet-header-h{top:0}}/*!@.duet-header-reserved-space*/.duet-header-reserved-space.sc-duet-header{height:4rem}@media (min-width: 62em){/*!@.duet-header-reserved-space.duet-with-links*/.duet-header-reserved-space.duet-with-links.sc-duet-header{height:7rem}}/*!@.duet-header*/.duet-header.sc-duet-header{-webkit-user-select:none;user-select:none;position:fixed;top:0;left:0;z-index:400;display:block;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:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left}/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}@media (min-width: 62em){/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){/*!@.duet-header*/.duet-header.sc-duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}/*!@.duet-header.duet-header-inactive*/.duet-header.duet-header-inactive.sc-duet-header{position:fixed}}/*!@.duet-header **/.duet-header.sc-duet-header *.sc-duet-header{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}/*!@.duet-header-top*/.duet-header-top.sc-duet-header{position:relative;z-index:200;display:flex;flex-direction:row;align-items:center;width:100%;height:4rem;padding:0 16px;background:white;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}@media (min-width: 62em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{z-index:100;padding:0 28px;box-shadow:none}/*!@.duet-header-top duet-logo*/.duet-header-top.sc-duet-header duet-logo.sc-duet-header{padding-right:4px}}@media (min-width: 106.25em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{padding:0 48px}}/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{border-color:#e4e4e6;box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{box-shadow:none}}/*!@.duet-theme-turva .duet-header-top duet-logo*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header duet-logo.sc-duet-header{left:-80px !important;margin-top:-8px !important}/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{max-width:200px;padding-left:16px;margin-top:1px;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #cfd2d4}/*!@.duet-theme-turva .duet-header-top .duet-header-region*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{border-color:#cfcfd1}@media (max-width: 35.9375em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{display:none}}@media (min-width: 62em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{padding-left:19px}}/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:fixed;top:4rem;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;width:100%;overflow-y:auto;visibility:hidden;background:#f3f9fc;opacity:0;-webkit-overflow-scrolling:touch}/*!@.duet-theme-turva .duet-header-bottom*/.duet-theme-turva.sc-duet-header .duet-header-bottom.sc-duet-header{background:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;top:auto;bottom:auto;z-index:200;flex-direction:row;overflow:visible;visibility:visible;background:white;opacity:1}/*!@.duet-header-bottom.duet-header-inactive*/.duet-header-bottom.duet-header-inactive.sc-duet-header{position:relative}}/*!@.duet-header-bottom.active*/.duet-header-bottom.active.sc-duet-header{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;transition:none !important}}/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:1;transition:none !important;transform:none}}/*!@.active .duet-header-items,\n.active .duet-header-bottom-utils,\n.active .duet-header-utils*/.active.sc-duet-header .duet-header-items.sc-duet-header,.active.sc-duet-header .duet-header-bottom-utils.sc-duet-header,.active.sc-duet-header .duet-header-utils.sc-duet-header{opacity:1;transform:translateY(0)}/*!@.duet-header-items*/.duet-header-items.sc-duet-header{position:relative;z-index:300;display:block;width:100%;font-size:1rem;font-weight:400;line-height:1.5;background:white}@media (min-width: 62em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{padding-left:43.6363636364px}}/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border:0}}/*!@.duet-header-items .duet-header-second-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 40px;border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-button*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-button.sc-duet-header{border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-dropdown-content*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-dropdown-content.sc-duet-header{padding:0;border:0}/*!@.duet-header-items .duet-header-third-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-third-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 75px}/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;padding:0 20px;overflow:hidden;font-size:1rem;line-height:48px;color:#00294d;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{border-radius:4px}}/*!@.duet-theme-turva .duet-header-items .duet-header-item*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{font-weight:600;color:#171c3a;border-color:#e1e3e6}/*!@.duet-header-items .duet-header-item:hover*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-items .duet-header-item:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#444445}/*!@.duet-header-items .duet-header-item:focus*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{width:auto;max-width:300px;padding:0 12px;overflow:hidden;font-size:0.875rem;text-overflow:ellipsis;border:0}}/*!@.duet-header-items .duet-header-item.active*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#0077b3;-moz-osx-font-smoothing:auto;-webkit-font-smoothing:subpixel-antialiased}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#c60c30}/*!@.duet-header-items .duet-header-item.active:hover*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active::after*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{background:#c60c30}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}/*!@.duet-header-third-level-active .duet-header-items .duet-header-first-level.active*/.duet-header-third-level-active.sc-duet-header .duet-header-items.sc-duet-header .duet-header-first-level.active.sc-duet-header{color:#00294d}/*!@.duet-header-third-level-active .duet-header-items .duet-header-first-level.active::after*/.duet-header-third-level-active.sc-duet-header .duet-header-items.sc-duet-header .duet-header-first-level.active.sc-duet-header::after{display:none}/*!@.duet-header-third-level-active .duet-header-items .duet-header-second-level button*/.duet-header-third-level-active.sc-duet-header .duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header button.sc-duet-header{color:#00294d}/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-right:-8px;margin-left:auto;cursor:pointer;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-header-toggle:focus*/.duet-header-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:none}}/*!@.duet-header-hamburger*/.duet-header-hamburger.sc-duet-header{position:relative;width:24px;height:24px;margin-top:5px !important;pointer-events:none;transition:0.4s ease-in-out;backface-visibility:hidden}/*!@.duet-header-hamburger .duet-header-bar*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{position:absolute;left:0;display:block;width:100%;height:2px;background:#00294d;border-radius:20rem;opacity:1;transition:0.25s ease-in-out;transform:rotate(0deg) scale(0.98)}/*!@.duet-theme-turva .duet-header-hamburger .duet-header-bar*/.duet-theme-turva.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{background:#171c3a}/*!@.duet-header-hamburger .duet-header-bar:nth-child(1)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:0}/*!@.duet-header-hamburger .duet-header-bar:nth-child(2), .duet-header-hamburger .duet-header-bar:nth-child(3)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2),.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){top:7px}/*!@.duet-header-hamburger .duet-header-bar:nth-child(4)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:14px}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(1)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:7px;left:50%;width:0%}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(2)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2){transform:rotate(45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(3)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){transform:rotate(-45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(4)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:7px;left:50%;width:0%}/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{position:absolute;top:-4rem;right:0;z-index:999999999;flex-direction:row;align-items:center;justify-content:space-between;width:auto;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{margin-right:36px}}@media (min-width: 62em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{margin-right:36px}}/*!@button*/button.sc-duet-header{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-theme-turva button*/.duet-theme-turva.sc-duet-header button.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-header-button*/.duet-header-button.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 20px;overflow:hidden;font-size:1rem;font-weight:400;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-bottom:1px solid #e1e3e6;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-theme-turva .duet-header-button*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header{color:#171c3a;border-color:#e4e4e6}/*!@.duet-header-button:hover*/.duet-header-button.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-button:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:hover{color:#444445}/*!@.duet-header-button:focus*/.duet-header-button.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-button:active*/.duet-header-button.sc-duet-header:active{opacity:0.75}@media (min-width: 62em){/*!@.duet-header-button*/.duet-header-button.sc-duet-header{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}/*!@.duet-header-button::before*/.duet-header-button.sc-duet-header::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}/*!@.duet-theme-turva .duet-header-button::before*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header::before{background:#cfcfd1}}/*!@.duet-header-button.active*/.duet-header-button.active.sc-duet-header{color:#0077b3;border-radius:0}/*!@.duet-theme-turva .duet-header-button.active*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header{color:#c60c30}/*!@.duet-header-button.active:hover*/.duet-header-button.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-button.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-button.active::after*/.duet-header-button.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-button.active::after*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header::after{color:#c60c30}/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{align-self:center;justify-content:center;width:auto;height:2.5rem;margin:2.25rem 0;font-weight:600;border:2px solid #00294d;border-radius:20rem}/*!@.duet-theme-turva .duet-header-utils .duet-header-button.duet-header-logout*/.duet-theme-turva.sc-duet-header .duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{border-color:#171c3a}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.5rem}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-button-label.sc-duet-header{font-size:0.875rem}@media (min-width: 62em){/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{height:4rem;margin:0;font-weight:400;border:0}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.75rem}}/*!@.duet-header-no-action*/.duet-header-no-action.sc-duet-header{pointer-events:none}/*!@.duet-header-user-label*/.duet-header-user-label.sc-duet-header{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child::before,\n.duet-header-utils > *:last-child button::before*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child::before,.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child button.sc-duet-header::before{display:none}}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child .duet-header-dropdown-content*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child .duet-header-dropdown-content.sc-duet-header{right:0;left:auto}}/*!@.duet-header-language*/.duet-header-language.sc-duet-header{text-transform:uppercase}/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{display:inline-flex;min-width:12px;margin-right:12px;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{margin-right:8px}}/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{position:absolute;top:50%;right:20px;display:flex;width:10px;height:10px;margin-left:8px;line-height:normal;pointer-events:none;transition:300ms ease;transform:translateY(-50%);transform-origin:50% 50%}@media (min-width: 62em){/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{width:7px;height:7px}}/*!@.duet-header-caret duet-icon*/.duet-header-caret.sc-duet-header duet-icon.sc-duet-header{width:10px}/*!@.duet-header-dropdown-toggle.active .duet-header-caret*/.duet-header-dropdown-toggle.active.sc-duet-header .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(180deg)}/*!@.duet-header-dropdown-toggle:focus*/.duet-header-dropdown-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown-toggle:active*/.duet-header-dropdown-toggle.sc-duet-header:active{outline:none}/*!@.duet-header-badge*/.duet-header-badge.sc-duet-header{display:inline-block;width:6px;height:6px;margin-top:-1rem;margin-left:5px;vertical-align:top;background:#f7b228;border-radius:50%;box-shadow:0 0 0 1px #c18b1f}/*!@.duet-theme-turva .duet-header-badge*/.duet-theme-turva.sc-duet-header .duet-header-badge.sc-duet-header{background:#faa40f}/*!@.duet-header-dropdown*/.duet-header-dropdown.sc-duet-header{position:relative}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{display:none !important}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#004d80;border-bottom:1px solid #f5f8fa}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#444445;border-color:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border:0}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{display:none;padding-bottom:16px;background:#f3f9fc;border-bottom:1px solid #e1e3e6}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{position:absolute;top:100%;left:0;z-index:600;display:block;min-width:150px;padding-top:16px;padding-left:0;visibility:hidden;border:0;border-radius:4px;border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:300ms ease;transform:scale(0.85) translateZ(0) translateY(-20px)}}@media (min-width: 64.0625em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{min-width:170px}}/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{display:block}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding:3px 8px 4px !important;position:relative;display:block;width:100%;padding-right:16px;padding-left:48px !important;overflow:hidden;font-size:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:300ms ease}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){color:#171c3a}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding-right:20px !important;padding-left:20px !important}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#e6f2f8}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#f9e6ea}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{padding-right:36px;font-weight:600;vertical-align:baseline;pointer-events:none}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{font-weight:700}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{color:white;background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-link-external.sc-duet-header{margin-left:4px}/*!@.duet-header-back .duet-header-top*/.duet-header-back.sc-duet-header .duet-header-top.sc-duet-header{flex-direction:row;align-items:center;justify-content:center}/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}/*!@.duet-header-back .duet-header-toggle*/.duet-header-back.sc-duet-header .duet-header-toggle.sc-duet-header{display:none !important}/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:#0077b3;text-align:center;text-decoration:none;background:white;border-radius:4px;opacity:0}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-header-skip:focus, .duet-header-skip:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header:focus,.duet-header-skip.sc-duet-header:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-theme-turva .duet-header-skip*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header{min-width:120px;color:#171c3a}@media (min-width: 106.25em){/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{margin-left:20px}}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}/*!@.duet-header-multi-level-desktop*/.duet-header-multi-level-desktop.sc-duet-header{height:6rem}/*!@.duet-header-multi-level-desktop .duet-header-top*/.duet-header-multi-level-desktop.sc-duet-header .duet-header-top.sc-duet-header{justify-content:space-between;height:6rem}/*!@.duet-header-multi-level-desktop .duet-header-button*/.duet-header-multi-level-desktop.sc-duet-header .duet-header-button.sc-duet-header{height:6rem}/*!@.duet-header-multi-level-desktop .logo-and-segment*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header{display:flex;flex-basis:0;flex-direction:column;flex-grow:1;padding-top:1rem}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400;margin-left:2rem}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level-desktop .logo-and-segment button*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header{align-items:flex-start;height:2rem;font-weight:600;line-height:1rem}/*!@.duet-header-multi-level-desktop .logo-and-segment button::before*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-caret*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-caret.sc-duet-header{top:25%}/*!@.duet-header-multi-level-desktop-nav*/.duet-header-multi-level-desktop-nav.sc-duet-header{display:flex}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header{position:static}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:400;padding-right:1rem;font-size:1rem;font-weight:600}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#0077b3}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{z-index:399;display:flex;justify-content:center;width:100%;height:4.5rem;padding:0;background:#f3f9fc;border-top:1px solid #e1e3e6;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07);transition:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;min-width:6rem;height:100%;padding:0 1rem !important;font-weight:600}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{font-weight:600;color:#0077b3;background:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header::after{transform:translateY(0)}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header .duet-header-icon.sc-duet-header{margin:0}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-badge.sc-duet-header{position:absolute;margin-top:-2rem;margin-right:-2.25rem}/*!@.duet-header-multi-level-desktop-nav button::before*/.duet-header-multi-level-desktop-nav.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-caret*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-caret.sc-duet-header{display:none}/*!@.duet-header-multi-level-desktop-utils*/.duet-header-multi-level-desktop-utils.sc-duet-header{display:flex;flex-basis:0;flex-grow:1;justify-content:flex-end}/*!@.duet-header-multi-level-desktop-utils > :last-child::before*/.duet-header-multi-level-desktop-utils.sc-duet-header>.sc-duet-header:last-child::before{display:none}/*!@.duet-header-multi-level-desktop-utils .duet-header-dropdown*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400}/*!@.duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level-desktop-utils .duet-header-button-label,\n.duet-header-multi-level-desktop-utils .duet-header-dropdown-label*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:none}@media (min-width: 64.0625em){/*!@.duet-header-multi-level-desktop-utils .duet-header-button-label,\n.duet-header-multi-level-desktop-utils .duet-header-dropdown-label*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:initial}}/*!@.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#fcf3f4}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#c60c30}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#fcf3f4;border-color:#e4e4e6}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{background:#c60c30}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{color:#c60c30;background:none}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#fcf3f4}";
|
|
9947
10136
|
|
|
9948
10137
|
const createEvent = (ev, data) => ({
|
|
9949
10138
|
component: "duet-header",
|
|
@@ -9951,14 +10140,15 @@ const createEvent = (ev, data) => ({
|
|
|
9951
10140
|
originalEvent: ev,
|
|
9952
10141
|
});
|
|
9953
10142
|
/**
|
|
9954
|
-
* @slot utility - A slot for utilities, such as a notification drawer
|
|
9955
|
-
* @slot logo-utility - A slot to place elements alongside the logo. This takes precedence over the **region** prop.
|
|
10143
|
+
* @slot utility - A slot for utilities, such as a notification drawer or shopping basket.
|
|
10144
|
+
* @slot logo-utility - A slot to place elements alongside the logo. This takes precedence over the **region** prop. Note: not available in desktop multilevel header.
|
|
9956
10145
|
*/
|
|
9957
10146
|
class DuetHeader {
|
|
9958
10147
|
constructor(hostRef) {
|
|
9959
10148
|
registerInstance(this, hostRef);
|
|
9960
10149
|
this.duetChange = createEvent$2(this, "duetChange", 3);
|
|
9961
10150
|
this.duetSessionClick = createEvent$2(this, "duetSessionClick", 7);
|
|
10151
|
+
this.duetSearchClick = createEvent$2(this, "duetSearchClick", 7);
|
|
9962
10152
|
this.duetUserClick = createEvent$2(this, "duetUserClick", 7);
|
|
9963
10153
|
this.duetLanguageSelect = createEvent$2(this, "duetLanguageSelect", 7);
|
|
9964
10154
|
this.duetLogoClick = createEvent$2(this, "duetLogoClick", 7);
|
|
@@ -9967,7 +10157,15 @@ class DuetHeader {
|
|
|
9967
10157
|
this.duetItemClick = createEvent$2(this, "duetItemClick", 7);
|
|
9968
10158
|
this.duetSkipClick = createEvent$2(this, "duetSkipClick", 7);
|
|
9969
10159
|
this.duetAnalytics = createEvent$2(this, "duetAnalytics", 7);
|
|
10160
|
+
var _a;
|
|
10161
|
+
/**
|
|
10162
|
+
* Own Properties
|
|
10163
|
+
*/
|
|
10164
|
+
this.subMenuItemRefs = {};
|
|
10165
|
+
this.subMenuButtonRefs = {};
|
|
9970
10166
|
this.hasLanguageChanged = false;
|
|
10167
|
+
this.mql = [window.matchMedia(media_query_large.replace(/'/g, ""))];
|
|
10168
|
+
this.boundMqlFunctions = [];
|
|
9971
10169
|
/**
|
|
9972
10170
|
* State() variables
|
|
9973
10171
|
* Inlined decorator, alphabetical order.
|
|
@@ -9975,12 +10173,17 @@ class DuetHeader {
|
|
|
9975
10173
|
this.isContactOpen = false;
|
|
9976
10174
|
this.isLanguageOpen = false;
|
|
9977
10175
|
this.isSlideOutOpen = false;
|
|
10176
|
+
this.isSegmentOpen = false;
|
|
10177
|
+
this.openMenu = null;
|
|
10178
|
+
this.closedActives = null;
|
|
9978
10179
|
this.processedItems = null;
|
|
9979
10180
|
this.processedLanguageItems = null;
|
|
9980
10181
|
this.processedContactItems = null;
|
|
9981
10182
|
this.processedSession = null;
|
|
10183
|
+
this.processedSearch = null;
|
|
9982
10184
|
this.processedUser = null;
|
|
9983
10185
|
this.processedBack = null;
|
|
10186
|
+
this.renderDesktopNav = (_a = this.mql[0]) === null || _a === void 0 ? void 0 : _a.matches;
|
|
9984
10187
|
/**
|
|
9985
10188
|
* Theme of the header.
|
|
9986
10189
|
*/
|
|
@@ -10086,6 +10289,7 @@ class DuetHeader {
|
|
|
10086
10289
|
this.logoHref = "/";
|
|
10087
10290
|
/**
|
|
10088
10291
|
* The href of the current page item that is shown as “active”.
|
|
10292
|
+
* Note: not available in multilevel headers.
|
|
10089
10293
|
*/
|
|
10090
10294
|
this.currentHref = "/";
|
|
10091
10295
|
/**
|
|
@@ -10095,10 +10299,12 @@ class DuetHeader {
|
|
|
10095
10299
|
this.skipToId = "";
|
|
10096
10300
|
/**
|
|
10097
10301
|
* Region that is shown next to the logo. If empty, region will be hidden.
|
|
10302
|
+
* Note: not available in desktop multilevel header.
|
|
10098
10303
|
*/
|
|
10099
10304
|
this.region = "";
|
|
10100
10305
|
/**
|
|
10101
10306
|
* Label of the contact menu. If empty, contact menu will be hidden.
|
|
10307
|
+
* Note: not available in multilevel headers.
|
|
10102
10308
|
*/
|
|
10103
10309
|
this.contact = "";
|
|
10104
10310
|
this.handleClick = (event) => {
|
|
@@ -10117,6 +10323,11 @@ class DuetHeader {
|
|
|
10117
10323
|
this.handleClick(e);
|
|
10118
10324
|
this.duetSessionClick.emit(e);
|
|
10119
10325
|
};
|
|
10326
|
+
this.handleSearchClick = (ev) => {
|
|
10327
|
+
const e = createEvent(ev, this.processedSearch);
|
|
10328
|
+
this.handleClick(e);
|
|
10329
|
+
this.duetSearchClick.emit(e);
|
|
10330
|
+
};
|
|
10120
10331
|
this.handleUserClick = (ev) => {
|
|
10121
10332
|
const e = createEvent(ev, this.processedUser);
|
|
10122
10333
|
this.handleClick(e);
|
|
@@ -10139,40 +10350,55 @@ class DuetHeader {
|
|
|
10139
10350
|
this.duetLogoClick.emit(e);
|
|
10140
10351
|
};
|
|
10141
10352
|
this.handleArrowKeys = ev => {
|
|
10142
|
-
|
|
10143
|
-
|
|
10144
|
-
|
|
10145
|
-
|
|
10146
|
-
|
|
10147
|
-
|
|
10148
|
-
|
|
10149
|
-
|
|
10150
|
-
|
|
10151
|
-
|
|
10152
|
-
button.focus();
|
|
10153
|
-
}
|
|
10353
|
+
let button;
|
|
10354
|
+
if (isArrowLeftKey(ev) || isArrowUpKey(ev)) {
|
|
10355
|
+
button = ev.target.previousElementSibling;
|
|
10356
|
+
}
|
|
10357
|
+
else if (isArrowRightKey(ev) || isArrowDownKey(ev)) {
|
|
10358
|
+
button = ev.target.nextElementSibling;
|
|
10359
|
+
}
|
|
10360
|
+
if (button) {
|
|
10361
|
+
ev.preventDefault();
|
|
10362
|
+
button.focus();
|
|
10154
10363
|
}
|
|
10155
10364
|
};
|
|
10156
|
-
this.toggleMenu = (ev, type) => {
|
|
10365
|
+
this.toggleMenu = (ev, type, id, active) => {
|
|
10157
10366
|
let el;
|
|
10158
10367
|
ev.preventDefault();
|
|
10159
10368
|
ev.stopPropagation();
|
|
10369
|
+
if (active === true && !this.openMenu) {
|
|
10370
|
+
const closedActives = this.closedActives ? [...this.closedActives] : [];
|
|
10371
|
+
const index = closedActives.findIndex(i => i === id);
|
|
10372
|
+
if (index > -1) {
|
|
10373
|
+
closedActives.splice(index, 1);
|
|
10374
|
+
this.closedActives = [...closedActives];
|
|
10375
|
+
}
|
|
10376
|
+
else {
|
|
10377
|
+
this.closedActives = [...closedActives, id];
|
|
10378
|
+
}
|
|
10379
|
+
}
|
|
10380
|
+
else {
|
|
10381
|
+
this.openMenu = this.openMenu === id ? null : id;
|
|
10382
|
+
}
|
|
10160
10383
|
// For language menu
|
|
10161
10384
|
if (type === "language") {
|
|
10162
10385
|
this.isContactOpen = false;
|
|
10163
10386
|
this.isLanguageOpen = !this.isLanguageOpen;
|
|
10387
|
+
this.isSegmentOpen = false;
|
|
10164
10388
|
el = this.languageItemsEl;
|
|
10165
10389
|
}
|
|
10166
10390
|
// For contact menu
|
|
10167
10391
|
else if (type === "contact") {
|
|
10168
10392
|
this.isLanguageOpen = false;
|
|
10169
10393
|
this.isContactOpen = !this.isContactOpen;
|
|
10394
|
+
this.isSegmentOpen = false;
|
|
10170
10395
|
el = this.contactItemsEl;
|
|
10171
10396
|
}
|
|
10172
10397
|
// For mobile menu
|
|
10173
10398
|
else if (type === "mobile") {
|
|
10174
10399
|
this.isContactOpen = false;
|
|
10175
10400
|
this.isLanguageOpen = false;
|
|
10401
|
+
this.isSegmentOpen = false;
|
|
10176
10402
|
el = this.navigationEl;
|
|
10177
10403
|
this.isSlideOutOpen = !this.isSlideOutOpen;
|
|
10178
10404
|
if (this.isSlideOutOpen) {
|
|
@@ -10182,7 +10408,19 @@ class DuetHeader {
|
|
|
10182
10408
|
enableBodyScroll(this.navigationEl);
|
|
10183
10409
|
}
|
|
10184
10410
|
}
|
|
10185
|
-
if (
|
|
10411
|
+
else if (type === "sub") {
|
|
10412
|
+
this.isContactOpen = false;
|
|
10413
|
+
this.isLanguageOpen = false;
|
|
10414
|
+
this.isSegmentOpen = false;
|
|
10415
|
+
el = this.subMenuItemRefs[id];
|
|
10416
|
+
}
|
|
10417
|
+
else if (type === "segment") {
|
|
10418
|
+
this.isContactOpen = false;
|
|
10419
|
+
this.isLanguageOpen = false;
|
|
10420
|
+
this.isSegmentOpen = !this.isSegmentOpen;
|
|
10421
|
+
el = this.segmentItemsEl;
|
|
10422
|
+
}
|
|
10423
|
+
if (this.isSlideOutOpen || this.isLanguageOpen || this.isContactOpen || this.isSegmentOpen || this.openMenu) {
|
|
10186
10424
|
const drawer = this.element.querySelector("duet-notification-drawer");
|
|
10187
10425
|
if (drawer) {
|
|
10188
10426
|
drawer.close(false);
|
|
@@ -10201,10 +10439,27 @@ class DuetHeader {
|
|
|
10201
10439
|
inheritGlobalTheme(this);
|
|
10202
10440
|
this.refresh();
|
|
10203
10441
|
}
|
|
10442
|
+
connectedCallback() {
|
|
10443
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
10444
|
+
// addEventListener is not available in Stencil hydrate
|
|
10445
|
+
if (this.mql[i].addEventListener) {
|
|
10446
|
+
const bound = this.refresh.bind(this);
|
|
10447
|
+
this.mql[i].addEventListener("change", bound);
|
|
10448
|
+
this.boundMqlFunctions[i] = bound;
|
|
10449
|
+
}
|
|
10450
|
+
}
|
|
10451
|
+
}
|
|
10204
10452
|
disconnectedCallback() {
|
|
10205
10453
|
if (this.navigationEl) {
|
|
10206
10454
|
enableBodyScroll(this.navigationEl);
|
|
10207
10455
|
}
|
|
10456
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
10457
|
+
// addEventListener is not available in Stencil hydrate
|
|
10458
|
+
if (this.mql[i].removeEventListener) {
|
|
10459
|
+
this.mql[i].removeEventListener("change", this.boundMqlFunctions[i]);
|
|
10460
|
+
}
|
|
10461
|
+
}
|
|
10462
|
+
this.boundMqlFunctions = [];
|
|
10208
10463
|
}
|
|
10209
10464
|
/**
|
|
10210
10465
|
* Component event handling.
|
|
@@ -10217,7 +10472,7 @@ class DuetHeader {
|
|
|
10217
10472
|
}
|
|
10218
10473
|
}
|
|
10219
10474
|
handleKeyDown(ev) {
|
|
10220
|
-
if (this.isContactOpen || this.isLanguageOpen) {
|
|
10475
|
+
if (this.isContactOpen || this.isLanguageOpen || this.isSegmentOpen) {
|
|
10221
10476
|
const activeElement = this.element.shadowRoot.activeElement;
|
|
10222
10477
|
// When Space is pressed
|
|
10223
10478
|
if (isSpaceKey(ev) && activeElement) {
|
|
@@ -10229,6 +10484,12 @@ class DuetHeader {
|
|
|
10229
10484
|
else if (this.isLanguageOpen) {
|
|
10230
10485
|
this.closeMenus(true);
|
|
10231
10486
|
}
|
|
10487
|
+
else if (this.isSegmentOpen) {
|
|
10488
|
+
this.closeMenus();
|
|
10489
|
+
}
|
|
10490
|
+
else if (this.openMenu) {
|
|
10491
|
+
this.closeMenus();
|
|
10492
|
+
}
|
|
10232
10493
|
activeElement.click();
|
|
10233
10494
|
}
|
|
10234
10495
|
}
|
|
@@ -10258,10 +10519,15 @@ class DuetHeader {
|
|
|
10258
10519
|
* Local methods.
|
|
10259
10520
|
*/
|
|
10260
10521
|
async refresh() {
|
|
10522
|
+
if (this.renderDesktopNav !== this.mql[0].matches) {
|
|
10523
|
+
this.renderDesktopNav = this.mql[0].matches;
|
|
10524
|
+
this.openMenu = null;
|
|
10525
|
+
}
|
|
10261
10526
|
this.processedItems = parsePossibleJSON(this.items);
|
|
10262
10527
|
this.processedLanguageItems = parsePossibleJSON(this.languageItems);
|
|
10263
10528
|
this.processedContactItems = parsePossibleJSON(this.contactItems);
|
|
10264
10529
|
this.processedSession = parsePossibleJSON(this.session);
|
|
10530
|
+
this.processedSearch = parsePossibleJSON(this.search);
|
|
10265
10531
|
this.processedUser = parsePossibleJSON(this.user);
|
|
10266
10532
|
this.processedBack = parsePossibleJSON(this.back);
|
|
10267
10533
|
}
|
|
@@ -10278,7 +10544,7 @@ class DuetHeader {
|
|
|
10278
10544
|
* Closes all dropdown menus in header when called.
|
|
10279
10545
|
*/
|
|
10280
10546
|
async closeMenus(moveFocusToButton = false) {
|
|
10281
|
-
if (this.isContactOpen || this.isLanguageOpen) {
|
|
10547
|
+
if (this.isContactOpen || this.isLanguageOpen || this.isSegmentOpen || this.openMenu) {
|
|
10282
10548
|
if (this.isContactOpen && moveFocusToButton) {
|
|
10283
10549
|
this.contactItemsButtonEl.focus({
|
|
10284
10550
|
preventScroll: true,
|
|
@@ -10289,8 +10555,20 @@ class DuetHeader {
|
|
|
10289
10555
|
preventScroll: true,
|
|
10290
10556
|
});
|
|
10291
10557
|
}
|
|
10558
|
+
if (this.isSegmentOpen && moveFocusToButton) {
|
|
10559
|
+
this.segmentItemsButtonEl.focus({
|
|
10560
|
+
preventScroll: true,
|
|
10561
|
+
});
|
|
10562
|
+
}
|
|
10563
|
+
if (this.openMenu && moveFocusToButton) {
|
|
10564
|
+
this.subMenuButtonRefs[this.openMenu].focus({
|
|
10565
|
+
preventScroll: true,
|
|
10566
|
+
});
|
|
10567
|
+
}
|
|
10292
10568
|
this.isContactOpen = false;
|
|
10293
10569
|
this.isLanguageOpen = false;
|
|
10570
|
+
this.isSegmentOpen = false;
|
|
10571
|
+
this.openMenu = null;
|
|
10294
10572
|
}
|
|
10295
10573
|
}
|
|
10296
10574
|
/**
|
|
@@ -10306,45 +10584,93 @@ class DuetHeader {
|
|
|
10306
10584
|
*/
|
|
10307
10585
|
render() {
|
|
10308
10586
|
const { skipLabel, changeLanguage, activeLanguage } = this.accessibleI18nLabels;
|
|
10309
|
-
|
|
10587
|
+
const skipToLabel = this.skipToId ? (hAsync("a", { href: this.skipToId, class: "duet-header-skip", onClick: this.handleSkipClick }, skipLabel)) : null;
|
|
10588
|
+
const logo = (hAsync("duet-logo", { href: this.logoHref, size: "medium", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
10589
|
+
const largeLogo = (hAsync("duet-logo", { href: this.logoHref, size: "large", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
10590
|
+
const contactDropdown = this.contact && this.processedContactItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-contact", label: this.contact, icon: navigationContactDropdown.svg, active: this.isContactOpen, isOpen: this.isContactOpen, badge: false, toggleRef: el => (this.contactItemsButtonEl = el), itemsRef: el => (this.contactItemsEl = el), onToggle: event => this.toggleMenu(event, "contact") }, this.processedContactItems.map(item => (hAsync("a", { role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleContactClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.label, Build.isBrowser ))))) : null;
|
|
10591
|
+
const languageDropdown = this.language && this.processedLanguageItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-language", label: this.language, icon: navigationLanguage.svg, accessibleText: `${changeLanguage}${this.hasLanguageChanged ? `, ${activeLanguage}` : ""}`, active: this.isLanguageOpen, isOpen: this.isLanguageOpen, badge: false, toggleRef: el => (this.languageItemsButtonEl = el), itemsRef: el => (this.languageItemsEl = el), onToggle: event => this.toggleMenu(event, "language") }, this.processedLanguageItems.map(item => (hAsync("a", { class: { active: this.language === item.country }, "aria-selected": this.language === item.country, role: "menuitem", id: item.id, lang: item.country, href: item.href || "#", onClick: event => this.handleLanguageClick(event, item), onKeyDown: this.handleArrowKeys }, item.label))))) : null;
|
|
10592
|
+
const processedUserWithLink = this.processedUser && this.processedUser.href ? (hAsync("a", { href: this.processedUser.href || "#", id: this.processedUser.id, class: "duet-header-user duet-header-button", onClick: this.handleUserClick }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
10593
|
+
const processedUserWithoutLink = this.processedUser && !this.processedUser.href ? (hAsync("span", { id: this.processedUser.id, class: "duet-header-user duet-header-button duet-header-no-action" }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
10594
|
+
const processedSessionIconSize = this.renderDesktopNav ? "x-small" : "small";
|
|
10595
|
+
const processedSession = this.processedSession ? (hAsync("a", { href: this.processedSession.href || "#", id: this.processedSession.id, class: "duet-header-logout duet-header-button", onClick: this.handleSessionClick }, hAsync(DuetHeaderIcon, { icon: this.processedSession.type === "logout" ? navigationLogout.svg : navigationLogin.svg, iconSize: processedSessionIconSize }), hAsync("span", { class: "duet-header-button-label" }, this.processedSession.label))) : null;
|
|
10596
|
+
const processedSearch = this.processedSearch ? (hAsync("a", { href: this.processedSearch.href || "#", id: this.processedSearch.id, class: "duet-header-search duet-header-button", onClick: this.handleSearchClick }, hAsync(DuetHeaderIcon, { icon: formSearch.svg }), hAsync("span", { class: "duet-header-button-label" }, this.processedSearch.label))) : null;
|
|
10597
|
+
// Back variation
|
|
10598
|
+
if (this.processedBack) {
|
|
10599
|
+
return (hAsync(Host, { class: "duet-header-back-variation" }, hAsync("div", { class: "duet-header-reserved-space" }, hAsync("header", { class: {
|
|
10600
|
+
"duet-header": true,
|
|
10601
|
+
"duet-theme-turva": this.theme === "turva",
|
|
10602
|
+
"duet-header-back": true,
|
|
10603
|
+
"duet-header-inactive": true,
|
|
10604
|
+
} }, hAsync("div", { class: "duet-header-top" }, skipToLabel, hAsync("duet-button", { url: this.processedBack.href, id: this.processedBack.id, theme: this.theme, variation: "plain", color: this.theme === "turva" ? "secondary-turva" : "secondary", icon: "navigation-arrow-left", iconSize: "large", onClick: this.handleBackClick }, this.processedBack.label), logo, hAsync("slot", { name: "logo-utility" }))))));
|
|
10605
|
+
}
|
|
10606
|
+
// multi level desktop variation
|
|
10607
|
+
const itemsHaveSubItems = this.processedItems && this.processedItems.some(item => item.items && item.items.length > 0);
|
|
10608
|
+
if (this.renderDesktopNav && itemsHaveSubItems) {
|
|
10609
|
+
const activeSegment = this.processedItems.find(item => item.active);
|
|
10610
|
+
const isThirdLevelActive = this.processedItems &&
|
|
10611
|
+
this.processedItems.some(item => item.items &&
|
|
10612
|
+
item.items.some(secondLevelItem => secondLevelItem.items && secondLevelItem.items.some(thirdLevelItem => thirdLevelItem.active === true)));
|
|
10613
|
+
const segmentId = "duet-header-segment";
|
|
10614
|
+
return (hAsync(Host, { class: "duet-header-multi-level-desktop-variation" }, hAsync("div", { class: {
|
|
10615
|
+
"duet-header-multi-level-desktop": true,
|
|
10616
|
+
"duet-header-multi-level-desktop-third-level-is-open": isThirdLevelActive,
|
|
10617
|
+
} }, hAsync("header", { class: {
|
|
10618
|
+
"duet-header": true,
|
|
10619
|
+
"duet-theme-turva": this.theme === "turva",
|
|
10620
|
+
"duet-header-inactive": !this.processedItems,
|
|
10621
|
+
} }, hAsync("div", { class: "duet-header-top" }, skipToLabel, hAsync("div", { class: "logo-and-segment" }, largeLogo, this.processedItems && (hAsync(DuetHeaderDropdown, { id: segmentId, label: activeSegment.label, active: this.isSegmentOpen, isOpen: this.isSegmentOpen, badge: false, toggleRef: el => (this.segmentItemsButtonEl = el), itemsRef: el => (this.segmentItemsEl = el), onToggle: event => this.toggleMenu(event, "segment") }, this.processedItems.map(item => (hAsync("a", { class: { active: activeSegment === item }, role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleItemClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: item.icon, color: "currentColor" }))), hAsync("span", null, item.label), item.badge && hAsync("div", { class: "duet-header-badge" }))))))), hAsync("nav", { class: "duet-header-multi-level-desktop-nav" }, activeSegment.items &&
|
|
10622
|
+
activeSegment.items
|
|
10623
|
+
.filter(secondLevelItem => secondLevelItem.items && secondLevelItem.items.length > 0)
|
|
10624
|
+
.map((secondLevelItem, secondLevelItemIndex) => {
|
|
10625
|
+
const id = secondLevelItem.id || `segment-item-${secondLevelItemIndex}`;
|
|
10626
|
+
return (hAsync(DuetHeaderDropdown, { id: id, label: secondLevelItem.label, active: (!this.openMenu && secondLevelItem.active === true) || this.openMenu === id, isOpen: this.openMenu === id, badge: secondLevelItem.badge, toggleRef: el => (this.subMenuButtonRefs[id] = el), itemsRef: el => (this.subMenuItemRefs[id] = el), onToggle: event => this.toggleMenu(event, "sub", id) }, secondLevelItem.items &&
|
|
10627
|
+
secondLevelItem.items.map(thirdLevelItem => (hAsync("a", { class: { active: thirdLevelItem.active }, role: "menuitem", href: thirdLevelItem.href || "#", id: thirdLevelItem.id, onClick: event => this.handleItemClick(event, thirdLevelItem), onKeyDown: ev => this.handleArrowKeys(ev), target: thirdLevelItem.external ? "_blank" : "_self" }, thirdLevelItem.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "medium", name: thirdLevelItem.icon, color: "currentColor" }))), hAsync("span", null, thirdLevelItem.label), thirdLevelItem.badge && hAsync("div", { class: "duet-header-badge" }))))));
|
|
10628
|
+
})), hAsync("div", { class: "duet-header-multi-level-desktop-utils" }, processedSearch, languageDropdown, processedSession), hAsync("slot", { name: "utility" }))))));
|
|
10629
|
+
}
|
|
10630
|
+
// Default variation
|
|
10631
|
+
const isThirdLevelActive = this.processedItems &&
|
|
10632
|
+
this.processedItems.some(item => item.items &&
|
|
10633
|
+
item.items.some(secondLevelItem => secondLevelItem.items && secondLevelItem.items.some(thirdLevelItem => thirdLevelItem.active === true)));
|
|
10634
|
+
return (hAsync(Host, { class: {
|
|
10635
|
+
"duet-header-default-variation": true,
|
|
10636
|
+
} }, hAsync("div", { class: {
|
|
10310
10637
|
"duet-header-reserved-space": true,
|
|
10311
10638
|
"duet-with-links": !!this.processedItems,
|
|
10312
|
-
"duet-
|
|
10639
|
+
"duet-header-third-level-active": isThirdLevelActive,
|
|
10313
10640
|
} }, hAsync("header", { class: {
|
|
10314
10641
|
"duet-header": true,
|
|
10315
10642
|
"duet-theme-turva": this.theme === "turva",
|
|
10316
|
-
"duet-header-back": !!this.processedBack,
|
|
10317
10643
|
"duet-header-inactive": !this.processedItems,
|
|
10318
|
-
} }, hAsync("div", { class: "duet-header-top" },
|
|
10319
|
-
|
|
10320
|
-
|
|
10644
|
+
} }, hAsync("div", { class: "duet-header-top" }, skipToLabel, logo, hAsync("slot", { name: "logo-utility" }, this.region && hAsync("div", { class: "duet-header-region" }, this.region)), (this.processedItems ||
|
|
10645
|
+
languageDropdown ||
|
|
10646
|
+
contactDropdown ||
|
|
10321
10647
|
this.processedSession ||
|
|
10322
|
-
this.processedUser) && (hAsync("button", { class: { "duet-header-toggle": true, active: this.isSlideOutOpen }, onClick: event => this.toggleMenu(event, "mobile"), type: "button" }, hAsync("duet-visually-hidden", null, this.accessibleLabel), hAsync(
|
|
10648
|
+
this.processedUser) && (hAsync("button", { class: { "duet-header-toggle": true, active: this.isSlideOutOpen }, onClick: event => this.toggleMenu(event, "mobile"), type: "button" }, hAsync("duet-visually-hidden", null, this.accessibleLabel), hAsync(DuetHeaderHamburger, null)))), hAsync("div", { ref: el => (this.navigationEl = el), class: {
|
|
10323
10649
|
"duet-header-bottom": true,
|
|
10324
10650
|
active: this.isSlideOutOpen,
|
|
10325
10651
|
inactive: !this.processedItems,
|
|
10326
10652
|
} }, hAsync("nav", { class: "duet-header-items", role: "navigation" }, this.processedItems &&
|
|
10327
|
-
this.processedItems.map(
|
|
10328
|
-
|
|
10329
|
-
|
|
10330
|
-
|
|
10331
|
-
|
|
10332
|
-
|
|
10333
|
-
|
|
10334
|
-
|
|
10335
|
-
|
|
10336
|
-
|
|
10337
|
-
|
|
10338
|
-
|
|
10339
|
-
|
|
10340
|
-
|
|
10341
|
-
|
|
10342
|
-
|
|
10343
|
-
|
|
10344
|
-
|
|
10345
|
-
|
|
10346
|
-
|
|
10347
|
-
|
|
10653
|
+
this.processedItems.map((item, itemIndex) => (hAsync("div", { class: "duet-header-item-container" }, hAsync("a", { class: {
|
|
10654
|
+
"duet-header-first-level": true,
|
|
10655
|
+
"duet-header-item": true,
|
|
10656
|
+
active: (!itemsHaveSubItems && this.currentHref === item.href) || item.active === true,
|
|
10657
|
+
}, href: item.href || "#", id: item.id || `header-item-${itemIndex}`, onClick: event => this.handleItemClick(event, item) }, item.label, item.badge && hAsync("div", { class: "duet-header-badge" })), item.items &&
|
|
10658
|
+
item.items
|
|
10659
|
+
.filter(secondLevelitem => secondLevelitem.items && secondLevelitem.items.length > 0)
|
|
10660
|
+
.map((secondLevelItem, secondLevelItemIndex) => {
|
|
10661
|
+
const id = secondLevelItem.id || `header-item-${itemIndex}-${secondLevelItemIndex}`;
|
|
10662
|
+
return (hAsync(DuetHeaderDropdown, { id: id, className: "duet-header-second-level", label: secondLevelItem.label, icon: `${secondLevelItem.icon}.svg`, active: (!this.openMenu &&
|
|
10663
|
+
secondLevelItem.active === true &&
|
|
10664
|
+
!(this.closedActives && !!this.closedActives.find(i => i === id))) ||
|
|
10665
|
+
this.openMenu === id, isOpen: (!this.openMenu &&
|
|
10666
|
+
secondLevelItem.active === true &&
|
|
10667
|
+
!(this.closedActives && !!this.closedActives.find(i => i === id))) ||
|
|
10668
|
+
this.openMenu === id, badge: secondLevelItem.badge, toggleRef: el => (this.subMenuButtonRefs[id] = el), itemsRef: el => (this.subMenuItemRefs[id] = el), onToggle: event => this.toggleMenu(event, "sub", id, secondLevelItem.active === true) }, hAsync("div", { class: "duet-header-third-level" }, secondLevelItem.items &&
|
|
10669
|
+
secondLevelItem.items.map(thirdLevelItem => (hAsync("a", { class: {
|
|
10670
|
+
"duet-header-item": true,
|
|
10671
|
+
active: thirdLevelItem.active === true,
|
|
10672
|
+
}, role: "menuitem", href: thirdLevelItem.href || "#", id: thirdLevelItem.id, onClick: event => this.handleItemClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: thirdLevelItem.external ? "_blank" : "_self" }, thirdLevelItem.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "medium", name: thirdLevelItem.icon, color: "currentColor" }))), hAsync("span", null, thirdLevelItem.label), thirdLevelItem.badge && hAsync("div", { class: "duet-header-badge" })))))));
|
|
10673
|
+
}))))), hAsync("div", { class: "duet-header-bottom-utils" }, hAsync("slot", { name: "utility" })), hAsync("div", { class: "duet-header-utils" }, !itemsHaveSubItems && contactDropdown, languageDropdown, !itemsHaveSubItems && (hAsync(Fragment, null, processedUserWithLink, processedUserWithoutLink)), processedSearch, processedSession))))));
|
|
10348
10674
|
}
|
|
10349
10675
|
get element() { return getElement(this); }
|
|
10350
10676
|
static get watchers() { return {
|
|
@@ -10375,6 +10701,7 @@ class DuetHeader {
|
|
|
10375
10701
|
"items": [8],
|
|
10376
10702
|
"region": [1],
|
|
10377
10703
|
"session": [8],
|
|
10704
|
+
"search": [8],
|
|
10378
10705
|
"back": [8],
|
|
10379
10706
|
"contact": [1],
|
|
10380
10707
|
"contactItems": [8, "contact-items"],
|
|
@@ -10382,12 +10709,17 @@ class DuetHeader {
|
|
|
10382
10709
|
"isContactOpen": [32],
|
|
10383
10710
|
"isLanguageOpen": [32],
|
|
10384
10711
|
"isSlideOutOpen": [32],
|
|
10712
|
+
"isSegmentOpen": [32],
|
|
10713
|
+
"openMenu": [32],
|
|
10714
|
+
"closedActives": [32],
|
|
10385
10715
|
"processedItems": [32],
|
|
10386
10716
|
"processedLanguageItems": [32],
|
|
10387
10717
|
"processedContactItems": [32],
|
|
10388
10718
|
"processedSession": [32],
|
|
10719
|
+
"processedSearch": [32],
|
|
10389
10720
|
"processedUser": [32],
|
|
10390
10721
|
"processedBack": [32],
|
|
10722
|
+
"renderDesktopNav": [32],
|
|
10391
10723
|
"closeMenus": [64],
|
|
10392
10724
|
"setFocus": [64]
|
|
10393
10725
|
},
|
|
@@ -10725,76 +11057,6 @@ class DuetHero {
|
|
|
10725
11057
|
}; }
|
|
10726
11058
|
}
|
|
10727
11059
|
|
|
10728
|
-
const cleanupSvg = (svgContent) => {
|
|
10729
|
-
if (typeof document === "undefined" || !svgContent) {
|
|
10730
|
-
return;
|
|
10731
|
-
}
|
|
10732
|
-
const div = document.createElement("div");
|
|
10733
|
-
div.innerHTML = svgContent;
|
|
10734
|
-
// setup this way to ensure it works on our buddy IE
|
|
10735
|
-
for (let i = div.childNodes.length - 1; i >= 0; i--) {
|
|
10736
|
-
const child = div.childNodes[i];
|
|
10737
|
-
if (child.nodeName.toLowerCase() !== "svg") {
|
|
10738
|
-
div.removeChild(div.childNodes[i]);
|
|
10739
|
-
}
|
|
10740
|
-
}
|
|
10741
|
-
return div.firstElementChild;
|
|
10742
|
-
};
|
|
10743
|
-
const isValid = (elm) => {
|
|
10744
|
-
if (elm.nodeName.toLowerCase() === "script") {
|
|
10745
|
-
return false;
|
|
10746
|
-
}
|
|
10747
|
-
for (let i = 0; i < elm.attributes.length; i++) {
|
|
10748
|
-
const attribute = elm.attributes[i];
|
|
10749
|
-
if (attribute.name.toLowerCase().indexOf("on") === 0) {
|
|
10750
|
-
return false;
|
|
10751
|
-
}
|
|
10752
|
-
}
|
|
10753
|
-
if (elm.children) {
|
|
10754
|
-
for (let i = 0; i < elm.children.length; i++) {
|
|
10755
|
-
if (!isValid(elm.children[i])) {
|
|
10756
|
-
return false;
|
|
10757
|
-
}
|
|
10758
|
-
}
|
|
10759
|
-
}
|
|
10760
|
-
return true;
|
|
10761
|
-
};
|
|
10762
|
-
const buildIconUrl = (iconName) => {
|
|
10763
|
-
// under normal operations the Icons should always be loaded from the CDN
|
|
10764
|
-
{
|
|
10765
|
-
return `${Env.cdnURIProd}/icons/${Env.duetIconVersion}/lib/assets/${iconName}.svg`;
|
|
10766
|
-
}
|
|
10767
|
-
};
|
|
10768
|
-
const iconCache = {};
|
|
10769
|
-
function fetchIconByUrl(url) {
|
|
10770
|
-
if (iconCache[url]) {
|
|
10771
|
-
return iconCache[url];
|
|
10772
|
-
}
|
|
10773
|
-
// we create a function that covers all the fetching, cleanup, validation etc,
|
|
10774
|
-
// this way we can perform that work just once, and then return the same promise in future.
|
|
10775
|
-
async function doFetch() {
|
|
10776
|
-
const res = await fetch(url);
|
|
10777
|
-
if (!res.ok) {
|
|
10778
|
-
throw new Error(`SVG request failed: ${res.status} ${res.statusText}`);
|
|
10779
|
-
}
|
|
10780
|
-
const responseText = await res.text();
|
|
10781
|
-
const svgElement = cleanupSvg(responseText);
|
|
10782
|
-
if (!isValid(svgElement)) {
|
|
10783
|
-
throw new Error("SVG validation failed");
|
|
10784
|
-
}
|
|
10785
|
-
// OuterHTML does not unfortunately work here with IE11
|
|
10786
|
-
// was previously: resolve(svgElement.outerHTML)
|
|
10787
|
-
const div = document.createElement("div");
|
|
10788
|
-
div.appendChild(svgElement);
|
|
10789
|
-
return div.innerHTML;
|
|
10790
|
-
}
|
|
10791
|
-
// we do not `await` the fetch, as we only care about initiating the work,
|
|
10792
|
-
// it's the responsibility of the calling code to wait for the response.
|
|
10793
|
-
const req = doFetch();
|
|
10794
|
-
// cache for the repeat requests
|
|
10795
|
-
return (iconCache[url] = req);
|
|
10796
|
-
}
|
|
10797
|
-
|
|
10798
11060
|
const duetIconCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-icon,*.sc-duet-icon::after,*.sc-duet-icon::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-icon-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;display:inline-block;width:auto;max-width:100%;color:inherit;-webkit-tap-highlight-color:transparent}@media (max-width: 35.9375em){/*!@:host(.duet-icon-has-outline)*/.duet-icon-has-outline.sc-duet-icon-h{margin-bottom:0 !important}}@media (max-width: 35.9375em){/*!@:host(.duet-icon-has-background)*/.duet-icon-has-background.sc-duet-icon-h{margin-bottom:0 !important}}/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-icon-h{margin:0 !important}@media (max-width: 35.9375em){/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-icon-h{margin:0 !important}}/*!@.duet-icon*/.duet-icon.sc-duet-icon{-webkit-user-select:none;user-select:none;width:100%;height:100%;transform-origin:top center}/*!@.duet-icon.duet-icon-has-outline*/.duet-icon.duet-icon-has-outline.sc-duet-icon{padding:12px;border-style:solid;border-width:1px;border-radius:50%}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-has-outline*/.duet-icon.duet-icon-has-outline.sc-duet-icon{outline:1px solid transparent;transform:scale(0.8)}}/*!@.duet-icon.duet-icon-has-background*/.duet-icon.duet-icon-has-background.sc-duet-icon{padding:16px;color:white;border-radius:50%}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-has-background*/.duet-icon.duet-icon-has-background.sc-duet-icon{outline:1px solid transparent;transform:scale(0.8)}}/*!@.duet-icon.duet-icon-has-background.duet-theme-turva, .duet-icon.duet-icon-has-background.duet-theme-default*/.duet-icon.duet-icon-has-background.duet-theme-turva.sc-duet-icon,.duet-icon.duet-icon-has-background.duet-theme-default.sc-duet-icon{color:white}/*!@.duet-icon.duet-icon-has-background.xxx-small .duet-icon-svg, .duet-icon.duet-icon-has-outline.xxx-small .duet-icon-svg*/.duet-icon.duet-icon-has-background.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon,.duet-icon.duet-icon-has-outline.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:10px;height:10px}/*!@.duet-icon.duet-icon-has-background.xx-small .duet-icon-svg, .duet-icon.duet-icon-has-outline.xx-small .duet-icon-svg*/.duet-icon.duet-icon-has-background.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon,.duet-icon.duet-icon-has-outline.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:16px;height:16px}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-not-responsive*/.duet-icon.duet-icon-not-responsive.sc-duet-icon{transform:scale(1) !important}}/*!@.duet-icon.duet-theme-default*/.duet-icon.duet-theme-default.sc-duet-icon{color:#0077b3}/*!@.duet-icon.duet-theme-turva*/.duet-icon.duet-theme-turva.sc-duet-icon{color:#c60c30}/*!@.duet-icon.auto .duet-icon-svg*/.duet-icon.auto.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:100%;height:100%}/*!@.duet-icon.xxx-small .duet-icon-svg*/.duet-icon.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:7px;height:7px}/*!@.duet-icon.duet-icon-has-background.xxx-small*/.duet-icon.duet-icon-has-background.xxx-small.sc-duet-icon{padding:6px}/*!@.duet-icon.duet-icon-has-outline.xxx-small*/.duet-icon.duet-icon-has-outline.xxx-small.sc-duet-icon{padding:4px}/*!@.duet-icon.xx-small .duet-icon-svg*/.duet-icon.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:10px;height:10px}/*!@.duet-icon.duet-icon-has-background.xx-small*/.duet-icon.duet-icon-has-background.xx-small.sc-duet-icon{padding:8px}/*!@.duet-icon.duet-icon-has-outline.xx-small*/.duet-icon.duet-icon-has-outline.xx-small.sc-duet-icon{padding:7px}/*!@.duet-icon.x-small .duet-icon-svg*/.duet-icon.x-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:16px;height:16px}/*!@.duet-icon.duet-icon-has-outline.x-small*/.duet-icon.duet-icon-has-outline.x-small.sc-duet-icon{padding:10px}/*!@.duet-icon.duet-icon-has-background.x-small*/.duet-icon.duet-icon-has-background.x-small.sc-duet-icon{padding:12px}/*!@.duet-icon.small .duet-icon-svg*/.duet-icon.small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:20px;height:20px}/*!@.duet-icon.duet-icon-has-background.small*/.duet-icon.duet-icon-has-background.small.sc-duet-icon{padding:14px}/*!@.duet-icon.large .duet-icon-svg*/.duet-icon.large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:30px;height:30px}/*!@.duet-icon.x-large .duet-icon-svg*/.duet-icon.x-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:36px;height:36px}/*!@.duet-icon.xx-large .duet-icon-svg*/.duet-icon.xx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:48px;height:48px}/*!@.duet-icon.xxx-large .duet-icon-svg*/.duet-icon.xxx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:48px;height:48px}@media (min-width: 48em){/*!@.duet-icon.xxx-large .duet-icon-svg*/.duet-icon.xxx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:72px;height:72px}}/*!@.duet-icon .duet-icon-svg*/.duet-icon.sc-duet-icon .duet-icon-svg.sc-duet-icon{display:block;width:24px;min-width:100%;height:24px;font-size:0}/*!@.duet-icon svg*/.duet-icon.sc-duet-icon svg.sc-duet-icon{width:100%;min-width:100%;fill:currentColor}";
|
|
10799
11061
|
|
|
10800
11062
|
class DuetIcon {
|
|
@@ -10851,7 +11113,7 @@ class DuetIcon {
|
|
|
10851
11113
|
if (this.src && this.icon) {
|
|
10852
11114
|
console.warn("[DUET COMPONENTS]: <duet-icon> should have either have src or icon attributes, but not both. icon attribute will take precedence", "icon:", this.icon, "src:", this.src);
|
|
10853
11115
|
}
|
|
10854
|
-
|
|
11116
|
+
this.loadIcon();
|
|
10855
11117
|
}
|
|
10856
11118
|
async loadIcon() {
|
|
10857
11119
|
// static icon known at build-time, so we can set it synchronously
|
|
@@ -10859,13 +11121,9 @@ class DuetIcon {
|
|
|
10859
11121
|
this.svgContent = this.icon;
|
|
10860
11122
|
return;
|
|
10861
11123
|
}
|
|
10862
|
-
//
|
|
10863
|
-
|
|
10864
|
-
|
|
10865
|
-
this.svgContent = await fetchIconByUrl(src);
|
|
10866
|
-
}
|
|
10867
|
-
catch (e) {
|
|
10868
|
-
console.warn(`[DUET COMPONENTS]: <duet-icon> could not load SVG from URL: ${src}.`, e);
|
|
11124
|
+
// on server, don't make requests
|
|
11125
|
+
{
|
|
11126
|
+
return;
|
|
10869
11127
|
}
|
|
10870
11128
|
}
|
|
10871
11129
|
/**
|
|
@@ -10873,11 +11131,13 @@ class DuetIcon {
|
|
|
10873
11131
|
* Always the last one in the class.
|
|
10874
11132
|
*/
|
|
10875
11133
|
render() {
|
|
10876
|
-
const color = this.color === "currentColor"
|
|
11134
|
+
const color = this.color === "currentColor"
|
|
11135
|
+
? "currentColor"
|
|
11136
|
+
: getColorByName(this.color, this.theme) || getColorByName(this.outline, this.theme);
|
|
10877
11137
|
const styles = {
|
|
10878
11138
|
color,
|
|
10879
|
-
background: getColorByName(this.background),
|
|
10880
|
-
"border-color": getColorByName(this.outline),
|
|
11139
|
+
background: getColorByName(this.background, this.theme),
|
|
11140
|
+
"border-color": getColorByName(this.outline, this.theme),
|
|
10881
11141
|
};
|
|
10882
11142
|
return (hAsync(Host, { class: {
|
|
10883
11143
|
"duet-m-0": this.margin === "none",
|
|
@@ -10924,8 +11184,6 @@ class DuetIcon {
|
|
|
10924
11184
|
|
|
10925
11185
|
var formEmail={"title":"form-email","tags":"form email","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z\"/></svg>"};
|
|
10926
11186
|
|
|
10927
|
-
var formSearch={"title":"form-search","tags":"form search magnifying glass","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M23.245 23.996a.743.743 0 0 1-.53-.22L16.2 17.26a9.824 9.824 0 0 1-2.553 1.579 9.766 9.766 0 0 1-7.51.069 9.745 9.745 0 0 1-5.359-5.262c-1.025-2.412-1.05-5.08-.069-7.51S3.558 1.802 5.97.777a9.744 9.744 0 0 1 7.51-.069c2.431.981 4.334 2.849 5.359 5.262s1.05 5.08.069 7.51a9.807 9.807 0 0 1-1.649 2.718l6.517 6.518a.75.75 0 0 1-.531 1.28zM9.807 1.49a8.259 8.259 0 0 0-3.25.667c-2.044.869-3.627 2.481-4.458 4.54s-.81 4.318.058 6.362a8.26 8.26 0 0 0 4.54 4.458 8.259 8.259 0 0 0 6.362-.059 8.285 8.285 0 0 0 2.594-1.736.365.365 0 0 1 .077-.076 8.245 8.245 0 0 0 1.786-2.728 8.255 8.255 0 0 0-.059-6.362 8.257 8.257 0 0 0-4.54-4.458 8.28 8.28 0 0 0-3.11-.608z\"/></svg>"};
|
|
10928
|
-
|
|
10929
11187
|
/**
|
|
10930
11188
|
* This function restores cursor position after changing input
|
|
10931
11189
|
*
|
|
@@ -11381,6 +11639,9 @@ class DuetLayout {
|
|
|
11381
11639
|
|
|
11382
11640
|
const duetLinkCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-link,*.sc-duet-link::after,*.sc-duet-link::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-link-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:inline}/*!@.duet-link*/.duet-link.sc-duet-link{display:inline;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;font-weight:400;color:#0077b3;text-decoration:underline;border-radius:4px;transition:300ms ease}/*!@.duet-link:focus*/.duet-link.sc-duet-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-link:focus, .duet-link:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-link .duet-link.sc-duet-link:focus,.duet-link.sc-duet-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-link.duet-theme-turva*/.duet-link.duet-theme-turva.sc-duet-link{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#c60c30}/*!@.duet-link:hover*/.duet-link.sc-duet-link:hover{color:#004d80;text-decoration:none}/*!@.duet-link:hover.duet-theme-turva*/.duet-link.sc-duet-link:hover.duet-theme-turva{color:#940925}/*!@.duet-link:active*/.duet-link.sc-duet-link:active{opacity:0.75;transition:none}/*!@.duet-link-external*/.duet-link-external.sc-duet-link{margin-left:4px}";
|
|
11383
11641
|
|
|
11642
|
+
/**
|
|
11643
|
+
* @part duet-link - piercing selector for styling the link
|
|
11644
|
+
*/
|
|
11384
11645
|
class DuetLink {
|
|
11385
11646
|
constructor(hostRef) {
|
|
11386
11647
|
registerInstance(this, hostRef);
|
|
@@ -11436,7 +11697,7 @@ class DuetLink {
|
|
|
11436
11697
|
"duet-link": true,
|
|
11437
11698
|
"duet-link-is-external": this.external,
|
|
11438
11699
|
"duet-theme-turva": this.theme === "turva",
|
|
11439
|
-
}, target: this.external ? "_blank" : "_self", "aria-label": this.accessibleLabel, id: this.identifier, ref: el => (this.nativeLink = el) }, hAsync("slot", null), Build.isBrowser )));
|
|
11700
|
+
}, target: this.external ? "_blank" : "_self", "aria-label": this.accessibleLabel, id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link" }, hAsync("slot", null), Build.isBrowser )));
|
|
11440
11701
|
}
|
|
11441
11702
|
static get delegatesFocus() { return true; }
|
|
11442
11703
|
static get style() { return duetLinkCss; }
|
|
@@ -11578,7 +11839,7 @@ class DuetList {
|
|
|
11578
11839
|
}; }
|
|
11579
11840
|
}
|
|
11580
11841
|
|
|
11581
|
-
const duetListItemCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-list-item,*.sc-duet-list-item::after,*.sc-duet-list-item::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-list-item-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:flex;flex-flow:row;width:100%;overflow:visible;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;font-variant-numeric:tabular-nums;line-height:1.25;color:#00294d}@media (max-width: 35.9375em){/*!@:host*/.sc-duet-list-item-h{flex-wrap:wrap}}/*!@:host dt,\n:host dd*/.sc-duet-list-item-h dt.sc-duet-list-item,.sc-duet-list-item-h dd.sc-duet-list-item{-webkit-hyphens:auto;hyphens:auto;text-align:left;word-break:break-all;word-break:break-word
|
|
11842
|
+
const duetListItemCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-list-item,*.sc-duet-list-item::after,*.sc-duet-list-item::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-list-item-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:flex;flex-flow:row;width:100%;overflow:visible;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;font-variant-numeric:tabular-nums;line-height:1.25;color:#00294d}@media (max-width: 35.9375em){/*!@:host*/.sc-duet-list-item-h{flex-wrap:wrap}}/*!@:host dt,\n:host dd*/.sc-duet-list-item-h dt.sc-duet-list-item,.sc-duet-list-item-h dd.sc-duet-list-item{margin-inline-start:0;-webkit-hyphens:auto;hyphens:auto;text-align:left;word-break:break-all;word-break:break-word}@media (max-width: 35.9375em){/*!@:host dt,\n:host dd*/.sc-duet-list-item-h dt.sc-duet-list-item,.sc-duet-list-item-h dd.sc-duet-list-item{flex:inherit;flex-basis:100% !important;width:100%;padding-bottom:4px !important}}/*!@:host dt*/.sc-duet-list-item-h dt.sc-duet-list-item{padding:16px !important;font-weight:600}@media (max-width: 35.9375em){/*!@:host dt*/.sc-duet-list-item-h dt.sc-duet-list-item{padding-bottom:4px !important}}/*!@.duet-theme-turva :host dt*/.duet-theme-turva .sc-duet-list-item-h dt.sc-duet-list-item{font-weight:700}/*!@:host dd*/.sc-duet-list-item-h dd.sc-duet-list-item{padding:16px !important;margin-left:auto;text-align:left}@media (max-width: 35.9375em){/*!@:host dd*/.sc-duet-list-item-h dd.sc-duet-list-item{padding-top:0 !important}}/*!@:host(:not(.duet-list-striped)) dt*/.sc-duet-list-item-h:not(.duet-list-striped) dt.sc-duet-list-item{padding:8px !important;padding-left:0 !important}@media (max-width: 35.9375em){/*!@:host(:not(.duet-list-striped)) dt*/.sc-duet-list-item-h:not(.duet-list-striped) dt.sc-duet-list-item{padding-bottom:4px !important}}/*!@:host(:not(.duet-list-striped)) dd*/.sc-duet-list-item-h:not(.duet-list-striped) dd.sc-duet-list-item{padding:8px !important;padding-left:0 !important}@media (max-width: 35.9375em){/*!@:host(:not(.duet-list-striped)) dd*/.sc-duet-list-item-h:not(.duet-list-striped) dd.sc-duet-list-item{padding-top:0 !important}}/*!@:host(.duet-theme-turva)*/.duet-theme-turva.sc-duet-list-item-h{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}/*!@:host(.duet-list-striped:nth-child(odd)) dt,\n:host(.duet-list-striped:nth-child(odd)) dd*/.duet-list-striped.sc-duet-list-item-h:nth-child(odd) dt.sc-duet-list-item,.duet-list-striped.sc-duet-list-item-h:nth-child(odd) dd.sc-duet-list-item{background:#f5f8fa}/*!@:host(.duet-list-striped.duet-theme-turva:nth-child(odd)) dt,\n:host(.duet-list-striped.duet-theme-turva:nth-child(odd)) dd*/.duet-list-striped.duet-theme-turva.sc-duet-list-item-h:nth-child(odd) dt.sc-duet-list-item,.duet-list-striped.duet-theme-turva.sc-duet-list-item-h:nth-child(odd) dd.sc-duet-list-item{background:#f5f5f7}/*!@:host(.duet-list-width-30) dt*/.duet-list-width-30.sc-duet-list-item-h dt.sc-duet-list-item{flex-basis:33%}/*!@:host(.duet-list-width-30) dd*/.duet-list-width-30.sc-duet-list-item-h dd.sc-duet-list-item{flex-basis:67%}/*!@:host(.duet-list-width-50) dt*/.duet-list-width-50.sc-duet-list-item-h dt.sc-duet-list-item{flex-basis:47%}/*!@:host(.duet-list-width-50) dd*/.duet-list-width-50.sc-duet-list-item-h dd.sc-duet-list-item{flex-basis:53%}/*!@:host(.duet-list-width-70) dt*/.duet-list-width-70.sc-duet-list-item-h dt.sc-duet-list-item{flex-basis:65%}/*!@:host(.duet-list-width-70) dd*/.duet-list-width-70.sc-duet-list-item-h dd.sc-duet-list-item{flex-basis:35%}/*!@:host(.duet-p-0) dt,\n:host(.duet-p-0) dd*/.duet-p-0.sc-duet-list-item-h dt.sc-duet-list-item,.duet-p-0.sc-duet-list-item-h dd.sc-duet-list-item{padding-top:0 !important;padding-bottom:4px !important}@media (max-width: 35.9375em){/*!@:host(.duet-list-mobile-center) dt,\n:host(.duet-list-mobile-center) dd*/.duet-list-mobile-center.sc-duet-list-item-h dt.sc-duet-list-item,.duet-list-mobile-center.sc-duet-list-item-h dd.sc-duet-list-item{text-align:center}}@media (max-width: 61.9375em){/*!@:host(.duet-list-breakpoint-large)*/.duet-list-breakpoint-large.sc-duet-list-item-h{flex-wrap:wrap}/*!@:host(.duet-list-breakpoint-large) dt,\n:host(.duet-list-breakpoint-large) dd*/.duet-list-breakpoint-large.sc-duet-list-item-h dt.sc-duet-list-item,.duet-list-breakpoint-large.sc-duet-list-item-h dd.sc-duet-list-item{flex:inherit;flex-basis:100% !important;width:100%;padding-bottom:4px !important}/*!@:host(.duet-list-breakpoint-large) dd*/.duet-list-breakpoint-large.sc-duet-list-item-h dd.sc-duet-list-item{padding-top:0 !important}}/*!@:host(.duet-list-breakpoint-large.duet-list-striped) dd*/.duet-list-breakpoint-large.duet-list-striped.sc-duet-list-item-h dd.sc-duet-list-item{padding-bottom:16px !important}@media (max-width: 61.9375em){/*!@:host(.duet-list-breakpoint-large.duet-list-mobile-center) dt,\n:host(.duet-list-breakpoint-large.duet-list-mobile-center) dd*/.duet-list-breakpoint-large.duet-list-mobile-center.sc-duet-list-item-h dt.sc-duet-list-item,.duet-list-breakpoint-large.duet-list-mobile-center.sc-duet-list-item-h dd.sc-duet-list-item{text-align:center !important}}";
|
|
11582
11843
|
|
|
11583
11844
|
/**
|
|
11584
11845
|
* @slot label - The list item component’s label content. Use this to put content into description list’s dt element.
|
|
@@ -12059,7 +12320,7 @@ class DuetNotification {
|
|
|
12059
12320
|
}; }
|
|
12060
12321
|
}
|
|
12061
12322
|
|
|
12062
|
-
const duetNotificationDrawerCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-notification-drawer,*.sc-duet-notification-drawer::after,*.sc-duet-notification-drawer::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-notification-drawer-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}/*!@.duet-drawer*/.duet-drawer.sc-duet-notification-drawer{position:relative}@media (min-width: 62em){/*!@.duet-drawer*/.duet-drawer.sc-duet-notification-drawer{display:inline-block}}/*!@.duet-drawer-toggle*/.duet-drawer-toggle.sc-duet-notification-drawer{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 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:1rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-bottom:1px solid #e1e3e6;border-radius:0;-webkit-appearance:none;appearance:none}@media (min-width: 62em){/*!@.duet-drawer-toggle*/.duet-drawer-toggle.sc-duet-notification-drawer{z-index:200;width:auto;max-width:200px;padding:0 30px 0 12px;overflow:hidden;font-size:0.875rem;line-height:4rem;
|
|
12323
|
+
const duetNotificationDrawerCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-notification-drawer,*.sc-duet-notification-drawer::after,*.sc-duet-notification-drawer::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-notification-drawer-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}/*!@.duet-drawer*/.duet-drawer.sc-duet-notification-drawer{position:relative}@media (min-width: 62em){/*!@.duet-drawer*/.duet-drawer.sc-duet-notification-drawer{display:inline-block}}/*!@.duet-drawer-toggle*/.duet-drawer-toggle.sc-duet-notification-drawer{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 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:1rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background-color:white;border-bottom:1px solid #e1e3e6;border-radius:0;-webkit-appearance:none;appearance:none}@media (min-width: 62em){/*!@.duet-drawer-toggle*/.duet-drawer-toggle.sc-duet-notification-drawer{z-index:200;width:auto;max-width:200px;padding:0 30px 0 12px;overflow:hidden;font-size:0.875rem;line-height:4rem;border:0;border-radius:4px;transition:border 300ms ease}}/*!@.duet-theme-turva .duet-drawer-toggle*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle.sc-duet-notification-drawer{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a;background-color:white;border-color:#e4e4e6}/*!@.duet-drawer-toggle:active*/.duet-drawer-toggle.sc-duet-notification-drawer:active{opacity:0.75}/*!@.duet-drawer-toggle:focus*/.duet-drawer-toggle.sc-duet-notification-drawer:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-drawer-toggle:focus*/.user-is-tabbing.sc-duet-notification-drawer-h .duet-drawer-toggle.sc-duet-notification-drawer:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@:host(.user-is-tabbing) .duet-theme-turva .duet-drawer-toggle:focus*/.user-is-tabbing.sc-duet-notification-drawer-h .duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle.sc-duet-notification-drawer:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-drawer-toggle:hover*/.duet-drawer-toggle.sc-duet-notification-drawer:hover{color:#004d80}/*!@.duet-theme-turva .duet-drawer-toggle:hover*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle.sc-duet-notification-drawer:hover{color:#444445}/*!@.duet-drawer-toggle::after*/.duet-drawer-toggle.sc-duet-notification-drawer::after{display:none !important}@media (min-width: 62em){/*!@.duet-drawer-toggle::after*/.duet-drawer-toggle.sc-duet-notification-drawer::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-theme-turva .duet-drawer-toggle::after*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle.sc-duet-notification-drawer::after{background:#c60c30}}/*!@.duet-drawer-toggle[aria-expanded=true], .duet-drawer-toggle[aria-expanded=true]:hover*/.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer,.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer:hover{color:#004d80;border-bottom:1px solid #f5f8fa;border-radius:0}/*!@.duet-theme-turva .duet-drawer-toggle[aria-expanded=true], .duet-theme-turva .duet-drawer-toggle[aria-expanded=true]:hover*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer,.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer:hover{color:#444445;border-color:#f5f5f7}@media (min-width: 62em){/*!@.duet-drawer-toggle[aria-expanded=true], .duet-drawer-toggle[aria-expanded=true]:hover*/.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer,.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer:hover{border:0}/*!@.duet-drawer-toggle[aria-expanded=true]::after, .duet-drawer-toggle[aria-expanded=true]:hover::after*/.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer::after,.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer:hover::after{left:0;width:100%;transform:translateY(0)}}/*!@.duet-drawer-icon*/.duet-drawer-icon.sc-duet-notification-drawer{position:relative;display:inline-flex;min-width:12px;margin-right:12px;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){/*!@.duet-drawer-icon*/.duet-drawer-icon.sc-duet-notification-drawer{margin-right:8px}}/*!@.duet-drawer-label*/.duet-drawer-label.sc-duet-notification-drawer{line-height:1}/*!@.duet-drawer-caret*/.duet-drawer-caret.sc-duet-notification-drawer{position:absolute;top:50%;right:20px;display:flex;width:10px;height:10px;margin-left:8px;line-height:normal;pointer-events:none;transition:300ms ease;transform:translateY(-50%);transform-origin:50% 50%}@media (min-width: 62em){/*!@.duet-drawer-caret*/.duet-drawer-caret.sc-duet-notification-drawer{right:16px;width:7px;height:7px}}/*!@.duet-drawer-caret duet-icon*/.duet-drawer-caret.sc-duet-notification-drawer duet-icon.sc-duet-notification-drawer{width:10px}/*!@.duet-drawer-toggle[aria-expanded=true] .duet-drawer-caret*/.duet-drawer-toggle[aria-expanded=true].sc-duet-notification-drawer .duet-drawer-caret.sc-duet-notification-drawer{transform:translateY(-50%) rotate(180deg)}/*!@.duet-drawer-badge*/.duet-drawer-badge.sc-duet-notification-drawer{position:absolute;top:0;right:0;display:inline-block;width:6px;height:6px;background:#f7b228;border-radius:50%;box-shadow:0 0 0 1px #c18b1f}/*!@.duet-theme-turva .duet-drawer-badge*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-badge.sc-duet-notification-drawer{background:#faa40f}/*!@.duet-drawer-content*/.duet-drawer-content.sc-duet-notification-drawer{display:none;background-color:white;border-bottom:1px solid #e1e3e6}/*!@.duet-drawer-content:focus*/.duet-drawer-content.sc-duet-notification-drawer:focus{outline:0}/*!@.duet-theme-turva .duet-drawer-content*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-content.sc-duet-notification-drawer{background-color:white;border-color:#e1e3e6}@media (min-width: 62em){/*!@.duet-drawer-content*/.duet-drawer-content.sc-duet-notification-drawer{position:absolute;top:100%;z-index:600;display:block;width:450px;max-height:420px;padding-left:0;overflow-y:auto;visibility:hidden;background-color:white;border:1px solid #e1e3e6;border-radius:4px;border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:300ms ease;transform:scale(0.95) translateZ(0) translateY(-10px);transform-origin:50% 0;scrollbar-width:none}/*!@.duet-drawer-content::-webkit-scrollbar*/.duet-drawer-content.sc-duet-notification-drawer::-webkit-scrollbar{display:none}/*!@.duet-theme-turva .duet-drawer-content*/.duet-theme-turva.sc-duet-notification-drawer .duet-drawer-content.sc-duet-notification-drawer{background-color:white}/*!@.duet-drawer-content.duet-drawer-left*/.duet-drawer-content.duet-drawer-left.sc-duet-notification-drawer{right:0}/*!@.duet-drawer-content.duet-drawer-right*/.duet-drawer-content.duet-drawer-right.sc-duet-notification-drawer{left:0}}/*!@.duet-drawer-content.duet-drawer-open*/.duet-drawer-content.duet-drawer-open.sc-duet-notification-drawer{display:block}@media (min-width: 62em){/*!@.duet-drawer-content.duet-drawer-open*/.duet-drawer-content.duet-drawer-open.sc-duet-notification-drawer{visibility:visible;opacity:1;transform:scale(1) translateZ(0) translateY(0)}}";
|
|
12063
12324
|
|
|
12064
12325
|
const ESC_KEY = 27;
|
|
12065
12326
|
class DuetNotificationDrawer {
|
|
@@ -14063,7 +14324,7 @@ class DuetTabGroup {
|
|
|
14063
14324
|
}; }
|
|
14064
14325
|
}
|
|
14065
14326
|
|
|
14066
|
-
const duetTableCss = "duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{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;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}";
|
|
14327
|
+
const duetTableCss = "duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{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;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}";
|
|
14067
14328
|
|
|
14068
14329
|
// remove wrapping speech marks.
|
|
14069
14330
|
// media query tokens are wrapped in speech marks,
|
|
@@ -15250,7 +15511,6 @@ const duetUploadCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-upload,*.sc-duet-
|
|
|
15250
15511
|
/**
|
|
15251
15512
|
* @slot header - named slot - to place content after description / caption
|
|
15252
15513
|
* @slot fileheader - named slot - to place content above "filelist" (only displayed when "filelist" contains items)
|
|
15253
|
-
* @slot filelist - named slot - should always contain a configurable duet-editable-table or a component that exposes the same functionality
|
|
15254
15514
|
* @slot filefooter - named slot - to place content below "filelist" (only displayed when "filelist" contains items)
|
|
15255
15515
|
*/
|
|
15256
15516
|
class DuetUpload {
|
|
@@ -15275,7 +15535,7 @@ class DuetUpload {
|
|
|
15275
15535
|
this.filesInProgress = new Map();
|
|
15276
15536
|
this.fileMaxReached = false;
|
|
15277
15537
|
this.bytesMaxReached = false;
|
|
15278
|
-
|
|
15538
|
+
this.internalStatusMessageLabel = undefined;
|
|
15279
15539
|
/**
|
|
15280
15540
|
* Properties
|
|
15281
15541
|
*/
|
|
@@ -15294,18 +15554,18 @@ class DuetUpload {
|
|
|
15294
15554
|
*/
|
|
15295
15555
|
this.external = false;
|
|
15296
15556
|
/**
|
|
15297
|
-
* If set the upload component will not display an upload button, you will have to create
|
|
15298
|
-
* and call the exposed
|
|
15557
|
+
* If set the upload component will not display an upload button, you will have to create one yourself
|
|
15558
|
+
* and call the exposed method startUpload
|
|
15299
15559
|
*/
|
|
15300
15560
|
this.hideButton = false;
|
|
15301
15561
|
/**
|
|
15302
|
-
* Default actions added to
|
|
15562
|
+
* Default actions added to the internally used duet-editable-table
|
|
15303
15563
|
*/
|
|
15304
15564
|
this.actions = [
|
|
15305
15565
|
{
|
|
15306
15566
|
icon: "action-delete",
|
|
15307
15567
|
color: "color-danger",
|
|
15308
|
-
color_hover: "
|
|
15568
|
+
color_hover: "primary-dark",
|
|
15309
15569
|
id: "delete",
|
|
15310
15570
|
map: ["success", "failure"],
|
|
15311
15571
|
label: {
|
|
@@ -15317,7 +15577,7 @@ class DuetUpload {
|
|
|
15317
15577
|
{
|
|
15318
15578
|
icon: "navigation-close",
|
|
15319
15579
|
color: "primary",
|
|
15320
|
-
color_hover: "
|
|
15580
|
+
color_hover: "primary-dark",
|
|
15321
15581
|
id: "cancel",
|
|
15322
15582
|
map: ["inprogress"],
|
|
15323
15583
|
label: {
|
|
@@ -15328,17 +15588,43 @@ class DuetUpload {
|
|
|
15328
15588
|
},
|
|
15329
15589
|
];
|
|
15330
15590
|
/**
|
|
15331
|
-
* If enabled the
|
|
15591
|
+
* If enabled the editable-table will display links on successfully uploaded items,
|
|
15332
15592
|
* this requires the server can respond with link URIs in the correct format
|
|
15593
|
+
* and that the files are accessible to the user
|
|
15333
15594
|
*/
|
|
15334
15595
|
this.showLinks = false;
|
|
15335
15596
|
/**
|
|
15336
15597
|
* Property to change the aria upload progress text read aloud by screenreaders
|
|
15337
15598
|
* @default {
|
|
15338
|
-
|
|
15339
|
-
|
|
15340
|
-
|
|
15341
|
-
|
|
15599
|
+
* fi: {
|
|
15600
|
+
* inProgress: "Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",
|
|
15601
|
+
* inProgressWithErrors:
|
|
15602
|
+
* "Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",
|
|
15603
|
+
* done: "Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",
|
|
15604
|
+
* doneWithErrors:
|
|
15605
|
+
* "Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",
|
|
15606
|
+
* files: "tiedostot",
|
|
15607
|
+
* file: "tiedosto",
|
|
15608
|
+
* },
|
|
15609
|
+
* sv: {
|
|
15610
|
+
* inProgress: "Adding {filesUploaded} of {filesTotal}",
|
|
15611
|
+
* inProgressWithErrors:
|
|
15612
|
+
* "Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",
|
|
15613
|
+
* done: "Alla {filesTotal} har lagts till",
|
|
15614
|
+
* doneWithErrors: "Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",
|
|
15615
|
+
* files: "filer",
|
|
15616
|
+
* file: "fil",
|
|
15617
|
+
* },
|
|
15618
|
+
* en: {
|
|
15619
|
+
* inProgress: "Adding {filesUploaded} of {filesTotal}",
|
|
15620
|
+
* inProgressWithErrors:
|
|
15621
|
+
* "Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",
|
|
15622
|
+
* done: "All {filesTotal} added successfully",
|
|
15623
|
+
* doneWithErrors: "Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",
|
|
15624
|
+
* files: "tiedostoa",
|
|
15625
|
+
* file: "tiedosto",
|
|
15626
|
+
* },
|
|
15627
|
+
* }
|
|
15342
15628
|
*/
|
|
15343
15629
|
this.statusLabelDefaults = {
|
|
15344
15630
|
fi: {
|
|
@@ -15371,8 +15657,7 @@ class DuetUpload {
|
|
|
15371
15657
|
*/
|
|
15372
15658
|
this.statusMessageLabel = getLocaleString(this.statusLabelDefaults);
|
|
15373
15659
|
/**
|
|
15374
|
-
* Property to change
|
|
15375
|
-
* normally you would handle these strings on an application level and override @label when needed
|
|
15660
|
+
* Property to change button label defaults on the component.
|
|
15376
15661
|
* @default {
|
|
15377
15662
|
fi: "Lisää liite",
|
|
15378
15663
|
sv: "Lägg till en bilaga",
|
|
@@ -15390,7 +15675,7 @@ class DuetUpload {
|
|
|
15390
15675
|
*/
|
|
15391
15676
|
this.buttonLabel = getLocaleString(this.buttonLabelDefaults);
|
|
15392
15677
|
/**
|
|
15393
|
-
* accessible Label of button
|
|
15678
|
+
* accessible aria-Label of button
|
|
15394
15679
|
*/
|
|
15395
15680
|
this.accessibleButtonLabel = undefined;
|
|
15396
15681
|
/**
|
|
@@ -15413,6 +15698,10 @@ class DuetUpload {
|
|
|
15413
15698
|
* browser from displaying its own validation errors.
|
|
15414
15699
|
*/
|
|
15415
15700
|
this.required = false;
|
|
15701
|
+
/**
|
|
15702
|
+
* Key used to set vertical alignment of action buttons
|
|
15703
|
+
*/
|
|
15704
|
+
this.alignment = "middle";
|
|
15416
15705
|
/**
|
|
15417
15706
|
* Visually hides the groups labels in the editable table list used to display the list of files
|
|
15418
15707
|
*/
|
|
@@ -15422,7 +15711,7 @@ class DuetUpload {
|
|
|
15422
15711
|
*/
|
|
15423
15712
|
this.files = new Map();
|
|
15424
15713
|
/**
|
|
15425
|
-
* Property to read if
|
|
15714
|
+
* Property to read if the internally used editable-table contains errors or not
|
|
15426
15715
|
*/
|
|
15427
15716
|
this.valid = !this.required;
|
|
15428
15717
|
/**
|
|
@@ -15442,7 +15731,6 @@ class DuetUpload {
|
|
|
15442
15731
|
this.label = getLocaleString(this.labelDefaults);
|
|
15443
15732
|
/**
|
|
15444
15733
|
* Property to change descriptionDefaults defaults on the component.
|
|
15445
|
-
* normally you would handle these strings on an application level and override @label when needed
|
|
15446
15734
|
* @default {
|
|
15447
15735
|
fi: "Voit liittää {filetypes}-muotoisia tiedostoja sekä yleisimpiä videotiedostoja. Voit lähettää {maxbytes} verran tiedostoja yhdellä kertaa, ja lisätä enintään {maxfiles} liitettä kerrallaan.",
|
|
15448
15736
|
sv: "Du kan bifoga filer i flg. formater {filetypes} samt de vanligaste videofilerna. Du kan ladda upp {maxbytes} filer åt gången och lägga till upp till {maxfiles} bilagor åt gången.",
|
|
@@ -15516,7 +15804,6 @@ class DuetUpload {
|
|
|
15516
15804
|
* by default this is off, setting this to true will limit the users choices to what has been explicitly set
|
|
15517
15805
|
*/
|
|
15518
15806
|
this.limitSelection = false;
|
|
15519
|
-
//region Private functions
|
|
15520
15807
|
/**
|
|
15521
15808
|
* Private functions
|
|
15522
15809
|
*/
|
|
@@ -15614,7 +15901,6 @@ class DuetUpload {
|
|
|
15614
15901
|
}
|
|
15615
15902
|
};
|
|
15616
15903
|
this.updateProgress = (ev, name) => {
|
|
15617
|
-
console.log(this.filesInProgress.size);
|
|
15618
15904
|
const updateProgressHelper = percentComplete => {
|
|
15619
15905
|
this.updateValueInMap(name, "progress", percentComplete);
|
|
15620
15906
|
this.onProgress(name, percentComplete, ev);
|
|
@@ -15658,6 +15944,10 @@ class DuetUpload {
|
|
|
15658
15944
|
* We reset the form fields to always be able to re-upload files
|
|
15659
15945
|
* and because we handle all uploads and states internally in the component (not relying on native form elements)
|
|
15660
15946
|
*/
|
|
15947
|
+
/* TODO: it may be a good idea to just update the list so that this always matches what is in the files map,
|
|
15948
|
+
* TODO: this would remove the capability of Re-uploading, unless we can catch and remove the user file from the form filelist before the upload is canceled by the browser
|
|
15949
|
+
* TODO: but for now we'll just reset the form fields
|
|
15950
|
+
*/
|
|
15661
15951
|
this.nativeInput.value = "";
|
|
15662
15952
|
};
|
|
15663
15953
|
this.startUpload = async (ev, metaData = undefined) => {
|
|
@@ -15669,8 +15959,6 @@ class DuetUpload {
|
|
|
15669
15959
|
ev.preventDefault();
|
|
15670
15960
|
return;
|
|
15671
15961
|
};
|
|
15672
|
-
//endregion
|
|
15673
|
-
//region Eventlisteners for the XHR requests
|
|
15674
15962
|
/**
|
|
15675
15963
|
* Eventlisteners for the XHR requests
|
|
15676
15964
|
*/
|
|
@@ -15799,11 +16087,16 @@ class DuetUpload {
|
|
|
15799
16087
|
this.kick();
|
|
15800
16088
|
}
|
|
15801
16089
|
}
|
|
15802
|
-
//endregion
|
|
15803
16090
|
/**
|
|
15804
16091
|
* Component lifecycle events.
|
|
15805
16092
|
*/
|
|
15806
16093
|
componentWillLoad() {
|
|
16094
|
+
if (typeof this.statusMessageLabel === "string") {
|
|
16095
|
+
this.internalStatusMessageLabel = sanitizeString(this.groups);
|
|
16096
|
+
}
|
|
16097
|
+
else {
|
|
16098
|
+
this.internalStatusMessageLabel = this.statusMessageLabel;
|
|
16099
|
+
}
|
|
15807
16100
|
inheritGlobalTheme(this);
|
|
15808
16101
|
this.listenForActionEvents();
|
|
15809
16102
|
}
|
|
@@ -15811,8 +16104,6 @@ class DuetUpload {
|
|
|
15811
16104
|
// listen to the events from the component
|
|
15812
16105
|
this.verifyValidity();
|
|
15813
16106
|
}
|
|
15814
|
-
//endregion
|
|
15815
|
-
//region XHR requests
|
|
15816
16107
|
/**
|
|
15817
16108
|
* XHR request utilities
|
|
15818
16109
|
*/
|
|
@@ -15860,8 +16151,6 @@ class DuetUpload {
|
|
|
15860
16151
|
onProgress: this.trackProgress,
|
|
15861
16152
|
});
|
|
15862
16153
|
}
|
|
15863
|
-
//endregion
|
|
15864
|
-
//region EventHandlers
|
|
15865
16154
|
/**
|
|
15866
16155
|
* Component event handling.
|
|
15867
16156
|
*/
|
|
@@ -15936,7 +16225,6 @@ class DuetUpload {
|
|
|
15936
16225
|
component: "duet-upload",
|
|
15937
16226
|
});
|
|
15938
16227
|
}
|
|
15939
|
-
//endregion
|
|
15940
16228
|
/**
|
|
15941
16229
|
* Sets focus on the specified `duet-input`. Use this method instead of the global
|
|
15942
16230
|
* `input.focus()`.
|
|
@@ -15966,7 +16254,7 @@ class DuetUpload {
|
|
|
15966
16254
|
return this.getFilesAsArray();
|
|
15967
16255
|
}
|
|
15968
16256
|
/**
|
|
15969
|
-
* Convenience method for updating
|
|
16257
|
+
* Convenience method for updating the value of a key:value inside an item in the files attribute
|
|
15970
16258
|
*/
|
|
15971
16259
|
async updateValue(item, key, value) {
|
|
15972
16260
|
this.updateValueInMap(item, key, value);
|
|
@@ -15984,7 +16272,7 @@ class DuetUpload {
|
|
|
15984
16272
|
"duet-upload-filelist-empty": !this.files.size,
|
|
15985
16273
|
"duet-upload-filelist": true,
|
|
15986
16274
|
"duet-upload-filelist-filled": this.files.size,
|
|
15987
|
-
}, id: this.labelId, for: identifier }, this.fileListEmpty)), !!this.files.size && hAsync("slot", { name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.
|
|
16275
|
+
}, id: this.labelId, for: identifier }, this.fileListEmpty)), !!this.files.size && hAsync("slot", { name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && (hAsync("duet-editable-table", { "aria-live": "polite", "aria-relevant": "removals", accessibleRole: "log", id: this.editableTableId, groups: this.groups, actions: this.actions, hideGroups: this.hideGroups, alignment: this.alignment, items: this.convertToDuetEditableTableItems() })), !!this.files.size && hAsync("slot", { name: "filefooter" }), hAsync("duet-spacer", { size: "large" }), !this.hideButton && (hAsync("duet-button", { id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle" }, this.buttonLabel)), hAsync("duet-spacer", { size: "medium" }), (this.fileMaxReached || this.bytesMaxReached) && (hAsync("duet-alert", null, this.fileMaxReached && getI18nError("duet-upload-301"), this.bytesMaxReached && getI18nError("duet-upload-202"))), hAsync("duet-spacer", { size: "medium" }), hAsync("duet-visually-hidden", null, hAsync("input", { ref: input => {
|
|
15988
16276
|
this.nativeInput = input;
|
|
15989
16277
|
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
15990
16278
|
"duet-upload": true,
|
|
@@ -16010,7 +16298,7 @@ class DuetUpload {
|
|
|
16010
16298
|
"showLinks": [4, "show-links"],
|
|
16011
16299
|
"caption": [1],
|
|
16012
16300
|
"statusLabelDefaults": [1, "status-label-default"],
|
|
16013
|
-
"statusMessageLabel": [
|
|
16301
|
+
"statusMessageLabel": [1, "status-message-label"],
|
|
16014
16302
|
"buttonLabelDefaults": [1, "button-label-default"],
|
|
16015
16303
|
"buttonLabel": [1, "button-label"],
|
|
16016
16304
|
"accessibleButtonLabel": [1, "accessible-button-label"],
|
|
@@ -16020,6 +16308,7 @@ class DuetUpload {
|
|
|
16020
16308
|
"margin": [1],
|
|
16021
16309
|
"required": [4],
|
|
16022
16310
|
"groups": [1],
|
|
16311
|
+
"alignment": [1],
|
|
16023
16312
|
"hideGroups": [4, "hide-table-labels"],
|
|
16024
16313
|
"files": [1040],
|
|
16025
16314
|
"valid": [1540],
|
|
@@ -16059,7 +16348,7 @@ class DuetUploadAriaStatus {
|
|
|
16059
16348
|
*/
|
|
16060
16349
|
this.statusMessage = null;
|
|
16061
16350
|
/**
|
|
16062
|
-
*
|
|
16351
|
+
* Status labels used in the component
|
|
16063
16352
|
*/
|
|
16064
16353
|
this.statusMessageLabel = null;
|
|
16065
16354
|
/**
|
|
@@ -16083,7 +16372,7 @@ class DuetUploadAriaStatus {
|
|
|
16083
16372
|
*/
|
|
16084
16373
|
this.inprogress = undefined;
|
|
16085
16374
|
/**
|
|
16086
|
-
*
|
|
16375
|
+
* Private functions
|
|
16087
16376
|
*/
|
|
16088
16377
|
this.replacePlaceHolders = (statusString) => {
|
|
16089
16378
|
const addFiles = (amount) => {
|