@duetds/components 4.32.0 → 4.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/hydrate/index.js +2367 -244
- package/lib/cjs/{dom-a28e5c5f.js → dom-52a4f07a.js} +1 -1
- package/lib/cjs/duet-alert.cjs.entry.js +2 -2
- package/lib/cjs/duet-badge.cjs.entry.js +1 -1
- package/lib/cjs/duet-button_2.cjs.entry.js +4 -4
- package/lib/cjs/duet-caption_4.cjs.entry.js +18 -11
- package/lib/cjs/duet-card.cjs.entry.js +3 -3
- package/lib/cjs/duet-checkbox.cjs.entry.js +2 -2
- package/lib/cjs/duet-choice_2.cjs.entry.js +39 -18
- package/lib/cjs/duet-collapsible.cjs.entry.js +5 -450
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
- package/lib/cjs/duet-date-picker.cjs.entry.js +7 -7
- package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-editable-table-button.cjs.entry.js +96 -0
- package/lib/cjs/duet-editable-table_4.cjs.entry.js +1520 -0
- 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 +3 -3
- package/lib/cjs/duet-grid_2.cjs.entry.js +69 -4
- package/lib/cjs/duet-header_2.cjs.entry.js +216 -49
- package/lib/cjs/duet-hero.cjs.entry.js +2 -2
- package/lib/cjs/duet-icon.cjs.entry.js +8 -6
- package/lib/cjs/duet-input_2.cjs.entry.js +8 -9
- package/lib/cjs/duet-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-list_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-modal.cjs.entry.js +3 -3
- package/lib/cjs/duet-notification_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-number-input.cjs.entry.js +2 -2
- package/lib/cjs/duet-progress.cjs.entry.js +75 -0
- package/lib/cjs/duet-radio_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
- package/lib/cjs/duet-select.cjs.entry.js +5 -5
- package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-tab_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-textarea.cjs.entry.js +5 -5
- package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
- package/lib/cjs/duet-tooltip.cjs.entry.js +2 -2
- package/lib/cjs/duet-tray.cjs.entry.js +3 -3
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +100 -0
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
- package/lib/cjs/duet.cjs.js +4 -4
- package/lib/cjs/{focus-utils-55b5a616.js → focus-utils-480ea4e0.js} +1 -1
- package/lib/cjs/form-search-d61b2843.js +8 -0
- package/lib/cjs/{index-03ed1f55.js → index-6966a494.js} +5 -2
- package/lib/cjs/{language-utils-48b8860b.js → language-utils-aa282901.js} +6 -2
- package/lib/cjs/loader.cjs.js +3 -3
- package/lib/cjs/{shadow-css-6560c90c.js → shadow-css-e1b62a99.js} +9 -10
- package/lib/cjs/token-utils-05bd23b4.js +77 -0
- package/lib/cjs/tokens-8596cece.js +459 -0
- package/lib/cjs/{tokens.module-53b3bd92.js → tokens.module-6b2df1c2.js} +2 -0
- package/lib/cjs/{watch-options-3877c082.js → watch-options-d88afac0.js} +29 -6
- package/lib/collection/collection-manifest.json +17 -3
- package/lib/collection/components/duet-checkbox/duet-checkbox.css +1 -1
- package/lib/collection/components/duet-choice/duet-choice.js +94 -21
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +4 -1
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +9 -9
- package/lib/collection/components/duet-editable-table/duet-editable-table-button.css +32 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +225 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table-item.css +36 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +225 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +13 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table.css +16 -0
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +404 -0
- package/lib/collection/components/duet-footer/duet-footer.css +1 -0
- package/lib/collection/components/duet-grid/duet-grid.js +74 -6
- package/lib/collection/components/duet-header/duet-header-dropdown.js +27 -0
- package/lib/collection/components/duet-header/duet-header-hamburger.js +9 -0
- package/lib/collection/components/duet-header/duet-header-icon.js +9 -0
- package/lib/collection/components/duet-header/duet-header.css +272 -39
- package/lib/collection/components/duet-header/duet-header.js +310 -122
- package/lib/collection/components/duet-heading/duet-heading.css +3 -0
- package/lib/collection/components/duet-heading/duet-heading.js +7 -6
- package/lib/collection/components/duet-icon/duet-icon.js +5 -3
- package/lib/collection/components/duet-input/duet-input.css +15 -0
- package/lib/collection/components/duet-input/duet-input.js +4 -4
- package/lib/collection/components/duet-link/duet-link.js +4 -1
- package/lib/collection/components/duet-list-item/duet-list-item.css +1 -1
- package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +4 -3
- package/lib/collection/components/duet-paragraph/duet-paragraph.css +6 -0
- package/lib/collection/components/duet-paragraph/duet-paragraph.js +34 -3
- package/lib/collection/components/duet-progress/duet-progress.css +103 -0
- package/lib/collection/components/duet-progress/duet-progress.js +240 -0
- package/lib/collection/components/duet-select/duet-select.css +15 -0
- package/lib/collection/components/duet-select/duet-select.js +3 -3
- package/lib/collection/components/duet-tab-group/duet-tab-group.css +2 -2
- package/lib/collection/components/duet-table/duet-table.css +42 -17
- package/lib/collection/components/duet-table/duet-table.js +2 -2
- package/lib/collection/components/duet-textarea/duet-textarea.css +19 -0
- package/lib/collection/components/duet-textarea/duet-textarea.js +5 -4
- package/lib/collection/components/duet-upload/duet-upload.css +64 -0
- package/lib/collection/components/duet-upload/duet-upload.js +1885 -0
- package/lib/collection/components/duet-upload/errorcodes.utils.js +32 -0
- package/lib/collection/components/duet-upload/mock.helpers.js +91 -0
- package/lib/collection/components/duet-upload/upload-editable-item-error.js +16 -0
- package/lib/collection/components/duet-upload/upload-editable-item-inprogres.js +8 -0
- package/lib/collection/components/duet-upload/upload-editable-item-success.js +30 -0
- package/lib/collection/components/duet-upload/upload-validators.js +93 -0
- package/lib/collection/components/duet-upload/upload.helpers.js +13 -0
- package/lib/collection/components/duet-upload/xhr.helpers.js +30 -0
- package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +217 -0
- package/lib/collection/utils/js-utils.js +12 -0
- package/lib/collection/utils/language-utils.js +6 -3
- package/lib/collection/utils/template-utils.js +33 -0
- package/lib/collection/utils/token-utils.js +67 -14
- package/lib/collection/utils/watch-options.js +35 -6
- package/lib/custom-elements-bundle/index.d.ts +36 -0
- package/lib/custom-elements-bundle/index.js +2309 -334
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/{p-92103298.system.entry.js → p-07f43530.system.entry.js} +1 -1
- package/lib/duet/{p-cc0bd28f.system.entry.js → p-093bca2f.system.entry.js} +1 -1
- package/lib/duet/{p-a678da8c.entry.js → p-0aaf86ba.entry.js} +1 -1
- package/lib/duet/{p-94a5fd74.system.entry.js → p-0b0a05ed.system.entry.js} +1 -1
- package/lib/duet/{p-00eac879.system.entry.js → p-0be1c660.system.entry.js} +1 -1
- package/lib/duet/{p-3b3bac3f.system.entry.js → p-0d66e11b.system.entry.js} +1 -1
- package/lib/duet/{p-7331f2fe.system.entry.js → p-0de430e1.system.entry.js} +1 -1
- package/lib/duet/{p-3618aaee.entry.js → p-0ef8d711.entry.js} +1 -1
- package/lib/duet/p-12721178.js +4 -0
- package/lib/duet/{p-c19094dd.entry.js → p-12a08d77.entry.js} +1 -1
- package/lib/duet/p-15c9a17c.entry.js +4 -0
- package/lib/duet/{p-9cdd361e.js → p-183726f7.js} +0 -0
- package/lib/duet/{p-b75c5f13.entry.js → p-18c3eb54.entry.js} +1 -1
- package/lib/duet/{p-9542c540.entry.js → p-1b591fa4.entry.js} +1 -1
- package/lib/duet/{p-f364ce8b.system.entry.js → p-1bd0f4eb.system.entry.js} +1 -1
- package/lib/duet/p-2764f081.js +4 -0
- package/lib/duet/p-27bd8744.system.entry.js +4 -0
- package/lib/duet/p-289a31cb.entry.js +4 -0
- package/lib/duet/{p-8c511832.system.entry.js → p-29b352db.system.entry.js} +1 -1
- package/lib/duet/p-2a00f231.system.entry.js +4 -0
- package/lib/duet/p-3215e07e.system.entry.js +4 -0
- package/lib/duet/{p-ed479d09.system.entry.js → p-338b9955.system.entry.js} +1 -1
- package/lib/duet/{p-8740fa38.entry.js → p-33de1029.entry.js} +1 -1
- package/lib/duet/p-34ebff3b.entry.js +4 -0
- package/lib/duet/{p-b6a0caf8.system.entry.js → p-379d416f.system.entry.js} +1 -1
- package/lib/duet/{p-0b9b6393.entry.js → p-39a12eb9.entry.js} +1 -1
- package/lib/duet/{p-8652a7ab.system.entry.js → p-39fd8b43.system.entry.js} +1 -1
- package/lib/duet/{p-ffc2ffff.entry.js → p-3bafdf7c.entry.js} +1 -1
- package/lib/duet/{p-4fcbcecd.system.entry.js → p-3c1ce7e2.system.entry.js} +1 -1
- package/lib/duet/p-3da6b84e.entry.js +4 -0
- package/lib/duet/p-43c49a72.entry.js +4 -0
- package/lib/duet/{p-9f0f5674.entry.js → p-44f4b8ff.entry.js} +1 -1
- package/lib/duet/{p-b0bbbdba.system.entry.js → p-4c5ac0c2.system.entry.js} +1 -1
- package/lib/duet/p-50b4fb2c.js +4 -0
- package/lib/duet/p-51f7ae72.entry.js +4 -0
- package/lib/duet/p-52621211.js +15 -0
- package/lib/duet/{p-2a3411b5.system.entry.js → p-5443c9ca.system.entry.js} +1 -1
- package/lib/duet/{p-abd3bfb4.system.entry.js → p-5610db77.system.entry.js} +1 -1
- package/lib/duet/{p-2c0dd9ba.system.entry.js → p-5b409bfb.system.entry.js} +1 -1
- package/lib/duet/{p-807b2087.entry.js → p-6353407f.entry.js} +1 -1
- package/lib/duet/{p-a89e88a3.js → p-64bf94ee.js} +1 -1
- package/lib/duet/{p-2c679963.entry.js → p-64e915ae.entry.js} +1 -1
- package/lib/duet/{p-432ba72e.system.entry.js → p-6c237f21.system.entry.js} +1 -1
- package/lib/duet/p-6c8521f6.system.entry.js +4 -0
- package/lib/duet/{p-a962c8c1.system.js → p-6e4fd6ba.system.js} +0 -0
- package/lib/duet/p-70fafc98.system.js +4 -0
- package/lib/duet/{p-8002a095.entry.js → p-7347f4ac.entry.js} +1 -1
- package/lib/duet/{p-d13874cb.entry.js → p-781bd6db.entry.js} +1 -1
- package/lib/duet/{p-5a817929.system.entry.js → p-78e8a689.system.entry.js} +1 -1
- package/lib/duet/p-8143f3de.js +4 -0
- package/lib/duet/p-81e855e4.system.js +4 -0
- package/lib/duet/{p-84ece735.entry.js → p-8224d768.entry.js} +1 -1
- package/lib/duet/{p-43dde575.system.entry.js → p-848bb1c2.system.entry.js} +1 -1
- package/lib/duet/{p-1391ec53.entry.js → p-880a4afe.entry.js} +1 -1
- package/lib/duet/p-8c375429.entry.js +4 -0
- package/lib/duet/p-8cb71174.system.entry.js +4 -0
- package/lib/duet/p-8d7b68c4.entry.js +4 -0
- package/lib/duet/p-8f477bd6.system.js +4 -0
- package/lib/duet/p-969c6395.system.entry.js +4 -0
- package/lib/duet/p-9c234242.system.entry.js +4 -0
- package/lib/duet/{p-f13a0883.entry.js → p-9d7b9084.entry.js} +1 -1
- package/lib/duet/p-a0544097.system.entry.js +4 -0
- package/lib/duet/p-a16a58c1.system.js +4 -0
- package/lib/duet/{p-fb898d94.system.entry.js → p-a4a16d03.system.entry.js} +1 -1
- package/lib/duet/p-a4e3b44b.entry.js +4 -0
- package/lib/duet/{p-977f2826.entry.js → p-a91673cf.entry.js} +1 -1
- package/lib/duet/p-a926944f.entry.js +4 -0
- package/lib/duet/{p-2826f987.js → p-ad07f399.js} +1 -1
- package/lib/duet/p-b08bce4c.entry.js +4 -0
- package/lib/duet/{p-ec3eef3a.entry.js → p-b48a5f80.entry.js} +1 -1
- package/lib/duet/p-bb3e3777.entry.js +4 -0
- package/lib/duet/{p-fbb7d194.entry.js → p-bbe33d02.entry.js} +1 -1
- package/lib/duet/p-be8e1c48.system.entry.js +4 -0
- package/lib/duet/{p-68d09837.system.entry.js → p-c56c73ee.system.entry.js} +1 -1
- package/lib/duet/p-c63bdc6a.system.entry.js +4 -0
- package/lib/duet/{p-c723d36e.system.js → p-c83685a6.system.js} +1 -1
- package/lib/duet/p-c8dfc958.system.entry.js +4 -0
- package/lib/duet/{p-6cf41bfe.system.entry.js → p-c92f601f.system.entry.js} +1 -1
- package/lib/duet/p-d004da5f.js +4 -0
- package/lib/duet/p-d49416f8.entry.js +4 -0
- package/lib/duet/{p-7a868085.entry.js → p-d581d82d.entry.js} +1 -1
- package/lib/duet/p-d6bb4301.entry.js +4 -0
- package/lib/duet/p-d9aadc15.entry.js +4 -0
- package/lib/duet/p-ddb6344c.system.js +4 -0
- package/lib/duet/{p-3040debf.entry.js → p-dde63979.entry.js} +1 -1
- package/lib/duet/p-e15ccddc.system.entry.js +4 -0
- package/lib/duet/{p-0f2a478e.entry.js → p-e1be37a6.entry.js} +1 -1
- package/lib/duet/p-e5c1751e.system.js +16 -0
- package/lib/duet/{p-b9683731.entry.js → p-e9209e9f.entry.js} +1 -1
- package/lib/duet/p-eb55ccd2.system.js +4 -0
- package/lib/duet/{p-b374d7c2.system.js → p-ee1ba0d4.system.js} +1 -1
- package/lib/duet/{p-57cb58d4.system.entry.js → p-f4a29a8a.system.entry.js} +2 -2
- package/lib/duet/p-f8a0bd32.system.entry.js +4 -0
- package/lib/duet/p-f9599dd9.system.entry.js +4 -0
- package/lib/duet/p-fa99eaa4.system.js +4 -0
- package/lib/duet/p-fd7018e9.js +4 -0
- package/lib/duet/{p-19c28d99.system.entry.js → p-fe0cca67.system.entry.js} +1 -1
- package/lib/esm/{dom-8516b24e.js → dom-5d060ace.js} +1 -1
- package/lib/esm/duet-alert.entry.js +2 -2
- package/lib/esm/duet-badge.entry.js +1 -1
- package/lib/esm/duet-button_2.entry.js +4 -4
- package/lib/esm/duet-caption_4.entry.js +18 -11
- package/lib/esm/duet-card.entry.js +3 -3
- package/lib/esm/duet-checkbox.entry.js +2 -2
- package/lib/esm/duet-choice_2.entry.js +40 -19
- package/lib/esm/duet-collapsible.entry.js +4 -449
- package/lib/esm/duet-cookie-consent.entry.js +1 -1
- package/lib/esm/duet-date-picker.entry.js +7 -7
- package/lib/esm/duet-divider_2.entry.js +1 -1
- package/lib/esm/duet-editable-table-button.entry.js +92 -0
- package/lib/esm/duet-editable-table_4.entry.js +1513 -0
- 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 +3 -3
- package/lib/esm/duet-grid_2.entry.js +69 -4
- package/lib/esm/duet-header_2.entry.js +216 -49
- package/lib/esm/duet-hero.entry.js +2 -2
- package/lib/esm/duet-icon.entry.js +8 -6
- package/lib/esm/duet-input_2.entry.js +7 -8
- package/lib/esm/duet-layout.entry.js +1 -1
- package/lib/esm/duet-list_2.entry.js +3 -3
- package/lib/esm/duet-modal.entry.js +3 -3
- package/lib/esm/duet-notification_2.entry.js +3 -3
- package/lib/esm/duet-number-input.entry.js +2 -2
- package/lib/esm/duet-progress.entry.js +71 -0
- package/lib/esm/duet-radio_2.entry.js +2 -2
- package/lib/esm/duet-range-slider.entry.js +2 -2
- package/lib/esm/duet-select.entry.js +5 -5
- package/lib/esm/duet-step_2.entry.js +1 -1
- package/lib/esm/duet-tab_2.entry.js +3 -3
- package/lib/esm/duet-textarea.entry.js +5 -5
- package/lib/esm/duet-toggle.entry.js +1 -1
- package/lib/esm/duet-tooltip.entry.js +2 -2
- package/lib/esm/duet-tray.entry.js +3 -3
- package/lib/esm/duet-upload-aria-status.entry.js +96 -0
- package/lib/esm/duet-visually-hidden.entry.js +1 -1
- package/lib/esm/duet.js +4 -4
- package/lib/esm/{focus-utils-6a282066.js → focus-utils-48837cfa.js} +1 -1
- package/lib/esm/form-search-ea8e19ae.js +6 -0
- package/lib/esm/{index-3a265449.js → index-80be4170.js} +5 -2
- package/lib/esm/{language-utils-d5c38f65.js → language-utils-344d894c.js} +6 -3
- package/lib/esm/loader.js +3 -3
- package/lib/esm/{shadow-css-9178c864.js → shadow-css-13d024f4.js} +9 -10
- package/lib/esm/token-utils-75f78ca4.js +75 -0
- package/lib/esm/tokens-e110dc89.js +453 -0
- package/lib/esm/{tokens.module-edb66c04.js → tokens.module-49cbf963.js} +3 -1
- package/lib/esm/watch-options-dd55bce8.js +57 -0
- package/lib/esm-es5/{dom-8516b24e.js → dom-5d060ace.js} +0 -0
- package/lib/esm-es5/duet-alert.entry.js +1 -1
- package/lib/esm-es5/duet-badge.entry.js +1 -1
- package/lib/esm-es5/duet-button_2.entry.js +1 -1
- package/lib/esm-es5/duet-caption_4.entry.js +2 -2
- 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 +2 -2
- package/lib/esm-es5/duet-collapsible.entry.js +2 -2
- package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
- package/lib/esm-es5/duet-date-picker.entry.js +1 -1
- package/lib/esm-es5/duet-divider_2.entry.js +1 -1
- package/lib/esm-es5/duet-editable-table-button.entry.js +4 -0
- package/lib/esm-es5/duet-editable-table_4.entry.js +4 -0
- package/lib/esm-es5/duet-empty-state.entry.js +1 -1
- package/lib/esm-es5/duet-fieldset.entry.js +1 -1
- package/lib/esm-es5/duet-footer.entry.js +1 -1
- package/lib/esm-es5/duet-grid_2.entry.js +2 -2
- package/lib/esm-es5/duet-header_2.entry.js +2 -2
- package/lib/esm-es5/duet-hero.entry.js +1 -1
- package/lib/esm-es5/duet-icon.entry.js +1 -1
- package/lib/esm-es5/duet-input_2.entry.js +1 -1
- package/lib/esm-es5/duet-layout.entry.js +1 -1
- package/lib/esm-es5/duet-list_2.entry.js +1 -1
- package/lib/esm-es5/duet-modal.entry.js +1 -1
- package/lib/esm-es5/duet-notification_2.entry.js +1 -1
- package/lib/esm-es5/duet-number-input.entry.js +1 -1
- package/lib/esm-es5/duet-progress.entry.js +4 -0
- package/lib/esm-es5/duet-radio_2.entry.js +1 -1
- package/lib/esm-es5/duet-range-slider.entry.js +1 -1
- package/lib/esm-es5/duet-select.entry.js +1 -1
- package/lib/esm-es5/duet-step_2.entry.js +1 -1
- package/lib/esm-es5/duet-tab_2.entry.js +2 -2
- package/lib/esm-es5/duet-textarea.entry.js +1 -1
- package/lib/esm-es5/duet-toggle.entry.js +1 -1
- package/lib/esm-es5/duet-tooltip.entry.js +1 -1
- package/lib/esm-es5/duet-tray.entry.js +1 -1
- package/lib/esm-es5/duet-upload-aria-status.entry.js +4 -0
- package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
- package/lib/esm-es5/duet.js +1 -1
- package/lib/esm-es5/focus-utils-48837cfa.js +4 -0
- package/lib/esm-es5/form-search-ea8e19ae.js +4 -0
- package/lib/esm-es5/index-80be4170.js +4 -0
- package/lib/esm-es5/{language-utils-d5c38f65.js → language-utils-344d894c.js} +1 -1
- package/lib/esm-es5/loader.js +1 -1
- package/lib/esm-es5/shadow-css-13d024f4.js +15 -0
- package/lib/esm-es5/token-utils-75f78ca4.js +4 -0
- package/lib/esm-es5/tokens-e110dc89.js +4 -0
- package/lib/esm-es5/tokens.module-49cbf963.js +4 -0
- package/lib/esm-es5/watch-options-dd55bce8.js +4 -0
- package/lib/types/common-types.d.ts +0 -1
- package/lib/types/components/duet-choice/duet-choice.d.ts +20 -1
- package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +3 -0
- package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +5 -5
- package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +73 -0
- package/lib/types/components/duet-editable-table/duet-editable-table-item.d.ts +76 -0
- package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +8 -0
- package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +94 -0
- package/lib/types/components/duet-grid/duet-grid.d.ts +17 -2
- package/lib/types/components/duet-header/duet-header-dropdown.d.ts +16 -0
- package/lib/types/components/duet-header/duet-header-hamburger.d.ts +2 -0
- package/lib/types/components/duet-header/duet-header-icon.d.ts +8 -0
- package/lib/types/components/duet-header/duet-header.d.ts +41 -4
- package/lib/types/components/duet-heading/duet-heading.d.ts +2 -2
- package/lib/types/components/duet-link/duet-link.d.ts +3 -0
- package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +9 -1
- package/lib/types/components/duet-progress/duet-progress.d.ts +64 -0
- package/lib/types/components/duet-table/duet-table.d.ts +1 -1
- package/lib/types/components/duet-upload/duet-upload.d.ts +408 -0
- package/lib/types/components/duet-upload/errorcodes.utils.d.ts +8 -0
- package/lib/types/components/duet-upload/mock.helpers.d.ts +2 -0
- package/lib/types/components/duet-upload/upload-editable-item-error.d.ts +7 -0
- package/lib/types/components/duet-upload/upload-editable-item-inprogres.d.ts +7 -0
- package/lib/types/components/duet-upload/upload-editable-item-success.d.ts +8 -0
- package/lib/types/components/duet-upload/upload-validators.d.ts +12 -0
- package/lib/types/components/duet-upload/upload.helpers.d.ts +1 -0
- package/lib/types/components/duet-upload/xhr.helpers.d.ts +18 -0
- package/lib/types/components/duet-upload-aria-status/duet-upload-aria-status.d.ts +49 -0
- package/lib/types/components.d.ts +835 -29
- package/lib/types/stencil-public-runtime.d.ts +6 -4
- package/lib/types/utils/js-utils.d.ts +1 -0
- package/lib/types/utils/language-utils.d.ts +5 -1
- package/lib/types/utils/template-utils.d.ts +13 -0
- package/lib/types/utils/token-utils.d.ts +8 -2
- package/lib/types/utils/watch-options.d.ts +2 -0
- package/package.json +13 -13
- package/lib/cjs/duet-table.cjs.entry.js +0 -132
- package/lib/cjs/token-utils-13e5d13e.js +0 -30
- package/lib/duet/p-0058512b.js +0 -4
- package/lib/duet/p-08729381.entry.js +0 -4
- package/lib/duet/p-0b00e8d6.system.js +0 -16
- package/lib/duet/p-15922601.system.js +0 -4
- package/lib/duet/p-194e25ce.system.entry.js +0 -4
- package/lib/duet/p-1d87ea02.system.entry.js +0 -4
- package/lib/duet/p-2d1e2b23.system.entry.js +0 -4
- package/lib/duet/p-322d1c38.js +0 -4
- package/lib/duet/p-40d68321.entry.js +0 -4
- package/lib/duet/p-418b2ce7.system.js +0 -4
- package/lib/duet/p-43e39d98.system.js +0 -4
- package/lib/duet/p-4603830b.entry.js +0 -4
- package/lib/duet/p-52d7fbec.entry.js +0 -4
- package/lib/duet/p-60478325.system.entry.js +0 -4
- package/lib/duet/p-64ed7add.entry.js +0 -4
- package/lib/duet/p-6a356ab1.system.js +0 -4
- package/lib/duet/p-72fd384a.entry.js +0 -4
- package/lib/duet/p-753b406c.entry.js +0 -4
- package/lib/duet/p-76c00d0c.entry.js +0 -4
- package/lib/duet/p-85fe1132.js +0 -4
- package/lib/duet/p-8c8e82aa.system.js +0 -4
- package/lib/duet/p-9a89ec39.js +0 -4
- package/lib/duet/p-a11df1b6.js +0 -15
- package/lib/duet/p-a1eccee1.system.entry.js +0 -4
- package/lib/duet/p-ade33230.entry.js +0 -4
- package/lib/duet/p-b04d738f.system.entry.js +0 -4
- package/lib/duet/p-cb827bb7.entry.js +0 -4
- package/lib/duet/p-d85fba2c.system.entry.js +0 -4
- package/lib/duet/p-dfa90f8a.system.entry.js +0 -4
- package/lib/duet/p-e6b9bd1d.entry.js +0 -4
- package/lib/duet/p-ee64d6be.system.entry.js +0 -4
- package/lib/duet/p-f113671b.system.entry.js +0 -4
- package/lib/duet/p-f2f04396.entry.js +0 -4
- package/lib/duet/p-fc6624fe.system.entry.js +0 -4
- package/lib/esm/duet-table.entry.js +0 -128
- package/lib/esm/token-utils-5a35377f.js +0 -28
- package/lib/esm/watch-options-de55ea78.js +0 -35
- package/lib/esm-es5/duet-table.entry.js +0 -4
- package/lib/esm-es5/focus-utils-6a282066.js +0 -4
- package/lib/esm-es5/index-3a265449.js +0 -4
- package/lib/esm-es5/shadow-css-9178c864.js +0 -15
- package/lib/esm-es5/token-utils-5a35377f.js +0 -4
- package/lib/esm-es5/tokens.module-edb66c04.js +0 -4
- package/lib/esm-es5/watch-options-de55ea78.js +0 -4
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built with Duet Design System
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { media_query_large, media_query_medium, media_query_small } from "@duetds/tokens/lib/tokens.json";
|
|
5
|
+
import { Component, Element, h, Host, Prop, State, Watch } from "@stencil/core";
|
|
6
|
+
import { watchForElement, watchForOptions } from "../../utils/watch-options";
|
|
6
7
|
function isGridItem(element) {
|
|
7
8
|
return element.tagName.toLowerCase() === "duet-grid-item";
|
|
8
9
|
}
|
|
9
10
|
export class DuetGrid {
|
|
10
11
|
constructor() {
|
|
12
|
+
this.mql = [
|
|
13
|
+
window.matchMedia(media_query_large.replace(/'/g, "")),
|
|
14
|
+
window.matchMedia(media_query_medium.replace(/'/g, "")),
|
|
15
|
+
window.matchMedia(media_query_small.replace(/'/g, "")),
|
|
16
|
+
];
|
|
17
|
+
this.distributeFormElement = false;
|
|
11
18
|
/**
|
|
12
19
|
* Enable or disable the automatic responsive behaviour of the grid component.
|
|
13
20
|
* Setting this option to "true" makes sure that contents are stacked vertically
|
|
@@ -24,7 +31,9 @@ export class DuetGrid {
|
|
|
24
31
|
*/
|
|
25
32
|
this.direction = "horizontal";
|
|
26
33
|
/**
|
|
27
|
-
* Adjusts the vertical alignment of the grid items
|
|
34
|
+
* Adjusts the vertical alignment of the grid items, if set to "form_distribute"
|
|
35
|
+
* the grid will try to calculate correct paddings for any duet-input fields inside duet-grid-items,
|
|
36
|
+
* so that they align even when displaying errors.
|
|
28
37
|
*/
|
|
29
38
|
this.alignment = "top";
|
|
30
39
|
/**
|
|
@@ -36,14 +45,39 @@ export class DuetGrid {
|
|
|
36
45
|
*/
|
|
37
46
|
this.mobile = "";
|
|
38
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* Private functions
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* Returns the element height including margins
|
|
53
|
+
* @param element - element
|
|
54
|
+
* @returns {number}
|
|
55
|
+
*/
|
|
56
|
+
outerHeight(element) {
|
|
57
|
+
const height = element.offsetHeight, style = window.getComputedStyle(element);
|
|
58
|
+
return ["top", "bottom"]
|
|
59
|
+
.map(side => parseInt(style[`margin-${side}`]))
|
|
60
|
+
.reduce((total, side) => total + side, height);
|
|
61
|
+
}
|
|
39
62
|
/**
|
|
40
63
|
* Component lifecycle events.
|
|
41
64
|
*/
|
|
42
65
|
async connectedCallback() {
|
|
43
66
|
const el = this.element;
|
|
67
|
+
this.distributeFormElement = this.alignment === "form_distribute";
|
|
44
68
|
this.mutationO = watchForOptions(el, "duet-grid-item", () => {
|
|
45
69
|
this.updateGridItems();
|
|
46
70
|
});
|
|
71
|
+
// the next two functions are used to watch for changes in the grid items, and are process intensive - so only run when needed
|
|
72
|
+
if (this.distributeFormElement) {
|
|
73
|
+
this.mutation1 = watchForElement(el, "duet-input", () => {
|
|
74
|
+
this.updateGridItemsWithInputFields();
|
|
75
|
+
});
|
|
76
|
+
// listen for potential mediaquery changes and reset layout
|
|
77
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
78
|
+
this.mql[i].addEventListener("change", this.updateGridItemsWithInputFields.bind(this));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
47
81
|
this.updateGridItems();
|
|
48
82
|
}
|
|
49
83
|
disconnectedCallback() {
|
|
@@ -51,6 +85,14 @@ export class DuetGrid {
|
|
|
51
85
|
this.mutationO.disconnect();
|
|
52
86
|
this.mutationO = undefined;
|
|
53
87
|
}
|
|
88
|
+
if (this.mutation1) {
|
|
89
|
+
this.mutation1.disconnect();
|
|
90
|
+
this.mutation1 = undefined;
|
|
91
|
+
}
|
|
92
|
+
// listen for potential mediaquery changes and reset layout
|
|
93
|
+
for (let i = 0; i < this.mql.length; i++) {
|
|
94
|
+
this.mql[i].removeEventListener("change", this.updateGridItemsWithInputFields.bind(this));
|
|
95
|
+
}
|
|
54
96
|
}
|
|
55
97
|
/**
|
|
56
98
|
* Local methods
|
|
@@ -62,6 +104,29 @@ export class DuetGrid {
|
|
|
62
104
|
item.breakpoint = this.breakpoint;
|
|
63
105
|
});
|
|
64
106
|
}
|
|
107
|
+
async updateGridItemsWithInputFields() {
|
|
108
|
+
const items = Array.from(this.element.children).filter(isGridItem);
|
|
109
|
+
// if layout changes to columns instead of row, remove all padding
|
|
110
|
+
const hasColumnLayout = window ? window.getComputedStyle(this.element).flexDirection === "column" : false;
|
|
111
|
+
let maxHeight = 0;
|
|
112
|
+
const sizes = [];
|
|
113
|
+
items.forEach(item => {
|
|
114
|
+
const inputErrorDom = item.querySelector("span.duet-input-error");
|
|
115
|
+
const height = inputErrorDom ? this.outerHeight(inputErrorDom) : 0;
|
|
116
|
+
sizes.push(height);
|
|
117
|
+
});
|
|
118
|
+
maxHeight = Math.max(...sizes);
|
|
119
|
+
items.forEach(item => {
|
|
120
|
+
const inputErrorDom = item.querySelector("span.duet-input-error");
|
|
121
|
+
const height = inputErrorDom ? this.outerHeight(inputErrorDom) : 0;
|
|
122
|
+
if (height < maxHeight && !hasColumnLayout) {
|
|
123
|
+
item.setAttribute("style", `padding-bottom: ${maxHeight - height}px;`);
|
|
124
|
+
}
|
|
125
|
+
else if (height === maxHeight || hasColumnLayout) {
|
|
126
|
+
item.setAttribute("style", `padding-bottom: 0px;`);
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
65
130
|
/**
|
|
66
131
|
* render() function
|
|
67
132
|
* Always the last one in the class.
|
|
@@ -71,7 +136,7 @@ export class DuetGrid {
|
|
|
71
136
|
"duet-grid": true,
|
|
72
137
|
"duet-no-stacking": !this.responsive,
|
|
73
138
|
"duet-grid-align-top": this.alignment === "top",
|
|
74
|
-
"duet-grid-align-bottom": this.alignment === "bottom",
|
|
139
|
+
"duet-grid-align-bottom": this.alignment === "bottom" || this.alignment === "form_distribute",
|
|
75
140
|
"duet-grid-align-center": this.alignment === "center",
|
|
76
141
|
"duet-grid-align-stretch": this.alignment === "stretch",
|
|
77
142
|
"duet-grid-align-baseline": this.alignment === "baseline",
|
|
@@ -169,7 +234,7 @@ export class DuetGrid {
|
|
|
169
234
|
"mutable": false,
|
|
170
235
|
"complexType": {
|
|
171
236
|
"original": "DuetGridAlignment",
|
|
172
|
-
"resolved": "\"baseline\" | \"bottom\" | \"center\" | \"stretch\" | \"top\"",
|
|
237
|
+
"resolved": "\"baseline\" | \"bottom\" | \"center\" | \"form_distribute\" | \"stretch\" | \"top\"",
|
|
173
238
|
"references": {
|
|
174
239
|
"DuetGridAlignment": {
|
|
175
240
|
"location": "local"
|
|
@@ -180,7 +245,7 @@ export class DuetGrid {
|
|
|
180
245
|
"optional": false,
|
|
181
246
|
"docs": {
|
|
182
247
|
"tags": [],
|
|
183
|
-
"text": "Adjusts the vertical alignment of the grid items."
|
|
248
|
+
"text": "Adjusts the vertical alignment of the grid items, if set to \"form_distribute\"\nthe grid will try to calculate correct paddings for any duet-input fields inside duet-grid-items,\nso that they align even when displaying errors."
|
|
184
249
|
},
|
|
185
250
|
"attribute": "alignment",
|
|
186
251
|
"reflect": false,
|
|
@@ -231,6 +296,9 @@ export class DuetGrid {
|
|
|
231
296
|
"defaultValue": "\"\""
|
|
232
297
|
}
|
|
233
298
|
}; }
|
|
299
|
+
static get states() { return {
|
|
300
|
+
"distributeFormElement": {}
|
|
301
|
+
}; }
|
|
234
302
|
static get elementRef() { return "element"; }
|
|
235
303
|
static get watchers() { return [{
|
|
236
304
|
"propName": "responsive",
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built with Duet Design System
|
|
3
|
+
*/
|
|
4
|
+
import arrowDownIcon from "@duetds/icons/lib/assets/action-arrow-down-small";
|
|
5
|
+
import { h } from "@stencil/core";
|
|
6
|
+
import { DuetHeaderIcon } from "./duet-header-icon";
|
|
7
|
+
export const DuetHeaderDropdown = (props, _children) => {
|
|
8
|
+
const accessibleLabel = props.accessibleText ? props.accessibleText : props.label;
|
|
9
|
+
return (h("div", { class: { ["duet-header-dropdown"]: true, [props.className]: !!props.className } },
|
|
10
|
+
h("button", { ref: props.toggleRef, "aria-haspopup": "listbox", "aria-controls": props.id, "aria-expanded": props.isOpen ? "true" : "false", "aria-labelledby": `${props.id}-accessible-label`, id: `${props.id}-button`, type: "button", class: {
|
|
11
|
+
[props.id]: true,
|
|
12
|
+
"duet-header-dropdown-toggle": true,
|
|
13
|
+
"duet-header-button": true,
|
|
14
|
+
active: props.active,
|
|
15
|
+
}, onClick: props.onToggle },
|
|
16
|
+
props.icon && h(DuetHeaderIcon, { icon: props.icon }),
|
|
17
|
+
h("span", { "aria-hidden": "true", id: `${props.id}-label`, class: "duet-header-dropdown-label" }, props.label),
|
|
18
|
+
props.badge && h("div", { class: "duet-header-badge" }),
|
|
19
|
+
h("div", { class: "duet-header-caret", "aria-hidden": "true" },
|
|
20
|
+
h("duet-icon", { margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" })),
|
|
21
|
+
h("duet-visually-hidden", { id: `${props.id}-accessible-label` }, accessibleLabel)),
|
|
22
|
+
h("div", { ref: props.itemsRef, tabindex: "-1", role: "menu", id: props.id, "aria-labelledby": `${props.id}-button`, class: {
|
|
23
|
+
"duet-header-dropdown-content": true,
|
|
24
|
+
[`${props.id}-items`]: true,
|
|
25
|
+
active: props.isOpen,
|
|
26
|
+
} }, _children)));
|
|
27
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built with Duet Design System
|
|
3
|
+
*/
|
|
4
|
+
import { h } from "@stencil/core";
|
|
5
|
+
export const DuetHeaderHamburger = () => (h("div", { class: "duet-header-hamburger" },
|
|
6
|
+
h("span", { class: "duet-header-bar" }),
|
|
7
|
+
h("span", { class: "duet-header-bar" }),
|
|
8
|
+
h("span", { class: "duet-header-bar" }),
|
|
9
|
+
h("span", { class: "duet-header-bar" })));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built with Duet Design System
|
|
3
|
+
*/
|
|
4
|
+
import { h } from "@stencil/core";
|
|
5
|
+
export const DuetHeaderIcon = (props, _children) => {
|
|
6
|
+
const iconSize = props.iconSize ? props.iconSize : "x-small";
|
|
7
|
+
return (h("span", { class: "duet-header-icon" },
|
|
8
|
+
h("duet-icon", { margin: "none", size: iconSize, icon: props.icon, color: "currentColor" })));
|
|
9
|
+
};
|
|
@@ -38,6 +38,17 @@
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
@supports (position: -webkit-sticky) {
|
|
42
|
+
:host(.duet-header-multi-level-desktop-variation) {
|
|
43
|
+
top: 0;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
@supports (position: sticky) {
|
|
47
|
+
:host(.duet-header-multi-level-desktop-variation) {
|
|
48
|
+
top: 0;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
41
52
|
.duet-header-reserved-space {
|
|
42
53
|
height: 4rem;
|
|
43
54
|
}
|
|
@@ -161,7 +172,7 @@
|
|
|
161
172
|
width: 100%;
|
|
162
173
|
overflow-y: auto;
|
|
163
174
|
visibility: hidden;
|
|
164
|
-
background: #
|
|
175
|
+
background: #f3f9fc;
|
|
165
176
|
opacity: 0;
|
|
166
177
|
-webkit-overflow-scrolling: touch;
|
|
167
178
|
}
|
|
@@ -242,50 +253,70 @@
|
|
|
242
253
|
padding-left: 43.6363636364px;
|
|
243
254
|
}
|
|
244
255
|
}
|
|
245
|
-
.duet-header-items
|
|
256
|
+
.duet-header-items .duet-header-item-container {
|
|
257
|
+
border-bottom: 1px solid #e1e3e6;
|
|
258
|
+
border-radius: 0;
|
|
259
|
+
}
|
|
260
|
+
@media (min-width: 62em) {
|
|
261
|
+
.duet-header-items .duet-header-item-container {
|
|
262
|
+
border: 0;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
.duet-header-items .duet-header-second-level .duet-header-item {
|
|
266
|
+
padding: 0 40px;
|
|
267
|
+
border: 0;
|
|
268
|
+
}
|
|
269
|
+
.duet-header-items .duet-header-second-level .duet-header-button {
|
|
270
|
+
border: 0;
|
|
271
|
+
}
|
|
272
|
+
.duet-header-items .duet-header-second-level .duet-header-dropdown-content {
|
|
273
|
+
padding: 0;
|
|
274
|
+
border: 0;
|
|
275
|
+
}
|
|
276
|
+
.duet-header-items .duet-header-third-level .duet-header-item {
|
|
277
|
+
padding: 0 75px;
|
|
278
|
+
}
|
|
279
|
+
.duet-header-items .duet-header-item {
|
|
246
280
|
position: relative;
|
|
247
|
-
display:
|
|
281
|
+
display: flex;
|
|
282
|
+
align-items: center;
|
|
248
283
|
width: 100%;
|
|
249
|
-
height: 48px;
|
|
250
284
|
padding: 0 20px;
|
|
251
285
|
overflow: hidden;
|
|
252
286
|
font-size: 1rem;
|
|
253
|
-
font-weight: 600;
|
|
254
287
|
line-height: 48px;
|
|
255
288
|
color: #00294d;
|
|
256
289
|
text-decoration: none;
|
|
257
290
|
text-overflow: ellipsis;
|
|
258
291
|
white-space: nowrap;
|
|
259
|
-
border-bottom: 1px solid #e1e3e6;
|
|
260
|
-
border-radius: 0;
|
|
261
292
|
}
|
|
262
293
|
@media (min-width: 62em) {
|
|
263
|
-
.duet-header-items
|
|
294
|
+
.duet-header-items .duet-header-item {
|
|
264
295
|
border-radius: 4px;
|
|
265
296
|
}
|
|
266
297
|
}
|
|
267
|
-
.duet-theme-turva .duet-header-items
|
|
298
|
+
.duet-theme-turva .duet-header-items .duet-header-item {
|
|
268
299
|
font-weight: 600;
|
|
269
300
|
color: #171c3a;
|
|
270
301
|
border-color: #e1e3e6;
|
|
271
302
|
}
|
|
272
|
-
.duet-header-items
|
|
303
|
+
.duet-header-items .duet-header-item:hover {
|
|
273
304
|
color: #004d80;
|
|
274
305
|
}
|
|
275
|
-
.duet-theme-turva .duet-header-items
|
|
306
|
+
.duet-theme-turva .duet-header-items .duet-header-item:hover {
|
|
276
307
|
color: #444445;
|
|
277
308
|
}
|
|
278
|
-
.duet-header-items
|
|
309
|
+
.duet-header-items .duet-header-item:focus {
|
|
279
310
|
outline: 0;
|
|
280
311
|
}
|
|
281
|
-
:host(.user-is-tabbing) .duet-header-items
|
|
312
|
+
:host(.user-is-tabbing) .duet-header-items .duet-header-item:focus {
|
|
282
313
|
box-shadow: 0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3;
|
|
283
314
|
}
|
|
284
|
-
:host(.user-is-tabbing) .duet-theme-turva .duet-header-items
|
|
315
|
+
:host(.user-is-tabbing) .duet-theme-turva .duet-header-items .duet-header-item:focus {
|
|
285
316
|
box-shadow: 0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a;
|
|
286
317
|
}
|
|
287
318
|
@media (min-width: 62em) {
|
|
288
|
-
.duet-header-items
|
|
319
|
+
.duet-header-items .duet-header-item {
|
|
289
320
|
width: auto;
|
|
290
321
|
max-width: 300px;
|
|
291
322
|
padding: 0 12px;
|
|
@@ -295,21 +326,21 @@
|
|
|
295
326
|
border: 0;
|
|
296
327
|
}
|
|
297
328
|
}
|
|
298
|
-
.duet-header-items
|
|
329
|
+
.duet-header-items .duet-header-item.active {
|
|
299
330
|
color: #0077b3;
|
|
300
331
|
-moz-osx-font-smoothing: auto;
|
|
301
332
|
-webkit-font-smoothing: subpixel-antialiased;
|
|
302
333
|
}
|
|
303
|
-
.duet-theme-turva .duet-header-items
|
|
334
|
+
.duet-theme-turva .duet-header-items .duet-header-item.active {
|
|
304
335
|
color: #c60c30;
|
|
305
336
|
}
|
|
306
|
-
.duet-header-items
|
|
337
|
+
.duet-header-items .duet-header-item.active:hover {
|
|
307
338
|
color: #0077b3;
|
|
308
339
|
}
|
|
309
|
-
.duet-theme-turva .duet-header-items
|
|
340
|
+
.duet-theme-turva .duet-header-items .duet-header-item.active:hover {
|
|
310
341
|
color: #c60c30;
|
|
311
342
|
}
|
|
312
|
-
.duet-header-items
|
|
343
|
+
.duet-header-items .duet-header-item.active::after {
|
|
313
344
|
position: absolute;
|
|
314
345
|
top: 0;
|
|
315
346
|
bottom: 0;
|
|
@@ -318,17 +349,26 @@
|
|
|
318
349
|
content: "";
|
|
319
350
|
background: #0077b3;
|
|
320
351
|
}
|
|
321
|
-
.duet-theme-turva .duet-header-items
|
|
352
|
+
.duet-theme-turva .duet-header-items .duet-header-item.active::after {
|
|
322
353
|
background: #c60c30;
|
|
323
354
|
}
|
|
324
355
|
@media (min-width: 62em) {
|
|
325
|
-
.duet-header-items
|
|
356
|
+
.duet-header-items .duet-header-item.active::after {
|
|
326
357
|
top: auto;
|
|
327
358
|
left: 12px;
|
|
328
359
|
width: calc(100% - 24px);
|
|
329
360
|
height: 3px;
|
|
330
361
|
}
|
|
331
362
|
}
|
|
363
|
+
.duet-header-third-level-active .duet-header-items .duet-header-first-level.active {
|
|
364
|
+
color: #00294d;
|
|
365
|
+
}
|
|
366
|
+
.duet-header-third-level-active .duet-header-items .duet-header-first-level.active::after {
|
|
367
|
+
display: none;
|
|
368
|
+
}
|
|
369
|
+
.duet-header-third-level-active .duet-header-items .duet-header-second-level button {
|
|
370
|
+
color: #00294d;
|
|
371
|
+
}
|
|
332
372
|
|
|
333
373
|
.duet-header-toggle {
|
|
334
374
|
display: flex;
|
|
@@ -547,6 +587,36 @@ button {
|
|
|
547
587
|
.duet-theme-turva .duet-header-button.active::after {
|
|
548
588
|
color: #c60c30;
|
|
549
589
|
}
|
|
590
|
+
.duet-header-utils .duet-header-button.duet-header-logout {
|
|
591
|
+
align-self: center;
|
|
592
|
+
justify-content: center;
|
|
593
|
+
width: auto;
|
|
594
|
+
height: 2.5rem;
|
|
595
|
+
margin: 2.25rem 0;
|
|
596
|
+
font-weight: 600;
|
|
597
|
+
border: 2px solid #00294d;
|
|
598
|
+
border-radius: 20rem;
|
|
599
|
+
}
|
|
600
|
+
.duet-theme-turva .duet-header-utils .duet-header-button.duet-header-logout {
|
|
601
|
+
border-color: #171c3a;
|
|
602
|
+
}
|
|
603
|
+
.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon {
|
|
604
|
+
margin-right: 0.5rem;
|
|
605
|
+
}
|
|
606
|
+
.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label {
|
|
607
|
+
font-size: 0.875rem;
|
|
608
|
+
}
|
|
609
|
+
@media (min-width: 62em) {
|
|
610
|
+
.duet-header-utils .duet-header-button.duet-header-logout {
|
|
611
|
+
height: 4rem;
|
|
612
|
+
margin: 0;
|
|
613
|
+
font-weight: 400;
|
|
614
|
+
border: 0;
|
|
615
|
+
}
|
|
616
|
+
.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon {
|
|
617
|
+
margin-right: 0.75rem;
|
|
618
|
+
}
|
|
619
|
+
}
|
|
550
620
|
|
|
551
621
|
.duet-header-no-action {
|
|
552
622
|
pointer-events: none;
|
|
@@ -635,7 +705,7 @@ button {
|
|
|
635
705
|
display: inline-block;
|
|
636
706
|
width: 6px;
|
|
637
707
|
height: 6px;
|
|
638
|
-
margin-top:
|
|
708
|
+
margin-top: -1rem;
|
|
639
709
|
margin-left: 5px;
|
|
640
710
|
vertical-align: top;
|
|
641
711
|
background: #f7b228;
|
|
@@ -703,7 +773,7 @@ button {
|
|
|
703
773
|
.duet-header-dropdown .duet-header-dropdown-content {
|
|
704
774
|
display: none;
|
|
705
775
|
padding-bottom: 16px;
|
|
706
|
-
background: #
|
|
776
|
+
background: #f3f9fc;
|
|
707
777
|
border-bottom: 1px solid #e1e3e6;
|
|
708
778
|
}
|
|
709
779
|
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content {
|
|
@@ -717,7 +787,7 @@ button {
|
|
|
717
787
|
left: 0;
|
|
718
788
|
z-index: 600;
|
|
719
789
|
display: block;
|
|
720
|
-
min-width:
|
|
790
|
+
min-width: 150px;
|
|
721
791
|
padding-top: 16px;
|
|
722
792
|
padding-left: 0;
|
|
723
793
|
visibility: hidden;
|
|
@@ -731,6 +801,11 @@ button {
|
|
|
731
801
|
transform: scale(0.85) translateZ(0) translateY(-20px);
|
|
732
802
|
}
|
|
733
803
|
}
|
|
804
|
+
@media (min-width: 64.0625em) {
|
|
805
|
+
.duet-header-dropdown .duet-header-dropdown-content {
|
|
806
|
+
min-width: 170px;
|
|
807
|
+
}
|
|
808
|
+
}
|
|
734
809
|
.duet-header-dropdown .duet-header-dropdown-content.active {
|
|
735
810
|
display: block;
|
|
736
811
|
}
|
|
@@ -741,7 +816,7 @@ button {
|
|
|
741
816
|
transform: translateZ(0) translateY(0);
|
|
742
817
|
}
|
|
743
818
|
}
|
|
744
|
-
.duet-header-dropdown .duet-header-dropdown-content a {
|
|
819
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item) {
|
|
745
820
|
padding: 3px 8px 4px !important;
|
|
746
821
|
position: relative;
|
|
747
822
|
display: block;
|
|
@@ -759,46 +834,47 @@ button {
|
|
|
759
834
|
cursor: pointer;
|
|
760
835
|
transition: 300ms ease;
|
|
761
836
|
}
|
|
762
|
-
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a {
|
|
837
|
+
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item) {
|
|
763
838
|
color: #171c3a;
|
|
764
839
|
}
|
|
765
840
|
@media (min-width: 62em) {
|
|
766
|
-
.duet-header-dropdown .duet-header-dropdown-content a {
|
|
841
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item) {
|
|
842
|
+
padding-right: 20px !important;
|
|
767
843
|
padding-left: 20px !important;
|
|
768
844
|
}
|
|
769
845
|
}
|
|
770
846
|
@media (min-width: 62em) {
|
|
771
|
-
.duet-header-dropdown .duet-header-dropdown-content a:hover {
|
|
847
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover {
|
|
772
848
|
background: #e6f2f8;
|
|
773
849
|
}
|
|
774
|
-
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:hover {
|
|
850
|
+
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover {
|
|
775
851
|
background: #f9e6ea;
|
|
776
852
|
}
|
|
777
853
|
}
|
|
778
|
-
.duet-header-dropdown .duet-header-dropdown-content a:focus {
|
|
854
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus {
|
|
779
855
|
outline: 0;
|
|
780
856
|
}
|
|
781
|
-
:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:focus {
|
|
857
|
+
:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus {
|
|
782
858
|
box-shadow: 0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3;
|
|
783
859
|
}
|
|
784
|
-
:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:focus {
|
|
860
|
+
:host(.user-is-tabbing) .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus {
|
|
785
861
|
box-shadow: 0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a;
|
|
786
862
|
}
|
|
787
|
-
.duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
863
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active {
|
|
788
864
|
padding-right: 36px;
|
|
789
865
|
font-weight: 600;
|
|
790
866
|
vertical-align: baseline;
|
|
791
867
|
pointer-events: none;
|
|
792
868
|
}
|
|
793
|
-
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
869
|
+
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active {
|
|
794
870
|
font-weight: 700;
|
|
795
871
|
}
|
|
796
872
|
@media (min-width: 62em) {
|
|
797
|
-
.duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
873
|
+
.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active {
|
|
798
874
|
color: white;
|
|
799
875
|
background: #0077b3;
|
|
800
876
|
}
|
|
801
|
-
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
877
|
+
.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active {
|
|
802
878
|
background: #c60c30;
|
|
803
879
|
}
|
|
804
880
|
}
|
|
@@ -830,13 +906,13 @@ button {
|
|
|
830
906
|
}
|
|
831
907
|
|
|
832
908
|
.duet-header-skip {
|
|
833
|
-
padding:
|
|
909
|
+
padding: 15px 28px 16px !important;
|
|
834
910
|
position: absolute;
|
|
835
911
|
top: -100%;
|
|
836
912
|
left: -100%;
|
|
837
913
|
z-index: 200;
|
|
838
914
|
width: 1px;
|
|
839
|
-
min-width:
|
|
915
|
+
min-width: 190px;
|
|
840
916
|
height: 1px;
|
|
841
917
|
overflow: hidden;
|
|
842
918
|
font-weight: 600;
|
|
@@ -870,4 +946,161 @@ button {
|
|
|
870
946
|
height: auto;
|
|
871
947
|
outline: 0;
|
|
872
948
|
opacity: 1;
|
|
949
|
+
}
|
|
950
|
+
|
|
951
|
+
.duet-header-multi-level-desktop {
|
|
952
|
+
height: 6rem;
|
|
953
|
+
}
|
|
954
|
+
.duet-header-multi-level-desktop .duet-header-top {
|
|
955
|
+
justify-content: space-between;
|
|
956
|
+
height: 6rem;
|
|
957
|
+
}
|
|
958
|
+
.duet-header-multi-level-desktop .duet-header-button {
|
|
959
|
+
height: 6rem;
|
|
960
|
+
}
|
|
961
|
+
.duet-header-multi-level-desktop .logo-and-segment {
|
|
962
|
+
display: flex;
|
|
963
|
+
flex-basis: 0;
|
|
964
|
+
flex-direction: column;
|
|
965
|
+
flex-grow: 1;
|
|
966
|
+
padding-top: 1rem;
|
|
967
|
+
}
|
|
968
|
+
.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown {
|
|
969
|
+
z-index: 400;
|
|
970
|
+
margin-left: 2rem;
|
|
971
|
+
}
|
|
972
|
+
.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content {
|
|
973
|
+
background: #f3f9fc;
|
|
974
|
+
}
|
|
975
|
+
.duet-header-multi-level-desktop .logo-and-segment button {
|
|
976
|
+
align-items: flex-start;
|
|
977
|
+
height: 2rem;
|
|
978
|
+
font-weight: 600;
|
|
979
|
+
line-height: 1rem;
|
|
980
|
+
}
|
|
981
|
+
.duet-header-multi-level-desktop .logo-and-segment button::before {
|
|
982
|
+
display: none;
|
|
983
|
+
}
|
|
984
|
+
.duet-header-multi-level-desktop .logo-and-segment .duet-header-caret {
|
|
985
|
+
top: 25%;
|
|
986
|
+
}
|
|
987
|
+
.duet-header-multi-level-desktop-nav {
|
|
988
|
+
display: flex;
|
|
989
|
+
}
|
|
990
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown {
|
|
991
|
+
position: static;
|
|
992
|
+
}
|
|
993
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle {
|
|
994
|
+
z-index: 400;
|
|
995
|
+
padding-right: 1rem;
|
|
996
|
+
font-size: 1rem;
|
|
997
|
+
font-weight: 600;
|
|
998
|
+
}
|
|
999
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active {
|
|
1000
|
+
color: #0077b3;
|
|
1001
|
+
}
|
|
1002
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content {
|
|
1003
|
+
z-index: 399;
|
|
1004
|
+
display: flex;
|
|
1005
|
+
justify-content: center;
|
|
1006
|
+
width: 100%;
|
|
1007
|
+
height: 4.5rem;
|
|
1008
|
+
padding: 0;
|
|
1009
|
+
background: #f3f9fc;
|
|
1010
|
+
border-top: 1px solid #e1e3e6;
|
|
1011
|
+
border-bottom: 1px solid #e1e3e6;
|
|
1012
|
+
box-shadow: 0 2px 6px 0 rgba(0, 41, 77, 0.07);
|
|
1013
|
+
transition: none;
|
|
1014
|
+
}
|
|
1015
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a {
|
|
1016
|
+
position: relative;
|
|
1017
|
+
display: flex;
|
|
1018
|
+
flex-direction: column;
|
|
1019
|
+
align-items: center;
|
|
1020
|
+
justify-content: center;
|
|
1021
|
+
width: auto;
|
|
1022
|
+
min-width: 6rem;
|
|
1023
|
+
height: 100%;
|
|
1024
|
+
padding: 0 1rem !important;
|
|
1025
|
+
font-weight: 600;
|
|
1026
|
+
}
|
|
1027
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after {
|
|
1028
|
+
position: absolute;
|
|
1029
|
+
top: auto;
|
|
1030
|
+
bottom: 0;
|
|
1031
|
+
left: 0;
|
|
1032
|
+
display: block !important;
|
|
1033
|
+
width: 100%;
|
|
1034
|
+
height: 3px;
|
|
1035
|
+
content: "";
|
|
1036
|
+
background: #0077b3;
|
|
1037
|
+
transition: 300ms ease;
|
|
1038
|
+
transform: translateY(3px);
|
|
1039
|
+
}
|
|
1040
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
1041
|
+
font-weight: 600;
|
|
1042
|
+
color: #0077b3;
|
|
1043
|
+
background: none;
|
|
1044
|
+
}
|
|
1045
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after {
|
|
1046
|
+
transform: translateY(0);
|
|
1047
|
+
}
|
|
1048
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon {
|
|
1049
|
+
margin: 0;
|
|
1050
|
+
}
|
|
1051
|
+
.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge {
|
|
1052
|
+
position: absolute;
|
|
1053
|
+
margin-top: -2rem;
|
|
1054
|
+
margin-right: -2.25rem;
|
|
1055
|
+
}
|
|
1056
|
+
.duet-header-multi-level-desktop-nav button::before {
|
|
1057
|
+
display: none;
|
|
1058
|
+
}
|
|
1059
|
+
.duet-header-multi-level-desktop-nav .duet-header-caret {
|
|
1060
|
+
display: none;
|
|
1061
|
+
}
|
|
1062
|
+
.duet-header-multi-level-desktop-utils {
|
|
1063
|
+
display: flex;
|
|
1064
|
+
flex-basis: 0;
|
|
1065
|
+
flex-grow: 1;
|
|
1066
|
+
justify-content: flex-end;
|
|
1067
|
+
}
|
|
1068
|
+
.duet-header-multi-level-desktop-utils > :last-child::before {
|
|
1069
|
+
display: none;
|
|
1070
|
+
}
|
|
1071
|
+
.duet-header-multi-level-desktop-utils .duet-header-dropdown {
|
|
1072
|
+
z-index: 400;
|
|
1073
|
+
}
|
|
1074
|
+
.duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content {
|
|
1075
|
+
background: #f3f9fc;
|
|
1076
|
+
}
|
|
1077
|
+
.duet-header-multi-level-desktop-utils .duet-header-button-label,
|
|
1078
|
+
.duet-header-multi-level-desktop-utils .duet-header-dropdown-label {
|
|
1079
|
+
display: none;
|
|
1080
|
+
}
|
|
1081
|
+
@media (min-width: 64.0625em) {
|
|
1082
|
+
.duet-header-multi-level-desktop-utils .duet-header-button-label,
|
|
1083
|
+
.duet-header-multi-level-desktop-utils .duet-header-dropdown-label {
|
|
1084
|
+
display: initial;
|
|
1085
|
+
}
|
|
1086
|
+
}
|
|
1087
|
+
.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content {
|
|
1088
|
+
background: #fcf3f4;
|
|
1089
|
+
}
|
|
1090
|
+
.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active {
|
|
1091
|
+
color: #c60c30;
|
|
1092
|
+
}
|
|
1093
|
+
.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content {
|
|
1094
|
+
background: #fcf3f4;
|
|
1095
|
+
border-color: #e4e4e6;
|
|
1096
|
+
}
|
|
1097
|
+
.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after {
|
|
1098
|
+
background: #c60c30;
|
|
1099
|
+
}
|
|
1100
|
+
.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active {
|
|
1101
|
+
color: #c60c30;
|
|
1102
|
+
background: none;
|
|
1103
|
+
}
|
|
1104
|
+
.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content {
|
|
1105
|
+
background: #fcf3f4;
|
|
873
1106
|
}
|