@duetds/components 5.3.0 → 5.3.3
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 +79 -39
- package/lib/cjs/duet-action-button.cjs.entry.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-breadcrumb.cjs.entry.js +1 -1
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
- package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
- package/lib/cjs/duet-card.cjs.entry.js +1 -1
- package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
- package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
- package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
- 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_3.cjs.entry.js +72 -40
- package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
- package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
- package/lib/cjs/duet-footer.cjs.entry.js +1 -1
- package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-header_2.cjs.entry.js +3 -2
- package/lib/cjs/duet-hero.cjs.entry.js +1 -1
- package/lib/cjs/duet-icon.cjs.entry.js +1 -1
- package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-modal.cjs.entry.js +2 -2
- package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
- package/lib/cjs/duet-pagination_2.cjs.entry.js +6 -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-scrollable_3.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-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 +1 -1
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
- package/lib/cjs/duet.cjs.js +2 -2
- package/lib/cjs/{focus-utils-fdec6e56.js → focus-utils-54bf88c4.js} +1 -1
- package/lib/cjs/{index-b8ee5284.js → index-d74701f0.js} +1 -1
- package/lib/cjs/loader.cjs.js +2 -2
- package/lib/collection/components/duet-header/duet-header-dropdown.js +1 -0
- package/lib/collection/components/duet-header/duet-header.css +4 -1
- package/lib/collection/components/duet-pagination/duet-pagination.js +7 -0
- package/lib/collection/components/duet-upload/duet-upload.css +3 -3
- package/lib/collection/components/duet-upload/duet-upload.js +110 -24
- package/lib/collection/components/duet-upload/errorcodes.utils.js +5 -4
- package/lib/collection/components/duet-upload/mock.helpers.js +16 -5
- package/lib/collection/components/duet-upload/upload-editable-item-error.js +4 -4
- package/lib/collection/components/duet-upload/upload-editable-item-inprogres.js +5 -2
- package/lib/collection/components/duet-upload/upload-editable-item-pending.js +4 -3
- package/lib/collection/components/duet-upload/upload-validators.js +5 -5
- package/lib/collection/components/duet-upload/xhr.helpers.js +1 -0
- package/lib/custom-elements-bundle/index.js +79 -41
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/p-017c8f85.system.entry.js +4 -0
- package/lib/duet/{p-134231d4.entry.js → p-05093845.entry.js} +1 -1
- package/lib/duet/{p-f3493c2b.system.entry.js → p-09f8d68b.system.entry.js} +1 -1
- package/lib/duet/{p-f352c0ba.entry.js → p-0c2a368b.entry.js} +1 -1
- package/lib/duet/{p-03e763e8.system.entry.js → p-0ed8f525.system.entry.js} +1 -1
- package/lib/duet/{p-616f39b7.system.entry.js → p-0fe15b1c.system.entry.js} +1 -1
- package/lib/duet/{p-d4d37e8a.entry.js → p-10dd6a3a.entry.js} +1 -1
- package/lib/duet/{p-fe01a355.entry.js → p-1463ec25.entry.js} +1 -1
- package/lib/duet/{p-68542d9e.entry.js → p-187dac44.entry.js} +1 -1
- package/lib/duet/p-1b971cb4.system.entry.js +4 -0
- package/lib/duet/{p-f5b735fa.system.entry.js → p-263d5c73.system.entry.js} +1 -1
- package/lib/duet/{p-3aabf3bb.system.entry.js → p-29b78a88.system.entry.js} +1 -1
- package/lib/duet/{p-38a9c05f.entry.js → p-2ae81abd.entry.js} +1 -1
- package/lib/duet/{p-31b26d9c.system.js → p-310cc65a.system.js} +1 -1
- package/lib/duet/{p-08cfb940.entry.js → p-31ee57ef.entry.js} +1 -1
- package/lib/duet/{p-8653c219.system.entry.js → p-323af601.system.entry.js} +1 -1
- package/lib/duet/{p-4acd55b8.system.entry.js → p-334e765b.system.entry.js} +1 -1
- package/lib/duet/{p-40443406.system.entry.js → p-3357023c.system.entry.js} +1 -1
- package/lib/duet/p-351c4ca8.entry.js +4 -0
- package/lib/duet/{p-a389cef0.system.entry.js → p-3d4098a1.system.entry.js} +1 -1
- package/lib/duet/{p-e85664b1.entry.js → p-4390278a.entry.js} +1 -1
- package/lib/duet/{p-f9a3ffb8.entry.js → p-4407c77f.entry.js} +1 -1
- package/lib/duet/{p-a659dd10.entry.js → p-4be003ee.entry.js} +1 -1
- package/lib/duet/{p-d056a9c9.js → p-4bfb3001.js} +1 -1
- package/lib/duet/{p-0dac66ae.entry.js → p-4f4e6e7a.entry.js} +1 -1
- package/lib/duet/{p-1f80b9dc.system.entry.js → p-5231f09f.system.entry.js} +1 -1
- package/lib/duet/{p-c344e11d.entry.js → p-52cd446d.entry.js} +1 -1
- package/lib/duet/{p-6a27cfe6.system.entry.js → p-53feaad0.system.entry.js} +1 -1
- package/lib/duet/{p-4d2de4f3.system.entry.js → p-54adb28a.system.entry.js} +1 -1
- package/lib/duet/{p-f0a6e48b.entry.js → p-5a134750.entry.js} +1 -1
- package/lib/duet/{p-f78511bd.system.entry.js → p-60903f76.system.entry.js} +1 -1
- package/lib/duet/{p-5af47544.entry.js → p-707e6bde.entry.js} +1 -1
- package/lib/duet/{p-e1676535.entry.js → p-711c5825.entry.js} +1 -1
- package/lib/duet/{p-4e73aa88.system.entry.js → p-7a803a0f.system.entry.js} +1 -1
- package/lib/duet/{p-15a81b18.js → p-7b37a578.js} +1 -1
- package/lib/duet/{p-18e3ebc9.entry.js → p-7b776a5f.entry.js} +1 -1
- package/lib/duet/{p-ff766a28.entry.js → p-7ce0b78c.entry.js} +1 -1
- package/lib/duet/{p-2684f8e0.entry.js → p-7ee40ef2.entry.js} +1 -1
- package/lib/duet/{p-3af85569.system.entry.js → p-80db2a1e.system.entry.js} +1 -1
- package/lib/duet/{p-e98a45bf.entry.js → p-8ea1558f.entry.js} +1 -1
- package/lib/duet/{p-8b3aa24a.system.entry.js → p-9195e263.system.entry.js} +1 -1
- package/lib/duet/{p-187ad8a8.system.entry.js → p-933b5471.system.entry.js} +1 -1
- package/lib/duet/{p-0691a1db.entry.js → p-97395d40.entry.js} +1 -1
- package/lib/duet/p-98aa8c7e.entry.js +4 -0
- package/lib/duet/{p-12fb8a87.entry.js → p-997ef66e.entry.js} +1 -1
- package/lib/duet/{p-a3d00d15.system.entry.js → p-9db6c3ef.system.entry.js} +1 -1
- package/lib/duet/{p-37d79c67.entry.js → p-9e8acf0a.entry.js} +1 -1
- package/lib/duet/{p-972a2484.system.entry.js → p-9e979cae.system.entry.js} +1 -1
- package/lib/duet/{p-268f03d9.entry.js → p-a07b994c.entry.js} +1 -1
- package/lib/duet/{p-0d682d28.entry.js → p-a21321dc.entry.js} +1 -1
- package/lib/duet/{p-ae360f66.system.entry.js → p-a77df5a4.system.entry.js} +1 -1
- package/lib/duet/{p-d2e0b281.system.entry.js → p-ac356267.system.entry.js} +1 -1
- package/lib/duet/{p-3b4f0ff4.entry.js → p-aea395e2.entry.js} +1 -1
- package/lib/duet/{p-10d7287b.entry.js → p-aebf923d.entry.js} +1 -1
- package/lib/duet/p-b0053a35.entry.js +4 -0
- package/lib/duet/{p-56a003a2.entry.js → p-b112ecc7.entry.js} +1 -1
- package/lib/duet/{p-08337a53.system.entry.js → p-b52d2351.system.entry.js} +1 -1
- package/lib/duet/{p-947b5555.system.entry.js → p-b717297c.system.entry.js} +1 -1
- package/lib/duet/{p-a8f1a491.system.entry.js → p-b786f4a1.system.entry.js} +1 -1
- package/lib/duet/p-b9f2984d.entry.js +4 -0
- package/lib/duet/{p-109603a2.system.entry.js → p-badcd20b.system.entry.js} +1 -1
- package/lib/duet/{p-c20811fe.entry.js → p-bd697adb.entry.js} +1 -1
- package/lib/duet/{p-cd79ca71.system.entry.js → p-bd97848c.system.entry.js} +1 -1
- package/lib/duet/{p-7a674406.entry.js → p-c0dea844.entry.js} +1 -1
- package/lib/duet/{p-548f0b12.system.entry.js → p-c2a4820d.system.entry.js} +1 -1
- package/lib/duet/p-cd0b0258.system.entry.js +4 -0
- package/lib/duet/{p-ce1e490c.system.entry.js → p-cfc5df00.system.entry.js} +1 -1
- package/lib/duet/{p-ed66c892.system.entry.js → p-d03be8d0.system.entry.js} +1 -1
- package/lib/duet/{p-960e7b9b.system.entry.js → p-d06ccc00.system.entry.js} +1 -1
- package/lib/duet/{p-0e8f4cc2.entry.js → p-d0eceac9.entry.js} +1 -1
- package/lib/duet/{p-6fa21e7a.system.entry.js → p-d11db0d5.system.entry.js} +1 -1
- package/lib/duet/{p-f4afff5a.entry.js → p-d28243a8.entry.js} +1 -1
- package/lib/duet/{p-556cbde2.entry.js → p-d3d3538f.entry.js} +1 -1
- package/lib/duet/{p-d7c45678.entry.js → p-d749146f.entry.js} +1 -1
- package/lib/duet/p-d77dcab2.entry.js +4 -0
- package/lib/duet/{p-f5970513.system.entry.js → p-daa9880c.system.entry.js} +1 -1
- package/lib/duet/{p-ada8866f.entry.js → p-dadfe56f.entry.js} +1 -1
- package/lib/duet/{p-b7063d6c.system.entry.js → p-dcfa2ae4.system.entry.js} +1 -1
- package/lib/duet/{p-1b276548.system.js → p-e56acd55.system.js} +1 -1
- package/lib/duet/{p-f87621f5.entry.js → p-e58d06d9.entry.js} +1 -1
- package/lib/duet/{p-8240f948.entry.js → p-e6b88a4b.entry.js} +1 -1
- package/lib/duet/{p-c7c65229.system.js → p-e97c0bf3.system.js} +1 -1
- package/lib/duet/{p-67c79158.system.entry.js → p-efa06b0e.system.entry.js} +1 -1
- package/lib/duet/{p-952db7f3.entry.js → p-f23108a0.entry.js} +1 -1
- package/lib/duet/{p-7a9d50dc.system.entry.js → p-f640e49b.system.entry.js} +1 -1
- package/lib/duet/{p-c0296b33.system.entry.js → p-f67a994f.system.entry.js} +1 -1
- package/lib/duet/{p-a81e86fa.system.entry.js → p-f94cb455.system.entry.js} +1 -1
- package/lib/duet/{p-bc8d4408.system.entry.js → p-f9787dbb.system.entry.js} +1 -1
- package/lib/duet/{p-85dff60b.system.entry.js → p-fb761b8d.system.entry.js} +1 -1
- package/lib/esm/duet-action-button.entry.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-breadcrumb.entry.js +1 -1
- package/lib/esm/duet-breadcrumbs.entry.js +1 -1
- package/lib/esm/duet-button_2.entry.js +1 -1
- package/lib/esm/duet-caption_4.entry.js +1 -1
- package/lib/esm/duet-card.entry.js +1 -1
- package/lib/esm/duet-checkbox.entry.js +1 -1
- package/lib/esm/duet-choice_2.entry.js +2 -2
- package/lib/esm/duet-collapsible.entry.js +1 -1
- package/lib/esm/duet-combobox.entry.js +1 -1
- 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_3.entry.js +72 -40
- package/lib/esm/duet-empty-state.entry.js +1 -1
- package/lib/esm/duet-fieldset.entry.js +1 -1
- package/lib/esm/duet-footer.entry.js +1 -1
- package/lib/esm/duet-grid_2.entry.js +1 -1
- package/lib/esm/duet-header_2.entry.js +3 -2
- package/lib/esm/duet-hero.entry.js +1 -1
- package/lib/esm/duet-icon.entry.js +1 -1
- package/lib/esm/duet-input_2.entry.js +1 -1
- package/lib/esm/duet-layout.entry.js +1 -1
- package/lib/esm/duet-list_2.entry.js +1 -1
- package/lib/esm/duet-modal.entry.js +2 -2
- package/lib/esm/duet-notification_2.entry.js +1 -1
- package/lib/esm/duet-number-input.entry.js +1 -1
- package/lib/esm/duet-pagination_2.entry.js +6 -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-scrollable_3.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-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 +1 -1
- package/lib/esm/duet-visually-hidden.entry.js +1 -1
- package/lib/esm/duet.js +2 -2
- package/lib/esm/{focus-utils-4be10338.js → focus-utils-2632e19f.js} +1 -1
- package/lib/esm/{index-d328c322.js → index-ab50bfb2.js} +1 -1
- package/lib/esm/loader.js +2 -2
- package/lib/esm-es5/duet-action-button.entry.js +1 -1
- 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-breadcrumb.entry.js +1 -1
- package/lib/esm-es5/duet-breadcrumbs.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 +1 -1
- package/lib/esm-es5/duet-combobox.entry.js +1 -1
- 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_3.entry.js +1 -1
- package/lib/esm-es5/duet-empty-state.entry.js +1 -1
- package/lib/esm-es5/duet-fieldset.entry.js +1 -1
- package/lib/esm-es5/duet-footer.entry.js +1 -1
- package/lib/esm-es5/duet-grid_2.entry.js +1 -1
- package/lib/esm-es5/duet-header_2.entry.js +1 -1
- 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-pagination_2.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-scrollable_3.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-textarea.entry.js +2 -2
- 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 +1 -1
- 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-4be10338.js → focus-utils-2632e19f.js} +1 -1
- package/lib/esm-es5/{index-d328c322.js → index-ab50bfb2.js} +1 -1
- package/lib/esm-es5/loader.js +1 -1
- package/lib/types/components/duet-pagination/duet-pagination.d.ts +1 -0
- package/lib/types/components/duet-upload/duet-upload.d.ts +22 -1
- package/lib/types/components/duet-upload/errorcodes.utils.d.ts +3 -2
- package/lib/types/components/duet-upload/mock.helpers.d.ts +0 -1
- package/lib/types/components/duet-upload/upload-editable-item-error.d.ts +2 -0
- package/lib/types/components/duet-upload/upload-validators.d.ts +2 -1
- package/lib/types/components.d.ts +22 -1
- package/package.json +5 -5
- package/lib/duet/p-3ddcbdc3.system.entry.js +0 -4
- package/lib/duet/p-41a9efde.entry.js +0 -4
- package/lib/duet/p-73861e15.entry.js +0 -4
- package/lib/duet/p-7426cb50.system.entry.js +0 -4
- package/lib/duet/p-7467ee59.system.entry.js +0 -4
- package/lib/duet/p-cf16262d.entry.js +0 -4
- package/lib/duet/p-ed19ffae.entry.js +0 -4
- package/lib/duet/p-f4055b5a.entry.js +0 -4
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
4
|
import { h } from "@stencil/core";
|
|
5
|
-
export const PendingItem = ({ name }) => (h("span",
|
|
6
|
-
h("duet-
|
|
7
|
-
h("duet-spacer", { size: "xx-small" })
|
|
5
|
+
export const PendingItem = ({ name }) => (h("span", { class: "duet-upload-item-name" },
|
|
6
|
+
h("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
|
|
7
|
+
h("duet-spacer", { size: "xx-small", direction: "horizontal" }),
|
|
8
|
+
name));
|
|
@@ -33,23 +33,23 @@ export const validateFileSize = (size, maxBytes) => {
|
|
|
33
33
|
}
|
|
34
34
|
return maxBytes >= size;
|
|
35
35
|
};
|
|
36
|
-
export const validateFile = (item, validators) => {
|
|
36
|
+
export const validateFile = (item, validators, errorCodes) => {
|
|
37
37
|
const { allowedMimetypes, allowedExtensions, maxBytes } = validators;
|
|
38
38
|
let valid = false;
|
|
39
|
-
let errorMessage = getError("default");
|
|
39
|
+
let errorMessage = getError("default", errorCodes);
|
|
40
40
|
if (item) {
|
|
41
41
|
const { name, type, size } = item;
|
|
42
42
|
const mime = validateFileMime(type, allowedMimetypes);
|
|
43
43
|
const ext = validateFileExtension(name.toLowerCase(), allowedExtensions);
|
|
44
44
|
const bytes = validateFileSize(size, maxBytes);
|
|
45
45
|
if (!mime) {
|
|
46
|
-
errorMessage = getError("duet-upload-101");
|
|
46
|
+
errorMessage = getError("duet-upload-101", errorCodes);
|
|
47
47
|
}
|
|
48
48
|
if (!ext) {
|
|
49
|
-
errorMessage = getError("duet-upload-100");
|
|
49
|
+
errorMessage = getError("duet-upload-100", errorCodes);
|
|
50
50
|
}
|
|
51
51
|
if (!bytes) {
|
|
52
|
-
errorMessage = getError("duet-upload-201");
|
|
52
|
+
errorMessage = getError("duet-upload-201", errorCodes);
|
|
53
53
|
}
|
|
54
54
|
valid = mime && ext && bytes;
|
|
55
55
|
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
4
|
export const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress }) => {
|
|
5
|
+
// @ts-ignore
|
|
5
6
|
const { type = "POST", xhr, uri, argument = null, headers = null } = options;
|
|
6
7
|
xhr.open(type, `${uri}${argument || ""}`, true);
|
|
7
8
|
const { data, name } = payload;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
4
|
const NAMESPACE = 'duet';
|
|
5
|
-
const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.3.
|
|
5
|
+
const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.3.16"};
|
|
6
6
|
|
|
7
7
|
let scopeId;
|
|
8
8
|
let contentRef;
|
|
@@ -6606,6 +6606,7 @@ const DuetHeaderDropdown = (props, _children) => {
|
|
|
6606
6606
|
"duet-header-dropdown-toggle": true,
|
|
6607
6607
|
"duet-header-button": true,
|
|
6608
6608
|
active: props.active,
|
|
6609
|
+
open: props.isOpen,
|
|
6609
6610
|
}, onClick: props.onToggle },
|
|
6610
6611
|
props.icon && h(DuetHeaderIcon, { icon: props.icon }),
|
|
6611
6612
|
h("span", { "aria-hidden": "true", id: `${props.id}-label`, class: "duet-header-dropdown-label" }, props.label),
|
|
@@ -6626,7 +6627,7 @@ const DuetHeaderHamburger = () => (h("div", { class: "duet-header-hamburger" },
|
|
|
6626
6627
|
h("span", { class: "duet-header-bar" }),
|
|
6627
6628
|
h("span", { class: "duet-header-bar" })));
|
|
6628
6629
|
|
|
6629
|
-
const duetHeaderCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){:host{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){:host{position:sticky;top:-4rem;z-index:400}}@supports (position: -webkit-sticky){:host(.duet-header-multi-level-desktop-variation){top:0}}@supports (position: sticky){:host(.duet-header-multi-level-desktop-variation){top:0}}.duet-header-reserved-space{height:4rem}@media (min-width: 62em){.duet-header-reserved-space.duet-with-links{height:7rem}}.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{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{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){.duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}.duet-header.duet-header-inactive{position:fixed}}.duet-header *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.duet-header-top{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{z-index:100;padding:0 28px;box-shadow:none}.duet-header-top duet-logo{padding-right:4px}}@media (min-width: 106.25em){.duet-header-top{padding:0 48px}}.duet-theme-turva .duet-header-top{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{box-shadow:none}}.duet-theme-turva .duet-header-top duet-logo{left:-80px !important;margin-top:-8px !important}.duet-header-top .duet-header-region{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{border-color:#cfcfd1}@media (max-width: 35.9375em){.duet-header-top .duet-header-region{display:none}}@media (min-width: 62em){.duet-header-top .duet-header-region{padding-left:19px}}.duet-header-bottom{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{background:#f5f5f7}@media (min-width: 62em){.duet-header-bottom{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{position:relative}}.duet-header-bottom.active{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){.duet-header-bottom{position:relative;transition:none !important}}.duet-header-items,.duet-header-bottom-utils,.duet-header-utils{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){.duet-header-items,.duet-header-bottom-utils,.duet-header-utils{opacity:1;transition:none !important;transform:none}}.active .duet-header-items,.active .duet-header-bottom-utils,.active .duet-header-utils{opacity:1;transform:translateY(0)}.duet-header-items{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{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){.duet-header-items{padding-left:43.6363636364px}}.duet-header-items .duet-header-item-container{border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){.duet-header-items .duet-header-item-container{border:0}}.duet-header-items .duet-header-second-level .duet-header-item{padding:0 40px;border:0}.duet-header-items .duet-header-second-level .duet-header-button{border:0}.duet-header-items .duet-header-second-level .duet-header-dropdown-content{padding:0;border:0}.duet-header-items .duet-header-third-level .duet-header-item{padding:0 75px}.duet-header-items .duet-header-item{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{font-weight:600;border-radius:4px}}.duet-theme-turva .duet-header-items .duet-header-item{color:#171c3a;border-color:#e1e3e6}.duet-header-items .duet-header-item:hover{color:#004d80}.duet-theme-turva .duet-header-items .duet-header-item:hover{color:#444445}.duet-header-items .duet-header-item:focus{outline:0}:host(.user-is-tabbing) .duet-header-items .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-items .duet-header-item: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{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{color:#0077b3}.duet-theme-turva .duet-header-items .duet-header-item.active{color:#c60c30}.duet-header-items .duet-header-item.active:hover{color:#0077b3}.duet-theme-turva .duet-header-items .duet-header-item.active:hover{color:#c60c30}.duet-header-items .duet-header-item.active::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{background:#c60c30}@media (min-width: 62em){.duet-header-items .duet-header-item.active::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}.duet-header-toggle{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{outline:0}:host(.user-is-tabbing) .duet-header-toggle: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){.duet-header-toggle{display:none}}.duet-header-hamburger{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{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{background:#171c3a}.duet-header-hamburger .duet-header-bar:nth-child(1){top:0}.duet-header-hamburger .duet-header-bar:nth-child(2),.duet-header-hamburger .duet-header-bar:nth-child(3){top:7px}.duet-header-hamburger .duet-header-bar:nth-child(4){top:14px}button.active .duet-header-hamburger .duet-header-bar:nth-child(1){top:7px;left:50%;width:0%}button.active .duet-header-hamburger .duet-header-bar:nth-child(2){transform:rotate(45deg)}button.active .duet-header-hamburger .duet-header-bar:nth-child(3){transform:rotate(-45deg)}button.active .duet-header-hamburger .duet-header-bar:nth-child(4){top:7px;left:50%;width:0%}.duet-header-utils{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){.duet-header-utils{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{margin-right:36px}}@media (min-width: 62em){.duet-header-bottom-utils{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){.duet-header-bottom-utils{margin-right:36px}}button{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{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{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{color:#171c3a;border-color:#e4e4e6}.duet-header-button:hover{color:#004d80}.duet-theme-turva .duet-header-button:hover{color:#444445}.duet-header-button:focus{outline:0}:host(.user-is-tabbing) .duet-header-button: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-header-button:active{opacity:0.75}@media (min-width: 62em){.duet-header-button{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}.duet-header-button::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}.duet-theme-turva .duet-header-button::before{background:#cfcfd1}}.duet-header-button.active{color:#0077b3;border-radius:0}.duet-theme-turva .duet-header-button.active{color:#c60c30}.duet-header-button.active:hover{color:#0077b3}.duet-theme-turva .duet-header-button.active:hover{color:#c60c30}@media (min-width: 62em){.duet-header-button.active::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}.duet-theme-turva .duet-header-button.active::after{color:#c60c30}}.duet-header-utils .duet-header-button.duet-header-logout{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{border-color:#171c3a}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon{margin-right:0.5rem}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label{font-size:0.875rem}@media (min-width: 62em){.duet-header-utils .duet-header-button.duet-header-logout{height:4rem;margin:0;font-weight:400;border:0}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon{margin-right:0.75rem}}.duet-header-no-action{pointer-events:none}.duet-header-user-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){.duet-header-utils>*:last-child::before,.duet-header-utils>*:last-child button::before{display:none}}@media (min-width: 62em){.duet-header-utils>*:last-child .duet-header-dropdown-content{right:0;left:auto}}.duet-header-language{text-transform:uppercase}.duet-header-language.active,.duet-header-language.active:hover,.duet-header-contact.active,.duet-header-contact.active:hover{color:inherit}.duet-theme-turva .duet-header-language.active,.duet-theme-turva .duet-header-language.active:hover,.duet-theme-turva .duet-header-contact.active,.duet-theme-turva .duet-header-contact.active:hover{color:inherit}.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after{width:0}@media (min-width: 62em){.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after{width:100%}}.duet-header-icon{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{margin-right:8px}}.duet-header-caret{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{width:7px;height:7px}}.duet-header-caret duet-icon{width:10px}.duet-header-dropdown-toggle.active .duet-header-caret{transform:translateY(-50%) rotate(180deg)}.duet-header-dropdown-toggle:focus{outline:0}:host(.user-is-tabbing) .duet-header-dropdown-toggle: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-header-dropdown-toggle:active{outline:none}.duet-header-badge{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{background:#faa40f}.active-bar{color:#0077b3}.active-bar::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}.duet-theme-turva .active-bar::after{background:#c60c30}.duet-header-dropdown{position:relative}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px !important;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after{background:#c60c30}}.duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover{border-bottom:1px solid #f5f8fa}.duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{background:#c60c30}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover{border-color:#f5f5f7}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover{color:#004d80;border:0}.duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}}.duet-header-dropdown .duet-header-dropdown-content{display:none;padding-bottom:16px;background:#f3f9fc;border-bottom:1px solid #e1e3e6}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content{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)}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items{right:0%;left:auto;min-width:225px}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items .duet-header-session-label{padding:0 20px;font-weight:600}}@media (min-width: 64.0625em){.duet-header-dropdown .duet-header-dropdown-content{min-width:170px}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items{min-width:225px}}.duet-header-dropdown .duet-header-dropdown-content.active{display:block}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content.active{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}.duet-header-dropdown .duet-header-dropdown-content a: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){color:#171c3a}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content a: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{background:#e6f2f8}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover{background:#f9e6ea}}.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus{outline:0}:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a: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{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{padding-right:36px;font-weight:600;vertical-align:baseline}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a: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{color:white;background:#0077b3}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active{background:#c60c30}}.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external{margin-left:4px}.duet-header-back .duet-header-top{flex-direction:row;align-items:center;justify-content:center}.duet-header-back duet-button{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){.duet-header-back duet-button{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}.duet-header-back .duet-header-toggle{display:none !important}.duet-header-skip{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{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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-theme-turva .duet-header-skip{min-width:120px;color:#171c3a}@media (min-width: 106.25em){.duet-header-skip{margin-left:20px}}.duet-header-skip:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}.duet-header-multi-level-desktop{height:6rem}.duet-header-multi-level-desktop .duet-header-top{justify-content:space-between;height:6rem}.duet-header-multi-level-desktop .duet-header-button{height:6rem}.duet-header-multi-level-desktop .logo-and-segment{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{z-index:400;margin-left:2rem}.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content{background:#f3f9fc}.duet-header-multi-level-desktop .logo-and-segment button{align-items:flex-start;height:2rem;font-weight:600;line-height:1rem}.duet-header-multi-level-desktop .logo-and-segment button::before{display:none}.duet-header-multi-level-desktop .logo-and-segment .duet-header-caret{top:25%}.duet-header-multi-level-desktop-nav{display:flex}.duet-header-multi-level-desktop-nav .duet-header-dropdown{position:static}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle{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{color:#0077b3}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content{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{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{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{font-weight:600;color:#0077b3;background:none}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after{transform:translateY(0)}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon{margin:0}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge{position:absolute;margin-top:-2rem;margin-right:-2.25rem}.duet-header-multi-level-desktop-nav button::before{display:none}.duet-header-multi-level-desktop-nav .duet-header-caret{display:none}.duet-header-multi-level-desktop-utils{display:flex;flex-basis:0;flex-grow:1;justify-content:flex-end}.duet-header-multi-level-desktop-utils>:last-child::before{display:none}.duet-header-multi-level-desktop-utils>:last-child.duet-header-dropdown .duet-header-button::before{display:none}.duet-header-multi-level-desktop-utils .duet-header-dropdown{z-index:400}.duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content{background:#f3f9fc}.duet-header-multi-level-desktop-utils .duet-header-button-label,.duet-header-multi-level-desktop-utils .duet-header-dropdown-label{display:none}@media (min-width: 64.0625em){.duet-header-multi-level-desktop-utils .duet-header-button-label,.duet-header-multi-level-desktop-utils .duet-header-dropdown-label{display:initial}}.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content{background:#fcf3f4}.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active{color:#c60c30}.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content{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{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{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{background:#fcf3f4}";
|
|
6630
|
+
const duetHeaderCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){:host{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){:host{position:sticky;top:-4rem;z-index:400}}@supports (position: -webkit-sticky){:host(.duet-header-multi-level-desktop-variation){top:0}}@supports (position: sticky){:host(.duet-header-multi-level-desktop-variation){top:0}}.duet-header-reserved-space{height:4rem}@media (min-width: 62em){.duet-header-reserved-space.duet-with-links{height:7rem}}.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{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{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){.duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}.duet-header.duet-header-inactive{position:fixed}}.duet-header *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.duet-header-top{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{z-index:100;padding:0 28px;box-shadow:none}.duet-header-top duet-logo{padding-right:4px}}@media (min-width: 106.25em){.duet-header-top{padding:0 48px}}.duet-theme-turva .duet-header-top{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{box-shadow:none}}.duet-theme-turva .duet-header-top duet-logo{left:-80px !important;margin-top:-8px !important}.duet-header-top .duet-header-region{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{border-color:#cfcfd1}@media (max-width: 35.9375em){.duet-header-top .duet-header-region{display:none}}@media (min-width: 62em){.duet-header-top .duet-header-region{padding-left:19px}}.duet-header-bottom{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{background:#f5f5f7}@media (min-width: 62em){.duet-header-bottom{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{position:relative}}.duet-header-bottom.active{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){.duet-header-bottom{position:relative;transition:none !important}}.duet-header-items,.duet-header-bottom-utils,.duet-header-utils{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){.duet-header-items,.duet-header-bottom-utils,.duet-header-utils{opacity:1;transition:none !important;transform:none}}.active .duet-header-items,.active .duet-header-bottom-utils,.active .duet-header-utils{opacity:1;transform:translateY(0)}.duet-header-items{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{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){.duet-header-items{padding-left:43.6363636364px}}.duet-header-items .duet-header-item-container{border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){.duet-header-items .duet-header-item-container{border:0}}.duet-header-items .duet-header-second-level .duet-header-item{padding:0 40px;border:0}.duet-header-items .duet-header-second-level .duet-header-button{border:0}.duet-header-items .duet-header-second-level .duet-header-dropdown-content{padding:0;border:0}.duet-header-items .duet-header-third-level .duet-header-item{padding:0 75px}.duet-header-items .duet-header-item{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{font-weight:600;border-radius:4px}}.duet-theme-turva .duet-header-items .duet-header-item{color:#171c3a;border-color:#e1e3e6}.duet-header-items .duet-header-item:hover{color:#004d80}.duet-theme-turva .duet-header-items .duet-header-item:hover{color:#444445}.duet-header-items .duet-header-item:focus{outline:0}:host(.user-is-tabbing) .duet-header-items .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-items .duet-header-item: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{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{color:#0077b3}.duet-theme-turva .duet-header-items .duet-header-item.active{color:#c60c30}.duet-header-items .duet-header-item.active:hover{color:#0077b3}.duet-theme-turva .duet-header-items .duet-header-item.active:hover{color:#c60c30}.duet-header-items .duet-header-item.active::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{background:#c60c30}@media (min-width: 62em){.duet-header-items .duet-header-item.active::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}.duet-header-toggle{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{outline:0}:host(.user-is-tabbing) .duet-header-toggle: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){.duet-header-toggle{display:none}}.duet-header-hamburger{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{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{background:#171c3a}.duet-header-hamburger .duet-header-bar:nth-child(1){top:0}.duet-header-hamburger .duet-header-bar:nth-child(2),.duet-header-hamburger .duet-header-bar:nth-child(3){top:7px}.duet-header-hamburger .duet-header-bar:nth-child(4){top:14px}button.active .duet-header-hamburger .duet-header-bar:nth-child(1){top:7px;left:50%;width:0%}button.active .duet-header-hamburger .duet-header-bar:nth-child(2){transform:rotate(45deg)}button.active .duet-header-hamburger .duet-header-bar:nth-child(3){transform:rotate(-45deg)}button.active .duet-header-hamburger .duet-header-bar:nth-child(4){top:7px;left:50%;width:0%}.duet-header-utils{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){.duet-header-utils{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{margin-right:36px}}@media (min-width: 62em){.duet-header-bottom-utils{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){.duet-header-bottom-utils{margin-right:36px}}button{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{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{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{color:#171c3a;border-color:#e4e4e6}.duet-header-button:hover{color:#004d80}.duet-theme-turva .duet-header-button:hover{color:#444445}.duet-header-button:focus{outline:0}:host(.user-is-tabbing) .duet-header-button: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-header-button:active{opacity:0.75}@media (min-width: 62em){.duet-header-button{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}.duet-header-button::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}.duet-theme-turva .duet-header-button::before{background:#cfcfd1}}.duet-header-button.active{color:#0077b3;border-radius:0}.duet-theme-turva .duet-header-button.active{color:#c60c30}.duet-header-button.active:hover{color:#0077b3}.duet-theme-turva .duet-header-button.active:hover{color:#c60c30}@media (min-width: 62em){.duet-header-button.active::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}.duet-theme-turva .duet-header-button.active::after{color:#c60c30}}.duet-header-utils .duet-header-button.duet-header-logout{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{border-color:#171c3a}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon{margin-right:0.5rem}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label{font-size:0.875rem}@media (min-width: 62em){.duet-header-utils .duet-header-button.duet-header-logout{height:4rem;margin:0;font-weight:400;border:0}.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon{margin-right:0.75rem}}.duet-header-no-action{pointer-events:none}.duet-header-user-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){.duet-header-utils>*:last-child::before,.duet-header-utils>*:last-child button::before{display:none}}@media (min-width: 62em){.duet-header-utils>*:last-child .duet-header-dropdown-content{right:0;left:auto}}.duet-header-language{text-transform:uppercase}.duet-header-language.active,.duet-header-language.active:hover,.duet-header-contact.active,.duet-header-contact.active:hover{color:inherit}.duet-theme-turva .duet-header-language.active,.duet-theme-turva .duet-header-language.active:hover,.duet-theme-turva .duet-header-contact.active,.duet-theme-turva .duet-header-contact.active:hover{color:inherit}.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after{width:0}@media (min-width: 62em){.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after{width:100%}}.duet-header-icon{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{margin-right:8px}}.duet-header-caret{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{width:7px;height:7px}}.duet-header-caret duet-icon{width:10px}.duet-header-dropdown-toggle.active .duet-header-caret{transform:translateY(-50%) rotate(180deg)}.duet-header-dropdown-toggle:focus{outline:0}:host(.user-is-tabbing) .duet-header-dropdown-toggle: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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-header-dropdown-toggle:active{outline:none}.duet-header-badge{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{background:#faa40f}.active-bar{color:#0077b3}.active-bar::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}.duet-theme-turva .active-bar::after{background:#c60c30}.duet-header-dropdown{position:relative}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px !important;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after{background:#c60c30}}.duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover{border-bottom:1px solid #f5f8fa}.duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{background:#c60c30}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover{border-color:#f5f5f7}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-toggle.active,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover{color:#004d80;border:0}.duet-header-dropdown .duet-header-dropdown-toggle.active::after,.duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}}.duet-header-dropdown .duet-header-dropdown-content{display:none;padding-bottom:16px;background:#f3f9fc;border-bottom:1px solid #e1e3e6}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content{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)}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items{right:0%;left:auto;min-width:225px}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items .duet-header-session-label{padding:0 20px;font-weight:600}}@media (min-width: 64.0625em){.duet-header-dropdown .duet-header-dropdown-content{min-width:170px}.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items{min-width:225px}}.duet-header-dropdown .duet-header-dropdown-content.active{display:block}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content.active{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}.duet-header-dropdown .duet-header-dropdown-content a: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){color:#171c3a}@media (min-width: 62em){.duet-header-dropdown .duet-header-dropdown-content a: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{background:#e6f2f8}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover{background:#f9e6ea}}.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus{outline:0}:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a: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{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{padding-right:36px;font-weight:600;vertical-align:baseline}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a: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{color:white;background:#0077b3}.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active{background:#c60c30}}.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external{margin-left:4px}.duet-header-back .duet-header-top{flex-direction:row;align-items:center;justify-content:center}.duet-header-back duet-button{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){.duet-header-back duet-button{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}.duet-header-back .duet-header-toggle{display:none !important}.duet-header-skip{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{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{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-theme-turva .duet-header-skip{min-width:120px;color:#171c3a}@media (min-width: 106.25em){.duet-header-skip{margin-left:20px}}.duet-header-skip:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}.duet-header-multi-level-desktop{height:6rem}.duet-header-multi-level-desktop .duet-header-top{justify-content:space-between;height:6rem}.duet-header-multi-level-desktop .duet-header-button{height:6rem}.duet-header-multi-level-desktop .logo-and-segment{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{z-index:400;margin-left:2rem}.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content{background:#f3f9fc}.duet-header-multi-level-desktop .logo-and-segment button{align-items:flex-start;height:2rem;font-weight:600;line-height:1rem}.duet-header-multi-level-desktop .logo-and-segment button::before{display:none}.duet-header-multi-level-desktop .logo-and-segment .duet-header-caret{top:25%}.duet-header-multi-level-desktop-nav{display:flex}.duet-header-multi-level-desktop-nav .duet-header-dropdown{position:static}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle{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{color:#0077b3}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active:not(.open) .duet-header-caret{transform:translateY(-50%) rotate(0deg)}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content{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{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{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{font-weight:600;color:#0077b3;background:none}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after{transform:translateY(0)}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon{margin:0}.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge{position:absolute;margin-top:-2rem;margin-right:-2.25rem}.duet-header-multi-level-desktop-nav button::before{display:none}.duet-header-multi-level-desktop-nav .duet-header-caret{right:1%}.duet-header-multi-level-desktop-utils{display:flex;flex-basis:0;flex-grow:1;justify-content:flex-end}.duet-header-multi-level-desktop-utils>:last-child::before{display:none}.duet-header-multi-level-desktop-utils>:last-child.duet-header-dropdown .duet-header-button::before{display:none}.duet-header-multi-level-desktop-utils .duet-header-dropdown{z-index:400}.duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content{background:#f3f9fc}.duet-header-multi-level-desktop-utils .duet-header-button-label,.duet-header-multi-level-desktop-utils .duet-header-dropdown-label{display:none}@media (min-width: 64.0625em){.duet-header-multi-level-desktop-utils .duet-header-button-label,.duet-header-multi-level-desktop-utils .duet-header-dropdown-label{display:initial}}.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content{background:#fcf3f4}.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active{color:#c60c30}.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content{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{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{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{background:#fcf3f4}";
|
|
6630
6631
|
|
|
6631
6632
|
const createEvent = (ev, data) => ({
|
|
6632
6633
|
component: "duet-header",
|
|
@@ -9489,6 +9490,10 @@ const DuetPagination$1 = class extends H {
|
|
|
9489
9490
|
});
|
|
9490
9491
|
}, 500);
|
|
9491
9492
|
}
|
|
9493
|
+
watchPropTotalHandler( /*newValue: boolean, oldValue: boolean*/) {
|
|
9494
|
+
this.calculatePageTake();
|
|
9495
|
+
return true;
|
|
9496
|
+
}
|
|
9492
9497
|
watchStateHandler(newValue, oldValue) {
|
|
9493
9498
|
return this.actionChain(newValue, oldValue);
|
|
9494
9499
|
}
|
|
@@ -9628,6 +9633,7 @@ const DuetPagination$1 = class extends H {
|
|
|
9628
9633
|
}
|
|
9629
9634
|
get element() { return this; }
|
|
9630
9635
|
static get watchers() { return {
|
|
9636
|
+
"total": ["watchPropTotalHandler"],
|
|
9631
9637
|
"current": ["watchStateHandler"]
|
|
9632
9638
|
}; }
|
|
9633
9639
|
static get style() { return duetPaginationCss; }
|
|
@@ -12185,12 +12191,13 @@ const errorCodes = [
|
|
|
12185
12191
|
}
|
|
12186
12192
|
];
|
|
12187
12193
|
|
|
12188
|
-
const getError = (code) => {
|
|
12194
|
+
const getError = (code, errorCodes) => {
|
|
12189
12195
|
let error = {
|
|
12190
12196
|
type: undefined,
|
|
12191
12197
|
system_message: undefined,
|
|
12192
12198
|
message: undefined,
|
|
12193
12199
|
};
|
|
12200
|
+
errorCodes = parsePossibleJSON(errorCodes);
|
|
12194
12201
|
error = errorCodes.filter(errorItem => {
|
|
12195
12202
|
// the == is intentional we may be comparing numbers to strings - and that is ok here
|
|
12196
12203
|
return errorItem.type == code;
|
|
@@ -12202,8 +12209,8 @@ const getError = (code) => {
|
|
|
12202
12209
|
}
|
|
12203
12210
|
return error;
|
|
12204
12211
|
};
|
|
12205
|
-
const getI18nError = (errorCode) => {
|
|
12206
|
-
const errorFromJson = getError(errorCode);
|
|
12212
|
+
const getI18nError = (errorCode, errorCodes) => {
|
|
12213
|
+
const errorFromJson = getError(errorCode, errorCodes);
|
|
12207
12214
|
const i18String = getLocaleString(errorFromJson.message);
|
|
12208
12215
|
if (i18String === "" || !i18String) {
|
|
12209
12216
|
return errorFromJson.system_message;
|
|
@@ -12213,25 +12220,29 @@ const getI18nError = (errorCode) => {
|
|
|
12213
12220
|
}
|
|
12214
12221
|
};
|
|
12215
12222
|
|
|
12216
|
-
const ErrorItem = ({ data }) => {
|
|
12223
|
+
const ErrorItem = ({ data, errorCodes }) => {
|
|
12217
12224
|
const { item, error } = data;
|
|
12218
12225
|
const { name } = item;
|
|
12219
12226
|
const { type } = error;
|
|
12220
12227
|
return (h("span", { class: "duet-upload-item-error", role: "status" },
|
|
12221
12228
|
h("duet-paragraph", { class: "duet-upload-item-name", color: "danger", margin: "none", weight: "semi-bold" },
|
|
12222
|
-
h("duet-icon", { margin: "none", size: "
|
|
12223
|
-
" ",
|
|
12229
|
+
h("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
|
|
12230
|
+
h("duet-spacer", { size: "xx-small", direction: "horizontal" }),
|
|
12224
12231
|
name),
|
|
12225
|
-
h("duet-paragraph", { class: "duet-upload-item-error-label", size: "small", margin: "none", color: "danger" }, getI18nError(type))));
|
|
12232
|
+
h("duet-paragraph", { class: "duet-upload-item-error-label", size: "small", margin: "none", color: "danger" }, getI18nError(type, errorCodes))));
|
|
12226
12233
|
};
|
|
12227
12234
|
|
|
12228
|
-
const ProgressItem = ({ progress, name }) => (h("span",
|
|
12229
|
-
h("duet-
|
|
12235
|
+
const ProgressItem = ({ progress, name }) => (h("span", { class: "duet-upload-item-name" },
|
|
12236
|
+
h("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
|
|
12237
|
+
h("duet-spacer", { size: "xx-small", direction: "horizontal" }),
|
|
12238
|
+
name,
|
|
12239
|
+
h("br", null),
|
|
12230
12240
|
h("duet-progress", { progress: Math.ceil(progress), "aria-hidden": true })));
|
|
12231
12241
|
|
|
12232
|
-
const PendingItem = ({ name }) => (h("span",
|
|
12233
|
-
h("duet-
|
|
12234
|
-
h("duet-spacer", { size: "xx-small" })
|
|
12242
|
+
const PendingItem = ({ name }) => (h("span", { class: "duet-upload-item-name" },
|
|
12243
|
+
h("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
|
|
12244
|
+
h("duet-spacer", { size: "xx-small", direction: "horizontal" }),
|
|
12245
|
+
name));
|
|
12235
12246
|
|
|
12236
12247
|
const formatBytes = (bytes, decimals = 2) => {
|
|
12237
12248
|
if (bytes === 0) {
|
|
@@ -12300,23 +12311,23 @@ const validateFileSize = (size, maxBytes) => {
|
|
|
12300
12311
|
}
|
|
12301
12312
|
return maxBytes >= size;
|
|
12302
12313
|
};
|
|
12303
|
-
const validateFile = (item, validators) => {
|
|
12314
|
+
const validateFile = (item, validators, errorCodes) => {
|
|
12304
12315
|
const { allowedMimetypes, allowedExtensions, maxBytes } = validators;
|
|
12305
12316
|
let valid = false;
|
|
12306
|
-
let errorMessage = getError("default");
|
|
12317
|
+
let errorMessage = getError("default", errorCodes);
|
|
12307
12318
|
if (item) {
|
|
12308
12319
|
const { name, type, size } = item;
|
|
12309
12320
|
const mime = validateFileMime(type, allowedMimetypes);
|
|
12310
12321
|
const ext = validateFileExtension(name.toLowerCase(), allowedExtensions);
|
|
12311
12322
|
const bytes = validateFileSize(size, maxBytes);
|
|
12312
12323
|
if (!mime) {
|
|
12313
|
-
errorMessage = getError("duet-upload-101");
|
|
12324
|
+
errorMessage = getError("duet-upload-101", errorCodes);
|
|
12314
12325
|
}
|
|
12315
12326
|
if (!ext) {
|
|
12316
|
-
errorMessage = getError("duet-upload-100");
|
|
12327
|
+
errorMessage = getError("duet-upload-100", errorCodes);
|
|
12317
12328
|
}
|
|
12318
12329
|
if (!bytes) {
|
|
12319
|
-
errorMessage = getError("duet-upload-201");
|
|
12330
|
+
errorMessage = getError("duet-upload-201", errorCodes);
|
|
12320
12331
|
}
|
|
12321
12332
|
valid = mime && ext && bytes;
|
|
12322
12333
|
}
|
|
@@ -12360,6 +12371,7 @@ const validateTotalAmountIsAboveMax = (filelist, maxFiles) => {
|
|
|
12360
12371
|
};
|
|
12361
12372
|
|
|
12362
12373
|
const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress }) => {
|
|
12374
|
+
// @ts-ignore
|
|
12363
12375
|
const { type = "POST", xhr, uri, argument = null, headers = null } = options;
|
|
12364
12376
|
xhr.open(type, `${uri}${argument || ""}`, true);
|
|
12365
12377
|
const { data, name } = payload;
|
|
@@ -12387,7 +12399,7 @@ const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress })
|
|
|
12387
12399
|
return xhr;
|
|
12388
12400
|
};
|
|
12389
12401
|
|
|
12390
|
-
const duetUploadCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";
|
|
12402
|
+
const duetUploadCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";
|
|
12391
12403
|
|
|
12392
12404
|
const DuetUpload$1 = class extends H {
|
|
12393
12405
|
constructor() {
|
|
@@ -12397,6 +12409,7 @@ const DuetUpload$1 = class extends H {
|
|
|
12397
12409
|
this.duetChange = createEvent$2(this, "duetChange", 3);
|
|
12398
12410
|
this.duetBlur = createEvent$2(this, "duetBlur", 7);
|
|
12399
12411
|
this.duetFocus = createEvent$2(this, "duetFocus", 7);
|
|
12412
|
+
this.duetReady = createEvent$2(this, "duetReady", 7);
|
|
12400
12413
|
this.duetDone = createEvent$2(this, "duetDone", 3);
|
|
12401
12414
|
this.duetState = createEvent$2(this, "duetState", 3);
|
|
12402
12415
|
this.duetDelete = createEvent$2(this, "duetDelete", 3);
|
|
@@ -12412,6 +12425,10 @@ const DuetUpload$1 = class extends H {
|
|
|
12412
12425
|
* it will be up to you to handle the upload and return progress information to the upload-component
|
|
12413
12426
|
*/
|
|
12414
12427
|
this.external = false;
|
|
12428
|
+
/**
|
|
12429
|
+
* If internal upload method is used, and this has been set to a function - it will be called with the XHR options before the reqeust is sent, return an updated XHR options object in order to manipulate the request
|
|
12430
|
+
*/
|
|
12431
|
+
this.middleware = null;
|
|
12415
12432
|
/**
|
|
12416
12433
|
* If defer-upload is true, duet-upload will not (as recommended) instantly upload files but await a call to uploadPending()
|
|
12417
12434
|
*/
|
|
@@ -12431,7 +12448,7 @@ const DuetUpload$1 = class extends H {
|
|
|
12431
12448
|
size: "x-small",
|
|
12432
12449
|
background: "gray-lightest",
|
|
12433
12450
|
name: "delete",
|
|
12434
|
-
map: ["success", "failure"
|
|
12451
|
+
map: ["success", "failure"],
|
|
12435
12452
|
label: {
|
|
12436
12453
|
fi: "Poista tiedosto",
|
|
12437
12454
|
en: "Poista tiedosto",
|
|
@@ -12444,7 +12461,7 @@ const DuetUpload$1 = class extends H {
|
|
|
12444
12461
|
size: "x-small",
|
|
12445
12462
|
background: "gray-lightest",
|
|
12446
12463
|
name: "cancel",
|
|
12447
|
-
map: ["inprogress"],
|
|
12464
|
+
map: ["inprogress", "pending"],
|
|
12448
12465
|
label: {
|
|
12449
12466
|
fi: "Keskeytä lähetys",
|
|
12450
12467
|
en: "Cancel the upload",
|
|
@@ -12638,6 +12655,10 @@ const DuetUpload$1 = class extends H {
|
|
|
12638
12655
|
* Display the input in error state along with an error message.
|
|
12639
12656
|
*/
|
|
12640
12657
|
this.error = "";
|
|
12658
|
+
/**
|
|
12659
|
+
* Default errorcodes used by the component, modifiable via javascript
|
|
12660
|
+
*/
|
|
12661
|
+
this.errorCodes = errorCodes;
|
|
12641
12662
|
/**
|
|
12642
12663
|
* Use maxBytes to specify the maximum size in Bytes of a file that can be uploaded.
|
|
12643
12664
|
*/
|
|
@@ -12793,7 +12814,7 @@ const DuetUpload$1 = class extends H {
|
|
|
12793
12814
|
return h$1(PendingItem, { name: data.item.name });
|
|
12794
12815
|
}
|
|
12795
12816
|
else if (group === this.DefaultGroups.failure) {
|
|
12796
|
-
return h$1(ErrorItem, { data: data });
|
|
12817
|
+
return h$1(ErrorItem, { data: data, errorCodes: this.errorCodes });
|
|
12797
12818
|
}
|
|
12798
12819
|
else if (data.group) {
|
|
12799
12820
|
return data.html;
|
|
@@ -12908,7 +12929,7 @@ const DuetUpload$1 = class extends H {
|
|
|
12908
12929
|
this.updateValueInMap(name, "valid", false, true);
|
|
12909
12930
|
};
|
|
12910
12931
|
this.transferFailed = name => {
|
|
12911
|
-
this.updateValueInMap(name, "error",
|
|
12932
|
+
this.updateValueInMap(name, "error", getI18nError("duet-upload-001", this.errorCodes));
|
|
12912
12933
|
};
|
|
12913
12934
|
this.transferCanceled = name => {
|
|
12914
12935
|
this.files.delete(name);
|
|
@@ -12919,10 +12940,10 @@ const DuetUpload$1 = class extends H {
|
|
|
12919
12940
|
const isTotalSizeOverMaxSize = validateTotalSizeIsAboveMax(this.files, this.maxBytesTotal);
|
|
12920
12941
|
const isTotalFileAmountAboveMax = validateTotalAmountIsAboveMax(this.files, this.maxFiles);
|
|
12921
12942
|
if (isTotalSizeOverMaxSize && name) {
|
|
12922
|
-
this.updateValueInMap(name, "error",
|
|
12943
|
+
this.updateValueInMap(name, "error", getI18nError("duet-upload-202", this.errorCodes), false);
|
|
12923
12944
|
}
|
|
12924
12945
|
if (isTotalFileAmountAboveMax && name) {
|
|
12925
|
-
this.updateValueInMap(name, "error",
|
|
12946
|
+
this.updateValueInMap(name, "error", getI18nError("duet-upload-301", this.errorCodes), false);
|
|
12926
12947
|
}
|
|
12927
12948
|
this.bytesMaxReached = isTotalSizeOverMaxSize;
|
|
12928
12949
|
this.fileMaxReached = isTotalFileAmountAboveMax;
|
|
@@ -13003,7 +13024,9 @@ const DuetUpload$1 = class extends H {
|
|
|
13003
13024
|
this.files.delete(retrievedKey);
|
|
13004
13025
|
if (!this.external) {
|
|
13005
13026
|
const { xhr } = cancelledItem;
|
|
13006
|
-
xhr
|
|
13027
|
+
if (xhr) {
|
|
13028
|
+
xhr.abort();
|
|
13029
|
+
}
|
|
13007
13030
|
}
|
|
13008
13031
|
else {
|
|
13009
13032
|
this.kick();
|
|
@@ -13044,6 +13067,11 @@ const DuetUpload$1 = class extends H {
|
|
|
13044
13067
|
component: "duet-upload",
|
|
13045
13068
|
});
|
|
13046
13069
|
};
|
|
13070
|
+
this.onReady = () => {
|
|
13071
|
+
this.duetReady.emit({
|
|
13072
|
+
component: "duet-upload",
|
|
13073
|
+
});
|
|
13074
|
+
};
|
|
13047
13075
|
this.onDone = () => {
|
|
13048
13076
|
this.duetDone.emit({
|
|
13049
13077
|
component: "duet-upload",
|
|
@@ -13150,6 +13178,7 @@ const DuetUpload$1 = class extends H {
|
|
|
13150
13178
|
}
|
|
13151
13179
|
inheritGlobalTheme(this);
|
|
13152
13180
|
this.listenForActionEvents();
|
|
13181
|
+
this.onReady();
|
|
13153
13182
|
}
|
|
13154
13183
|
componentWillRender() {
|
|
13155
13184
|
// listen to the events from the component
|
|
@@ -13219,7 +13248,7 @@ const DuetUpload$1 = class extends H {
|
|
|
13219
13248
|
"duet-upload-filelist-filled": this.files.size,
|
|
13220
13249
|
}, id: this.labelId, for: identifier }, h$1("span", { class: {
|
|
13221
13250
|
"duet-upload-filelist-empty-label": !this.files.size,
|
|
13222
|
-
} }, this.fileListEmpty))), !!this.files.size && h$1("slot", { name: "fileheader" }), !!this.files.size && (h$1("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 && this.renderEditableTableGroups(), !!this.files.size && h$1("slot", { name: "filefooter" }), h$1("duet-spacer", { size: "large" }), !this.hideButton && (h$1("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", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel)), h$1("duet-spacer", { size: "medium" }), (this.fileMaxReached || this.bytesMaxReached) && (h$1("duet-alert", { part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301"), this.bytesMaxReached && getI18nError("duet-upload-202"))), h$1("duet-spacer", { size: "medium" }), h$1("duet-visually-hidden", null, h$1("input", { ref: input => {
|
|
13251
|
+
} }, this.fileListEmpty))), !!this.files.size && h$1("slot", { name: "fileheader" }), !!this.files.size && (h$1("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 && this.renderEditableTableGroups(), !!this.files.size && h$1("slot", { name: "filefooter" }), h$1("duet-spacer", { size: "large" }), !this.hideButton && (h$1("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", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel)), h$1("duet-spacer", { size: "medium" }), (this.fileMaxReached || this.bytesMaxReached) && (h$1("duet-alert", { part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes))), h$1("duet-spacer", { size: "medium" }), h$1("duet-visually-hidden", null, h$1("input", { ref: input => {
|
|
13223
13252
|
this.nativeInput = input;
|
|
13224
13253
|
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
13225
13254
|
"duet-upload": true,
|
|
@@ -13243,34 +13272,43 @@ const DuetUpload$1 = class extends H {
|
|
|
13243
13272
|
xhr.upload.addEventListener("abort", () => {
|
|
13244
13273
|
this.transferCanceled(name);
|
|
13245
13274
|
});
|
|
13246
|
-
|
|
13275
|
+
let options = {
|
|
13247
13276
|
payload: { data, name },
|
|
13248
|
-
options: { type: "POST", uri: this.uri, xhr, argument: null, headers:
|
|
13277
|
+
options: { type: "POST", uri: this.uri, xhr, argument: null, headers: undefined },
|
|
13249
13278
|
onFailure: this.transferDoneWithFailure,
|
|
13250
13279
|
onSuccess: this.transferDone,
|
|
13251
13280
|
onProgress: this.trackProgress,
|
|
13252
|
-
}
|
|
13281
|
+
};
|
|
13282
|
+
if (this.middleware) {
|
|
13283
|
+
options = this.middleware(options);
|
|
13284
|
+
}
|
|
13285
|
+
return makeXhrRequest(options);
|
|
13253
13286
|
}
|
|
13254
13287
|
makeXHRDeleteRequest(data) {
|
|
13255
13288
|
const { uid, item } = data;
|
|
13256
13289
|
const xhr = new XMLHttpRequest();
|
|
13257
|
-
|
|
13258
|
-
|
|
13290
|
+
const headers = {
|
|
13291
|
+
"x-fileuid": uid,
|
|
13292
|
+
"x-filename": item.name,
|
|
13293
|
+
};
|
|
13294
|
+
let options = {
|
|
13259
13295
|
payload: { data: null, name },
|
|
13260
13296
|
options: {
|
|
13261
13297
|
type: "DELETE",
|
|
13262
13298
|
xhr,
|
|
13263
13299
|
uri: this.uri,
|
|
13264
|
-
|
|
13265
|
-
headers
|
|
13266
|
-
"x-fileuid": uid,
|
|
13267
|
-
"x-filename": item.name,
|
|
13268
|
-
},
|
|
13300
|
+
argument: `?key=${uid}&name=${item.name}`,
|
|
13301
|
+
headers,
|
|
13269
13302
|
},
|
|
13270
13303
|
onFailure: this.transferDoneWithFailure,
|
|
13271
13304
|
onSuccess: this.transferDone,
|
|
13272
13305
|
onProgress: this.trackProgress,
|
|
13273
|
-
}
|
|
13306
|
+
};
|
|
13307
|
+
if (this.middleware) {
|
|
13308
|
+
options = this.middleware(options);
|
|
13309
|
+
}
|
|
13310
|
+
// don't present server issues to user on deletes, just remove them from the visible list
|
|
13311
|
+
return makeXhrRequest(options);
|
|
13274
13312
|
}
|
|
13275
13313
|
/**
|
|
13276
13314
|
* Component event handling.
|
|
@@ -13287,7 +13325,7 @@ const DuetUpload$1 = class extends H {
|
|
|
13287
13325
|
maxBytes: this.maxBytes,
|
|
13288
13326
|
allowedExtensions: this.allowedExtensions,
|
|
13289
13327
|
allowedMimetypes: this.allowedMimetypes,
|
|
13290
|
-
});
|
|
13328
|
+
}, this.errorCodes);
|
|
13291
13329
|
const uid = this.genHashName();
|
|
13292
13330
|
const fileListItem = {
|
|
13293
13331
|
uid,
|
|
@@ -13516,7 +13554,7 @@ const DuetTextarea = /*@__PURE__*/proxyCustomElement(DuetTextarea$1, [2,"duet-te
|
|
|
13516
13554
|
const DuetToggle = /*@__PURE__*/proxyCustomElement(DuetToggle$1, [2,"duet-toggle",{"theme":[1025],"margin":[1],"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleDetails":[1,"accessible-details"],"accessibleLabelledBy":[1,"accessible-labelled-by"],"accessibleDescription":[1,"accessible-description"],"label":[1],"required":[4],"disabled":[516],"checked":[1540],"value":[1537],"identifier":[1],"name":[1],"role":[1]}]);
|
|
13517
13555
|
const DuetTooltip = /*@__PURE__*/proxyCustomElement(DuetTooltip$1, [1,"duet-tooltip",{"theme":[1025],"language":[1025],"accessibleLabelDefault":[1,"accessible-label-default"],"accessibleLabel":[1,"accessible-label"],"accessibleInputLabel":[1,"accessible-input-label"],"accessibleCloseLabelDefault":[1,"accessible-close-label-default"],"accessibleCloseLabel":[1,"accessible-close-label"],"label":[1],"breakpoint":[1],"direction":[1],"positionVertical":[513,"position-vertical"],"positionHorizontal":[513,"position-horizontal"],"active":[1540],"openDown":[32]},[[9,"scroll","onScroll"],[4,"click","handleDocumentClick"]]]);
|
|
13518
13556
|
const DuetTray = /*@__PURE__*/proxyCustomElement(DuetTray$1, [1,"duet-tray",{"language":[1025],"accessibleCloseLabelDefaults":[1,"accessible-close-label-default"],"accessibleCloseLabel":[1,"accessible-close-label"],"accessibleOpenLabelDefaults":[1,"accessible-open-label-default"],"accessibleOpenLabel":[1,"accessible-open-label"],"theme":[1025],"active":[516],"autoHide":[4,"auto-hide"],"responsive":[4],"expanded":[32],"hiddenState":[32]},[[9,"scroll","getFrame"],[16,"click","handleBodyClick"]]]);
|
|
13519
|
-
const DuetUpload = /*@__PURE__*/proxyCustomElement(DuetUpload$1, [1,"duet-upload",{"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"external":[4],"deferUpload":[4,"defer-upload"],"hideButton":[4,"hide-upload-button"],"actions":[16],"uri":[1],"showLinks":[4,"show-links"],"caption":[1],"statusLabelDefaults":[1,"status-label-default"],"statusMessageLabel":[1,"status-message-label"],"buttonLabelDefaults":[1,"button-label-default"],"buttonLabel":[1,"button-label"],"accessibleButtonLabel":[1,"accessible-button-label"],"theme":[1025],"disabled":[516],"identifier":[1],"margin":[1],"required":[4],"alignment":[1],"hideGroups":[4,"hide-table-labels"],"files":[1040],"valid":[1540],"labelDefaults":[1,"label-default"],"label":[1],"descriptionDefaults":[1,"description-default"],"description":[1],"fileListEmptyDefaults":[1,"list-empty-default"],"fileListEmpty":[1,"file-list-empty"],"error":[1],"name":[1],"maxBytes":[2,"max-bytes"],"maxBytesTotal":[2,"max-bytes-total"],"maxFiles":[2,"max-files"],"allowedExtensions":[1,"allowed-extensions"],"allowedMimetypes":[1,"allowed-mimetypes"],"multiple":[4],"limitSelection":[4,"limit-selection"],"value":[1025],"groups":[16],"tick":[32]}]);
|
|
13557
|
+
const DuetUpload = /*@__PURE__*/proxyCustomElement(DuetUpload$1, [1,"duet-upload",{"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"external":[4],"middleware":[16],"deferUpload":[4,"defer-upload"],"hideButton":[4,"hide-upload-button"],"actions":[16],"uri":[1],"showLinks":[4,"show-links"],"caption":[1],"statusLabelDefaults":[1,"status-label-default"],"statusMessageLabel":[1,"status-message-label"],"buttonLabelDefaults":[1,"button-label-default"],"buttonLabel":[1,"button-label"],"accessibleButtonLabel":[1,"accessible-button-label"],"theme":[1025],"disabled":[516],"identifier":[1],"margin":[1],"required":[4],"alignment":[1],"hideGroups":[4,"hide-table-labels"],"files":[1040],"valid":[1540],"labelDefaults":[1,"label-default"],"label":[1],"descriptionDefaults":[1,"description-default"],"description":[1],"fileListEmptyDefaults":[1,"list-empty-default"],"fileListEmpty":[1,"file-list-empty"],"error":[1],"errorCodes":[16],"name":[1],"maxBytes":[2,"max-bytes"],"maxBytesTotal":[2,"max-bytes-total"],"maxFiles":[2,"max-files"],"allowedExtensions":[1,"allowed-extensions"],"allowedMimetypes":[1,"allowed-mimetypes"],"multiple":[4],"limitSelection":[4,"limit-selection"],"value":[1025],"groups":[16],"tick":[32]}]);
|
|
13520
13558
|
const DuetUploadAriaStatus = /*@__PURE__*/proxyCustomElement(DuetUploadAriaStatus$1, [1,"duet-upload-aria-status",{"statusMessageLabel":[16],"accessibleAriaLive":[1,"accessible-aria-live"],"valid":[2],"total":[2],"invalid":[2],"inprogress":[2],"statusMessage":[32]}]);
|
|
13521
13559
|
const DuetVisuallyHidden = /*@__PURE__*/proxyCustomElement(DuetVisuallyHidden$1, [1,"duet-visually-hidden"]);
|
|
13522
13560
|
const defineCustomElements = (opts) => {
|