@duetds/components 4.36.1 → 5.0.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 +1128 -977
- package/lib/cjs/duet-action-button.cjs.entry.js +163 -0
- 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 +8 -4
- package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
- package/lib/cjs/duet-card.cjs.entry.js +3 -3
- 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 +2 -2
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
- package/lib/cjs/duet-date-picker.cjs.entry.js +4 -4
- package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
- package/lib/cjs/{duet-editable-table_4.cjs.entry.js → duet-editable-table_3.cjs.entry.js} +382 -337
- 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 +2 -2
- package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
- package/lib/cjs/duet-hero.cjs.entry.js +1 -1
- package/lib/cjs/duet-icon.cjs.entry.js +3 -3
- 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 +24 -14
- 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 +2 -2
- 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 +2 -2
- 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-dfd718e8.js → focus-utils-7a11c463.js} +1 -1
- package/lib/cjs/{index-4f342f1c.js → index-da5d5aaf.js} +1 -1
- package/lib/cjs/js-utils-be1d29ae.js +39 -0
- package/lib/cjs/loader.cjs.js +2 -2
- package/lib/cjs/{token-utils-f402e205.js → token-utils-ac8432d1.js} +1 -1
- package/lib/cjs/{tokens-8596cece.js → tokens-72efc7fd.js} +0 -0
- package/lib/cjs/{tokens.module-6b2df1c2.js → tokens.module-6afcc9c1.js} +0 -0
- package/lib/collection/collection-manifest.json +14 -11
- package/lib/collection/components/duet-action-button/duet-action-button.css +87 -0
- package/lib/collection/components/duet-action-button/duet-action-button.js +489 -0
- package/lib/collection/components/duet-button/duet-button.js +23 -1
- package/lib/collection/components/duet-date-picker/duet-date-picker.css +2 -57
- package/lib/collection/components/duet-date-picker/duet-date-picker.js +2 -6
- package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +3 -2
- package/lib/collection/components/duet-editable-table/duet-editable-table.css +20 -1
- package/lib/collection/components/duet-editable-table/duet-editable-table.js +331 -205
- package/lib/collection/components/duet-pagination/duet-pagination.css +3 -62
- package/lib/collection/components/duet-pagination/duet-pagination.js +49 -19
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +4 -55
- package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -4
- package/lib/collection/components/duet-table/duet-table.css +42 -8
- package/lib/collection/components/duet-table/duet-table.js +11 -2
- package/lib/collection/components/duet-upload/duet-upload.css +25 -0
- package/lib/collection/components/duet-upload/duet-upload.js +270 -166
- package/lib/collection/components/duet-upload/upload-validators.js +1 -1
- package/lib/collection/utils/fixture-utils.js +3 -1
- package/lib/collection/utils/js-utils.js +36 -1
- package/lib/custom-elements-bundle/index.d.ts +6 -12
- package/lib/custom-elements-bundle/index.js +1142 -1001
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/{p-c18080ad.entry.js → p-00209700.entry.js} +1 -1
- package/lib/duet/{p-1a95aeb6.entry.js → p-01144f93.entry.js} +1 -1
- package/lib/duet/{p-c6df2ea8.system.entry.js → p-021bf3a2.system.entry.js} +1 -1
- package/lib/duet/{p-20cdb787.entry.js → p-04c6e557.entry.js} +1 -1
- package/lib/duet/{p-d945a4b0.system.entry.js → p-06fd151e.system.entry.js} +1 -1
- package/lib/duet/p-0988f548.entry.js +4 -0
- package/lib/duet/{p-05e2c680.system.entry.js → p-0e1130a0.system.entry.js} +1 -1
- package/lib/duet/{p-ebc56043.entry.js → p-0fedc1c6.entry.js} +1 -1
- package/lib/duet/{p-e8303364.system.entry.js → p-111b70c5.system.entry.js} +1 -1
- package/lib/duet/p-12825e2c.entry.js +4 -0
- package/lib/duet/p-166c09ce.system.entry.js +4 -0
- package/lib/duet/{p-24b9e806.entry.js → p-1be45fc6.entry.js} +1 -1
- package/lib/duet/{p-286d2ad2.system.entry.js → p-1da57e19.system.entry.js} +1 -1
- package/lib/duet/{p-7a32ceb3.system.entry.js → p-21c9efa8.system.entry.js} +1 -1
- package/lib/duet/p-2245c56b.entry.js +4 -0
- package/lib/duet/{p-e6a69eb8.js → p-2273fc88.js} +1 -1
- package/lib/duet/{p-79b9e7ef.system.entry.js → p-232762b3.system.entry.js} +1 -1
- package/lib/duet/{p-d21f19cc.system.js → p-251dc733.system.js} +1 -1
- package/lib/duet/{p-ddb6344c.system.js → p-268c0abb.system.js} +0 -0
- package/lib/duet/{p-ca0ee655.system.entry.js → p-2b6dac5c.system.entry.js} +1 -1
- package/lib/duet/{p-e8e35258.entry.js → p-35cdec32.entry.js} +1 -1
- package/lib/duet/{p-2361986e.entry.js → p-37bdfcc6.entry.js} +1 -1
- package/lib/duet/{p-740b5609.entry.js → p-3c7d81b0.entry.js} +1 -1
- package/lib/duet/{p-3900577d.system.entry.js → p-3f77090f.system.entry.js} +1 -1
- package/lib/duet/{p-ad3dad04.system.js → p-3fafe82f.system.js} +1 -1
- package/lib/duet/{p-164a7037.system.entry.js → p-4b221aa3.system.entry.js} +1 -1
- package/lib/duet/{p-210d739c.system.entry.js → p-4b7b1d2a.system.entry.js} +1 -1
- package/lib/duet/{p-3547d108.entry.js → p-4c282c1a.entry.js} +1 -1
- package/lib/duet/p-51a7c020.entry.js +4 -0
- package/lib/duet/{p-c8ec3b99.entry.js → p-5298f6fb.entry.js} +1 -1
- package/lib/duet/{p-cb445018.js → p-5746d88c.js} +1 -1
- package/lib/duet/{p-f6da56c8.entry.js → p-589c2f28.entry.js} +1 -1
- package/lib/duet/{p-d9716aec.system.entry.js → p-592315ca.system.entry.js} +1 -1
- package/lib/duet/{p-615bfc61.system.entry.js → p-59a0ec33.system.entry.js} +1 -1
- package/lib/duet/p-5e1f64cb.entry.js +4 -0
- package/lib/duet/{p-29255af8.entry.js → p-608645ed.entry.js} +1 -1
- package/lib/duet/{p-3d1b0105.entry.js → p-683f1962.entry.js} +1 -1
- package/lib/duet/{p-9ce0e625.entry.js → p-6932c6d8.entry.js} +1 -1
- package/lib/duet/{p-e35d8543.entry.js → p-6934cb1b.entry.js} +1 -1
- package/lib/duet/{p-211b4485.system.entry.js → p-6d209c01.system.entry.js} +1 -1
- package/lib/duet/{p-e47daca7.system.entry.js → p-70e5c803.system.entry.js} +1 -1
- package/lib/duet/p-74d267d3.system.entry.js +4 -0
- package/lib/duet/{p-c7fa7dcc.system.entry.js → p-766daacb.system.entry.js} +1 -1
- package/lib/duet/{p-4e2532c7.system.js → p-77acbfe4.system.js} +1 -1
- package/lib/duet/p-7953cff9.system.entry.js +4 -0
- package/lib/duet/{p-635dacce.system.entry.js → p-7e939e57.system.entry.js} +1 -1
- package/lib/duet/{p-fa99eaa4.system.js → p-812b0905.system.js} +0 -0
- package/lib/duet/{p-1db7a35b.entry.js → p-814ed07c.entry.js} +1 -1
- package/lib/duet/{p-5d9affcd.entry.js → p-82a0e535.entry.js} +1 -1
- package/lib/duet/{p-3bb702e3.system.entry.js → p-8338702d.system.entry.js} +2 -2
- package/lib/duet/{p-65c418f7.system.entry.js → p-85b4b5c0.system.entry.js} +1 -1
- package/lib/duet/{p-5376a9db.entry.js → p-86538787.entry.js} +1 -1
- package/lib/duet/{p-562ae946.entry.js → p-8f01f647.entry.js} +1 -1
- package/lib/duet/{p-85100e09.entry.js → p-8f6def3f.entry.js} +1 -1
- package/lib/duet/{p-03cf3ebf.entry.js → p-90464434.entry.js} +1 -1
- package/lib/duet/p-92639d0b.system.js +4 -0
- package/lib/duet/{p-12941aef.system.entry.js → p-97f95c02.system.entry.js} +1 -1
- package/lib/duet/{p-ffb5fb75.system.entry.js → p-982deb44.system.entry.js} +1 -1
- package/lib/duet/{p-fd2211ab.entry.js → p-9dc88c43.entry.js} +1 -1
- package/lib/duet/{p-fae71c1f.entry.js → p-a37e57d8.entry.js} +1 -1
- package/lib/duet/{p-c52f4de0.system.entry.js → p-a71510b8.system.entry.js} +1 -1
- package/lib/duet/p-a8eec12e.system.entry.js +4 -0
- package/lib/duet/{p-4fdbc6ff.system.entry.js → p-abcfbb23.system.entry.js} +1 -1
- package/lib/duet/{p-3c3536be.entry.js → p-ac2b38e6.entry.js} +1 -1
- package/lib/duet/{p-9df321b3.system.entry.js → p-ace2cd17.system.entry.js} +1 -1
- package/lib/duet/{p-946f34b4.system.entry.js → p-ad278903.system.entry.js} +1 -1
- package/lib/duet/{p-1c4721a1.entry.js → p-aea907ad.entry.js} +1 -1
- package/lib/duet/{p-e7dd8a15.system.entry.js → p-b432d318.system.entry.js} +1 -1
- package/lib/duet/{p-0366552b.system.entry.js → p-b4e75f80.system.entry.js} +1 -1
- package/lib/duet/{p-061835f3.system.entry.js → p-b8c8105c.system.entry.js} +1 -1
- package/lib/duet/{p-c2d32103.entry.js → p-ba7480e9.entry.js} +1 -1
- package/lib/duet/{p-83452e8f.entry.js → p-bc7dba26.entry.js} +1 -1
- package/lib/duet/{p-ff21f3c2.entry.js → p-bf06f635.entry.js} +1 -1
- package/lib/duet/{p-c514010b.system.entry.js → p-c6ccf366.system.entry.js} +1 -1
- package/lib/duet/{p-46ae601a.entry.js → p-cd1a767f.entry.js} +1 -1
- package/lib/duet/{p-89e42127.system.entry.js → p-d6d9b0c6.system.entry.js} +1 -1
- package/lib/duet/{p-8143f3de.js → p-d7bc0102.js} +0 -0
- package/lib/duet/{p-d24c6bc1.entry.js → p-d9e329c0.entry.js} +1 -1
- package/lib/duet/p-dbb4a588.js +4 -0
- package/lib/duet/{p-ae14591e.entry.js → p-dc67d989.entry.js} +1 -1
- package/lib/duet/{p-7f0e360d.entry.js → p-de9ff67c.entry.js} +1 -1
- package/lib/duet/{p-ded33218.system.entry.js → p-deb8ac4d.system.entry.js} +1 -1
- package/lib/duet/p-e2e0bc49.system.js +4 -0
- package/lib/duet/{p-8c53bc24.system.entry.js → p-e624799f.system.entry.js} +1 -1
- package/lib/duet/{p-eb892975.system.entry.js → p-e887d6db.system.entry.js} +1 -1
- package/lib/duet/{p-dcaecb5e.js → p-e9c3053b.js} +1 -1
- package/lib/duet/{p-493c6d2f.system.entry.js → p-ebed7c5e.system.entry.js} +1 -1
- package/lib/duet/{p-ad07f399.js → p-ed75c8b3.js} +0 -0
- package/lib/duet/{p-e5ce7aad.system.entry.js → p-f020852e.system.entry.js} +1 -1
- package/lib/duet/p-f2abd301.entry.js +4 -0
- package/lib/duet/{p-e7b53f4f.system.entry.js → p-f54d1487.system.entry.js} +1 -1
- package/lib/duet/{p-b6dd0933.entry.js → p-fc44a819.entry.js} +1 -1
- package/lib/duet/{p-22baf1f8.system.entry.js → p-fcdd24f8.system.entry.js} +1 -1
- package/lib/duet/{p-5b546064.entry.js → p-fed35d92.entry.js} +1 -1
- package/lib/duet/{p-ef275410.entry.js → p-ff308f4c.entry.js} +1 -1
- package/lib/esm/duet-action-button.entry.js +159 -0
- 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 +8 -4
- package/lib/esm/duet-caption_4.entry.js +3 -3
- package/lib/esm/duet-card.entry.js +3 -3
- 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 +2 -2
- package/lib/esm/duet-cookie-consent.entry.js +1 -1
- package/lib/esm/duet-date-picker.entry.js +4 -4
- package/lib/esm/duet-divider_2.entry.js +1 -1
- package/lib/esm/{duet-editable-table_4.entry.js → duet-editable-table_3.entry.js} +384 -338
- 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 +2 -2
- package/lib/esm/duet-header_2.entry.js +3 -3
- package/lib/esm/duet-hero.entry.js +1 -1
- package/lib/esm/duet-icon.entry.js +3 -3
- 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 +24 -14
- 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 +2 -2
- 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 +2 -2
- 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-d4e80e1e.js → focus-utils-b0b3361f.js} +1 -1
- package/lib/esm/{index-4a5e7664.js → index-16f4da7f.js} +1 -1
- package/lib/esm/js-utils-52e0944c.js +36 -0
- package/lib/esm/loader.js +2 -2
- package/lib/esm/{token-utils-e9a69acf.js → token-utils-e9a0cb88.js} +1 -1
- package/lib/esm/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
- package/lib/esm/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
- package/lib/esm-es5/duet-action-button.entry.js +4 -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-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-cookie-consent.entry.js +1 -1
- package/lib/esm-es5/duet-date-picker.entry.js +2 -2
- package/lib/esm-es5/duet-divider_2.entry.js +1 -1
- package/lib/esm-es5/duet-editable-table_3.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 +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 +2 -2
- 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 +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 +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-b0b3361f.js +4 -0
- package/lib/esm-es5/{index-4a5e7664.js → index-16f4da7f.js} +1 -1
- package/lib/esm-es5/js-utils-52e0944c.js +4 -0
- package/lib/esm-es5/loader.js +1 -1
- package/lib/esm-es5/{token-utils-e9a69acf.js → token-utils-e9a0cb88.js} +1 -1
- package/lib/esm-es5/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
- package/lib/esm-es5/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
- package/lib/html.html-data.json +168 -68
- package/lib/types/components/duet-action-button/duet-action-button.d.ts +112 -0
- package/lib/types/components/duet-button/duet-button.d.ts +4 -0
- package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +2 -2
- package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +106 -48
- package/lib/types/components/duet-pagination/duet-pagination.d.ts +7 -2
- package/lib/types/components/duet-table/duet-table.d.ts +16 -0
- package/lib/types/components/duet-upload/duet-upload.d.ts +68 -58
- package/lib/types/components.d.ts +225 -149
- package/lib/types/utils/js-utils.d.ts +2 -0
- package/package.json +5 -6
- package/lib/cjs/duet-editable-table-button.cjs.entry.js +0 -96
- package/lib/cjs/js-utils-33a9dbe3.js +0 -16
- package/lib/collection/components/duet-editable-table/duet-editable-table-button.css +0 -32
- package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +0 -225
- package/lib/collection/components/duet-editable-table/duet-editable-table-item.css +0 -36
- package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +0 -225
- package/lib/duet/p-063fe96d.entry.js +0 -4
- package/lib/duet/p-2eeacf1a.entry.js +0 -4
- package/lib/duet/p-396f1bdc.entry.js +0 -4
- package/lib/duet/p-7b55f33e.entry.js +0 -4
- package/lib/duet/p-7e0e2209.system.entry.js +0 -4
- package/lib/duet/p-81867417.system.js +0 -4
- package/lib/duet/p-a3d7951c.system.entry.js +0 -4
- package/lib/duet/p-a619dff3.system.js +0 -4
- package/lib/duet/p-b25d3769.js +0 -4
- package/lib/duet/p-bf192d9f.entry.js +0 -4
- package/lib/duet/p-c76a68aa.system.entry.js +0 -4
- package/lib/duet/p-d12b3d21.system.entry.js +0 -4
- package/lib/duet/p-ef4962e8.entry.js +0 -4
- package/lib/esm/duet-editable-table-button.entry.js +0 -92
- package/lib/esm/js-utils-b69f17df.js +0 -14
- package/lib/esm-es5/duet-editable-table-button.entry.js +0 -4
- package/lib/esm-es5/duet-editable-table_4.entry.js +0 -4
- package/lib/esm-es5/focus-utils-d4e80e1e.js +0 -4
- package/lib/esm-es5/js-utils-b69f17df.js +0 -4
- package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +0 -73
- package/lib/types/components/duet-editable-table/duet-editable-table-item.d.ts +0 -76
|
@@ -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.2.
|
|
5
|
+
const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.2.18"};
|
|
6
6
|
|
|
7
7
|
let scopeId;
|
|
8
8
|
let contentRef;
|
|
@@ -1662,6 +1662,60 @@ const appGlobalScript = () => {
|
|
|
1662
1662
|
|
|
1663
1663
|
const globalScripts = appGlobalScript;
|
|
1664
1664
|
|
|
1665
|
+
function chr4() {
|
|
1666
|
+
return Math.random().toString(16).slice(-4);
|
|
1667
|
+
}
|
|
1668
|
+
function createID(prefix) {
|
|
1669
|
+
return `${prefix}-${chr4()}${chr4()}-${chr4()}-${chr4()}-${chr4()}-${chr4()}${chr4()}${chr4()}`;
|
|
1670
|
+
}
|
|
1671
|
+
|
|
1672
|
+
const debounce = (func, timeout = 250) => {
|
|
1673
|
+
let timer;
|
|
1674
|
+
return (...args) => {
|
|
1675
|
+
clearTimeout(timer);
|
|
1676
|
+
timer = setTimeout(() => {
|
|
1677
|
+
func.apply(undefined, args);
|
|
1678
|
+
}, timeout);
|
|
1679
|
+
};
|
|
1680
|
+
};
|
|
1681
|
+
function fieldSorter(fields) {
|
|
1682
|
+
return function (a, b) {
|
|
1683
|
+
return fields
|
|
1684
|
+
.map(function (o) {
|
|
1685
|
+
let dir = 1;
|
|
1686
|
+
if (o[0] === "-") {
|
|
1687
|
+
dir = -1;
|
|
1688
|
+
o = o.substring(1);
|
|
1689
|
+
}
|
|
1690
|
+
if (a[o] > b[o]) {
|
|
1691
|
+
return dir;
|
|
1692
|
+
}
|
|
1693
|
+
if (a[o] < b[o]) {
|
|
1694
|
+
return -dir;
|
|
1695
|
+
}
|
|
1696
|
+
return 0;
|
|
1697
|
+
})
|
|
1698
|
+
.reduce(function firstNonZeroValue(p, n) {
|
|
1699
|
+
return p ? p : n;
|
|
1700
|
+
}, 0);
|
|
1701
|
+
};
|
|
1702
|
+
}
|
|
1703
|
+
|
|
1704
|
+
const isArrowLeftKey = (e) => e.keyCode === 37;
|
|
1705
|
+
const isArrowUpKey = (e) => e.keyCode === 38;
|
|
1706
|
+
const isArrowRightKey = (e) => e.keyCode === 39;
|
|
1707
|
+
const isArrowDownKey = (e) => e.keyCode === 40;
|
|
1708
|
+
const isArrowKey = (e) => isArrowDownKey(e) || isArrowRightKey(e) || isArrowUpKey(e) || isArrowLeftKey(e);
|
|
1709
|
+
const isEscapeKey = (e) => e.key === "Escape" || e.key === "Esc" || e.keyCode === 27;
|
|
1710
|
+
const isBackspaceKey = (e) => e.keyCode === 8;
|
|
1711
|
+
const isSpaceKey = (e) => e.key === "Space" || e.keyCode === 32;
|
|
1712
|
+
const isPlusKey = (e) => e.key === "+" || e.keyCode === 43;
|
|
1713
|
+
const isMinusKey = (e) => e.key === "-" || e.keyCode === 45;
|
|
1714
|
+
const isQuestionKey = (e) => e.key === "?";
|
|
1715
|
+
const isEnterKey = (e) => e.key === "Enter" || e.keyCode === 13;
|
|
1716
|
+
const isKeyboardClick = (e) => isEnterKey(e) || isSpaceKey(e);
|
|
1717
|
+
const isNumber = (e) => (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105);
|
|
1718
|
+
|
|
1665
1719
|
function isObject(maybeObj) {
|
|
1666
1720
|
return Object.prototype.toString.call(maybeObj) === "[object Object]";
|
|
1667
1721
|
}
|
|
@@ -1799,130 +1853,648 @@ const inheritGlobalTheme = (component) => {
|
|
|
1799
1853
|
}
|
|
1800
1854
|
};
|
|
1801
1855
|
|
|
1802
|
-
const
|
|
1856
|
+
const colorWarning = "rgb(247, 178, 40)";
|
|
1857
|
+
const colorGrayDarker = "rgb(101, 119, 135)";
|
|
1858
|
+
const colorGrayLighter = "rgb(245, 248, 250)";
|
|
1859
|
+
const colorCategoryHome = "rgb(211, 36, 131)";
|
|
1860
|
+
const colorPrimary = "rgb(0, 119, 179)";
|
|
1861
|
+
const colorCategoryVehicle = "rgb(54, 74, 129)";
|
|
1862
|
+
const colorSuccess = "rgb(0, 135, 90)";
|
|
1863
|
+
const colorCategoryFamily = "rgb(11, 114, 136)";
|
|
1864
|
+
const colorPrimaryLightest = "rgb(243, 249, 252)";
|
|
1865
|
+
const colorPrimaryLighter = "rgb(230, 242, 248)";
|
|
1866
|
+
const colorBrandBlue = "rgb(0, 161, 212)";
|
|
1867
|
+
const colorPrimaryDark = "rgb(0, 77, 128)";
|
|
1868
|
+
const colorGrayLightest = "rgb(255, 255, 255)";
|
|
1869
|
+
const colorCategoryFinance = "rgb(122, 1, 196)";
|
|
1870
|
+
const colorGrayDark = "rgb(144, 149, 153)";
|
|
1871
|
+
const colorGrayLight = "rgb(225, 227, 230)";
|
|
1872
|
+
const colorSecondary = "rgb(0, 41, 77)";
|
|
1873
|
+
const colorCategoryPet = "rgb(168, 1, 78)";
|
|
1874
|
+
const colorPrimaryLight = "rgb(205, 229, 241)";
|
|
1875
|
+
const colorCategoryTravel = "rgb(213, 66, 3)";
|
|
1876
|
+
const colorGray = "rgb(207, 210, 212)";
|
|
1877
|
+
const colorDanger = "rgb(222, 35, 98)";
|
|
1878
|
+
const colorGrayDarkerTurva = "rgb(68, 68, 69)";
|
|
1879
|
+
const colorGrayLighterTurva = "rgb(245, 245, 247)";
|
|
1880
|
+
const colorCategoryHomeTurva = "rgb(161, 10, 78)";
|
|
1881
|
+
const colorPrimaryTurva = "rgb(198, 12, 48)";
|
|
1882
|
+
const colorCategoryVehicleTurva = "rgb(23, 28, 58)";
|
|
1883
|
+
const colorSuccessTurva = "rgb(8, 135, 78)";
|
|
1884
|
+
const colorPrimaryLightestTurva = "rgb(252, 243, 244)";
|
|
1885
|
+
const colorCategoryFamilyTurva = "rgb(199, 12, 112)";
|
|
1886
|
+
const colorCategoryUnionTurva = "rgb(169, 69, 124)";
|
|
1887
|
+
const colorPrimaryLighterTurva = "rgb(249, 230, 234)";
|
|
1888
|
+
const colorPrimaryDarkTurva = "rgb(148, 9, 37)";
|
|
1889
|
+
const colorGrayLightestTurva = "rgb(255, 255, 255)";
|
|
1890
|
+
const colorGrayDarkTurva = "rgb(116, 116, 117)";
|
|
1891
|
+
const colorGrayLightTurva = "rgb(228, 228, 230)";
|
|
1892
|
+
const colorBrandGrayTurva = "rgb(178, 180, 179)";
|
|
1893
|
+
const colorSecondaryTurva = "rgb(23, 28, 58)";
|
|
1894
|
+
const colorPrimaryLightTurva = "rgb(244, 207, 214)";
|
|
1895
|
+
const colorCategoryTravelTurva = "rgb(9, 129, 148)";
|
|
1896
|
+
const colorGrayTurva = "rgb(207, 207, 209)";
|
|
1897
|
+
const colorDangerTurva = "rgb(224, 42, 13)";
|
|
1898
|
+
const colorWarningTurva = "rgb(250, 164, 15)";
|
|
1899
|
+
const colorData07 = "rgb(192, 101, 247)";
|
|
1900
|
+
const colorData08 = "rgb(0, 105, 191)";
|
|
1901
|
+
const colorData09 = "rgb(19, 120, 53)";
|
|
1902
|
+
const colorData10 = "rgb(179, 60, 24)";
|
|
1903
|
+
const colorData11 = "rgb(13, 163, 166)";
|
|
1904
|
+
const colorData01 = "rgb(122, 1, 196)";
|
|
1905
|
+
const colorData12 = "rgb(11, 114, 136)";
|
|
1906
|
+
const colorData02 = "rgb(0, 155, 204)";
|
|
1907
|
+
const colorData13 = "rgb(179, 137, 24)";
|
|
1908
|
+
const colorData03 = "rgb(27, 171, 75)";
|
|
1909
|
+
const colorData14 = "rgb(128, 98, 17)";
|
|
1910
|
+
const colorData04 = "rgb(255, 86, 34)";
|
|
1911
|
+
const colorData15 = "rgb(0, 41, 77)";
|
|
1912
|
+
const colorData05 = "rgb(245, 76, 154)";
|
|
1913
|
+
const colorData06 = "rgb(194, 21, 101)";
|
|
1914
|
+
const fontWeightExtraBold = "800";
|
|
1915
|
+
const letterSpacingHeading = "-0.01rem";
|
|
1916
|
+
const fontFamilyHeadingTurva = "'turva-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
1917
|
+
const fontFamilyTextTurva = "'turva-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
1918
|
+
const fontFamilyHeading = "'localtapiola-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
1919
|
+
const fontFamilyText = "'localtapiola-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
1920
|
+
const fontWeightBold = "700";
|
|
1921
|
+
const fontWeightNormal = "400";
|
|
1922
|
+
const fontWeightSemiBold = "600";
|
|
1923
|
+
const fontSizeXxxxLarge = "4.5rem";
|
|
1924
|
+
const fontSizeXxxLarge = "3rem";
|
|
1925
|
+
const fontSizeXxLarge = "2.25rem";
|
|
1926
|
+
const fontSizeXLarge = "1.5rem";
|
|
1927
|
+
const fontSizeLarge = "1.25rem";
|
|
1928
|
+
const fontSizeMedium = "1rem";
|
|
1929
|
+
const fontSizeSmall = "0.875rem";
|
|
1930
|
+
const fontSizeXSmall = "0.75rem";
|
|
1931
|
+
const radiusSharp = "0";
|
|
1932
|
+
const radiusDefault = "4px";
|
|
1933
|
+
const radiusCircle = "50%";
|
|
1934
|
+
const radiusPill = "20rem";
|
|
1935
|
+
const shadowTooltipTurva = "0 2px 10px 0 rgba(117, 117, 117, 0.13)";
|
|
1936
|
+
const shadowDefault = "0 2px 6px 0 rgba(0, 41, 77, 0.07)";
|
|
1937
|
+
const shadowTooltip = "0 2px 10px 0 rgba(0, 41, 77, 0.07)";
|
|
1938
|
+
const shadowCardTurva = "0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)";
|
|
1939
|
+
const shadowModal = "0 2px 20px 0 rgba(0, 0, 0, 0.2)";
|
|
1940
|
+
const shadowCard = "0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)";
|
|
1941
|
+
const shadowHoverTurva = "0 2px 10px 0 rgba(117, 117, 117, 0.15)";
|
|
1942
|
+
const shadowHover = "0 2px 10px 0 rgba(0, 41, 77, 0.1)";
|
|
1943
|
+
const shadowDefaultTurva = "0 2px 6px 0 rgba(117, 117, 117, 0.13)";
|
|
1944
|
+
const spaceXxSmall = "4px";
|
|
1945
|
+
const spaceLarge = "20px";
|
|
1946
|
+
const spaceXSmall = "8px";
|
|
1947
|
+
const spaceXxxSmall = "2px";
|
|
1948
|
+
const spaceSmall = "12px";
|
|
1949
|
+
const spaceMedium = "16px";
|
|
1950
|
+
const spaceXxLarge = "36px";
|
|
1951
|
+
const spaceXxxxLarge = "72px";
|
|
1952
|
+
const spaceXxxxxLarge = "94px";
|
|
1953
|
+
const spaceXxxLarge = "48px";
|
|
1954
|
+
const spaceXLarge = "28px";
|
|
1955
|
+
const sizeIconXxLarge = "48px";
|
|
1956
|
+
const sizeFormBorder = "1px";
|
|
1957
|
+
const sizeStepMedium = "40px";
|
|
1958
|
+
const sizeButtonMinWidth = "8rem";
|
|
1959
|
+
const sizeHeader = "4rem";
|
|
1960
|
+
const sizeIconXxxLarge = "72px";
|
|
1961
|
+
const sizeIconXLarge = "36px";
|
|
1962
|
+
const sizeIconXxSmall = "10px";
|
|
1963
|
+
const sizeStepSmall = "30px";
|
|
1964
|
+
const sizeNavigation = "3rem";
|
|
1965
|
+
const sizeIconLarge = "30px";
|
|
1966
|
+
const sizeLayoutMaxWidth = "1110px";
|
|
1967
|
+
const sizeTappableSquare = "48px";
|
|
1968
|
+
const sizeIconXSmall = "16px";
|
|
1969
|
+
const sizeIconXxxSmall = "7px";
|
|
1970
|
+
const sizeButtonBorder = "2px";
|
|
1971
|
+
const sizeButtonTinyBorder = "1px";
|
|
1972
|
+
const sizeIconMedium = "24px";
|
|
1973
|
+
const sizeIconSmall = "20px";
|
|
1974
|
+
const opacity85 = "0.85";
|
|
1975
|
+
const opacity75 = "0.75";
|
|
1976
|
+
const opacity50 = "0.50";
|
|
1977
|
+
const opacity30 = "0.30";
|
|
1978
|
+
const zIndexDropdown = "600";
|
|
1979
|
+
const zIndexSpinner = "800";
|
|
1980
|
+
const zIndexDefault = "1";
|
|
1981
|
+
const zIndexToast = "500";
|
|
1982
|
+
const zIndexPopup = "950";
|
|
1983
|
+
const zIndexModal = "900";
|
|
1984
|
+
const zIndexSticky = "300";
|
|
1985
|
+
const zIndexMasked = "100";
|
|
1986
|
+
const zIndexDeep = "-999999";
|
|
1987
|
+
const zIndexOverlay = "700";
|
|
1988
|
+
const zIndexMask = "200";
|
|
1989
|
+
const zIndexHeader = "400";
|
|
1990
|
+
const lineHeightMedium = "1.5";
|
|
1991
|
+
const lineHeightSmall = "1.25";
|
|
1992
|
+
const lineHeightXSmall = "1.1";
|
|
1993
|
+
const transitionQuickly = "300ms ease";
|
|
1994
|
+
const transitionSlowly = "600ms ease";
|
|
1995
|
+
const mediaQueryXxSmall = "'(max-width: 22.5em)'";
|
|
1996
|
+
const mediaQueryXSmall = "'(max-width: 35.9375em)'";
|
|
1997
|
+
const mediaQuerySmall = "'(min-width: 36em)'";
|
|
1998
|
+
const mediaQueryMedium = "'(min-width: 48em)'";
|
|
1999
|
+
const mediaQueryLarge = "'(min-width: 62em)'";
|
|
2000
|
+
const mediaQueryXLarge = "'(min-width: 64.0625em)'";
|
|
2001
|
+
const mediaQueryXxLarge = "'(min-width: 76.25em)'";
|
|
2002
|
+
const mediaQueryXxxLarge = "'(min-width: 106.25em)'";
|
|
1803
2003
|
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
2004
|
+
const tokens$2 = /*#__PURE__*/Object.freeze({
|
|
2005
|
+
__proto__: null,
|
|
2006
|
+
colorWarning: colorWarning,
|
|
2007
|
+
colorGrayDarker: colorGrayDarker,
|
|
2008
|
+
colorGrayLighter: colorGrayLighter,
|
|
2009
|
+
colorCategoryHome: colorCategoryHome,
|
|
2010
|
+
colorPrimary: colorPrimary,
|
|
2011
|
+
colorCategoryVehicle: colorCategoryVehicle,
|
|
2012
|
+
colorSuccess: colorSuccess,
|
|
2013
|
+
colorCategoryFamily: colorCategoryFamily,
|
|
2014
|
+
colorPrimaryLightest: colorPrimaryLightest,
|
|
2015
|
+
colorPrimaryLighter: colorPrimaryLighter,
|
|
2016
|
+
colorBrandBlue: colorBrandBlue,
|
|
2017
|
+
colorPrimaryDark: colorPrimaryDark,
|
|
2018
|
+
colorGrayLightest: colorGrayLightest,
|
|
2019
|
+
colorCategoryFinance: colorCategoryFinance,
|
|
2020
|
+
colorGrayDark: colorGrayDark,
|
|
2021
|
+
colorGrayLight: colorGrayLight,
|
|
2022
|
+
colorSecondary: colorSecondary,
|
|
2023
|
+
colorCategoryPet: colorCategoryPet,
|
|
2024
|
+
colorPrimaryLight: colorPrimaryLight,
|
|
2025
|
+
colorCategoryTravel: colorCategoryTravel,
|
|
2026
|
+
colorGray: colorGray,
|
|
2027
|
+
colorDanger: colorDanger,
|
|
2028
|
+
colorGrayDarkerTurva: colorGrayDarkerTurva,
|
|
2029
|
+
colorGrayLighterTurva: colorGrayLighterTurva,
|
|
2030
|
+
colorCategoryHomeTurva: colorCategoryHomeTurva,
|
|
2031
|
+
colorPrimaryTurva: colorPrimaryTurva,
|
|
2032
|
+
colorCategoryVehicleTurva: colorCategoryVehicleTurva,
|
|
2033
|
+
colorSuccessTurva: colorSuccessTurva,
|
|
2034
|
+
colorPrimaryLightestTurva: colorPrimaryLightestTurva,
|
|
2035
|
+
colorCategoryFamilyTurva: colorCategoryFamilyTurva,
|
|
2036
|
+
colorCategoryUnionTurva: colorCategoryUnionTurva,
|
|
2037
|
+
colorPrimaryLighterTurva: colorPrimaryLighterTurva,
|
|
2038
|
+
colorPrimaryDarkTurva: colorPrimaryDarkTurva,
|
|
2039
|
+
colorGrayLightestTurva: colorGrayLightestTurva,
|
|
2040
|
+
colorGrayDarkTurva: colorGrayDarkTurva,
|
|
2041
|
+
colorGrayLightTurva: colorGrayLightTurva,
|
|
2042
|
+
colorBrandGrayTurva: colorBrandGrayTurva,
|
|
2043
|
+
colorSecondaryTurva: colorSecondaryTurva,
|
|
2044
|
+
colorPrimaryLightTurva: colorPrimaryLightTurva,
|
|
2045
|
+
colorCategoryTravelTurva: colorCategoryTravelTurva,
|
|
2046
|
+
colorGrayTurva: colorGrayTurva,
|
|
2047
|
+
colorDangerTurva: colorDangerTurva,
|
|
2048
|
+
colorWarningTurva: colorWarningTurva,
|
|
2049
|
+
colorData07: colorData07,
|
|
2050
|
+
colorData08: colorData08,
|
|
2051
|
+
colorData09: colorData09,
|
|
2052
|
+
colorData10: colorData10,
|
|
2053
|
+
colorData11: colorData11,
|
|
2054
|
+
colorData01: colorData01,
|
|
2055
|
+
colorData12: colorData12,
|
|
2056
|
+
colorData02: colorData02,
|
|
2057
|
+
colorData13: colorData13,
|
|
2058
|
+
colorData03: colorData03,
|
|
2059
|
+
colorData14: colorData14,
|
|
2060
|
+
colorData04: colorData04,
|
|
2061
|
+
colorData15: colorData15,
|
|
2062
|
+
colorData05: colorData05,
|
|
2063
|
+
colorData06: colorData06,
|
|
2064
|
+
fontWeightExtraBold: fontWeightExtraBold,
|
|
2065
|
+
letterSpacingHeading: letterSpacingHeading,
|
|
2066
|
+
fontFamilyHeadingTurva: fontFamilyHeadingTurva,
|
|
2067
|
+
fontFamilyTextTurva: fontFamilyTextTurva,
|
|
2068
|
+
fontFamilyHeading: fontFamilyHeading,
|
|
2069
|
+
fontFamilyText: fontFamilyText,
|
|
2070
|
+
fontWeightBold: fontWeightBold,
|
|
2071
|
+
fontWeightNormal: fontWeightNormal,
|
|
2072
|
+
fontWeightSemiBold: fontWeightSemiBold,
|
|
2073
|
+
fontSizeXxxxLarge: fontSizeXxxxLarge,
|
|
2074
|
+
fontSizeXxxLarge: fontSizeXxxLarge,
|
|
2075
|
+
fontSizeXxLarge: fontSizeXxLarge,
|
|
2076
|
+
fontSizeXLarge: fontSizeXLarge,
|
|
2077
|
+
fontSizeLarge: fontSizeLarge,
|
|
2078
|
+
fontSizeMedium: fontSizeMedium,
|
|
2079
|
+
fontSizeSmall: fontSizeSmall,
|
|
2080
|
+
fontSizeXSmall: fontSizeXSmall,
|
|
2081
|
+
radiusSharp: radiusSharp,
|
|
2082
|
+
radiusDefault: radiusDefault,
|
|
2083
|
+
radiusCircle: radiusCircle,
|
|
2084
|
+
radiusPill: radiusPill,
|
|
2085
|
+
shadowTooltipTurva: shadowTooltipTurva,
|
|
2086
|
+
shadowDefault: shadowDefault,
|
|
2087
|
+
shadowTooltip: shadowTooltip,
|
|
2088
|
+
shadowCardTurva: shadowCardTurva,
|
|
2089
|
+
shadowModal: shadowModal,
|
|
2090
|
+
shadowCard: shadowCard,
|
|
2091
|
+
shadowHoverTurva: shadowHoverTurva,
|
|
2092
|
+
shadowHover: shadowHover,
|
|
2093
|
+
shadowDefaultTurva: shadowDefaultTurva,
|
|
2094
|
+
spaceXxSmall: spaceXxSmall,
|
|
2095
|
+
spaceLarge: spaceLarge,
|
|
2096
|
+
spaceXSmall: spaceXSmall,
|
|
2097
|
+
spaceXxxSmall: spaceXxxSmall,
|
|
2098
|
+
spaceSmall: spaceSmall,
|
|
2099
|
+
spaceMedium: spaceMedium,
|
|
2100
|
+
spaceXxLarge: spaceXxLarge,
|
|
2101
|
+
spaceXxxxLarge: spaceXxxxLarge,
|
|
2102
|
+
spaceXxxxxLarge: spaceXxxxxLarge,
|
|
2103
|
+
spaceXxxLarge: spaceXxxLarge,
|
|
2104
|
+
spaceXLarge: spaceXLarge,
|
|
2105
|
+
sizeIconXxLarge: sizeIconXxLarge,
|
|
2106
|
+
sizeFormBorder: sizeFormBorder,
|
|
2107
|
+
sizeStepMedium: sizeStepMedium,
|
|
2108
|
+
sizeButtonMinWidth: sizeButtonMinWidth,
|
|
2109
|
+
sizeHeader: sizeHeader,
|
|
2110
|
+
sizeIconXxxLarge: sizeIconXxxLarge,
|
|
2111
|
+
sizeIconXLarge: sizeIconXLarge,
|
|
2112
|
+
sizeIconXxSmall: sizeIconXxSmall,
|
|
2113
|
+
sizeStepSmall: sizeStepSmall,
|
|
2114
|
+
sizeNavigation: sizeNavigation,
|
|
2115
|
+
sizeIconLarge: sizeIconLarge,
|
|
2116
|
+
sizeLayoutMaxWidth: sizeLayoutMaxWidth,
|
|
2117
|
+
sizeTappableSquare: sizeTappableSquare,
|
|
2118
|
+
sizeIconXSmall: sizeIconXSmall,
|
|
2119
|
+
sizeIconXxxSmall: sizeIconXxxSmall,
|
|
2120
|
+
sizeButtonBorder: sizeButtonBorder,
|
|
2121
|
+
sizeButtonTinyBorder: sizeButtonTinyBorder,
|
|
2122
|
+
sizeIconMedium: sizeIconMedium,
|
|
2123
|
+
sizeIconSmall: sizeIconSmall,
|
|
2124
|
+
opacity85: opacity85,
|
|
2125
|
+
opacity75: opacity75,
|
|
2126
|
+
opacity50: opacity50,
|
|
2127
|
+
opacity30: opacity30,
|
|
2128
|
+
zIndexDropdown: zIndexDropdown,
|
|
2129
|
+
zIndexSpinner: zIndexSpinner,
|
|
2130
|
+
zIndexDefault: zIndexDefault,
|
|
2131
|
+
zIndexToast: zIndexToast,
|
|
2132
|
+
zIndexPopup: zIndexPopup,
|
|
2133
|
+
zIndexModal: zIndexModal,
|
|
2134
|
+
zIndexSticky: zIndexSticky,
|
|
2135
|
+
zIndexMasked: zIndexMasked,
|
|
2136
|
+
zIndexDeep: zIndexDeep,
|
|
2137
|
+
zIndexOverlay: zIndexOverlay,
|
|
2138
|
+
zIndexMask: zIndexMask,
|
|
2139
|
+
zIndexHeader: zIndexHeader,
|
|
2140
|
+
lineHeightMedium: lineHeightMedium,
|
|
2141
|
+
lineHeightSmall: lineHeightSmall,
|
|
2142
|
+
lineHeightXSmall: lineHeightXSmall,
|
|
2143
|
+
transitionQuickly: transitionQuickly,
|
|
2144
|
+
transitionSlowly: transitionSlowly,
|
|
2145
|
+
mediaQueryXxSmall: mediaQueryXxSmall,
|
|
2146
|
+
mediaQueryXSmall: mediaQueryXSmall,
|
|
2147
|
+
mediaQuerySmall: mediaQuerySmall,
|
|
2148
|
+
mediaQueryMedium: mediaQueryMedium,
|
|
2149
|
+
mediaQueryLarge: mediaQueryLarge,
|
|
2150
|
+
mediaQueryXLarge: mediaQueryXLarge,
|
|
2151
|
+
mediaQueryXxLarge: mediaQueryXxLarge,
|
|
2152
|
+
mediaQueryXxxLarge: mediaQueryXxxLarge
|
|
2153
|
+
});
|
|
2154
|
+
|
|
2155
|
+
const allowedThemes = ["turva"];
|
|
2156
|
+
function isDashCase(str) {
|
|
2157
|
+
const dash = str.includes("-");
|
|
2158
|
+
const barredString = str.includes(" ") || str.includes("_");
|
|
2159
|
+
const barredStartingString = str.charAt(0) === "-";
|
|
2160
|
+
return dash && !barredString && !barredStartingString;
|
|
2161
|
+
}
|
|
2162
|
+
function capitalize(str = "") {
|
|
2163
|
+
return `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
2164
|
+
}
|
|
2165
|
+
function lowerCaseFirst(str = "") {
|
|
2166
|
+
return `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
2167
|
+
}
|
|
2168
|
+
function camelize(str = "") {
|
|
2169
|
+
const arr = str.split("-");
|
|
2170
|
+
//loop through each element of the array and capitalize the first letter.'
|
|
2171
|
+
arr.forEach((string, index) => {
|
|
2172
|
+
arr[index] = capitalize(string);
|
|
2173
|
+
});
|
|
2174
|
+
return arr.join("");
|
|
2175
|
+
}
|
|
2176
|
+
function getTheme(theme = "") {
|
|
2177
|
+
if (allowedThemes.includes(theme.toLowerCase())) {
|
|
2178
|
+
return theme.toLowerCase();
|
|
1876
2179
|
}
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
2180
|
+
return "";
|
|
2181
|
+
}
|
|
2182
|
+
function capitalizeFirstLetter(string) {
|
|
2183
|
+
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
2184
|
+
}
|
|
2185
|
+
function hasType(t, str = "") {
|
|
2186
|
+
return str.indexOf(capitalizeFirstLetter(t)) === 0 || str.indexOf(t) === 0;
|
|
2187
|
+
}
|
|
2188
|
+
function addPrefix(prefix, str = "") {
|
|
2189
|
+
if (str && !isDashCase(str) && !hasType(prefix, str)) {
|
|
2190
|
+
return `${prefix}${capitalize(str)}`;
|
|
1881
2191
|
}
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
const role = this.variation === "danger" || this.variation === "warning" ? "alert" : "status";
|
|
1889
|
-
return (h$1(Host, { tabindex: "0", class: { "duet-theme-turva": this.theme === "turva", "duet-alert-is-dismissed": this.isDismissed }, role: this.announcements ? role : undefined }, h$1("div", { class: {
|
|
1890
|
-
"duet-alert": true,
|
|
1891
|
-
"duet-alert-has-icon": !!this.icon,
|
|
1892
|
-
"duet-alert-is-dismissible": this.dismissible,
|
|
1893
|
-
"duet-p-0": this.padding === "none",
|
|
1894
|
-
"duet-m-0": this.margin === "none",
|
|
1895
|
-
[this.variation]: true,
|
|
1896
|
-
"duet-theme-turva": this.theme === "turva",
|
|
1897
|
-
} }, h$1("div", { class: "duet-alert-container" }, this.icon && (h$1("div", { class: "duet-alert-icon" }, h$1("duet-icon", { size: "auto", name: this.icon, color: "currentColor" }))), h$1("span", null, h$1("slot", null))), this.dismissible && (h$1("div", { class: "duet-alert-dismiss" }, h$1("duet-button", { variation: "plain", accessibleLabel: this.accessibleLabel, color: closeColor, iconSize: "medium", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: this.handleDismiss, fixed: true }))))));
|
|
2192
|
+
return str;
|
|
2193
|
+
}
|
|
2194
|
+
function addTheme(str, theme) {
|
|
2195
|
+
const hasTheme = getTheme(theme).length;
|
|
2196
|
+
if (hasTheme && str.indexOf(theme) === -1) {
|
|
2197
|
+
return `${str}${capitalize(theme)}`;
|
|
1898
2198
|
}
|
|
1899
|
-
|
|
1900
|
-
}
|
|
2199
|
+
return str;
|
|
2200
|
+
}
|
|
2201
|
+
function getColorByName(name, theme = "") {
|
|
2202
|
+
if (!name) {
|
|
2203
|
+
return undefined;
|
|
2204
|
+
}
|
|
2205
|
+
const defaultColor = convertToColorName(name);
|
|
2206
|
+
const themedColor = convertToColorName(name, theme);
|
|
2207
|
+
// lets just try to get the color first to save some cycles
|
|
2208
|
+
let resolvedToken = tokens$2[themedColor];
|
|
2209
|
+
if (!resolvedToken) {
|
|
2210
|
+
resolvedToken = tokens$2[defaultColor];
|
|
2211
|
+
}
|
|
2212
|
+
return resolvedToken;
|
|
2213
|
+
}
|
|
2214
|
+
function convertToColorName(name = "", theme = "") {
|
|
2215
|
+
let colorResolution = name;
|
|
2216
|
+
const dash = isDashCase(name);
|
|
2217
|
+
if (dash) {
|
|
2218
|
+
colorResolution = camelize(colorResolution);
|
|
2219
|
+
}
|
|
2220
|
+
colorResolution = addPrefix("color", colorResolution);
|
|
2221
|
+
colorResolution = addTheme(colorResolution, theme);
|
|
2222
|
+
// takes care of the case where colorPrimaryDark ends up with ColorPrimaryDark
|
|
2223
|
+
colorResolution = lowerCaseFirst(colorResolution);
|
|
2224
|
+
return colorResolution;
|
|
2225
|
+
}
|
|
1901
2226
|
|
|
1902
|
-
const
|
|
2227
|
+
const duetActionButtonCss = "*,*::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:inline-block;margin:0 auto}button.duet-action-button{white-space:nowrap}button.duet-action-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:auto !important;padding:0 !important;margin:0 0 0 8px !important;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;transition:background-color 300ms ease !important}.duet-theme-turva button.duet-action-button{color:#171c3a;background:#f5f5f7}button.duet-action-button duet-icon{display:block}@media (max-width: 35.9375em){button.duet-action-button{width:32px;height:32px}}button.duet-action-button:not(:disabled):hover{background:#e9ecee !important}.duet-theme-turva button.duet-action-button:not(:disabled):hover{background:#e9e9eb !important}button.duet-action-button:focus{outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva button.duet-action-button:focus{box-shadow:0 0 0 2px #171c3a !important}button.duet-action-button:active:focus{background:#dddfe1 !important;box-shadow:none}.duet-theme-turva button.duet-action-button:active:focus{background:#ddddde !important}button.duet-action-button:disabled{color:#909599;cursor:default;background:#f5f8fa;opacity:0.75}.duet-theme-turva button.duet-action-button:disabled{color:#747475;background:#f5f5f7}";
|
|
1903
2228
|
|
|
1904
|
-
let
|
|
2229
|
+
let DuetActionButton$1 = class extends H {
|
|
1905
2230
|
constructor() {
|
|
1906
2231
|
super();
|
|
1907
2232
|
this.__registerHost();
|
|
1908
2233
|
this.__attachShadow();
|
|
2234
|
+
this.duetActionEvent = createEvent$2(this, "duetActionEvent", 6);
|
|
2235
|
+
this.numbersStore = "";
|
|
1909
2236
|
/**
|
|
1910
|
-
* Theme of the
|
|
2237
|
+
* Theme of the pagination.
|
|
1911
2238
|
*/
|
|
1912
2239
|
this.theme = "";
|
|
1913
2240
|
/**
|
|
1914
|
-
*
|
|
2241
|
+
* Name of the icon to display
|
|
1915
2242
|
*/
|
|
1916
|
-
this.
|
|
2243
|
+
this.iconName = "action-arrow-left-small";
|
|
1917
2244
|
/**
|
|
1918
|
-
*
|
|
2245
|
+
* Color of the icon to display
|
|
1919
2246
|
*/
|
|
1920
|
-
this.
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
2247
|
+
this.iconColor = "currentColor";
|
|
2248
|
+
/**
|
|
2249
|
+
* Size of the icon
|
|
2250
|
+
*/
|
|
2251
|
+
this.iconSize = "xx-small";
|
|
2252
|
+
/**
|
|
2253
|
+
* Name of action being called
|
|
2254
|
+
*/
|
|
2255
|
+
this.actionName = "default-action";
|
|
2256
|
+
/**
|
|
2257
|
+
* Name of id of action that was called being called
|
|
2258
|
+
*/
|
|
2259
|
+
this.actionId = undefined;
|
|
2260
|
+
/**
|
|
2261
|
+
* Name of id of action that was called being called
|
|
2262
|
+
*/
|
|
2263
|
+
this.actionMeta = undefined;
|
|
2264
|
+
/**
|
|
2265
|
+
* Disables the button
|
|
2266
|
+
*/
|
|
2267
|
+
this.disabled = false;
|
|
2268
|
+
/**
|
|
2269
|
+
* Custom color to be used for the icon, as a design token entered in camelCase
|
|
2270
|
+
* or kebab-case. Example: "color-primary". This property can also be set to
|
|
2271
|
+
* "currentColor" which forces the icon to use the CSS text color of parent
|
|
2272
|
+
* element instead. Useful when you want to control the color in stylesheet
|
|
2273
|
+
* instead.
|
|
2274
|
+
*/
|
|
2275
|
+
this.color = "";
|
|
2276
|
+
/**
|
|
2277
|
+
* Custom color to be used for a background, as a design token entered
|
|
2278
|
+
* in camelCase or kebab-case. Using this option the icon will always be resized
|
|
2279
|
+
* to $size-icon-medium on mobile viewports. Example: "color-primary".
|
|
2280
|
+
*/
|
|
2281
|
+
this.background = "";
|
|
2282
|
+
/**
|
|
2283
|
+
* Described By id
|
|
2284
|
+
*/
|
|
2285
|
+
this.ariaDescribedBy = undefined;
|
|
2286
|
+
/**
|
|
2287
|
+
* Aria description the button
|
|
2288
|
+
*/
|
|
2289
|
+
this.ariaDescription = undefined;
|
|
2290
|
+
/**
|
|
2291
|
+
* Default pagination labels
|
|
2292
|
+
*/
|
|
2293
|
+
this.ariaLabelsDefaults = {
|
|
2294
|
+
en: {
|
|
2295
|
+
label: "Click to activate action",
|
|
2296
|
+
},
|
|
2297
|
+
fi: {
|
|
2298
|
+
label: "Klikkaa toiminnon aktivointiin",
|
|
2299
|
+
},
|
|
2300
|
+
sv: {
|
|
2301
|
+
label: "Klicka för att aktivera åtgärd",
|
|
2302
|
+
},
|
|
2303
|
+
};
|
|
2304
|
+
/**
|
|
2305
|
+
* Default pagination labels
|
|
2306
|
+
*/
|
|
2307
|
+
this.ariaLabels = getLocaleString(this.ariaLabelsDefaults);
|
|
2308
|
+
/**
|
|
2309
|
+
* Used to indicate which dom element with ID this element controls
|
|
2310
|
+
*/
|
|
2311
|
+
this.ariaControls = "";
|
|
2312
|
+
this.listId = createID("duet-action-button");
|
|
2313
|
+
/**
|
|
2314
|
+
* Private methods.
|
|
2315
|
+
*/
|
|
2316
|
+
//helper to emit relevant page events
|
|
2317
|
+
this.emitPageEvent = debounce(e => {
|
|
2318
|
+
this.duetActionEvent.emit({
|
|
2319
|
+
component: "duet-action-button",
|
|
2320
|
+
originalEvent: e,
|
|
2321
|
+
action: this.actionId,
|
|
2322
|
+
name: this.actionName,
|
|
2323
|
+
meta: this.actionMeta,
|
|
2324
|
+
id: this.listId,
|
|
2325
|
+
});
|
|
2326
|
+
});
|
|
2327
|
+
}
|
|
2328
|
+
//handle a11y keyboard navigation events
|
|
2329
|
+
async onKeyboardDown(e) {
|
|
2330
|
+
if (isKeyboardClick(e)) {
|
|
2331
|
+
this.emitPageEvent(e);
|
|
2332
|
+
}
|
|
2333
|
+
}
|
|
2334
|
+
//set update current when mouse click on page number
|
|
2335
|
+
async onMouseHandler(e) {
|
|
2336
|
+
e.preventDefault();
|
|
2337
|
+
this.duetActionEvent.emit({
|
|
2338
|
+
component: "duet-action-button",
|
|
2339
|
+
originalEvent: e,
|
|
2340
|
+
action: this.actionName,
|
|
2341
|
+
id: this.actionId,
|
|
2342
|
+
meta: this.actionMeta,
|
|
2343
|
+
});
|
|
2344
|
+
}
|
|
2345
|
+
/**
|
|
2346
|
+
* Component lifecycle events.
|
|
2347
|
+
*/
|
|
2348
|
+
componentWillLoad() {
|
|
2349
|
+
inheritGlobalTheme(this);
|
|
2350
|
+
}
|
|
2351
|
+
/**
|
|
2352
|
+
* render() function
|
|
2353
|
+
* Always the last one in the class.
|
|
2354
|
+
*/
|
|
2355
|
+
render() {
|
|
2356
|
+
const color = this.color === "currentColor" ? "currentColor" : getColorByName(this.color, this.theme);
|
|
2357
|
+
const styles = {
|
|
2358
|
+
color,
|
|
2359
|
+
background: getColorByName(this.background, this.theme),
|
|
2360
|
+
"border-color": getColorByName(this.iconColor, this.theme),
|
|
2361
|
+
"border-width": "1px",
|
|
2362
|
+
"border-style": "solid",
|
|
2363
|
+
};
|
|
2364
|
+
return (h$1(Host, { onKeyDown: e => this.onKeyboardDown(e) }, h$1("button", { part: "button", style: styles, disabled: this.disabled, id: this.listId, class: {
|
|
2365
|
+
"duet-action-button": true,
|
|
2366
|
+
"duet-action-button--disabled": this.disabled,
|
|
2367
|
+
[`duet-action-button--${this.theme}`]: this.theme !== "",
|
|
2368
|
+
}, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.ariaLabels.label, "aria-description": this.ariaDescription, "aria-describedby": this.ariaDescribedBy, "aria-controls": this.ariaControls }, h$1("duet-icon", { part: "icon", name: this.iconName, color: this.iconColor, margin: "none", size: this.iconSize }), h$1("duet-visually-hidden", null, h$1("slot", null)))));
|
|
2369
|
+
}
|
|
2370
|
+
get element() { return this; }
|
|
2371
|
+
static get style() { return duetActionButtonCss; }
|
|
2372
|
+
};
|
|
2373
|
+
|
|
2374
|
+
const duetAlertCss = "*,*::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%;max-height:999px;border-radius:4px;transition:opacity 300ms ease, visibility 300ms ease, transform 300ms ease, max-height 300ms ease}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}:host(.duet-alert-is-dismissed){max-height:0;visibility:hidden;opacity:0;transform:scale(0.98)}:host(.duet-alert-is-dismissed) .duet-alert{margin:0 !important}.duet-alert{margin-bottom:16px !important;position:relative;width:100%;padding:16px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:#00294d;background:#f2f8fb;border:1px solid #0077b3;border-radius:4px;transition:margin 100ms 300ms ease}.duet-alert.duet-p-0{padding:0 !important}.duet-alert.duet-m-0{margin:0 !important}.duet-alert.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;background:#f3f4f5;border-color:#171c3a}.duet-alert.warning{background:#fffbf4;border-color:#f7b228}.duet-alert.warning.duet-theme-turva{background:#fffaf3;border-color:#faa40f}.duet-alert.danger{background:#fdf4f7;border-color:#de2362}.duet-alert.danger.duet-theme-turva{background:#fdf4f3;border-color:#e02a0d}.duet-alert.success{background:#f2f9f7;border-color:#00875a}.duet-alert.success.duet-theme-turva{background:#f3f9f6;border-color:#08874e}.duet-alert-dismiss{position:absolute;top:2px;right:2px}.duet-alert-container{display:inline-flex;align-items:center;justify-content:center;width:100%;margin:0 auto !important}.duet-alert-container span{width:100%}.duet-alert-has-icon .duet-alert-container{margin-top:2px !important}.duet-alert-icon{display:inline-block;align-self:center;width:20px;min-width:20px;height:20px;margin:0 16px 0 0 !important}.duet-alert-icon duet-icon{width:20px;height:20px}.duet-alert-is-dismissible{padding:16px 48px 16px 16px;text-align:left}.duet-alert-is-dismissible .duet-alert-container{text-align:left}";
|
|
2375
|
+
|
|
2376
|
+
let DuetAlert$1 = class extends H {
|
|
2377
|
+
constructor() {
|
|
2378
|
+
super();
|
|
2379
|
+
this.__registerHost();
|
|
2380
|
+
this.__attachShadow();
|
|
2381
|
+
this.duetDismiss = createEvent$2(this, "duetDismiss", 7);
|
|
2382
|
+
/**
|
|
2383
|
+
* Theme of the card.
|
|
2384
|
+
*/
|
|
2385
|
+
this.theme = "";
|
|
2386
|
+
/**
|
|
2387
|
+
* State() variables
|
|
2388
|
+
* Inlined decorator, alphabetical order.
|
|
2389
|
+
*/
|
|
2390
|
+
this.isDismissed = false;
|
|
2391
|
+
/**
|
|
2392
|
+
* Property to change languageDefaults on the component.
|
|
2393
|
+
* normally you would handle these strings on an application level and override @accessibleLabel when needed
|
|
2394
|
+
* @default {fi: "Sulje viesti", sv: "Stäng meddelandet", en: "Close the message"}
|
|
2395
|
+
*/
|
|
2396
|
+
this.accessibleLabelDefaults = {
|
|
2397
|
+
fi: "Sulje viesti",
|
|
2398
|
+
sv: "Stäng meddelandet",
|
|
2399
|
+
en: "Close the message",
|
|
2400
|
+
};
|
|
2401
|
+
/**
|
|
2402
|
+
* Adds accessible label for the dismissible alert close button.
|
|
2403
|
+
* @default {fi: "Sulje viesti", sv: "Stäng meddelandet", en: "Close the message"}
|
|
2404
|
+
*/
|
|
2405
|
+
this.accessibleLabel = getLocaleString(this.accessibleLabelDefaults);
|
|
2406
|
+
/**
|
|
2407
|
+
* Enable or disabled announcements by assistive technologies.
|
|
2408
|
+
*/
|
|
2409
|
+
this.announcements = true;
|
|
2410
|
+
/**
|
|
2411
|
+
* Icon to display to the left of the content.
|
|
2412
|
+
*/
|
|
2413
|
+
this.icon = "";
|
|
2414
|
+
/**
|
|
2415
|
+
* Controls the margin of the component.
|
|
2416
|
+
*/
|
|
2417
|
+
this.margin = "auto";
|
|
2418
|
+
/**
|
|
2419
|
+
* Controls the padding of the component.
|
|
2420
|
+
*/
|
|
2421
|
+
this.padding = "auto";
|
|
2422
|
+
/**
|
|
2423
|
+
* Style variation of the alert.
|
|
2424
|
+
*/
|
|
2425
|
+
this.variation = "default";
|
|
2426
|
+
/**
|
|
2427
|
+
* Should a button be rendered to dismiss the alert?
|
|
2428
|
+
*/
|
|
2429
|
+
this.dismissible = false;
|
|
2430
|
+
this.handleDismiss = (ev) => {
|
|
2431
|
+
this.isDismissed = true;
|
|
2432
|
+
this.duetDismiss.emit({
|
|
2433
|
+
component: "duet-alert",
|
|
2434
|
+
originalEvent: ev,
|
|
2435
|
+
});
|
|
2436
|
+
};
|
|
2437
|
+
}
|
|
2438
|
+
/**
|
|
2439
|
+
* Component lifecycle events.
|
|
2440
|
+
*/
|
|
2441
|
+
componentWillLoad() {
|
|
2442
|
+
inheritGlobalTheme(this);
|
|
2443
|
+
}
|
|
2444
|
+
componentDidLoad() {
|
|
2445
|
+
if (this.autoDismiss) {
|
|
2446
|
+
this.timeoutID = setTimeout(() => this.handleDismiss(), this.autoDismiss);
|
|
2447
|
+
}
|
|
2448
|
+
}
|
|
2449
|
+
disconnectedCallback() {
|
|
2450
|
+
if (this.timeoutID) {
|
|
2451
|
+
clearTimeout(this.timeoutID);
|
|
2452
|
+
}
|
|
2453
|
+
}
|
|
2454
|
+
/**
|
|
2455
|
+
* render() function
|
|
2456
|
+
* Always the last one in the class.
|
|
2457
|
+
*/
|
|
2458
|
+
render() {
|
|
2459
|
+
const closeColor = this.theme === "turva" ? "secondary-turva" : "secondary";
|
|
2460
|
+
const role = this.variation === "danger" || this.variation === "warning" ? "alert" : "status";
|
|
2461
|
+
return (h$1(Host, { tabindex: "0", class: { "duet-theme-turva": this.theme === "turva", "duet-alert-is-dismissed": this.isDismissed }, role: this.announcements ? role : undefined }, h$1("div", { class: {
|
|
2462
|
+
"duet-alert": true,
|
|
2463
|
+
"duet-alert-has-icon": !!this.icon,
|
|
2464
|
+
"duet-alert-is-dismissible": this.dismissible,
|
|
2465
|
+
"duet-p-0": this.padding === "none",
|
|
2466
|
+
"duet-m-0": this.margin === "none",
|
|
2467
|
+
[this.variation]: true,
|
|
2468
|
+
"duet-theme-turva": this.theme === "turva",
|
|
2469
|
+
} }, h$1("div", { class: "duet-alert-container" }, this.icon && (h$1("div", { class: "duet-alert-icon" }, h$1("duet-icon", { size: "auto", name: this.icon, color: "currentColor" }))), h$1("span", null, h$1("slot", null))), this.dismissible && (h$1("div", { class: "duet-alert-dismiss" }, h$1("duet-button", { variation: "plain", accessibleLabel: this.accessibleLabel, color: closeColor, iconSize: "medium", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: this.handleDismiss, fixed: true }))))));
|
|
2470
|
+
}
|
|
2471
|
+
static get style() { return duetAlertCss; }
|
|
2472
|
+
};
|
|
2473
|
+
|
|
2474
|
+
const duetBadgeCss = "*,*::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;margin-right:4px !important;margin-bottom:2px !important;display:inline-block;width:auto;vertical-align:middle}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-badge{width:100%;padding:4.4444444444px 12px 5.4444444444px;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.75rem;font-style:normal;font-weight:600;line-height:1.25;color:#00294d;text-align:center;word-break:break-word;vertical-align:middle;background:#e6f1f7;border-radius:20rem}.duet-badge.duet-p-0{padding:0 !important}.duet-badge.duet-m-0{margin:0 !important}.duet-badge.duet-theme-turva{padding:5.4444444444px 12px 4.4444444444px;font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:700;color:#171c3a;background:#e8e8eb}.duet-badge.warning{background:#fef3df}.duet-badge.warning.duet-theme-turva{background:#fef1db}.duet-badge.danger{background:#fce9ef}.duet-badge.danger.duet-theme-turva{background:#fceae7}.duet-badge.success{background:#e6f3ef}.duet-badge.success.duet-theme-turva{background:#e6f3ed}";
|
|
2475
|
+
|
|
2476
|
+
let DuetBadge$1 = class extends H {
|
|
2477
|
+
constructor() {
|
|
2478
|
+
super();
|
|
2479
|
+
this.__registerHost();
|
|
2480
|
+
this.__attachShadow();
|
|
2481
|
+
/**
|
|
2482
|
+
* Theme of the badge.
|
|
2483
|
+
*/
|
|
2484
|
+
this.theme = "";
|
|
2485
|
+
/**
|
|
2486
|
+
* Style variation of the alert.
|
|
2487
|
+
*/
|
|
2488
|
+
this.variation = "default";
|
|
2489
|
+
/**
|
|
2490
|
+
* Controls the margin of the component.
|
|
2491
|
+
*/
|
|
2492
|
+
this.margin = "auto";
|
|
2493
|
+
}
|
|
2494
|
+
/**
|
|
2495
|
+
* Component lifecycle events.
|
|
2496
|
+
*/
|
|
2497
|
+
componentWillLoad() {
|
|
1926
2498
|
inheritGlobalTheme(this);
|
|
1927
2499
|
}
|
|
1928
2500
|
/**
|
|
@@ -1998,419 +2570,48 @@ let DuetBreadcrumbs$1 = class extends H {
|
|
|
1998
2570
|
*/
|
|
1999
2571
|
this.theme = "";
|
|
2000
2572
|
}
|
|
2001
|
-
/**
|
|
2002
|
-
* Component lifecycle events.
|
|
2003
|
-
*/
|
|
2004
|
-
componentWillLoad() {
|
|
2005
|
-
inheritGlobalTheme(this);
|
|
2006
|
-
this.children = Array.from(this.element.children);
|
|
2007
|
-
}
|
|
2008
|
-
connectedCallback() {
|
|
2009
|
-
Array.from(this.element.children).forEach(child => {
|
|
2010
|
-
const observer = new MutationObserver(() => (this.children = Array.from(this.element.children)));
|
|
2011
|
-
observer.observe(child, {
|
|
2012
|
-
childList: true,
|
|
2013
|
-
subtree: true,
|
|
2014
|
-
attributes: true,
|
|
2015
|
-
characterData: true,
|
|
2016
|
-
});
|
|
2017
|
-
this.observers = [...this.observers, observer];
|
|
2018
|
-
});
|
|
2019
|
-
}
|
|
2020
|
-
disconnectedCallback() {
|
|
2021
|
-
this.observers.forEach(observer => observer.disconnect());
|
|
2022
|
-
this.observers = [];
|
|
2023
|
-
}
|
|
2024
|
-
/**
|
|
2025
|
-
* render() function
|
|
2026
|
-
* Always the last one in the class.
|
|
2027
|
-
*/
|
|
2028
|
-
render() {
|
|
2029
|
-
return (h$1(Host, null, h$1("nav", { "aria-label": this.breadcrumbsAriaLabel, class: {
|
|
2030
|
-
"duet-breadcrumbs": true,
|
|
2031
|
-
"duet-theme-turva": this.theme === "turva",
|
|
2032
|
-
} }, h$1("ol", null, this.children.map((child, index) => (h$1(Fragment, null, index > 0 && (h$1("li", { "aria-hidden": "true" }, h$1("duet-icon", { class: "duet-breadrumbs-arrow", size: "auto", icon: actionArrowRightSmall.svg, margin: "none", color: "currentColor" }))), h$1("li", { innerHTML: child.outerHTML }), h$1("div", { class: "hide" }, h$1("slot", null)))))))));
|
|
2033
|
-
}
|
|
2034
|
-
get element() { return this; }
|
|
2035
|
-
static get style() { return duetBreadcrumbsCss; }
|
|
2036
|
-
};
|
|
2037
|
-
|
|
2038
|
-
const DuetStringsExternalDefaults = {
|
|
2039
|
-
fi: "Avautuu uuteen ikkunaan",
|
|
2040
|
-
sv: "Öppnas i nytt fönster",
|
|
2041
|
-
en: "Opens in a new window",
|
|
2042
|
-
};
|
|
2043
|
-
|
|
2044
|
-
const colorWarning = "rgb(247, 178, 40)";
|
|
2045
|
-
const colorGrayDarker = "rgb(101, 119, 135)";
|
|
2046
|
-
const colorGrayLighter = "rgb(245, 248, 250)";
|
|
2047
|
-
const colorCategoryHome = "rgb(211, 36, 131)";
|
|
2048
|
-
const colorPrimary = "rgb(0, 119, 179)";
|
|
2049
|
-
const colorCategoryVehicle = "rgb(54, 74, 129)";
|
|
2050
|
-
const colorSuccess = "rgb(0, 135, 90)";
|
|
2051
|
-
const colorCategoryFamily = "rgb(11, 114, 136)";
|
|
2052
|
-
const colorPrimaryLightest = "rgb(243, 249, 252)";
|
|
2053
|
-
const colorPrimaryLighter = "rgb(230, 242, 248)";
|
|
2054
|
-
const colorBrandBlue = "rgb(0, 161, 212)";
|
|
2055
|
-
const colorPrimaryDark = "rgb(0, 77, 128)";
|
|
2056
|
-
const colorGrayLightest = "rgb(255, 255, 255)";
|
|
2057
|
-
const colorCategoryFinance = "rgb(122, 1, 196)";
|
|
2058
|
-
const colorGrayDark = "rgb(144, 149, 153)";
|
|
2059
|
-
const colorGrayLight = "rgb(225, 227, 230)";
|
|
2060
|
-
const colorSecondary = "rgb(0, 41, 77)";
|
|
2061
|
-
const colorCategoryPet = "rgb(168, 1, 78)";
|
|
2062
|
-
const colorPrimaryLight = "rgb(205, 229, 241)";
|
|
2063
|
-
const colorCategoryTravel = "rgb(213, 66, 3)";
|
|
2064
|
-
const colorGray = "rgb(207, 210, 212)";
|
|
2065
|
-
const colorDanger = "rgb(222, 35, 98)";
|
|
2066
|
-
const colorGrayDarkerTurva = "rgb(68, 68, 69)";
|
|
2067
|
-
const colorGrayLighterTurva = "rgb(245, 245, 247)";
|
|
2068
|
-
const colorCategoryHomeTurva = "rgb(161, 10, 78)";
|
|
2069
|
-
const colorPrimaryTurva = "rgb(198, 12, 48)";
|
|
2070
|
-
const colorCategoryVehicleTurva = "rgb(23, 28, 58)";
|
|
2071
|
-
const colorSuccessTurva = "rgb(8, 135, 78)";
|
|
2072
|
-
const colorPrimaryLightestTurva = "rgb(252, 243, 244)";
|
|
2073
|
-
const colorCategoryFamilyTurva = "rgb(199, 12, 112)";
|
|
2074
|
-
const colorCategoryUnionTurva = "rgb(169, 69, 124)";
|
|
2075
|
-
const colorPrimaryLighterTurva = "rgb(249, 230, 234)";
|
|
2076
|
-
const colorPrimaryDarkTurva = "rgb(148, 9, 37)";
|
|
2077
|
-
const colorGrayLightestTurva = "rgb(255, 255, 255)";
|
|
2078
|
-
const colorGrayDarkTurva = "rgb(116, 116, 117)";
|
|
2079
|
-
const colorGrayLightTurva = "rgb(228, 228, 230)";
|
|
2080
|
-
const colorBrandGrayTurva = "rgb(178, 180, 179)";
|
|
2081
|
-
const colorSecondaryTurva = "rgb(23, 28, 58)";
|
|
2082
|
-
const colorPrimaryLightTurva = "rgb(244, 207, 214)";
|
|
2083
|
-
const colorCategoryTravelTurva = "rgb(9, 129, 148)";
|
|
2084
|
-
const colorGrayTurva = "rgb(207, 207, 209)";
|
|
2085
|
-
const colorDangerTurva = "rgb(224, 42, 13)";
|
|
2086
|
-
const colorWarningTurva = "rgb(250, 164, 15)";
|
|
2087
|
-
const colorData07 = "rgb(192, 101, 247)";
|
|
2088
|
-
const colorData08 = "rgb(0, 105, 191)";
|
|
2089
|
-
const colorData09 = "rgb(19, 120, 53)";
|
|
2090
|
-
const colorData10 = "rgb(179, 60, 24)";
|
|
2091
|
-
const colorData11 = "rgb(13, 163, 166)";
|
|
2092
|
-
const colorData01 = "rgb(122, 1, 196)";
|
|
2093
|
-
const colorData12 = "rgb(11, 114, 136)";
|
|
2094
|
-
const colorData02 = "rgb(0, 155, 204)";
|
|
2095
|
-
const colorData13 = "rgb(179, 137, 24)";
|
|
2096
|
-
const colorData03 = "rgb(27, 171, 75)";
|
|
2097
|
-
const colorData14 = "rgb(128, 98, 17)";
|
|
2098
|
-
const colorData04 = "rgb(255, 86, 34)";
|
|
2099
|
-
const colorData15 = "rgb(0, 41, 77)";
|
|
2100
|
-
const colorData05 = "rgb(245, 76, 154)";
|
|
2101
|
-
const colorData06 = "rgb(194, 21, 101)";
|
|
2102
|
-
const fontWeightExtraBold = "800";
|
|
2103
|
-
const letterSpacingHeading = "-0.01rem";
|
|
2104
|
-
const fontFamilyHeadingTurva = "'turva-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
2105
|
-
const fontFamilyTextTurva = "'turva-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
2106
|
-
const fontFamilyHeading = "'localtapiola-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
2107
|
-
const fontFamilyText = "'localtapiola-sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'";
|
|
2108
|
-
const fontWeightBold = "700";
|
|
2109
|
-
const fontWeightNormal = "400";
|
|
2110
|
-
const fontWeightSemiBold = "600";
|
|
2111
|
-
const fontSizeXxxxLarge = "4.5rem";
|
|
2112
|
-
const fontSizeXxxLarge = "3rem";
|
|
2113
|
-
const fontSizeXxLarge = "2.25rem";
|
|
2114
|
-
const fontSizeXLarge = "1.5rem";
|
|
2115
|
-
const fontSizeLarge = "1.25rem";
|
|
2116
|
-
const fontSizeMedium = "1rem";
|
|
2117
|
-
const fontSizeSmall = "0.875rem";
|
|
2118
|
-
const fontSizeXSmall = "0.75rem";
|
|
2119
|
-
const radiusSharp = "0";
|
|
2120
|
-
const radiusDefault = "4px";
|
|
2121
|
-
const radiusCircle = "50%";
|
|
2122
|
-
const radiusPill = "20rem";
|
|
2123
|
-
const shadowTooltipTurva = "0 2px 10px 0 rgba(117, 117, 117, 0.13)";
|
|
2124
|
-
const shadowDefault = "0 2px 6px 0 rgba(0, 41, 77, 0.07)";
|
|
2125
|
-
const shadowTooltip = "0 2px 10px 0 rgba(0, 41, 77, 0.07)";
|
|
2126
|
-
const shadowCardTurva = "0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)";
|
|
2127
|
-
const shadowModal = "0 2px 20px 0 rgba(0, 0, 0, 0.2)";
|
|
2128
|
-
const shadowCard = "0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)";
|
|
2129
|
-
const shadowHoverTurva = "0 2px 10px 0 rgba(117, 117, 117, 0.15)";
|
|
2130
|
-
const shadowHover = "0 2px 10px 0 rgba(0, 41, 77, 0.1)";
|
|
2131
|
-
const shadowDefaultTurva = "0 2px 6px 0 rgba(117, 117, 117, 0.13)";
|
|
2132
|
-
const spaceXxSmall = "4px";
|
|
2133
|
-
const spaceLarge = "20px";
|
|
2134
|
-
const spaceXSmall = "8px";
|
|
2135
|
-
const spaceXxxSmall = "2px";
|
|
2136
|
-
const spaceSmall = "12px";
|
|
2137
|
-
const spaceMedium = "16px";
|
|
2138
|
-
const spaceXxLarge = "36px";
|
|
2139
|
-
const spaceXxxxLarge = "72px";
|
|
2140
|
-
const spaceXxxxxLarge = "94px";
|
|
2141
|
-
const spaceXxxLarge = "48px";
|
|
2142
|
-
const spaceXLarge = "28px";
|
|
2143
|
-
const sizeIconXxLarge = "48px";
|
|
2144
|
-
const sizeFormBorder = "1px";
|
|
2145
|
-
const sizeStepMedium = "40px";
|
|
2146
|
-
const sizeButtonMinWidth = "8rem";
|
|
2147
|
-
const sizeHeader = "4rem";
|
|
2148
|
-
const sizeIconXxxLarge = "72px";
|
|
2149
|
-
const sizeIconXLarge = "36px";
|
|
2150
|
-
const sizeIconXxSmall = "10px";
|
|
2151
|
-
const sizeStepSmall = "30px";
|
|
2152
|
-
const sizeNavigation = "3rem";
|
|
2153
|
-
const sizeIconLarge = "30px";
|
|
2154
|
-
const sizeLayoutMaxWidth = "1110px";
|
|
2155
|
-
const sizeTappableSquare = "48px";
|
|
2156
|
-
const sizeIconXSmall = "16px";
|
|
2157
|
-
const sizeIconXxxSmall = "7px";
|
|
2158
|
-
const sizeButtonBorder = "2px";
|
|
2159
|
-
const sizeButtonTinyBorder = "1px";
|
|
2160
|
-
const sizeIconMedium = "24px";
|
|
2161
|
-
const sizeIconSmall = "20px";
|
|
2162
|
-
const opacity85 = "0.85";
|
|
2163
|
-
const opacity75 = "0.75";
|
|
2164
|
-
const opacity50 = "0.50";
|
|
2165
|
-
const opacity30 = "0.30";
|
|
2166
|
-
const zIndexDropdown = "600";
|
|
2167
|
-
const zIndexSpinner = "800";
|
|
2168
|
-
const zIndexDefault = "1";
|
|
2169
|
-
const zIndexToast = "500";
|
|
2170
|
-
const zIndexPopup = "950";
|
|
2171
|
-
const zIndexModal = "900";
|
|
2172
|
-
const zIndexSticky = "300";
|
|
2173
|
-
const zIndexMasked = "100";
|
|
2174
|
-
const zIndexDeep = "-999999";
|
|
2175
|
-
const zIndexOverlay = "700";
|
|
2176
|
-
const zIndexMask = "200";
|
|
2177
|
-
const zIndexHeader = "400";
|
|
2178
|
-
const lineHeightMedium = "1.5";
|
|
2179
|
-
const lineHeightSmall = "1.25";
|
|
2180
|
-
const lineHeightXSmall = "1.1";
|
|
2181
|
-
const transitionQuickly = "300ms ease";
|
|
2182
|
-
const transitionSlowly = "600ms ease";
|
|
2183
|
-
const mediaQueryXxSmall = "'(max-width: 22.5em)'";
|
|
2184
|
-
const mediaQueryXSmall = "'(max-width: 35.9375em)'";
|
|
2185
|
-
const mediaQuerySmall = "'(min-width: 36em)'";
|
|
2186
|
-
const mediaQueryMedium = "'(min-width: 48em)'";
|
|
2187
|
-
const mediaQueryLarge = "'(min-width: 62em)'";
|
|
2188
|
-
const mediaQueryXLarge = "'(min-width: 64.0625em)'";
|
|
2189
|
-
const mediaQueryXxLarge = "'(min-width: 76.25em)'";
|
|
2190
|
-
const mediaQueryXxxLarge = "'(min-width: 106.25em)'";
|
|
2191
|
-
|
|
2192
|
-
const tokens$2 = /*#__PURE__*/Object.freeze({
|
|
2193
|
-
__proto__: null,
|
|
2194
|
-
colorWarning: colorWarning,
|
|
2195
|
-
colorGrayDarker: colorGrayDarker,
|
|
2196
|
-
colorGrayLighter: colorGrayLighter,
|
|
2197
|
-
colorCategoryHome: colorCategoryHome,
|
|
2198
|
-
colorPrimary: colorPrimary,
|
|
2199
|
-
colorCategoryVehicle: colorCategoryVehicle,
|
|
2200
|
-
colorSuccess: colorSuccess,
|
|
2201
|
-
colorCategoryFamily: colorCategoryFamily,
|
|
2202
|
-
colorPrimaryLightest: colorPrimaryLightest,
|
|
2203
|
-
colorPrimaryLighter: colorPrimaryLighter,
|
|
2204
|
-
colorBrandBlue: colorBrandBlue,
|
|
2205
|
-
colorPrimaryDark: colorPrimaryDark,
|
|
2206
|
-
colorGrayLightest: colorGrayLightest,
|
|
2207
|
-
colorCategoryFinance: colorCategoryFinance,
|
|
2208
|
-
colorGrayDark: colorGrayDark,
|
|
2209
|
-
colorGrayLight: colorGrayLight,
|
|
2210
|
-
colorSecondary: colorSecondary,
|
|
2211
|
-
colorCategoryPet: colorCategoryPet,
|
|
2212
|
-
colorPrimaryLight: colorPrimaryLight,
|
|
2213
|
-
colorCategoryTravel: colorCategoryTravel,
|
|
2214
|
-
colorGray: colorGray,
|
|
2215
|
-
colorDanger: colorDanger,
|
|
2216
|
-
colorGrayDarkerTurva: colorGrayDarkerTurva,
|
|
2217
|
-
colorGrayLighterTurva: colorGrayLighterTurva,
|
|
2218
|
-
colorCategoryHomeTurva: colorCategoryHomeTurva,
|
|
2219
|
-
colorPrimaryTurva: colorPrimaryTurva,
|
|
2220
|
-
colorCategoryVehicleTurva: colorCategoryVehicleTurva,
|
|
2221
|
-
colorSuccessTurva: colorSuccessTurva,
|
|
2222
|
-
colorPrimaryLightestTurva: colorPrimaryLightestTurva,
|
|
2223
|
-
colorCategoryFamilyTurva: colorCategoryFamilyTurva,
|
|
2224
|
-
colorCategoryUnionTurva: colorCategoryUnionTurva,
|
|
2225
|
-
colorPrimaryLighterTurva: colorPrimaryLighterTurva,
|
|
2226
|
-
colorPrimaryDarkTurva: colorPrimaryDarkTurva,
|
|
2227
|
-
colorGrayLightestTurva: colorGrayLightestTurva,
|
|
2228
|
-
colorGrayDarkTurva: colorGrayDarkTurva,
|
|
2229
|
-
colorGrayLightTurva: colorGrayLightTurva,
|
|
2230
|
-
colorBrandGrayTurva: colorBrandGrayTurva,
|
|
2231
|
-
colorSecondaryTurva: colorSecondaryTurva,
|
|
2232
|
-
colorPrimaryLightTurva: colorPrimaryLightTurva,
|
|
2233
|
-
colorCategoryTravelTurva: colorCategoryTravelTurva,
|
|
2234
|
-
colorGrayTurva: colorGrayTurva,
|
|
2235
|
-
colorDangerTurva: colorDangerTurva,
|
|
2236
|
-
colorWarningTurva: colorWarningTurva,
|
|
2237
|
-
colorData07: colorData07,
|
|
2238
|
-
colorData08: colorData08,
|
|
2239
|
-
colorData09: colorData09,
|
|
2240
|
-
colorData10: colorData10,
|
|
2241
|
-
colorData11: colorData11,
|
|
2242
|
-
colorData01: colorData01,
|
|
2243
|
-
colorData12: colorData12,
|
|
2244
|
-
colorData02: colorData02,
|
|
2245
|
-
colorData13: colorData13,
|
|
2246
|
-
colorData03: colorData03,
|
|
2247
|
-
colorData14: colorData14,
|
|
2248
|
-
colorData04: colorData04,
|
|
2249
|
-
colorData15: colorData15,
|
|
2250
|
-
colorData05: colorData05,
|
|
2251
|
-
colorData06: colorData06,
|
|
2252
|
-
fontWeightExtraBold: fontWeightExtraBold,
|
|
2253
|
-
letterSpacingHeading: letterSpacingHeading,
|
|
2254
|
-
fontFamilyHeadingTurva: fontFamilyHeadingTurva,
|
|
2255
|
-
fontFamilyTextTurva: fontFamilyTextTurva,
|
|
2256
|
-
fontFamilyHeading: fontFamilyHeading,
|
|
2257
|
-
fontFamilyText: fontFamilyText,
|
|
2258
|
-
fontWeightBold: fontWeightBold,
|
|
2259
|
-
fontWeightNormal: fontWeightNormal,
|
|
2260
|
-
fontWeightSemiBold: fontWeightSemiBold,
|
|
2261
|
-
fontSizeXxxxLarge: fontSizeXxxxLarge,
|
|
2262
|
-
fontSizeXxxLarge: fontSizeXxxLarge,
|
|
2263
|
-
fontSizeXxLarge: fontSizeXxLarge,
|
|
2264
|
-
fontSizeXLarge: fontSizeXLarge,
|
|
2265
|
-
fontSizeLarge: fontSizeLarge,
|
|
2266
|
-
fontSizeMedium: fontSizeMedium,
|
|
2267
|
-
fontSizeSmall: fontSizeSmall,
|
|
2268
|
-
fontSizeXSmall: fontSizeXSmall,
|
|
2269
|
-
radiusSharp: radiusSharp,
|
|
2270
|
-
radiusDefault: radiusDefault,
|
|
2271
|
-
radiusCircle: radiusCircle,
|
|
2272
|
-
radiusPill: radiusPill,
|
|
2273
|
-
shadowTooltipTurva: shadowTooltipTurva,
|
|
2274
|
-
shadowDefault: shadowDefault,
|
|
2275
|
-
shadowTooltip: shadowTooltip,
|
|
2276
|
-
shadowCardTurva: shadowCardTurva,
|
|
2277
|
-
shadowModal: shadowModal,
|
|
2278
|
-
shadowCard: shadowCard,
|
|
2279
|
-
shadowHoverTurva: shadowHoverTurva,
|
|
2280
|
-
shadowHover: shadowHover,
|
|
2281
|
-
shadowDefaultTurva: shadowDefaultTurva,
|
|
2282
|
-
spaceXxSmall: spaceXxSmall,
|
|
2283
|
-
spaceLarge: spaceLarge,
|
|
2284
|
-
spaceXSmall: spaceXSmall,
|
|
2285
|
-
spaceXxxSmall: spaceXxxSmall,
|
|
2286
|
-
spaceSmall: spaceSmall,
|
|
2287
|
-
spaceMedium: spaceMedium,
|
|
2288
|
-
spaceXxLarge: spaceXxLarge,
|
|
2289
|
-
spaceXxxxLarge: spaceXxxxLarge,
|
|
2290
|
-
spaceXxxxxLarge: spaceXxxxxLarge,
|
|
2291
|
-
spaceXxxLarge: spaceXxxLarge,
|
|
2292
|
-
spaceXLarge: spaceXLarge,
|
|
2293
|
-
sizeIconXxLarge: sizeIconXxLarge,
|
|
2294
|
-
sizeFormBorder: sizeFormBorder,
|
|
2295
|
-
sizeStepMedium: sizeStepMedium,
|
|
2296
|
-
sizeButtonMinWidth: sizeButtonMinWidth,
|
|
2297
|
-
sizeHeader: sizeHeader,
|
|
2298
|
-
sizeIconXxxLarge: sizeIconXxxLarge,
|
|
2299
|
-
sizeIconXLarge: sizeIconXLarge,
|
|
2300
|
-
sizeIconXxSmall: sizeIconXxSmall,
|
|
2301
|
-
sizeStepSmall: sizeStepSmall,
|
|
2302
|
-
sizeNavigation: sizeNavigation,
|
|
2303
|
-
sizeIconLarge: sizeIconLarge,
|
|
2304
|
-
sizeLayoutMaxWidth: sizeLayoutMaxWidth,
|
|
2305
|
-
sizeTappableSquare: sizeTappableSquare,
|
|
2306
|
-
sizeIconXSmall: sizeIconXSmall,
|
|
2307
|
-
sizeIconXxxSmall: sizeIconXxxSmall,
|
|
2308
|
-
sizeButtonBorder: sizeButtonBorder,
|
|
2309
|
-
sizeButtonTinyBorder: sizeButtonTinyBorder,
|
|
2310
|
-
sizeIconMedium: sizeIconMedium,
|
|
2311
|
-
sizeIconSmall: sizeIconSmall,
|
|
2312
|
-
opacity85: opacity85,
|
|
2313
|
-
opacity75: opacity75,
|
|
2314
|
-
opacity50: opacity50,
|
|
2315
|
-
opacity30: opacity30,
|
|
2316
|
-
zIndexDropdown: zIndexDropdown,
|
|
2317
|
-
zIndexSpinner: zIndexSpinner,
|
|
2318
|
-
zIndexDefault: zIndexDefault,
|
|
2319
|
-
zIndexToast: zIndexToast,
|
|
2320
|
-
zIndexPopup: zIndexPopup,
|
|
2321
|
-
zIndexModal: zIndexModal,
|
|
2322
|
-
zIndexSticky: zIndexSticky,
|
|
2323
|
-
zIndexMasked: zIndexMasked,
|
|
2324
|
-
zIndexDeep: zIndexDeep,
|
|
2325
|
-
zIndexOverlay: zIndexOverlay,
|
|
2326
|
-
zIndexMask: zIndexMask,
|
|
2327
|
-
zIndexHeader: zIndexHeader,
|
|
2328
|
-
lineHeightMedium: lineHeightMedium,
|
|
2329
|
-
lineHeightSmall: lineHeightSmall,
|
|
2330
|
-
lineHeightXSmall: lineHeightXSmall,
|
|
2331
|
-
transitionQuickly: transitionQuickly,
|
|
2332
|
-
transitionSlowly: transitionSlowly,
|
|
2333
|
-
mediaQueryXxSmall: mediaQueryXxSmall,
|
|
2334
|
-
mediaQueryXSmall: mediaQueryXSmall,
|
|
2335
|
-
mediaQuerySmall: mediaQuerySmall,
|
|
2336
|
-
mediaQueryMedium: mediaQueryMedium,
|
|
2337
|
-
mediaQueryLarge: mediaQueryLarge,
|
|
2338
|
-
mediaQueryXLarge: mediaQueryXLarge,
|
|
2339
|
-
mediaQueryXxLarge: mediaQueryXxLarge,
|
|
2340
|
-
mediaQueryXxxLarge: mediaQueryXxxLarge
|
|
2341
|
-
});
|
|
2342
|
-
|
|
2343
|
-
const allowedThemes = ["turva"];
|
|
2344
|
-
function isDashCase(str) {
|
|
2345
|
-
const dash = str.includes("-");
|
|
2346
|
-
const barredString = str.includes(" ") || str.includes("_");
|
|
2347
|
-
const barredStartingString = str.charAt(0) === "-";
|
|
2348
|
-
return dash && !barredString && !barredStartingString;
|
|
2349
|
-
}
|
|
2350
|
-
function capitalize(str = "") {
|
|
2351
|
-
return `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
2352
|
-
}
|
|
2353
|
-
function lowerCaseFirst(str = "") {
|
|
2354
|
-
return `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
2355
|
-
}
|
|
2356
|
-
function camelize(str = "") {
|
|
2357
|
-
const arr = str.split("-");
|
|
2358
|
-
//loop through each element of the array and capitalize the first letter.'
|
|
2359
|
-
arr.forEach((string, index) => {
|
|
2360
|
-
arr[index] = capitalize(string);
|
|
2361
|
-
});
|
|
2362
|
-
return arr.join("");
|
|
2363
|
-
}
|
|
2364
|
-
function getTheme(theme = "") {
|
|
2365
|
-
if (allowedThemes.includes(theme.toLowerCase())) {
|
|
2366
|
-
return theme.toLowerCase();
|
|
2367
|
-
}
|
|
2368
|
-
return "";
|
|
2369
|
-
}
|
|
2370
|
-
function capitalizeFirstLetter(string) {
|
|
2371
|
-
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
2372
|
-
}
|
|
2373
|
-
function hasType(t, str = "") {
|
|
2374
|
-
return str.indexOf(capitalizeFirstLetter(t)) === 0 || str.indexOf(t) === 0;
|
|
2375
|
-
}
|
|
2376
|
-
function addPrefix(prefix, str = "") {
|
|
2377
|
-
if (str && !isDashCase(str) && !hasType(prefix, str)) {
|
|
2378
|
-
return `${prefix}${capitalize(str)}`;
|
|
2379
|
-
}
|
|
2380
|
-
return str;
|
|
2381
|
-
}
|
|
2382
|
-
function addTheme(str, theme) {
|
|
2383
|
-
const hasTheme = getTheme(theme).length;
|
|
2384
|
-
if (hasTheme && str.indexOf(theme) === -1) {
|
|
2385
|
-
return `${str}${capitalize(theme)}`;
|
|
2386
|
-
}
|
|
2387
|
-
return str;
|
|
2388
|
-
}
|
|
2389
|
-
function getColorByName(name, theme = "") {
|
|
2390
|
-
if (!name) {
|
|
2391
|
-
return undefined;
|
|
2573
|
+
/**
|
|
2574
|
+
* Component lifecycle events.
|
|
2575
|
+
*/
|
|
2576
|
+
componentWillLoad() {
|
|
2577
|
+
inheritGlobalTheme(this);
|
|
2578
|
+
this.children = Array.from(this.element.children);
|
|
2392
2579
|
}
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2580
|
+
connectedCallback() {
|
|
2581
|
+
Array.from(this.element.children).forEach(child => {
|
|
2582
|
+
const observer = new MutationObserver(() => (this.children = Array.from(this.element.children)));
|
|
2583
|
+
observer.observe(child, {
|
|
2584
|
+
childList: true,
|
|
2585
|
+
subtree: true,
|
|
2586
|
+
attributes: true,
|
|
2587
|
+
characterData: true,
|
|
2588
|
+
});
|
|
2589
|
+
this.observers = [...this.observers, observer];
|
|
2590
|
+
});
|
|
2399
2591
|
}
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
let colorResolution = name;
|
|
2404
|
-
const dash = isDashCase(name);
|
|
2405
|
-
if (dash) {
|
|
2406
|
-
colorResolution = camelize(colorResolution);
|
|
2592
|
+
disconnectedCallback() {
|
|
2593
|
+
this.observers.forEach(observer => observer.disconnect());
|
|
2594
|
+
this.observers = [];
|
|
2407
2595
|
}
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2596
|
+
/**
|
|
2597
|
+
* render() function
|
|
2598
|
+
* Always the last one in the class.
|
|
2599
|
+
*/
|
|
2600
|
+
render() {
|
|
2601
|
+
return (h$1(Host, null, h$1("nav", { "aria-label": this.breadcrumbsAriaLabel, class: {
|
|
2602
|
+
"duet-breadcrumbs": true,
|
|
2603
|
+
"duet-theme-turva": this.theme === "turva",
|
|
2604
|
+
} }, h$1("ol", null, this.children.map((child, index) => (h$1(Fragment, null, index > 0 && (h$1("li", { "aria-hidden": "true" }, h$1("duet-icon", { class: "duet-breadrumbs-arrow", size: "auto", icon: actionArrowRightSmall.svg, margin: "none", color: "currentColor" }))), h$1("li", { innerHTML: child.outerHTML }), h$1("div", { class: "hide" }, h$1("slot", null)))))))));
|
|
2605
|
+
}
|
|
2606
|
+
get element() { return this; }
|
|
2607
|
+
static get style() { return duetBreadcrumbsCss; }
|
|
2608
|
+
};
|
|
2609
|
+
|
|
2610
|
+
const DuetStringsExternalDefaults = {
|
|
2611
|
+
fi: "Avautuu uuteen ikkunaan",
|
|
2612
|
+
sv: "Öppnas i nytt fönster",
|
|
2613
|
+
en: "Opens in a new window",
|
|
2614
|
+
};
|
|
2414
2615
|
|
|
2415
2616
|
const duetButtonCss = "*,*::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;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host{width:100%}}:host(.duet-small){margin-right:2px !important;margin-bottom:8px !important}:host(.duet-small):last-child,:host(.duet-small):last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host(.duet-small){width:auto}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}:host(.duet-fixed){width:auto !important}:host(:last-child){margin-right:0 !important}.duet-button-container{position:relative;width:100%}.duet-button{padding:14px 27px 15px !important;-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:block;width:100%;min-width:8rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:#0077b3 !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:2px;border-radius:20rem;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, box-shadow 300ms ease}.duet-button.duet-p-0{padding:0 !important}.duet-button.duet-m-0{margin:0 !important}.duet-button.duet-button-text-center{text-align:center !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only){padding:9px 19px 10px !important;min-width:5.3333333333rem;font-size:0.875rem}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon{padding-left:48px !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon-right{padding-right:48px !important;padding-left:20px !important}.duet-theme-turva .duet-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#c60c30 !important}.duet-button .duet-button-contents{position:relative;display:inline-block;margin:0 auto;pointer-events:none}.duet-button.duet-no-wrap{white-space:nowrap}.duet-button.icon{padding-left:52px !important}.duet-button.icon-right{padding-right:52px !important;padding-left:28px !important}.duet-button svg{width:100%;min-width:100%;fill:currentColor}.duet-button .duet-button-icon{position:absolute;top:50%;left:-28px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin:0 !important;transform:translateY(-50%)}.duet-button .duet-button-icon duet-icon{width:16px;height:16px}.duet-button .duet-button-icon.right{right:-28px;left:auto}.duet-button .duet-button-icon.large{left:-32px;width:20px;height:20px}.duet-button .duet-button-icon.large duet-icon{width:20px;height:20px}.duet-button .duet-button-icon.large.right{right:-32px;left:auto}.duet-button .duet-button-icon.medium-small{left:-16px;width:10px;height:10px;padding-top:1px}.duet-button .duet-button-icon.medium-small duet-icon{width:10px;height:10px}.duet-button .duet-button-icon.medium-small.right{right:-16px;left:auto}.duet-button .duet-button-icon.small{left:-16px;width:7px;height:7px}.duet-button .duet-button-icon.small duet-icon{width:7px;height:7px}.duet-button .duet-button-icon.small.right{right:-16px;left:auto}.duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-button:active{opacity:0.75;transition:none}.duet-button.default{border-color:#e1e3e6}.duet-theme-turva .duet-button.default{color:#c60c30 !important;border-color:#e4e4e6}.duet-button.default:hover{border-color:#0077b3}.duet-theme-turva .duet-button.default:hover{border-color:#c60c30}.duet-button.default.duet-button-negative{background-color:white}.duet-theme-turva .duet-button.default.duet-button-negative{background-color:#e4e4e6 !important}.duet-button.default.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.default.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.primary{color:white !important;background:#0077b3;border-color:#0077b3}.duet-theme-turva .duet-button.primary{color:white !important;background:#c60c30;border-color:#c60c30}.duet-button.primary:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.primary:hover{background:#940925;border-color:#940925}.duet-button.primary:focus{outline:0;box-shadow:0 0 0 1px white, 0 0 0 4px rgba(0, 119, 179, 0.75)}.duet-theme-turva .duet-button.primary:focus{box-shadow:0 0 0 1px white, 0 0 0 4px rgba(23, 28, 58, 0.7)}.duet-button.secondary{color:#00294d !important;background:transparent;border-color:#00294d}.duet-theme-turva .duet-button.secondary{color:#171c3a !important;border-color:#171c3a}.duet-button.secondary:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.secondary.duet-button-negative{color:#e1e3e6 !important;border-color:white}.duet-theme-turva .duet-button.secondary.duet-button-negative{color:#e4e4e6 !important}.duet-button.secondary.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.negative{color:#00294d !important;background:white;border-color:white}.duet-theme-turva .duet-button.negative{color:#171c3a !important}.duet-button.negative:hover{color:white !important;background:transparent;border-color:white}.duet-button.negative:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-theme-turva .duet-button.negative:focus{box-shadow:0 0 0 1px #171c3a, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-button.destructive-primary{color:white !important;background:#de2362;border-color:#de2362}.duet-theme-turva .duet-button.destructive-primary{color:white !important;background:#e02a0d;border-color:#e02a0d}.duet-button.destructive-primary:hover{background:#b21c4e;border-color:#b21c4e;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.destructive-primary:hover{background:#b3220a}.duet-button.destructive,.duet-button.destructive-secondary{color:#de2362 !important;background:white;border-color:#de2362}.duet-theme-turva .duet-button.destructive,.duet-theme-turva .duet-button.destructive-secondary{color:#e02a0d !important;background:white;border-color:#e02a0d}.duet-button.destructive:hover,.duet-button.destructive-secondary:hover{color:white !important;background:#b21c4e;border-color:#b21c4e}.duet-theme-turva .duet-button.destructive:hover,.duet-theme-turva .duet-button.destructive-secondary:hover{color:white !important;background:#b3220a;border-color:#b3220a}.duet-button.plain{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}.duet-theme-turva .duet-button.plain{color:#c60c30 !important;background:transparent;border-color:transparent}.duet-button.plain.icon{padding-left:20px !important}.duet-button.plain.icon.icon-right{padding-right:20px !important;padding-left:0 !important}.duet-button.plain.icon.medium{padding-left:24px !important}.duet-button.plain.icon.medium.icon-right{padding-right:24px !important;padding-left:0 !important}.duet-button.plain.icon.large{padding-left:30px !important}.duet-button.plain.icon.large.icon-right{padding-right:30px !important;padding-left:0 !important}.duet-button.plain .duet-button-icon.left{left:-16.6666666667px !important}.duet-button.plain .duet-button-icon.left.medium{left:-24px !important}.duet-button.plain .duet-button-icon.left.large{left:-30px !important}.duet-button.plain .duet-button-icon.right{right:-16.6666666667px !important}.duet-button.plain .duet-button-icon.right.medium{right:-24px !important}.duet-button.plain .duet-button-icon.right.large{right:-30px !important}.duet-button.plain[disabled]{color:#657787 !important;background:transparent !important;border-color:transparent !important}.duet-theme-turva .duet-button.plain[disabled]{color:transparent !important;background:transparent !important;border-color:#e4e4e6 !important}.duet-button.plain:hover{color:#004d80 !important;background:transparent !important}.duet-theme-turva .duet-button.plain:hover{color:#940925 !important}.duet-button.plain.duet-button-negative{color:white !important}.duet-theme-turva .duet-button.plain.duet-button-negative{color:#e4e4e6 !important}.duet-button.plain.duet-button-negative:hover{color:#0077b3 !important}.duet-theme-turva .duet-button.plain.duet-button-negative:hover{color:#c60c30 !important}.duet-button.duet-button-icon-only{min-width:48px;min-height:48px;padding:0 !important}.duet-button.duet-button-icon-only .duet-button-contents{position:static}.duet-button.duet-button-icon-only .duet-button-icon.left.large,.duet-button.duet-button-icon-only .duet-button-icon.left.medium,.duet-button.duet-button-icon-only .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button[disabled],.duet-button[disabled]:hover,.duet-button.duet-button-negative[disabled],.duet-button.duet-button-negative[disabled]:hover{color:#657787 !important;background:#e1e3e6 !important;border-color:#e1e3e6 !important;box-shadow:none !important}.duet-theme-turva .duet-button[disabled],.duet-theme-turva .duet-button[disabled]:hover,.duet-theme-turva .duet-button.duet-button-negative [disabled],.duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:#747475 !important;background:#e4e4e6 !important;border-color:#e4e4e6 !important}.duet-button-is-loading.primary{color:white}.duet-button-is-loading.default{color:#0077b3}.duet-button-is-loading.default.duet-theme-turva{color:#c60c30}.duet-button-is-loading .duet-button-contents{visibility:hidden;opacity:0}";
|
|
2416
2617
|
|
|
@@ -2421,6 +2622,10 @@ let DuetButton$1 = class extends H {
|
|
|
2421
2622
|
this.__attachShadow();
|
|
2422
2623
|
this.duetFocus = createEvent$2(this, "duetFocus", 7);
|
|
2423
2624
|
this.duetBlur = createEvent$2(this, "duetBlur", 7);
|
|
2625
|
+
/**
|
|
2626
|
+
* Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button.
|
|
2627
|
+
*/
|
|
2628
|
+
this.accessiblePopup = "false";
|
|
2424
2629
|
/**
|
|
2425
2630
|
* Loading state of the button
|
|
2426
2631
|
*/
|
|
@@ -2641,7 +2846,7 @@ let DuetButton$1 = class extends H {
|
|
|
2641
2846
|
"duet-theme-turva": this.theme === "turva",
|
|
2642
2847
|
"duet-button-negative": this.negative || this.variation === "negative",
|
|
2643
2848
|
[this.variation]: true,
|
|
2644
|
-
} }, this.url ? (h$1("a", Object.assign({}, commonProps, { href: this.url, target: this.external ? "_blank" : "_self", rel: this.external ? "noopener" : undefined }), commonChildren, this.external && h$1("duet-visually-hidden", null, ", ", this.accessibleLabelExternal))) : (h$1("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined }), commonChildren)), this.loading && h$1("duet-spinner", { color: "currentColor" }))));
|
|
2849
|
+
} }, this.url ? (h$1("a", Object.assign({}, commonProps, { href: this.url, target: this.external ? "_blank" : "_self", rel: this.external ? "noopener" : undefined }), commonChildren, this.external && h$1("duet-visually-hidden", null, ", ", this.accessibleLabelExternal))) : (h$1("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }), commonChildren)), this.loading && h$1("duet-spinner", { color: "currentColor" }))));
|
|
2645
2850
|
}
|
|
2646
2851
|
get element() { return this; }
|
|
2647
2852
|
static get watchers() { return {
|
|
@@ -2701,28 +2906,6 @@ let DuetCaption$1 = class extends H {
|
|
|
2701
2906
|
|
|
2702
2907
|
var actionArrowUp={"title":"action-arrow-up","tags":"action arrow up caret","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M.75 17.939a.752.752 0 0 1-.53-1.281L10.94 5.94c.283-.284.659-.44 1.059-.44.401 0 .777.156 1.06.438l10.721 10.72a.752.752 0 0 1-.53 1.281.743.743 0 0 1-.53-.22L12 7 1.28 17.719a.743.743 0 0 1-.53.22z\"/></svg>"};
|
|
2703
2908
|
|
|
2704
|
-
function chr4() {
|
|
2705
|
-
return Math.random().toString(16).slice(-4);
|
|
2706
|
-
}
|
|
2707
|
-
function createID(prefix) {
|
|
2708
|
-
return `${prefix}-${chr4()}${chr4()}-${chr4()}-${chr4()}-${chr4()}-${chr4()}${chr4()}${chr4()}`;
|
|
2709
|
-
}
|
|
2710
|
-
|
|
2711
|
-
const isArrowLeftKey = (e) => e.keyCode === 37;
|
|
2712
|
-
const isArrowUpKey = (e) => e.keyCode === 38;
|
|
2713
|
-
const isArrowRightKey = (e) => e.keyCode === 39;
|
|
2714
|
-
const isArrowDownKey = (e) => e.keyCode === 40;
|
|
2715
|
-
const isArrowKey = (e) => isArrowDownKey(e) || isArrowRightKey(e) || isArrowUpKey(e) || isArrowLeftKey(e);
|
|
2716
|
-
const isEscapeKey = (e) => e.key === "Escape" || e.key === "Esc" || e.keyCode === 27;
|
|
2717
|
-
const isBackspaceKey = (e) => e.keyCode === 8;
|
|
2718
|
-
const isSpaceKey = (e) => e.key === "Space" || e.keyCode === 32;
|
|
2719
|
-
const isPlusKey = (e) => e.key === "+" || e.keyCode === 43;
|
|
2720
|
-
const isMinusKey = (e) => e.key === "-" || e.keyCode === 45;
|
|
2721
|
-
const isQuestionKey = (e) => e.key === "?";
|
|
2722
|
-
const isEnterKey = (e) => e.key === "Enter" || e.keyCode === 13;
|
|
2723
|
-
const isKeyboardClick = (e) => isEnterKey(e) || isSpaceKey(e);
|
|
2724
|
-
const isNumber = (e) => (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105);
|
|
2725
|
-
|
|
2726
2909
|
const duetCardCss = "*,*::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;margin-bottom:20px !important;display:flex;width:100%;vertical-align:top}:host(.duet-card-info){margin-bottom:16px !important}:host(.duet-m-0){margin:0 !important}.duet-card{padding:20px !important;position:relative;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:1rem;font-style:normal;font-weight:400;line-height:1.5;color:#00294d;text-decoration:none;border-radius:4px;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}.duet-card.duet-p-0{padding:0 !important}.duet-card.duet-m-0{margin:0 !important}.duet-card:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-card:focus,.duet-card:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 36em){.duet-card{padding:28px !important}}.duet-card.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a;box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07)}@media (min-width: 36em){.duet-card.x-small{padding:20px !important}}@media (min-width: 36em){.duet-card.medium{padding:28px !important}}@media (min-width: 48em){.duet-card.medium{padding:36px !important}}@media (min-width: 36em){.duet-card.large{padding:36px !important}}@media (min-width: 48em){.duet-card.large{padding:48px !important}}@media (min-width: 36em){.duet-card.x-large{padding:48px !important}}@media (min-width: 48em){.duet-card.x-large{padding:72px !important}}.duet-card.duet-card-collapsed{padding-bottom:0 !important}@media (min-width: 36em){.duet-card.duet-card-collapsed{padding-bottom:0 !important}}.duet-card.info{background:rgba(0, 80, 128, 0.04) !important;box-shadow:none}.duet-card.info.duet-theme-turva{background:rgba(23, 28, 58, 0.035) !important}.duet-card.plain{box-shadow:none}.duet-card.plain:not(.duet-card-has-bg){background:transparent !important}.duet-card-heading-grid{display:flex;flex-direction:row}.duet-card-icon{align-self:center}.duet-card-heading-text{flex:1;word-break:break-word}.duet-card-secondary-heading{font-size:1rem;font-weight:600;word-break:break-word}.duet-card-secondary-heading--inline{display:block;flex:1;align-self:flex-start;line-height:1.875;text-align:right}@media (max-width: 22.5em){.duet-card-secondary-heading--inline{display:none}}.duet-card-secondary-heading--new-line{display:none}@media (max-width: 22.5em){.duet-card-secondary-heading--new-line{display:block}}.duet-card-heading{position:relative;display:block;padding:16px 20px;margin:-20px -20px 20px;overflow:hidden;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:800;color:#00294d;border-bottom:1px solid #e1e3e6}@media (min-width: 36em){.duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}}.duet-card-heading[role=button]{-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:4px;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;appearance:none}.duet-card-heading[role=button]:focus{outline:0}:host(.user-is-tabbing) .duet-card-heading[role=button]:focus{border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-theme-turva .duet-card-heading[role=button]:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-card-collapsed .duet-card-heading{margin-bottom:0 !important;border-bottom:0 !important}.duet-theme-turva .duet-card-heading{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a;border-color:#e4e4e6}@media (min-width: 36em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}@media (min-width: 48em){.x-small .duet-card-heading{padding:10px 20px 11px !important;margin:-20px -20px 20px}}.medium .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.medium .duet-card-heading{padding:15px 28px 16px !important;margin:-28px -28px 20px}}@media (min-width: 48em){.medium .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}.large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.large .duet-card-heading{padding:19px 36px 20px !important;margin:-36px -36px 28px}}@media (min-width: 48em){.large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}.x-large .duet-card-heading{margin:-20px -20px 20px}@media (min-width: 36em){.x-large .duet-card-heading{padding:26px 48px 27px !important;margin:-48px -48px 36px}}@media (min-width: 48em){.x-large .duet-card-heading{padding:39px 72px 40px !important;margin:-72px -72px 48px}}.none .duet-card-heading{padding:0 0 20px !important;margin:0 0 20px}.duet-card-footer{padding:20px;margin:20px -20px -20px;font-size:0.875rem;line-height:1.25;background:#f5f8fa;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.duet-theme-turva .duet-card-footer{background:#f5f5f7}@media (min-width: 36em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 36em){.x-small .duet-card-footer{padding:15px 28px 16px !important;padding-left:20px !important;margin:20px -20px -20px}}@media (min-width: 36em){.medium .duet-card-footer{padding:15px 28px 16px !important;margin:20px -28px -28px}}@media (min-width: 48em){.medium .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 36em){.large .duet-card-footer{padding:19px 36px 20px !important;margin:28px -36px -36px}}@media (min-width: 48em){.large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 36em){.x-large .duet-card-footer{padding:26px 48px 27px !important;margin:36px -48px -48px}}@media (min-width: 48em){.x-large .duet-card-footer{padding:39px 72px 40px !important;margin:48px -72px -72px}}.none .duet-card-footer{padding:12px 0 !important;margin:20px 0 0}.duet-card-content{width:100%}.duet-card-collapsed .duet-card-content{display:none}.duet-card-caret{position:relative;top:6px;align-self:flex-start;transition:300ms ease}[aria-expanded=false] .duet-card-caret{transform:rotate(-180deg)}.duet-card-image-mask{position:relative;width:calc(100% + 40px);margin:-20px 0 20px -20px;overflow:hidden;border-top-left-radius:4px;border-top-right-radius:4px}@media (min-width: 36em){.small .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 36em){.medium .duet-card-image-mask{width:calc(100% + 56px);margin:-28px 0 28px -28px}}@media (min-width: 48em){.medium .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 28px -36px}}@media (min-width: 36em){.large .duet-card-image-mask{width:calc(100% + 72px);margin:-36px 0 36px -36px}}@media (min-width: 48em){.large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 36em){.x-large .duet-card-image-mask{width:calc(100% + 96px);margin:-48px 0 36px -48px}}@media (min-width: 48em){.x-large .duet-card-image-mask{width:calc(100% + 144px);margin:-72px 0 36px -72px}}.none .duet-card-image-mask{width:100%;margin:0 0 20px}.duet-card-image{display:block;width:102%;min-width:1px;max-width:102%;height:auto;min-height:1px;margin-left:-1%;transition:transform 300ms ease;transform:scale(1.0001)}a.duet-card{transition:box-shadow 300ms ease, background-position 300ms ease}a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(0, 41, 77, 0.1)}a.duet-card:hover .duet-card-image{transform:scale(1.024)}.duet-theme-turva a.duet-card:hover{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07), 0 2px 10px 0 rgba(117, 117, 117, 0.15)}a.duet-card:active{transition:none;transform:translateY(1px)}";
|
|
2727
2910
|
|
|
2728
2911
|
let DuetCard$1 = class extends H {
|
|
@@ -4607,7 +4790,7 @@ const DatePickerMonth = ({ selectedDate, focusedDate, labelledById, theme, langu
|
|
|
4607
4790
|
} }))))))))));
|
|
4608
4791
|
};
|
|
4609
4792
|
|
|
4610
|
-
const duetDatePickerCss = "*.sc-duet-date-picker,*.sc-duet-date-picker::after,*.sc-duet-date-picker::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-date-picker-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}.sc-duet-date-picker-h:last-child,.sc-duet-date-picker-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-date-picker-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-date-picker-h{width:100% !important}.duet-m-0.sc-duet-date-picker-h{margin:0 !important}.duet-date.sc-duet-date-picker{position:relative;width:100%}.duet-date.sc-duet-date-picker button.sc-duet-date-picker,.duet-date-dialog.sc-duet-date-picker button.sc-duet-date-picker{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button.sc-duet-date-picker{-webkit-user-select:none;user-select:none;position:absolute;top:1px;right:1px;z-index:200;display:flex;align-items:center;justify-content:center;width:48px;height:calc(100% - 2px);color:#00294d;cursor:pointer;background:transparent !important;border-left:1px solid #cfd2d4 !important;border-radius:0 4px 4px 0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker{color:#171c3a;border-color:#cfcfd1}.duet-date-button.sc-duet-date-picker::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(207, 210, 212, 0.2) 0%, rgba(207, 210, 212, 0.2) 1px, rgba(207, 210, 212, 0.1) 1px, rgba(207, 210, 212, 0) 100%)}.duet-date-button.sc-duet-date-picker:disabled{pointer-events:none;cursor:default;background:#f5f8fa !important;border:0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:disabled{background:#f5f5f7 !important}.duet-date-button.sc-duet-date-picker:disabled::before{display:none}.duet-date-button.sc-duet-date-picker:disabled duet-icon.sc-duet-date-picker{opacity:0.4}.duet-date-button.sc-duet-date-picker duet-icon.sc-duet-date-picker{transform:translateY(-1px)}.duet-date-button.sc-duet-date-picker:active duet-icon.sc-duet-date-picker{transform:translateY(0)}.duet-date-button.sc-duet-date-picker:focus{color:#0077b3;border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:focus{color:#171c3a;box-shadow:0 0 0 2px #171c3a}.duet-date-dialog.sc-duet-date-picker{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left.sc-duet-date-picker{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog.sc-duet-date-picker{position:fixed;top:0;right:0;bottom:0;background:rgba(0, 41, 77, 0.75);transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}.duet-date-dialog.duet-theme-turva.sc-duet-date-picker{background:rgba(23, 28, 58, 0.75)}}.duet-date-dialog.active.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error.sc-duet-date-picker{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper.sc-duet-date-picker{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{border-color:#e4e4e6}@media (max-width: 35.9375em){.duet-date-dialog-wrapper.sc-duet-date-picker{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table.sc-duet-date-picker{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:#00294d;text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-date-table.sc-duet-date-picker th.sc-duet-date-picker{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table.sc-duet-date-picker .duet-date-table-cell.sc-duet-date-picker{text-align:center}.duet-date-table-button.sc-duet-date-picker{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.25 !important;color:#00294d !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:#171c3a !important}.duet-date-table-button.sc-duet-date-picker:hover{background:#e6f2f8 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:hover{background:#f9e6ea !important}.duet-date-table-button.today.sc-duet-date-picker{z-index:200;color:#004d80 !important;background:#f3f9fc !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.today.sc-duet-date-picker{color:#940925 !important;background:#fcf3f4 !important;box-shadow:0 0 0 1px #c60c30 !important}.duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-date-table-button.sc-duet-date-picker:focus{color:white !important;background:#0077b3 !important;outline:0}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{color:white !important;background:#c60c30 !important}.duet-date-table-button.sc-duet-date-picker:active{z-index:200;color:white !important;background:#0077b3 !important;box-shadow:0 0 5px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:active{color:white !important;background:#c60c30 !important;box-shadow:0 0 5px #c60c30 !important}.duet-date-table-button.sc-duet-date-picker:focus{z-index:200;box-shadow:0 0 5px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{box-shadow:0 0 5px #c60c30 !important}.duet-date-table-button.disabled.sc-duet-date-picker{color:#909599 !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.disabled.sc-duet-date-picker{color:#747475 !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside.sc-duet-date-picker{color:#909599 !important;pointer-events:none;cursor:default;background:#f5f8fa !important;box-shadow:none;opacity:0.75}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.outside.sc-duet-date-picker{color:#747475;background:#f5f5f7;box-shadow:none}.duet-date-dialog-header.sc-duet-date-picker{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons.sc-duet-date-picker{white-space:nowrap}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:auto !important;padding:0 !important;margin:0 0 0 8px !important;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;transition:background-color 300ms ease !important}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker{color:#171c3a;background:#f5f5f7}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker duet-icon.sc-duet-date-picker{display:block}@media (max-width: 35.9375em){.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker{width:40px;height:40px}}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:not(:disabled):hover{background:#e9ecee !important}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:not(:disabled):hover{background:#e9e9eb !important}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:focus{outline:0;box-shadow:0 0 0 2px #0077b3}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:focus{box-shadow:0 0 0 2px #171c3a}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:active:focus{background:#dddfe1;box-shadow:none}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:active:focus{background:#ddddde}.duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:disabled{color:#909599;cursor:default;background:#f5f8fa;opacity:0.75}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-buttons.sc-duet-date-picker button.sc-duet-date-picker:disabled{color:#747475;background:#f5f5f7}.duet-date-dialog-select.sc-duet-date-picker{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:#00294d;pointer-events:none;border-radius:4px}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-date-dialog-select.sc-duet-date-picker span.sc-duet-date-picker{margin-right:4px}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #0077b3}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #171c3a}.duet-date-dialog-mobile-header.sc-duet-date-picker{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #cfd2d4}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-mobile-header.sc-duet-date-picker{border-color:#cfcfd1}.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:none}}.duet-date-picker-close.sc-duet-date-picker{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:#00294d !important;cursor:pointer;background:#f5f8fa !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker{opacity:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker{background:#f5f5f7 !important}.duet-date-picker-close.sc-duet-date-picker:hover{background:#f5f8fa !important}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:hover{background:#f5f5f7 !important}.duet-date-picker-close.sc-duet-date-picker:focus{outline:none;box-shadow:0 0 0 2px #0077b3}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker:focus{opacity:1}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:focus{box-shadow:0 0 0 2px #171c3a}";
|
|
4793
|
+
const duetDatePickerCss = "*.sc-duet-date-picker,*.sc-duet-date-picker::after,*.sc-duet-date-picker::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-date-picker-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}.sc-duet-date-picker-h:last-child,.sc-duet-date-picker-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-date-picker-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-date-picker-h{width:100% !important}.duet-m-0.sc-duet-date-picker-h{margin:0 !important}.duet-date.sc-duet-date-picker{position:relative;width:100%}.duet-date.sc-duet-date-picker button.sc-duet-date-picker,.duet-date-dialog.sc-duet-date-picker button.sc-duet-date-picker{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button.sc-duet-date-picker{-webkit-user-select:none;user-select:none;position:absolute;top:1px;right:1px;z-index:200;display:flex;align-items:center;justify-content:center;width:48px;height:calc(100% - 2px);color:#00294d;cursor:pointer;background:transparent !important;border-left:1px solid #cfd2d4 !important;border-radius:0 4px 4px 0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker{color:#171c3a;border-color:#cfcfd1}.duet-date-button.sc-duet-date-picker::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(207, 210, 212, 0.2) 0%, rgba(207, 210, 212, 0.2) 1px, rgba(207, 210, 212, 0.1) 1px, rgba(207, 210, 212, 0) 100%)}.duet-date-button.sc-duet-date-picker:disabled{pointer-events:none;cursor:default;background:#f5f8fa !important;border:0 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:disabled{background:#f5f5f7 !important}.duet-date-button.sc-duet-date-picker:disabled::before{display:none}.duet-date-button.sc-duet-date-picker:disabled duet-icon.sc-duet-date-picker{opacity:0.4}.duet-date-button.sc-duet-date-picker duet-icon.sc-duet-date-picker{transform:translateY(-1px)}.duet-date-button.sc-duet-date-picker:active duet-icon.sc-duet-date-picker{transform:translateY(0)}.duet-date-button.sc-duet-date-picker:focus{color:#0077b3;border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3}.duet-theme-turva.sc-duet-date-picker .duet-date-button.sc-duet-date-picker:focus{color:#171c3a;box-shadow:0 0 0 2px #171c3a}.duet-date-dialog.sc-duet-date-picker{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left.sc-duet-date-picker{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog.sc-duet-date-picker{position:fixed;top:0;right:0;bottom:0;background:rgba(0, 41, 77, 0.75);transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}.duet-date-dialog.duet-theme-turva.sc-duet-date-picker{background:rgba(23, 28, 58, 0.75)}}.duet-date-dialog.active.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error.sc-duet-date-picker{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper.sc-duet-date-picker{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{border-color:#e4e4e6}@media (max-width: 35.9375em){.duet-date-dialog-wrapper.sc-duet-date-picker{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active.sc-duet-date-picker .duet-date-dialog-wrapper.sc-duet-date-picker{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table.sc-duet-date-picker{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:#00294d;text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-date-table.sc-duet-date-picker th.sc-duet-date-picker{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table.sc-duet-date-picker .duet-date-table-cell.sc-duet-date-picker{text-align:center}.duet-date-table-button.sc-duet-date-picker{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.25 !important;color:#00294d !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:#171c3a !important}.duet-date-table-button.sc-duet-date-picker:hover{background:#e6f2f8 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:hover{background:#f9e6ea !important}.duet-date-table-button.today.sc-duet-date-picker{z-index:200;color:#004d80 !important;background:#f3f9fc !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.today.sc-duet-date-picker{color:#940925 !important;background:#fcf3f4 !important;box-shadow:0 0 0 1px #c60c30 !important}.duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-date-table-button.sc-duet-date-picker:focus{color:white !important;background:#0077b3 !important;outline:0}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button[aria-pressed=true].sc-duet-date-picker,.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{color:white !important;background:#c60c30 !important}.duet-date-table-button.sc-duet-date-picker:active{z-index:200;color:white !important;background:#0077b3 !important;box-shadow:0 0 5px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:active{color:white !important;background:#c60c30 !important;box-shadow:0 0 5px #c60c30 !important}.duet-date-table-button.sc-duet-date-picker:focus{z-index:200;box-shadow:0 0 5px #0077b3 !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.sc-duet-date-picker:focus{box-shadow:0 0 5px #c60c30 !important}.duet-date-table-button.disabled.sc-duet-date-picker{color:#909599 !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.disabled.sc-duet-date-picker{color:#747475 !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside.sc-duet-date-picker{color:#909599 !important;pointer-events:none;cursor:default;background:#f5f8fa !important;box-shadow:none;opacity:0.75}.duet-theme-turva.sc-duet-date-picker .duet-date-table-button.outside.sc-duet-date-picker{color:#747475;background:#f5f5f7;box-shadow:none}.duet-date-dialog-header.sc-duet-date-picker{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons.sc-duet-date-picker{white-space:nowrap}.duet-date-dialog-buttons.sc-duet-date-picker .sc-duet-date-picker::part(button){border:0}.duet-date-dialog-select.sc-duet-date-picker{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:#00294d;pointer-events:none;border-radius:4px}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker .duet-date-dialog-select-label.sc-duet-date-picker{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-date-dialog-select.sc-duet-date-picker span.sc-duet-date-picker{margin-right:4px}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #0077b3}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-select.sc-duet-date-picker select.sc-duet-date-picker:focus+.duet-date-dialog-select-label.sc-duet-date-picker{box-shadow:0 0 0 2px #171c3a}.duet-date-dialog-mobile-header.sc-duet-date-picker{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #cfd2d4}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-dialog-mobile-header.sc-duet-date-picker{border-color:#cfcfd1}.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header.sc-duet-date-picker duet-label.sc-duet-date-picker{display:none}}.duet-date-picker-close.sc-duet-date-picker{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:#00294d !important;cursor:pointer;background:#f5f8fa !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker{opacity:0}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker{background:#f5f5f7 !important}.duet-date-picker-close.sc-duet-date-picker:hover{background:#f5f8fa !important}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:hover{background:#f5f5f7 !important}.duet-date-picker-close.sc-duet-date-picker:focus{outline:none;box-shadow:0 0 0 2px #0077b3}@media (min-width: 36em){.duet-date-picker-close.sc-duet-date-picker:focus{opacity:1}}.duet-theme-turva.sc-duet-date-picker .duet-date-picker-close.sc-duet-date-picker:focus{box-shadow:0 0 0 2px #171c3a}";
|
|
4611
4794
|
|
|
4612
4795
|
let DuetDatePicker$1 = class extends H {
|
|
4613
4796
|
constructor() {
|
|
@@ -5003,7 +5186,7 @@ let DuetDatePicker$1 = class extends H {
|
|
|
5003
5186
|
left: this.direction === "left",
|
|
5004
5187
|
error: !!this.error,
|
|
5005
5188
|
active: this.open,
|
|
5006
|
-
}, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h$1(FocusGuard, { moveFocusTo: this.focusedDayNode }), h$1("div", { class: "duet-date-dialog-wrapper", onKeyDown: this.handleEscKey, ref: element => (this.dialogWrapperNode = element) }, h$1("duet-visually-hidden", { "aria-live": "polite" }, text.keyboardInstruction), h$1("div", { class: "duet-date-dialog-mobile-header" }, h$1("duet-label", { margin: "none" }, this.label), h$1("button", { class: "duet-date-picker-close", ref: element => (this.closeButtonNode = element), onClick: () => this.hide(), type: "button" }, h$1("duet-icon", { name: "navigation-close-small", margin: "none", color: "currentColor", size: "xx-small" }), h$1("duet-visually-hidden", null, text.closeLabel))), h$1("div", { class: "duet-date-dialog-header" }, h$1("div", { class: "duet-date-dialog-dropdowns" }, h$1("duet-visually-hidden", null, h$1("h2", { id: this.dialogLabelId, "aria-live": "polite", "aria-atomic": "true" }, text.monthLabels[focusedMonth], " ", this.focusedDay.getFullYear())), h$1("duet-visually-hidden", null, h$1("label", { htmlFor: this.monthSelectId }, text.monthSelectLabel)), h$1("div", { class: "duet-date-dialog-select" }, h$1("select", { id: this.monthSelectId, class: "duet-date-month-select", ref: element => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, text.monthLabels.map((month, i) => (h$1("option", { key: month, value: i, selected: i === focusedMonth, disabled: !inRange(new Date(focusedYear, i, 1), minDate ? startOfMonth(minDate) : null, maxDate ? endOfMonth(maxDate) : null) }, month)))), h$1("div", { class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h$1("span", null, text.monthLabelsShort[focusedMonth]), h$1("duet-icon", { name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" }))), h$1("duet-visually-hidden", null, h$1("label", { htmlFor: this.yearSelectId }, text.yearSelectLabel)), h$1("div", { class: "duet-date-dialog-select" }, h$1("select", { id: this.yearSelectId, class: "duet-date-year-select", onChange: this.handleYearSelect }, range(minYear, maxYear).map(year => (h$1("option", { key: year, selected: year === focusedYear }, year)))), h$1("div", { class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h$1("span", null, this.focusedDay.getFullYear()), h$1("duet-icon", { name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))), h$1("div", { class: "duet-date-dialog-buttons" }, h$1("button", { class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled,
|
|
5189
|
+
}, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h$1(FocusGuard, { moveFocusTo: this.focusedDayNode }), h$1("div", { class: "duet-date-dialog-wrapper", onKeyDown: this.handleEscKey, ref: element => (this.dialogWrapperNode = element) }, h$1("duet-visually-hidden", { "aria-live": "polite" }, text.keyboardInstruction), h$1("div", { class: "duet-date-dialog-mobile-header" }, h$1("duet-label", { margin: "none" }, this.label), h$1("button", { class: "duet-date-picker-close", ref: element => (this.closeButtonNode = element), onClick: () => this.hide(), type: "button" }, h$1("duet-icon", { name: "navigation-close-small", margin: "none", color: "currentColor", size: "xx-small" }), h$1("duet-visually-hidden", null, text.closeLabel))), h$1("div", { class: "duet-date-dialog-header" }, h$1("div", { class: "duet-date-dialog-dropdowns" }, h$1("duet-visually-hidden", null, h$1("h2", { id: this.dialogLabelId, "aria-live": "polite", "aria-atomic": "true" }, text.monthLabels[focusedMonth], " ", this.focusedDay.getFullYear())), h$1("duet-visually-hidden", null, h$1("label", { htmlFor: this.monthSelectId }, text.monthSelectLabel)), h$1("div", { class: "duet-date-dialog-select" }, h$1("select", { id: this.monthSelectId, class: "duet-date-month-select", ref: element => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, text.monthLabels.map((month, i) => (h$1("option", { key: month, value: i, selected: i === focusedMonth, disabled: !inRange(new Date(focusedYear, i, 1), minDate ? startOfMonth(minDate) : null, maxDate ? endOfMonth(maxDate) : null) }, month)))), h$1("div", { class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h$1("span", null, text.monthLabelsShort[focusedMonth]), h$1("duet-icon", { name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" }))), h$1("duet-visually-hidden", null, h$1("label", { htmlFor: this.yearSelectId }, text.yearSelectLabel)), h$1("div", { class: "duet-date-dialog-select" }, h$1("select", { id: this.yearSelectId, class: "duet-date-year-select", onChange: this.handleYearSelect }, range(minYear, maxYear).map(year => (h$1("option", { key: year, selected: year === focusedYear }, year)))), h$1("div", { class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h$1("span", null, this.focusedDay.getFullYear()), h$1("duet-icon", { name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))), h$1("div", { class: "duet-date-dialog-buttons" }, h$1("duet-action-button", { class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, "icon-name": "action-arrow-left-small" }, text.prevMonthLabel), h$1("duet-action-button", { class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, "icon-name": "action-arrow-right-small" }, text.nextMonthLabel))), h$1(DatePickerMonth, { selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, language: this.language, theme: this.theme, min: minDate, max: maxDate, focusedDayRef: element => (this.focusedDayNode = element), onFocusEnter: this.enableActiveFocus, onFocusExit: this.disableActiveFocus })), h$1(FocusGuard, { moveFocusTo: this.closeButtonNode }))));
|
|
5007
5190
|
}
|
|
5008
5191
|
get element() { return this; }
|
|
5009
5192
|
static get watchers() { return {
|
|
@@ -5053,370 +5236,217 @@ let DuetDivider$1 = class extends H {
|
|
|
5053
5236
|
static get style() { return duetDividerCss; }
|
|
5054
5237
|
};
|
|
5055
5238
|
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
-
|
|
5059
|
-
|
|
5060
|
-
|
|
5061
|
-
|
|
5062
|
-
|
|
5063
|
-
|
|
5239
|
+
//simple functional component that renders the data in the table
|
|
5240
|
+
const TableData = ({ data, groupId, alignment }, _children) => {
|
|
5241
|
+
const classNames = `duet-editable-table duet-editable-table-content-${groupId}`;
|
|
5242
|
+
if (typeof data === "string") {
|
|
5243
|
+
return h("td", { innerHTML: data, class: classNames, part: `${groupId}content`, style: { verticalAlign: alignment } });
|
|
5244
|
+
}
|
|
5245
|
+
else {
|
|
5246
|
+
return (h("td", { class: classNames, part: `${groupId}content`, style: { verticalAlign: alignment } }, data));
|
|
5247
|
+
}
|
|
5064
5248
|
};
|
|
5065
5249
|
|
|
5066
|
-
|
|
5067
|
-
* Produces a function which uses template strings to do simple interpolation from objects.
|
|
5068
|
-
*
|
|
5069
|
-
* Usage:
|
|
5070
|
-
* var makeMeKing = generateTemplateFn('${name} is now the king of ${country}!');
|
|
5071
|
-
*
|
|
5072
|
-
* console.log(makeMeKing({ name: 'Bryan', country: 'Scotland'}));
|
|
5073
|
-
* // Logs 'Bryan is now the king of Scotland!'
|
|
5074
|
-
*/
|
|
5075
|
-
const generateTemplateFn = (function () {
|
|
5076
|
-
const cache = {};
|
|
5077
|
-
function generateTemplate(template) {
|
|
5078
|
-
if (typeof template !== "string") {
|
|
5079
|
-
template = template.outerHTML;
|
|
5080
|
-
}
|
|
5081
|
-
let fn = cache[template];
|
|
5082
|
-
if (!fn) {
|
|
5083
|
-
// Replace ${expressions} (etc) with ${map.expressions}.
|
|
5084
|
-
const sanitized = template
|
|
5085
|
-
.replace(/\$\{([\s]*[^;\s\{]+[\s]*)\}/g, function (_, match) {
|
|
5086
|
-
return `\$\{map.${match.trim()}\}`;
|
|
5087
|
-
})
|
|
5088
|
-
// Afterwards, replace anything that's not ${map.expressions}' (etc) with a blank string.
|
|
5089
|
-
.replace(/(\$\{(?!map\.)[^}]+\})/g, "");
|
|
5090
|
-
fn = Function("map", `return \`${sanitized}\``);
|
|
5091
|
-
}
|
|
5092
|
-
return fn;
|
|
5093
|
-
}
|
|
5094
|
-
return generateTemplate;
|
|
5095
|
-
})();
|
|
5096
|
-
|
|
5097
|
-
const duetEditableTableCss = "duet-editable-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-header tr .duet-editable-table-header-hidden{padding:0 !important;font-size:0;border-bottom:0}";
|
|
5250
|
+
const duetEditableTableCss = ".sc-duet-editable-table-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-actions-menu.sc-duet-editable-table{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button.sc-duet-editable-table{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon.sc-duet-editable-table .duet-icon.sc-duet-editable-table{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row.sc-duet-editable-table .duet-text-right.sc-duet-editable-table{text-align:right}.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";
|
|
5098
5251
|
|
|
5099
5252
|
let DuetEditableTable$1 = class extends H {
|
|
5100
5253
|
constructor() {
|
|
5101
5254
|
super();
|
|
5102
5255
|
this.__registerHost();
|
|
5103
|
-
this.
|
|
5104
|
-
this.
|
|
5105
|
-
/**
|
|
5106
|
-
* State() variables
|
|
5107
|
-
* @internal
|
|
5108
|
-
*/
|
|
5109
|
-
this.tick = Date.now();
|
|
5256
|
+
this.duetTableToggle = createEvent$2(this, "duetTableToggle", 7);
|
|
5257
|
+
this.duetMenuClick = createEvent$2(this, "duetMenuClick", 7);
|
|
5110
5258
|
/**
|
|
5111
|
-
*
|
|
5259
|
+
* Duet-table: margin of the component.
|
|
5112
5260
|
*/
|
|
5113
|
-
this.
|
|
5261
|
+
this.margin = "auto";
|
|
5114
5262
|
/**
|
|
5115
|
-
*
|
|
5263
|
+
* Duet-table: Style variation of the table.
|
|
5116
5264
|
*/
|
|
5117
|
-
this.
|
|
5265
|
+
this.variation = "striped";
|
|
5118
5266
|
/**
|
|
5119
|
-
*
|
|
5267
|
+
* Duet-table: Controls whether the table has a sticky header.
|
|
5268
|
+
* Sticky headers are not compatible with breakpoint="none-scrollable".
|
|
5120
5269
|
*/
|
|
5121
|
-
this.
|
|
5122
|
-
fi: "Kaikki",
|
|
5123
|
-
en: "All items",
|
|
5124
|
-
sv: "Alla objekt",
|
|
5125
|
-
};
|
|
5270
|
+
this.sticky = false;
|
|
5126
5271
|
/**
|
|
5127
|
-
*
|
|
5272
|
+
* Duet-table: Adjust the distance from top of the viewport (in pixels) when the
|
|
5273
|
+
* table header becomes sticky.
|
|
5128
5274
|
*/
|
|
5129
|
-
this.
|
|
5130
|
-
fi: "Toiminnot",
|
|
5131
|
-
en: "Actions",
|
|
5132
|
-
sv: "Handlingar",
|
|
5133
|
-
};
|
|
5275
|
+
this.stickyDistance = "with-links";
|
|
5134
5276
|
/**
|
|
5135
|
-
*
|
|
5136
|
-
*
|
|
5137
|
-
*
|
|
5277
|
+
* Duet-table: By default the table is responsive - it will be flattened at narrow viewport widths.
|
|
5278
|
+
* This prop controls the breakpoint at which the table should be rendered as a _regular_ table.
|
|
5279
|
+
* Set to "none" to disable the responsive functionality.
|
|
5280
|
+
* Set to "none-scrollable" to disable responsive functionality _and_ allow horizontal scrolling -
|
|
5281
|
+
* this is useful for comparison tables where it's important to maintain column and row layout.
|
|
5138
5282
|
*/
|
|
5139
|
-
this.
|
|
5140
|
-
{ id: "all", label: this.groupsLabelDefaults, actionLabel: this.actionLabelDefaults },
|
|
5141
|
-
];
|
|
5283
|
+
this.breakpoint = "small";
|
|
5142
5284
|
/**
|
|
5143
|
-
*
|
|
5285
|
+
* Define actions for all items in a table
|
|
5286
|
+
* An alternative to inline HTML table.
|
|
5287
|
+
* required for Sortable tables
|
|
5144
5288
|
* @default undefined
|
|
5145
|
-
* @example [{
|
|
5146
|
-
variation: "default",
|
|
5147
|
-
icon: "action-edit-2",
|
|
5148
|
-
id: "edit",
|
|
5149
|
-
map: ["success"],
|
|
5150
|
-
label: {
|
|
5151
|
-
fi: " Label",
|
|
5152
|
-
en: " Label",
|
|
5153
|
-
sv: " Label",
|
|
5154
|
-
}
|
|
5155
|
-
}]
|
|
5156
|
-
*/
|
|
5157
|
-
this.actions = undefined;
|
|
5158
|
-
/**
|
|
5159
|
-
* Shows or hides the table labels.
|
|
5160
|
-
*/
|
|
5161
|
-
this.hideGroups = false;
|
|
5162
|
-
/**
|
|
5163
|
-
* Exposes the aria role for optimizing accessibility.
|
|
5164
|
-
*/
|
|
5165
|
-
this.accessibleRole = undefined;
|
|
5166
|
-
/**
|
|
5167
|
-
* Theme of the table.
|
|
5168
|
-
*/
|
|
5169
|
-
this.theme = "";
|
|
5170
|
-
/**
|
|
5171
|
-
* Private methods.
|
|
5172
|
-
*/
|
|
5173
|
-
this.kick = debounce(() => {
|
|
5174
|
-
this.tick = Date.now();
|
|
5175
|
-
}, 100); // will trigger re-render
|
|
5176
|
-
/**
|
|
5177
|
-
* If a user defines a template section within editable table, try to read an use it.
|
|
5178
|
-
*/
|
|
5179
|
-
this.getTemplate = () => {
|
|
5180
|
-
const templateDom = this.element.getElementsByTagName("template");
|
|
5181
|
-
if (templateDom === null || templateDom === void 0 ? void 0 : templateDom.length) {
|
|
5182
|
-
const templateString = templateDom[0].content.firstElementChild.outerHTML;
|
|
5183
|
-
return generateTemplateFn(templateString);
|
|
5184
|
-
}
|
|
5185
|
-
else {
|
|
5186
|
-
return false;
|
|
5187
|
-
}
|
|
5188
|
-
};
|
|
5189
|
-
this.getItemData = (data) => {
|
|
5190
|
-
const { item, group, uid } = data;
|
|
5191
|
-
if (this.template) {
|
|
5192
|
-
return {
|
|
5193
|
-
group,
|
|
5194
|
-
uid,
|
|
5195
|
-
item: this.template(item),
|
|
5196
|
-
};
|
|
5197
|
-
}
|
|
5198
|
-
return { item, group, uid };
|
|
5199
|
-
};
|
|
5200
|
-
this.filterMap = needle => {
|
|
5201
|
-
if (needle === "all") {
|
|
5202
|
-
return Array.from(this.items);
|
|
5203
|
-
}
|
|
5204
|
-
return Array.from(this.items).filter(item => needle === item[1].group);
|
|
5205
|
-
};
|
|
5206
|
-
}
|
|
5207
|
-
/**
|
|
5208
|
-
* Component lifecycle events.
|
|
5209
|
-
*/
|
|
5210
|
-
componentWillLoad() {
|
|
5211
|
-
// look for a <template> region in the duet-editable-table
|
|
5212
|
-
this.template = this.getTemplate();
|
|
5213
|
-
// take care of the case where groups and actions are defined as html properties instead of javascript objects
|
|
5214
|
-
if (typeof this.groups === "string") {
|
|
5215
|
-
this.internalGroupArray = sanitizeString(this.groups);
|
|
5216
|
-
}
|
|
5217
|
-
else {
|
|
5218
|
-
this.internalGroupArray = this.groups;
|
|
5219
|
-
}
|
|
5220
|
-
if (typeof this.actions === "string") {
|
|
5221
|
-
this.internalActionsArray = sanitizeString(this.actions);
|
|
5222
|
-
}
|
|
5223
|
-
else {
|
|
5224
|
-
this.internalActionsArray = this.actions;
|
|
5225
|
-
}
|
|
5226
|
-
inheritGlobalTheme(this);
|
|
5227
|
-
}
|
|
5228
|
-
/**
|
|
5229
|
-
* Method to force an update of a tabular data array.
|
|
5230
|
-
* when called the method will rerender the entire tabular structure.
|
|
5231
|
-
*/
|
|
5232
|
-
async updateTable(passedItems = undefined) {
|
|
5233
|
-
this.items = new Map(passedItems || this.items);
|
|
5234
|
-
this.kick();
|
|
5235
|
-
}
|
|
5236
|
-
render() {
|
|
5237
|
-
return (h$1(Host, { class: {
|
|
5238
|
-
"duet-theme-turva": this.theme === "turva",
|
|
5239
|
-
} }, this.internalGroupArray.map(group => {
|
|
5240
|
-
const currentGroup = this.filterMap(group.id);
|
|
5241
|
-
if (!currentGroup.length) {
|
|
5242
|
-
return;
|
|
5243
|
-
}
|
|
5244
|
-
return (h$1("duet-table", { variation: "plain", breakpoint: "none", role: "", margin: this.hideGroups ? "none" : "auto" }, h$1("table", { class: "duet-editable-table", "aria-role": this.accessibleRole }, h$1("thead", { class: "duet-editable-table-header" }, h$1("tr", null, h$1("th", { class: {
|
|
5245
|
-
"duet-editable-table-header-hidden": this.hideGroups,
|
|
5246
|
-
} }, !this.hideGroups ? (getLocaleString(group.label)) : (h$1("duet-visually-hidden", null, getLocaleString(group.label)))), h$1("th", { class: {
|
|
5247
|
-
"duet-editable-table-header-hidden": this.hideGroups,
|
|
5248
|
-
} }, h$1("duet-visually-hidden", null, group.actionLabel
|
|
5249
|
-
? getLocaleString(group.actionLabel)
|
|
5250
|
-
: getLocaleString(this.actionLabelDefaults))))), h$1("tbody", null, currentGroup.map(dataAsArray => {
|
|
5251
|
-
const [key, value] = dataAsArray;
|
|
5252
|
-
return (h$1("duet-editable-table-item", { theme: this.theme, keyName: key, data: this.getItemData(value), groupId: group.id, part: group.id, alignment: this.alignment, actions: this.internalActionsArray }));
|
|
5253
|
-
})))));
|
|
5254
|
-
})));
|
|
5255
|
-
}
|
|
5256
|
-
get element() { return this; }
|
|
5257
|
-
static get style() { return duetEditableTableCss; }
|
|
5258
|
-
};
|
|
5259
|
-
|
|
5260
|
-
const duetEditableTableButtonCss = "*.sc-duet-editable-table-button,*.sc-duet-editable-table-button::after,*.sc-duet-editable-table-button::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-editable-table-button-h button.sc-duet-editable-table-button{display:flex;align-content:space-between;justify-content:center;min-width:32px;max-width:32px;height:100%;min-height:32px;max-height:32px;padding:0;margin:0;cursor:pointer !important;background-color:transparent;border:1px solid;border-radius:50%}.sc-duet-editable-table-button-h button.sc-duet-editable-table-button duet-icon.sc-duet-editable-table-button{align-self:center}";
|
|
5261
|
-
|
|
5262
|
-
let DuetEditableTableButton$1 = class extends H {
|
|
5263
|
-
constructor() {
|
|
5264
|
-
super();
|
|
5265
|
-
this.__registerHost();
|
|
5266
|
-
this.duetEditableItemAction = createEvent$2(this, "duetEditableItemAction", 7);
|
|
5267
|
-
this.isHovering = false;
|
|
5268
|
-
/**
|
|
5269
|
-
* Theme of the empty state component.
|
|
5270
|
-
*/
|
|
5271
|
-
this.theme = undefined;
|
|
5272
|
-
/**
|
|
5273
|
-
* action items passed from host component
|
|
5274
|
-
* @internal
|
|
5275
5289
|
*/
|
|
5276
5290
|
this.actions = undefined;
|
|
5277
5291
|
/**
|
|
5278
|
-
*
|
|
5279
|
-
*
|
|
5280
|
-
|
|
5281
|
-
|
|
5282
|
-
/**
|
|
5283
|
-
* group associated with action
|
|
5284
|
-
* @internal
|
|
5285
|
-
*/
|
|
5286
|
-
this.group = "";
|
|
5287
|
-
/**
|
|
5288
|
-
* key of the item in the map
|
|
5289
|
-
* @internal
|
|
5292
|
+
* Define columns for a table
|
|
5293
|
+
* An alternative to inline HTML table.
|
|
5294
|
+
* required for Sortable tables
|
|
5295
|
+
* @default undefined
|
|
5290
5296
|
*/
|
|
5291
|
-
this.
|
|
5292
|
-
this.onMouseEnter = () => {
|
|
5293
|
-
this.isHovering = true;
|
|
5294
|
-
};
|
|
5295
|
-
this.onMouseLeave = () => {
|
|
5296
|
-
this.isHovering = false;
|
|
5297
|
-
};
|
|
5298
|
-
this.getColours = (byName = false) => {
|
|
5299
|
-
let colorHover = this.actions.color_hover;
|
|
5300
|
-
let colorBlur = this.actions.color;
|
|
5301
|
-
if (byName) {
|
|
5302
|
-
colorHover = getColorByName(this.actions.color_hover, this.theme);
|
|
5303
|
-
colorBlur = getColorByName(this.actions.color, this.theme);
|
|
5304
|
-
}
|
|
5305
|
-
return this.isHovering ? colorHover : colorBlur;
|
|
5306
|
-
};
|
|
5307
|
-
}
|
|
5308
|
-
/**
|
|
5309
|
-
/**
|
|
5310
|
-
* Component lifecycle events.
|
|
5311
|
-
*/
|
|
5312
|
-
componentWillLoad() {
|
|
5313
|
-
inheritGlobalTheme(this);
|
|
5314
|
-
}
|
|
5315
|
-
/**
|
|
5316
|
-
/**
|
|
5317
|
-
* private functions
|
|
5318
|
-
*/
|
|
5319
|
-
emitActionEvent(ev) {
|
|
5320
|
-
this.duetEditableItemAction.emit({
|
|
5321
|
-
originalEvent: ev,
|
|
5322
|
-
uid: this.uid,
|
|
5323
|
-
group: this.group,
|
|
5324
|
-
action: this.actions.id,
|
|
5325
|
-
keyName: this.keyName,
|
|
5326
|
-
component: "duet-editable-table-item",
|
|
5327
|
-
});
|
|
5328
|
-
}
|
|
5329
|
-
/**
|
|
5330
|
-
* render() function
|
|
5331
|
-
* Always the last one in the class.
|
|
5332
|
-
*/
|
|
5333
|
-
render() {
|
|
5334
|
-
return (h$1("button", { style: {
|
|
5335
|
-
"border-color": this.getColours(true),
|
|
5336
|
-
}, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, role: "menuitem", class: "duet-editable-table-actions-items-button", "aria-label": this.actions.label ? getLocaleString(this.actions.label) : undefined, onClick: ev => this.emitActionEvent(ev) }, h$1("duet-icon", { class: "duet-editable-table-actions-items-icon", size: "x-small", name: this.actions.icon, color: this.getColours(), margin: "none" })));
|
|
5337
|
-
}
|
|
5338
|
-
get el() { return this; }
|
|
5339
|
-
static get style() { return duetEditableTableButtonCss; }
|
|
5340
|
-
};
|
|
5341
|
-
|
|
5342
|
-
//simple functional component that renders the data in the table
|
|
5343
|
-
const TableData = ({ data, groupId, alignment }, _children) => {
|
|
5344
|
-
if (typeof data === "string") {
|
|
5345
|
-
return (h("td", { innerHTML: data, class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }));
|
|
5346
|
-
}
|
|
5347
|
-
else {
|
|
5348
|
-
return (h("td", { class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }, data));
|
|
5349
|
-
}
|
|
5350
|
-
};
|
|
5351
|
-
|
|
5352
|
-
const duetEditableTableItemCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{display:table-row;height:32px}.duet-editable-table-content,.duet-editable-table-actions{height:32px;padding:12px 0;vertical-align:middle;break-word:break-all;border-bottom:1px solid #e1e3e6}.duet-editable-table-actions-items{display:flex;justify-content:flex-end}.duet-editable-table-actions-items duet-editable-table-button{padding-left:8px}.duet-editable-table .editable-item-small{font-size:0.75rem;font-weight:400}";
|
|
5353
|
-
|
|
5354
|
-
let DuetEditableTableItem$1 = class extends H {
|
|
5355
|
-
constructor() {
|
|
5356
|
-
super();
|
|
5357
|
-
this.__registerHost();
|
|
5358
|
-
this.__attachShadow();
|
|
5359
|
-
this.duetEditableItemAction = createEvent$2(this, "duetEditableItemAction", 7);
|
|
5360
|
-
this.isHovering = false;
|
|
5297
|
+
this.columns = undefined;
|
|
5361
5298
|
/**
|
|
5362
|
-
*
|
|
5299
|
+
* Define rows for a table
|
|
5300
|
+
* An alternative to inline HTML table.
|
|
5301
|
+
* required for Sortable tables
|
|
5302
|
+
* @default undefined
|
|
5363
5303
|
*/
|
|
5364
|
-
this.
|
|
5304
|
+
this.rows = undefined;
|
|
5365
5305
|
/**
|
|
5366
|
-
*
|
|
5306
|
+
* Controls whether the table is sortable by headers
|
|
5367
5307
|
*/
|
|
5368
|
-
this.
|
|
5308
|
+
this.sortable = false;
|
|
5369
5309
|
/**
|
|
5370
|
-
*
|
|
5371
|
-
* @internal
|
|
5310
|
+
* Optional id that get passed to the table and used to setup ::parts
|
|
5372
5311
|
*/
|
|
5373
5312
|
this.groupId = "";
|
|
5374
5313
|
/**
|
|
5375
|
-
*
|
|
5314
|
+
* Theme of the table.
|
|
5376
5315
|
*/
|
|
5377
|
-
this.
|
|
5316
|
+
this.theme = "";
|
|
5378
5317
|
/**
|
|
5379
|
-
*
|
|
5318
|
+
* Exposes the aria role for optimizing accessibility.
|
|
5380
5319
|
*/
|
|
5381
|
-
this.
|
|
5320
|
+
this.accessibleRole = undefined;
|
|
5321
|
+
this.sortableDefaultLabel = {
|
|
5322
|
+
fi: "Järjestä",
|
|
5323
|
+
en: "Click to sort",
|
|
5324
|
+
sv: "Klicka för att sortera",
|
|
5325
|
+
};
|
|
5326
|
+
this.actionColumnLabel = {
|
|
5327
|
+
en: "Actions for rows",
|
|
5328
|
+
fi: "Toiminnot rivillä",
|
|
5329
|
+
sv: "Åtgärder för rader",
|
|
5330
|
+
};
|
|
5382
5331
|
/**
|
|
5383
|
-
*
|
|
5332
|
+
* Private methods.
|
|
5384
5333
|
*/
|
|
5385
|
-
this.
|
|
5386
|
-
|
|
5387
|
-
|
|
5388
|
-
|
|
5334
|
+
this.toggleColumn = (column, e) => {
|
|
5335
|
+
e.preventDefault();
|
|
5336
|
+
const { sort_order, direction, index, key } = column;
|
|
5337
|
+
this.duetTableToggle.emit({
|
|
5338
|
+
sort_order,
|
|
5339
|
+
index,
|
|
5340
|
+
direction,
|
|
5341
|
+
key,
|
|
5342
|
+
component: "duet-editable-table",
|
|
5343
|
+
originalEvent: e,
|
|
5344
|
+
});
|
|
5345
|
+
};
|
|
5346
|
+
this.handleKeyDown = (column, e) => {
|
|
5347
|
+
if (isKeyboardClick(e)) {
|
|
5348
|
+
this.toggleColumn(column, e);
|
|
5349
|
+
}
|
|
5350
|
+
};
|
|
5389
5351
|
}
|
|
5390
5352
|
/**
|
|
5391
|
-
/**
|
|
5392
5353
|
* Component lifecycle events.
|
|
5393
5354
|
*/
|
|
5394
5355
|
componentWillLoad() {
|
|
5395
5356
|
inheritGlobalTheme(this);
|
|
5396
5357
|
}
|
|
5358
|
+
createLabel(column) {
|
|
5359
|
+
const { sort_order, direction, index, label } = column;
|
|
5360
|
+
const i18nLabel = getLocaleString(label);
|
|
5361
|
+
if (!this.sortable) {
|
|
5362
|
+
return i18nLabel;
|
|
5363
|
+
}
|
|
5364
|
+
const getButtonIcon = () => {
|
|
5365
|
+
// "action-subtract-small" https://cdn.duetds.com/api/icons/2.2.12/lib/assets/action-subtract-small.svg
|
|
5366
|
+
// "action-arrow-down-small" https://cdn.duetds.com/api/icons/2.2.12/lib/assets/action-arrow-down-small.svg
|
|
5367
|
+
// "action-arrow-up-small" https://cdn.duetds.com/api/icons/2.2.12/lib/assets/action-arrow-up-small.svg
|
|
5368
|
+
if (!!sort_order && direction === 1) {
|
|
5369
|
+
return "action-arrow-down-small";
|
|
5370
|
+
}
|
|
5371
|
+
else if (!!sort_order && direction === -1) {
|
|
5372
|
+
return "action-arrow-up-small";
|
|
5373
|
+
}
|
|
5374
|
+
return "action-subtract-small";
|
|
5375
|
+
};
|
|
5376
|
+
return (h$1("span", { class: "duet-table-label", "data-index": index }, h$1("duet-button", { size: "small", icon: getButtonIcon(), "icon-size": "medium-small", "accessible-label": getLocaleString(this.sortableDefaultLabel), variation: "plain", margin: "none", "icon-right": true, onClick: event => this.toggleColumn(column, event), onKeyDown: event => this.handleKeyDown(column, event) }, i18nLabel)));
|
|
5377
|
+
}
|
|
5378
|
+
getSortedColumns() {
|
|
5379
|
+
//create a new array from sort instead of mutating original
|
|
5380
|
+
return [...this.columns].sort(fieldSorter(["index"]));
|
|
5381
|
+
}
|
|
5382
|
+
getRowSortOrder() {
|
|
5383
|
+
//create a new array from sort instead of mutating original
|
|
5384
|
+
const fields = [...this.columns].sort(fieldSorter(["sort_order"]));
|
|
5385
|
+
//return only key from objects that have sort_order
|
|
5386
|
+
return fields
|
|
5387
|
+
.filter(column => column.sort_order)
|
|
5388
|
+
.map(column => {
|
|
5389
|
+
// add - in-front of descending direction (required by field-sorter)
|
|
5390
|
+
return column.direction === -1 ? `-${column.key}` : column.key;
|
|
5391
|
+
});
|
|
5392
|
+
}
|
|
5393
|
+
renderTableHeader() {
|
|
5394
|
+
if (!this.columns) {
|
|
5395
|
+
return;
|
|
5396
|
+
}
|
|
5397
|
+
const sortedColumns = this.getSortedColumns();
|
|
5398
|
+
return (h$1("tr", { class: {
|
|
5399
|
+
"duet-table-action-header": !!this.actions,
|
|
5400
|
+
} }, sortedColumns.map(column => {
|
|
5401
|
+
if (column.display !== false) {
|
|
5402
|
+
return h$1("th", { scope: "col" }, this.createLabel(column));
|
|
5403
|
+
}
|
|
5404
|
+
}), this.actions && (h$1("th", { scope: "col", class: "duet-table-action-header-heading" }, this.actions && h$1("duet-visually-hidden", null, getLocaleString(this.actionColumnLabel))))));
|
|
5405
|
+
}
|
|
5406
|
+
renderActions(rowItem, index) {
|
|
5407
|
+
// escape early
|
|
5408
|
+
if (!this.actions) {
|
|
5409
|
+
return;
|
|
5410
|
+
}
|
|
5411
|
+
// iterate through actions and add them in the sidebar
|
|
5412
|
+
return (h$1("td", { class: "duet-text-right" }, this.actions.map(actionItem => {
|
|
5413
|
+
return (h$1("duet-action-button", { actionMeta: Object.assign({}, (rowItem === null || rowItem === void 0 ? void 0 : rowItem.meta) || {}, { index }), actionId: (rowItem === null || rowItem === void 0 ? void 0 : rowItem.uid) || (rowItem === null || rowItem === void 0 ? void 0 : rowItem.id) || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background }));
|
|
5414
|
+
})));
|
|
5415
|
+
}
|
|
5416
|
+
renderTableBody() {
|
|
5417
|
+
const columns = this.getSortedColumns();
|
|
5418
|
+
const rowSortOrder = this.getRowSortOrder();
|
|
5419
|
+
const sortedRows = [...this.rows].sort(fieldSorter(rowSortOrder));
|
|
5420
|
+
// return a tbody with rows for each item in sortedRows
|
|
5421
|
+
return sortedRows.map((row, index) => (h$1("tr", { class: {
|
|
5422
|
+
"duet-table-action-row": !!this.actions,
|
|
5423
|
+
"duet-editable-table-row": true,
|
|
5424
|
+
[`duet-editable-table-row-${this.groupId}`]: true,
|
|
5425
|
+
}, "data-meta": JSON.stringify(row.meta) }, columns.map(column => {
|
|
5426
|
+
//if we don't have any data for this column, try getting an item instead (for backwards compatibility
|
|
5427
|
+
const value = row[column.key] ? row[column.key] : row.item;
|
|
5428
|
+
if (column.display !== false) {
|
|
5429
|
+
return h$1(TableData, { data: value, groupId: this.groupId });
|
|
5430
|
+
}
|
|
5431
|
+
}), this.actions && this.renderActions(row, index))));
|
|
5432
|
+
}
|
|
5397
5433
|
/**
|
|
5398
|
-
|
|
5399
|
-
* private functions
|
|
5400
|
-
*/
|
|
5401
|
-
/**
|
|
5402
|
-
* render() function
|
|
5403
|
-
* Always the last one in the class.
|
|
5434
|
+
* Render Methods
|
|
5404
5435
|
*/
|
|
5405
5436
|
render() {
|
|
5406
|
-
return (h$1(Host, {
|
|
5407
|
-
|
|
5408
|
-
|
|
5409
|
-
|
|
5410
|
-
|
|
5411
|
-
|
|
5412
|
-
|
|
5413
|
-
|
|
5437
|
+
return (h$1(Host, { class: {
|
|
5438
|
+
[`duet-editable-table-${this.variation}`]: true,
|
|
5439
|
+
[`duet-editable-table-${this.theme}`]: true,
|
|
5440
|
+
// sticky only valid when in regular table layout
|
|
5441
|
+
"duet-editable-table-scrollable": this.breakpoint === "none-scrollable",
|
|
5442
|
+
"duet-editable-table-sortable": this.sortable,
|
|
5443
|
+
"duet-editable-table-actions": !!this.actions,
|
|
5444
|
+
"duet-m-0": this.margin === "none",
|
|
5445
|
+
"duet-theme-turva": this.theme === "turva",
|
|
5446
|
+
} }, h$1("duet-table", { sticky: this.sticky, stickyDistance: this.stickyDistance, margin: this.margin, theme: this.theme, variation: this.variation, breakpoint: this.breakpoint }, h$1("table", { role: this.accessibleRole }, h$1("caption", null, h$1("slot", { name: "tcaption" })), h$1("thead", null, h$1("tr", null, h$1("td", { class: "duet-editable-table-actions-menu", colSpan: 99 }, h$1("slot", { name: "thead-first" }))), this.renderTableHeader(), h$1("tr", null, h$1("td", { class: "duet-editable-table-actions-menu", colSpan: 99 }, h$1("slot", { name: "thead-last" })))), h$1("tbody", null, this.renderTableBody()), h$1("tfoot", null, h$1("tr", null, h$1("th", { class: "duet-editable-table-footer-menu", colSpan: 99 }, h$1("slot", { name: "tfoot" }))))))));
|
|
5414
5447
|
}
|
|
5415
|
-
get
|
|
5416
|
-
static get
|
|
5417
|
-
"data": ["watchPropHandler"]
|
|
5418
|
-
}; }
|
|
5419
|
-
static get style() { return duetEditableTableItemCss; }
|
|
5448
|
+
get element() { return this; }
|
|
5449
|
+
static get style() { return duetEditableTableCss; }
|
|
5420
5450
|
};
|
|
5421
5451
|
|
|
5422
5452
|
const duetEmptyStateCss = "*,*::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%;height:100%}.duet-empty-state{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%;padding:48px;color:#00294d;text-align:center;background:#f5f8fa;border-radius:4px}.duet-empty-state.duet-theme-turva{color:#171c3a;background:#f5f5f7}";
|
|
@@ -8600,7 +8630,7 @@ const shouldDisplayNavigation = (visibleItems, total, take) => {
|
|
|
8600
8630
|
return true;
|
|
8601
8631
|
};
|
|
8602
8632
|
|
|
8603
|
-
const duetPaginationCss = "*,*::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:inline-block;margin:0 auto}.duet-pagination-nav{position:relative}.duet-pagination,.duet-pagination li{display:flex;flex-wrap:wrap;gap:0.1rem;align-items:center}.duet-pagination-item-is-active .duet-pagination-page-number{border-bottom-color:inherit;border-bottom-style:solid;border-bottom-width:2px}.duet-pagination duet-button{width:30px;min-width:36px;font-weight:600;text-decoration:none;border-left-width:0}.duet-pagination-overlay{position:absolute;top:1rem;z-index:300;width:100%;text-align:center}.duet-pagination.duet-pagination-is-dimmed{opacity:0.5}
|
|
8633
|
+
const duetPaginationCss = "*,*::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:inline-block;margin:0 auto}.duet-pagination-nav{position:relative}.duet-pagination ::part(button){border:0}.duet-pagination,.duet-pagination li{display:flex;flex-wrap:wrap;gap:0.1rem;align-items:center}.duet-pagination-item-is-active .duet-pagination-page-number{border-bottom-color:inherit;border-bottom-style:solid;border-bottom-width:2px}.duet-pagination duet-button{width:30px;min-width:36px;font-weight:600;text-decoration:none;border-left-width:0}.duet-pagination-overlay{position:absolute;top:1rem;z-index:300;width:100%;text-align:center}.duet-pagination.duet-pagination-is-dimmed{opacity:0.5}";
|
|
8604
8634
|
|
|
8605
8635
|
let DuetPagination$1 = class extends H {
|
|
8606
8636
|
constructor() {
|
|
@@ -8628,10 +8658,14 @@ let DuetPagination$1 = class extends H {
|
|
|
8628
8658
|
* Characters to use for the jump buttons.
|
|
8629
8659
|
*/
|
|
8630
8660
|
this.jumpString = "...";
|
|
8661
|
+
/**
|
|
8662
|
+
* Variation of the paginator (compact and default supported)
|
|
8663
|
+
*/
|
|
8664
|
+
this.variation = "default";
|
|
8631
8665
|
/**
|
|
8632
8666
|
* Default pagination labels
|
|
8633
8667
|
*/
|
|
8634
|
-
this.
|
|
8668
|
+
this.accessibleLabelsDefaults = {
|
|
8635
8669
|
en: {
|
|
8636
8670
|
next_page: "Next page",
|
|
8637
8671
|
previous_page: "Previous page",
|
|
@@ -8672,7 +8706,7 @@ let DuetPagination$1 = class extends H {
|
|
|
8672
8706
|
/**
|
|
8673
8707
|
* Default pagination labels
|
|
8674
8708
|
*/
|
|
8675
|
-
this.
|
|
8709
|
+
this.accessibleLabels = getLocaleString(this.accessibleLabelsDefaults);
|
|
8676
8710
|
/**
|
|
8677
8711
|
* The size of the take, when paginating.
|
|
8678
8712
|
*/
|
|
@@ -8841,29 +8875,35 @@ let DuetPagination$1 = class extends H {
|
|
|
8841
8875
|
"duet-pagination-item-is-active": i === this.current,
|
|
8842
8876
|
}, role: "menuitem" }, h$1("duet-button", { class: {
|
|
8843
8877
|
"duet-pagination-link": true,
|
|
8844
|
-
}, color: i !== this.current ? "secondary" : "primary", "data-id": i, "center-text": true, variation: "plain", margin: "none", accessibleLabel: `${this.
|
|
8878
|
+
}, color: i !== this.current ? "secondary" : "primary", "data-id": i, "center-text": true, variation: "plain", margin: "none", accessibleLabel: `${this.accessibleLabels.go_to} ${i}`, onClick: e => this.pageClickHandler(e) }, h$1("div", { class: "duet-pagination-page-number", "aria-hidden": true }, i))));
|
|
8845
8879
|
} while (i < this.visibleItems + this.internalSectionIndex * this.visibleItems);
|
|
8846
8880
|
return items;
|
|
8847
8881
|
}
|
|
8848
8882
|
shouldDisplayNavigation() {
|
|
8849
|
-
|
|
8883
|
+
if (this.variation !== "compact") {
|
|
8884
|
+
return shouldDisplayNavigation(this.visibleItems, this.total, this.take);
|
|
8885
|
+
}
|
|
8886
|
+
return false;
|
|
8850
8887
|
}
|
|
8851
8888
|
/**
|
|
8852
8889
|
* render() function
|
|
8853
8890
|
* Always the last one in the class.
|
|
8854
8891
|
*/
|
|
8855
8892
|
render() {
|
|
8856
|
-
return (h$1(Host, { onKeyDown: e => this.onKeyboardDown(e) }, h$1("nav", { role: "navigation",
|
|
8893
|
+
return (h$1(Host, { onKeyDown: e => this.onKeyboardDown(e) }, h$1("nav", { role: "navigation", "aria-labelledby": this.listId, "aria-describedby": this.listId, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
|
|
8894
|
+
"duet-pagination-nav": true,
|
|
8895
|
+
[`duet-pagination-variation-${this.variation}`]: true,
|
|
8896
|
+
} }, this.numbersStore !== "" && (h$1("div", { "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, h$1("duet-badge", null, "jump to page : ", this.numbersStore))), h$1("ol", { id: this.listId, class: {
|
|
8857
8897
|
"duet-pagination": true,
|
|
8858
8898
|
"duet-pagination-is-dimmed": this.numbersStore !== "",
|
|
8859
|
-
}, role: "menubar", "aria-label": this.
|
|
8899
|
+
}, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, h$1("li", { class: {
|
|
8860
8900
|
"duet-pagination-page-button": true,
|
|
8861
8901
|
"duet-pagination-button-first": true,
|
|
8862
|
-
}, role: "menuitem", part: "navigation-arrow" }, h$1("button", { disabled: this.internalSectionIndex === 0 && this.current <= 1, "data-direction": "back",
|
|
8902
|
+
}, role: "menuitem", part: "navigation-arrow" }, h$1("duet-action-button", { disabled: this.internalSectionIndex === 0 && this.current <= 1, "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "aria-label": this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small" })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (h$1(Fragment, null, h$1("li", { class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h$1("duet-button", { class: "duet-pagination-link", "center-text": "true", variation: "plain", color: "secondary", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e) }, h$1("div", { class: "duet-pagination-page-number" }, "1"))), h$1("li", { class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h$1("duet-button", { class: "duet-pagination-link", "center-text": "true", color: "secondary", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1) }, h$1("div", { class: "duet-pagination-page-number", "aria-hidden": "true" }, "..."))))), this.renderPageNumbers(), this.internalSectionIndex !== this.totalPages / this.visibleItems - 1 && this.shouldDisplayNavigation() && (h$1(Fragment, null, h$1("li", { class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h$1("duet-button", { class: "duet-pagination-link", "center-text": "true", color: "secondary", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1) }, h$1("div", { class: "duet-pagination-page-number", "aria-hidden": "true" }, "..."))), h$1("li", { class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h$1("duet-button", { class: "duet-pagination-link", "center-text": "true", color: "secondary", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e) }, h$1("div", { class: "duet-pagination-page-number" }, this.totalPages))))), h$1("li", { class: {
|
|
8863
8903
|
"duet-pagination-page-button": true,
|
|
8864
8904
|
"duet-pagination-button-last": true,
|
|
8865
|
-
}, role: "menuitem", part: "navigation-arrow" }, h$1("button", { disabled: this.current === this.totalPages &&
|
|
8866
|
-
this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1, class: "duet-date-dialog-next",
|
|
8905
|
+
}, role: "menuitem", part: "navigation-arrow" }, h$1("duet-action-button", { disabled: this.current === this.totalPages &&
|
|
8906
|
+
this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1, class: "duet-date-dialog-next", "aria-label": this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-arrow-right-small" }))))));
|
|
8867
8907
|
}
|
|
8868
8908
|
get element() { return this; }
|
|
8869
8909
|
static get watchers() { return {
|
|
@@ -9403,7 +9443,7 @@ let DuetRangeSlider$1 = class extends H {
|
|
|
9403
9443
|
static get style() { return duetRangeSliderCss; }
|
|
9404
9444
|
};
|
|
9405
9445
|
|
|
9406
|
-
const duetRangeStepperCss = "*,*::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:inline-block;margin:0 auto}.duet-range-stepper{display:flex;flex-wrap:wrap;gap:0;align-items:baseline;justify-content:center;min-width:30px;min-height:30px;font-weight:600;text-decoration:none;border-left-width:0}.duet-range-stepper{white-space:nowrap}.duet-range-stepper
|
|
9446
|
+
const duetRangeStepperCss = "*,*::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:inline-block;margin:0 auto}.duet-range-stepper{display:flex;flex-wrap:wrap;gap:0;align-items:baseline;justify-content:center;min-width:30px;min-height:30px;font-weight:600;text-decoration:none;border-left-width:0}.duet-range-stepper{white-space:nowrap}.duet-range-stepper .duet-range-step-counter{font-weight:600;color:#00294d}.duet-range-stepper ::part(button){border:0}";
|
|
9407
9447
|
|
|
9408
9448
|
let DuetRangeStepper$1 = class extends H {
|
|
9409
9449
|
constructor() {
|
|
@@ -9550,7 +9590,7 @@ let DuetRangeStepper$1 = class extends H {
|
|
|
9550
9590
|
return (h$1("div", { class: {
|
|
9551
9591
|
"duet-range-stepper": true,
|
|
9552
9592
|
"duet-theme-turva": this.theme === "turva",
|
|
9553
|
-
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, h$1("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), h$1("button", { class: "duet-range-step-button duet-range-step-minus",
|
|
9593
|
+
}, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, h$1("span", { class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), h$1("duet-action-button", { class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "aria-label": this.ariaLabels.previous_increment, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small" }), h$1("duet-action-button", { class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "aria-label": this.ariaLabels.next_increment, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small" })));
|
|
9554
9594
|
}
|
|
9555
9595
|
get element() { return this; }
|
|
9556
9596
|
static get watchers() { return {
|
|
@@ -10476,7 +10516,7 @@ let DuetTabGroup$1 = class extends H {
|
|
|
10476
10516
|
static get style() { return duetTabGroupCss; }
|
|
10477
10517
|
};
|
|
10478
10518
|
|
|
10479
|
-
const duetTableCss = "duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}
|
|
10519
|
+
const duetTableCss = "duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}.duet-table-flattened tbody tr{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:auto;gap:10px}.duet-table-flattened tbody tr.duet-table-action-row td:last-child::before{padding:0;content:\"\"}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{grid-column:1/2;line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened td:first-child{grid-row:1;grid-column:1}.duet-table-flattened td:last-child{grid-row:1;grid-column:2}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}.duet-table-sortable tbody tr td:first-child,.duet-table-sortable thead tr th:first-child{padding:20px}.duet-table-sortable:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-actions table{table-layout:auto}.duet-table-actions thead th:last-child{width:1px;white-space:nowrap}";
|
|
10480
10520
|
|
|
10481
10521
|
// remove wrapping speech marks.
|
|
10482
10522
|
// media query tokens are wrapped in speech marks,
|
|
@@ -10537,9 +10577,9 @@ let DuetTable$1 = class extends H {
|
|
|
10537
10577
|
}
|
|
10538
10578
|
connectedCallback() {
|
|
10539
10579
|
this.mq = matchMedia(breakpointToToken[this.breakpoint]);
|
|
10540
|
-
this.mq.addEventListener("change", this.handleMediaQueryChange);
|
|
10580
|
+
this.mq.addEventListener("change", debounce(this.handleMediaQueryChange, 50));
|
|
10541
10581
|
this.handleMediaQueryChange(this.mq);
|
|
10542
|
-
this.observer = new MutationObserver(() => this.copyHeadingsToCells());
|
|
10582
|
+
this.observer = new MutationObserver(() => debounce(this.copyHeadingsToCells(), 50));
|
|
10543
10583
|
this.observer.observe(this.element, {
|
|
10544
10584
|
childList: true,
|
|
10545
10585
|
subtree: true,
|
|
@@ -10570,6 +10610,9 @@ let DuetTable$1 = class extends H {
|
|
|
10570
10610
|
this.mq = null;
|
|
10571
10611
|
this.matchesBreakpoint = true;
|
|
10572
10612
|
}
|
|
10613
|
+
/**
|
|
10614
|
+
* Local methods.
|
|
10615
|
+
*/
|
|
10573
10616
|
copyHeadingsToCells() {
|
|
10574
10617
|
const headingElements = this.element.querySelectorAll("thead th");
|
|
10575
10618
|
const rowElements = this.element.querySelectorAll("tbody tr");
|
|
@@ -11469,7 +11512,7 @@ const validateFile = (item, validators) => {
|
|
|
11469
11512
|
if (item) {
|
|
11470
11513
|
const { name, type, size } = item;
|
|
11471
11514
|
const mime = validateFileMime(type, allowedMimetypes);
|
|
11472
|
-
const ext = validateFileExtension(name, allowedExtensions);
|
|
11515
|
+
const ext = validateFileExtension(name.toLowerCase(), allowedExtensions);
|
|
11473
11516
|
const bytes = validateFileSize(size, maxBytes);
|
|
11474
11517
|
if (!mime) {
|
|
11475
11518
|
errorMessage = getError("duet-upload-101");
|
|
@@ -11549,7 +11592,7 @@ const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress })
|
|
|
11549
11592
|
return xhr;
|
|
11550
11593
|
};
|
|
11551
11594
|
|
|
11552
|
-
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}";
|
|
11595
|
+
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-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:0.75rem 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-action-button::part(button){border:0}";
|
|
11553
11596
|
|
|
11554
11597
|
let DuetUpload$1 = class extends H {
|
|
11555
11598
|
constructor() {
|
|
@@ -11565,25 +11608,6 @@ let DuetUpload$1 = class extends H {
|
|
|
11565
11608
|
this.duetCancel = createEvent$2(this, "duetCancel", 3);
|
|
11566
11609
|
this.duetProgress = createEvent$2(this, "duetProgress", 3);
|
|
11567
11610
|
this.duetUpload = createEvent$2(this, "duetUpload", 3);
|
|
11568
|
-
/**
|
|
11569
|
-
* Own Properties
|
|
11570
|
-
*/
|
|
11571
|
-
this.buttonId = createID("DuetButton");
|
|
11572
|
-
this.labelId = createID("DuetLabel");
|
|
11573
|
-
this.uploadId = createID("DuetUpload");
|
|
11574
|
-
this.editableTableId = createID("DuetEditableTable");
|
|
11575
|
-
this.filesInProgress = new Map();
|
|
11576
|
-
this.fileMaxReached = false;
|
|
11577
|
-
this.bytesMaxReached = false;
|
|
11578
|
-
this.internalStatusMessageLabel = undefined;
|
|
11579
|
-
/**
|
|
11580
|
-
* Properties
|
|
11581
|
-
*/
|
|
11582
|
-
this.DefaultGroups = {
|
|
11583
|
-
inprogress: "inprogress",
|
|
11584
|
-
success: "success",
|
|
11585
|
-
failure: "failure",
|
|
11586
|
-
};
|
|
11587
11611
|
/**
|
|
11588
11612
|
* State() variables
|
|
11589
11613
|
*/
|
|
@@ -11605,8 +11629,9 @@ let DuetUpload$1 = class extends H {
|
|
|
11605
11629
|
{
|
|
11606
11630
|
icon: "action-delete",
|
|
11607
11631
|
color: "color-danger",
|
|
11608
|
-
|
|
11609
|
-
|
|
11632
|
+
size: "x-small",
|
|
11633
|
+
background: "gray-lightest",
|
|
11634
|
+
name: "delete",
|
|
11610
11635
|
map: ["success", "failure"],
|
|
11611
11636
|
label: {
|
|
11612
11637
|
fi: "Poista tiedosto",
|
|
@@ -11617,8 +11642,9 @@ let DuetUpload$1 = class extends H {
|
|
|
11617
11642
|
{
|
|
11618
11643
|
icon: "navigation-close",
|
|
11619
11644
|
color: "primary",
|
|
11620
|
-
|
|
11621
|
-
|
|
11645
|
+
size: "x-small",
|
|
11646
|
+
background: "gray-lightest",
|
|
11647
|
+
name: "cancel",
|
|
11622
11648
|
map: ["inprogress"],
|
|
11623
11649
|
label: {
|
|
11624
11650
|
fi: "Keskeytä lähetys",
|
|
@@ -11688,8 +11714,8 @@ let DuetUpload$1 = class extends H {
|
|
|
11688
11714
|
inProgressWithErrors: "Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",
|
|
11689
11715
|
done: "All {filesTotal} added successfully",
|
|
11690
11716
|
doneWithErrors: "Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",
|
|
11691
|
-
files: "
|
|
11692
|
-
file: "
|
|
11717
|
+
files: "File",
|
|
11718
|
+
file: "file",
|
|
11693
11719
|
},
|
|
11694
11720
|
};
|
|
11695
11721
|
/**
|
|
@@ -11844,19 +11870,72 @@ let DuetUpload$1 = class extends H {
|
|
|
11844
11870
|
* by default this is off, setting this to true will limit the users choices to what has been explicitly set
|
|
11845
11871
|
*/
|
|
11846
11872
|
this.limitSelection = false;
|
|
11873
|
+
/**
|
|
11874
|
+
* Own Properties
|
|
11875
|
+
*/
|
|
11876
|
+
this.buttonId = createID("DuetButton");
|
|
11877
|
+
this.labelId = createID("DuetLabel");
|
|
11878
|
+
this.uploadId = createID("DuetUpload");
|
|
11879
|
+
this.filesInProgress = new Map();
|
|
11880
|
+
this.fileMaxReached = false;
|
|
11881
|
+
this.bytesMaxReached = false;
|
|
11882
|
+
this.internalStatusMessageLabel = undefined;
|
|
11883
|
+
/**
|
|
11884
|
+
* Properties
|
|
11885
|
+
*/
|
|
11886
|
+
this.DefaultGroups = {
|
|
11887
|
+
inprogress: "inprogress",
|
|
11888
|
+
success: "success",
|
|
11889
|
+
failure: "failure",
|
|
11890
|
+
};
|
|
11891
|
+
/**
|
|
11892
|
+
* Array of group names that you want the editable table to use to display files
|
|
11893
|
+
* @required
|
|
11894
|
+
* @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}]
|
|
11895
|
+
*/
|
|
11896
|
+
this.groups = [
|
|
11897
|
+
{
|
|
11898
|
+
id: this.DefaultGroups.inprogress,
|
|
11899
|
+
label: {
|
|
11900
|
+
fi: "Kesken olevat tiedostot",
|
|
11901
|
+
sv: "Filer inprogress",
|
|
11902
|
+
en: "Files inprogress",
|
|
11903
|
+
},
|
|
11904
|
+
},
|
|
11905
|
+
{
|
|
11906
|
+
id: this.DefaultGroups.success,
|
|
11907
|
+
label: {
|
|
11908
|
+
fi: "Valmiit tiedostot",
|
|
11909
|
+
sv: "Files success",
|
|
11910
|
+
en: "Files success",
|
|
11911
|
+
},
|
|
11912
|
+
},
|
|
11913
|
+
{
|
|
11914
|
+
id: this.DefaultGroups.failure,
|
|
11915
|
+
label: {
|
|
11916
|
+
fi: "Tiedostot, joissa on virheitä",
|
|
11917
|
+
sv: "Filer med fel",
|
|
11918
|
+
en: "Files with errors",
|
|
11919
|
+
},
|
|
11920
|
+
},
|
|
11921
|
+
];
|
|
11922
|
+
this.kick = debounce(() => {
|
|
11923
|
+
this.tick = Date.now();
|
|
11924
|
+
}, 30); // will trigger re-render
|
|
11847
11925
|
/**
|
|
11848
11926
|
* Private functions
|
|
11849
11927
|
*/
|
|
11850
11928
|
this.listenForActionEvents = () => {
|
|
11851
|
-
this.element.addEventListener("
|
|
11929
|
+
this.element.addEventListener("duetActionEvent", (e) => {
|
|
11852
11930
|
const detail = e.detail;
|
|
11853
|
-
const { action,
|
|
11931
|
+
const { action, id, originalEvent } = detail;
|
|
11932
|
+
console.log(e);
|
|
11854
11933
|
switch (action) {
|
|
11855
11934
|
case "delete":
|
|
11856
|
-
this.onDelete(
|
|
11935
|
+
this.onDelete(id, originalEvent);
|
|
11857
11936
|
break;
|
|
11858
11937
|
case "cancel":
|
|
11859
|
-
this.onCancel(
|
|
11938
|
+
this.onCancel(id, originalEvent);
|
|
11860
11939
|
break;
|
|
11861
11940
|
// code block
|
|
11862
11941
|
}
|
|
@@ -11913,24 +11992,6 @@ let DuetUpload$1 = class extends H {
|
|
|
11913
11992
|
return "none";
|
|
11914
11993
|
}
|
|
11915
11994
|
};
|
|
11916
|
-
this.convertToDuetEditableTableItems = () => {
|
|
11917
|
-
// we're always recreating the map - in order to force an update down stream.
|
|
11918
|
-
const itemData = new Map();
|
|
11919
|
-
//walk the files Map and convert to DuetEditableTableItemData
|
|
11920
|
-
this.files.forEach((data, key, _originalMap) => {
|
|
11921
|
-
const group = this.getGroupFromItemData(data);
|
|
11922
|
-
const item = this.getItemHTMLFromItemData(data, group);
|
|
11923
|
-
itemData.set(key, {
|
|
11924
|
-
uid: data.uid,
|
|
11925
|
-
item,
|
|
11926
|
-
group,
|
|
11927
|
-
});
|
|
11928
|
-
});
|
|
11929
|
-
return itemData;
|
|
11930
|
-
};
|
|
11931
|
-
this.kick = debounce(() => {
|
|
11932
|
-
this.tick = Date.now();
|
|
11933
|
-
}, 30); // will trigger re-render
|
|
11934
11995
|
this.genHashName = () => Date.now().toString(36) + Math.random();
|
|
11935
11996
|
this.updateValueInMap = (item, key, value, kick = true) => {
|
|
11936
11997
|
const fileItem = this.files.get(item);
|
|
@@ -11991,7 +12052,6 @@ let DuetUpload$1 = class extends H {
|
|
|
11991
12052
|
this.nativeInput.value = "";
|
|
11992
12053
|
};
|
|
11993
12054
|
this.startUpload = async (ev, metaData = undefined) => {
|
|
11994
|
-
await this.setFocus();
|
|
11995
12055
|
this.metaData = metaData;
|
|
11996
12056
|
this.nativeInput.click();
|
|
11997
12057
|
this.onUpload(ev, metaData);
|
|
@@ -12054,9 +12114,18 @@ let DuetUpload$1 = class extends H {
|
|
|
12054
12114
|
fileMaxReached: isTotalFileAmountAboveMax,
|
|
12055
12115
|
};
|
|
12056
12116
|
};
|
|
12117
|
+
this.getItemFromUID = (uid) => {
|
|
12118
|
+
for (const [key, value] of this.files.entries()) {
|
|
12119
|
+
if (value.uid === uid) {
|
|
12120
|
+
return { value, key };
|
|
12121
|
+
}
|
|
12122
|
+
}
|
|
12123
|
+
return null;
|
|
12124
|
+
};
|
|
12057
12125
|
this.onDelete = (key, ev) => {
|
|
12058
|
-
const
|
|
12059
|
-
this.files.
|
|
12126
|
+
const retrievedKey = this.getItemFromUID(key).key;
|
|
12127
|
+
const deletedItem = this.files.get(retrievedKey);
|
|
12128
|
+
this.files.delete(retrievedKey);
|
|
12060
12129
|
this.validateTotals();
|
|
12061
12130
|
this.kick();
|
|
12062
12131
|
this.duetDelete.emit({
|
|
@@ -12070,8 +12139,9 @@ let DuetUpload$1 = class extends H {
|
|
|
12070
12139
|
this.resetFormFields();
|
|
12071
12140
|
};
|
|
12072
12141
|
this.onCancel = (key, ev) => {
|
|
12073
|
-
const
|
|
12074
|
-
this.files.
|
|
12142
|
+
const retrievedKey = this.getItemFromUID(key).key;
|
|
12143
|
+
const cancelledItem = this.files.get(retrievedKey);
|
|
12144
|
+
this.files.delete(retrievedKey);
|
|
12075
12145
|
if (!this.external) {
|
|
12076
12146
|
const { xhr } = cancelledItem;
|
|
12077
12147
|
xhr.abort();
|
|
@@ -12121,6 +12191,79 @@ let DuetUpload$1 = class extends H {
|
|
|
12121
12191
|
data: { files: this.files },
|
|
12122
12192
|
});
|
|
12123
12193
|
};
|
|
12194
|
+
/**
|
|
12195
|
+
* @description This functions return sorted map items byg condition which are:
|
|
12196
|
+
*/
|
|
12197
|
+
this.filterMap = () => {
|
|
12198
|
+
const all = [...this.files.values()];
|
|
12199
|
+
const inprogress = [];
|
|
12200
|
+
const failure = [];
|
|
12201
|
+
const success = [];
|
|
12202
|
+
all.forEach(data => {
|
|
12203
|
+
const group = this.getGroupFromItemData(data);
|
|
12204
|
+
const item = this.getItemHTMLFromItemData(data, group);
|
|
12205
|
+
if (group === this.DefaultGroups.success) {
|
|
12206
|
+
success.push({
|
|
12207
|
+
uid: data.uid,
|
|
12208
|
+
item,
|
|
12209
|
+
group,
|
|
12210
|
+
});
|
|
12211
|
+
}
|
|
12212
|
+
else if (group === this.DefaultGroups.inprogress) {
|
|
12213
|
+
inprogress.push({
|
|
12214
|
+
uid: data.uid,
|
|
12215
|
+
item,
|
|
12216
|
+
group,
|
|
12217
|
+
});
|
|
12218
|
+
}
|
|
12219
|
+
else if (group === this.DefaultGroups.failure) {
|
|
12220
|
+
failure.push({
|
|
12221
|
+
uid: data.uid,
|
|
12222
|
+
item,
|
|
12223
|
+
group,
|
|
12224
|
+
});
|
|
12225
|
+
}
|
|
12226
|
+
else if (data.group) {
|
|
12227
|
+
inprogress.push({
|
|
12228
|
+
uid: data.uid,
|
|
12229
|
+
item,
|
|
12230
|
+
group: data.group,
|
|
12231
|
+
});
|
|
12232
|
+
}
|
|
12233
|
+
});
|
|
12234
|
+
return {
|
|
12235
|
+
inprogress,
|
|
12236
|
+
failure,
|
|
12237
|
+
success,
|
|
12238
|
+
};
|
|
12239
|
+
};
|
|
12240
|
+
this.getColumns = (group) => {
|
|
12241
|
+
return [
|
|
12242
|
+
{
|
|
12243
|
+
sort_order: 1,
|
|
12244
|
+
direction: 1,
|
|
12245
|
+
index: 0,
|
|
12246
|
+
key: group.id,
|
|
12247
|
+
label: group.label,
|
|
12248
|
+
},
|
|
12249
|
+
];
|
|
12250
|
+
};
|
|
12251
|
+
this.getActions = (id) => {
|
|
12252
|
+
return this.actions.filter(item => item.map.includes(id));
|
|
12253
|
+
};
|
|
12254
|
+
this.renderEditableTableGroups = () => {
|
|
12255
|
+
const filteredItems = this.filterMap();
|
|
12256
|
+
const EditableTables = this.groups.map(group => {
|
|
12257
|
+
const currentItems = filteredItems[group.id];
|
|
12258
|
+
if (!(currentItems === null || currentItems === void 0 ? void 0 : currentItems.length)) {
|
|
12259
|
+
return;
|
|
12260
|
+
}
|
|
12261
|
+
return (h$1("duet-table", { variation: "plain", breakpoint: "none", role: "log", margin: this.hideGroups ? "none" : "auto" }, h$1("table", { class: "duet-upload-editable-table" }, h$1("thead", { class: "duet-upload-editable-table-header" }, h$1("tr", null, h$1("th", { class: {
|
|
12262
|
+
"duet-upload-editable-table-header-hidden": this.hideGroups,
|
|
12263
|
+
} }, !this.hideGroups ? (getLocaleString(group.label)) : (h$1("duet-visually-hidden", null, getLocaleString(group.label)))))), h$1("tbody", null, h$1("tr", null, h$1("td", { class: "duet-upload-editable-table-data" }, h$1("duet-editable-table", { breakpoint: "none", variation: "plain", groupId: group.id, columns: this.getColumns(group), actions: this.getActions(group.id), margin: "none", rows: currentItems })))))));
|
|
12264
|
+
});
|
|
12265
|
+
return EditableTables;
|
|
12266
|
+
};
|
|
12124
12267
|
}
|
|
12125
12268
|
watchValidHandler(newValue, oldValue) {
|
|
12126
12269
|
if (newValue !== oldValue) {
|
|
@@ -12144,6 +12287,68 @@ let DuetUpload$1 = class extends H {
|
|
|
12144
12287
|
// listen to the events from the component
|
|
12145
12288
|
this.verifyValidity();
|
|
12146
12289
|
}
|
|
12290
|
+
/**
|
|
12291
|
+
* Sets focus on the specified `duet-input`. Use this method instead of the global
|
|
12292
|
+
* `input.focus()`.
|
|
12293
|
+
*/
|
|
12294
|
+
async setFocus(options) {
|
|
12295
|
+
if (this.nativeInput) {
|
|
12296
|
+
this.nativeInput.focus(options);
|
|
12297
|
+
}
|
|
12298
|
+
return;
|
|
12299
|
+
}
|
|
12300
|
+
/**
|
|
12301
|
+
* Method for invoking the upload sequence
|
|
12302
|
+
*/
|
|
12303
|
+
async upload(metaData = undefined) {
|
|
12304
|
+
await this.setFocus();
|
|
12305
|
+
this.metaData = metaData;
|
|
12306
|
+
this.nativeInput.click();
|
|
12307
|
+
return;
|
|
12308
|
+
}
|
|
12309
|
+
/**
|
|
12310
|
+
* Method for forcing a render of the upload list, element.files can be changed externally
|
|
12311
|
+
* But it will only rerender on a new Map or a top Level change - this can be used to update
|
|
12312
|
+
* the tabular data if the automatic re-render is no sufficient
|
|
12313
|
+
*/
|
|
12314
|
+
async refresh() {
|
|
12315
|
+
this.kick();
|
|
12316
|
+
await this.setFocus();
|
|
12317
|
+
}
|
|
12318
|
+
/**
|
|
12319
|
+
* Get list of files, divided in errors and valid sections
|
|
12320
|
+
*/
|
|
12321
|
+
async getFiles() {
|
|
12322
|
+
if (!this.files || this.files.size === 0) {
|
|
12323
|
+
return false;
|
|
12324
|
+
}
|
|
12325
|
+
return this.getFilesAsArray();
|
|
12326
|
+
}
|
|
12327
|
+
/**
|
|
12328
|
+
* Convenience method for updating the value of a key:value inside an item in the files attribute
|
|
12329
|
+
*/
|
|
12330
|
+
async updateValue(item, key, value) {
|
|
12331
|
+
this.updateValueInMap(item, key, value);
|
|
12332
|
+
}
|
|
12333
|
+
/**
|
|
12334
|
+
* render() function
|
|
12335
|
+
* Always the last one in the class.
|
|
12336
|
+
*/
|
|
12337
|
+
render() {
|
|
12338
|
+
const identifier = this.identifier || this.uploadId;
|
|
12339
|
+
let caption = this.description.replace(/{maxfiles}/g, this.maxFiles.toString());
|
|
12340
|
+
caption = caption.replace(/{maxbytes}/g, `${Math.floor(this.maxBytes / 1024 / 1024)} MB`);
|
|
12341
|
+
caption = caption.replace(/{filetypes}/g, this.allowedExtensions.split(",").join(", "));
|
|
12342
|
+
return (h$1(Host, { class: { "duet-m-0": this.margin === "none" } }, h$1("duet-fieldset", { label: this.label, caption: caption }, h$1("slot", { name: "header" }), !this.files.size && (h$1("duet-label", { part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", theme: this.theme === "turva" ? "turva" : "default", size: "small", class: {
|
|
12343
|
+
"duet-upload-filelist-empty": !this.files.size,
|
|
12344
|
+
"duet-upload-filelist": true,
|
|
12345
|
+
"duet-upload-filelist-filled": this.files.size,
|
|
12346
|
+
}, id: this.labelId, for: identifier }, 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 => {
|
|
12347
|
+
this.nativeInput = input;
|
|
12348
|
+
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
12349
|
+
"duet-upload": true,
|
|
12350
|
+
}, disabled: this.disabled, "aria-hidden": "true", required: this.required, name: this.name, id: this.identifier, multiple: this.multiple, capture: "user" })))));
|
|
12351
|
+
}
|
|
12147
12352
|
/**
|
|
12148
12353
|
* XHR request utilities
|
|
12149
12354
|
*/
|
|
@@ -12265,68 +12470,6 @@ let DuetUpload$1 = class extends H {
|
|
|
12265
12470
|
component: "duet-upload",
|
|
12266
12471
|
});
|
|
12267
12472
|
}
|
|
12268
|
-
/**
|
|
12269
|
-
* Sets focus on the specified `duet-input`. Use this method instead of the global
|
|
12270
|
-
* `input.focus()`.
|
|
12271
|
-
*/
|
|
12272
|
-
async setFocus(options) {
|
|
12273
|
-
if (this.nativeInput) {
|
|
12274
|
-
this.nativeInput.focus(options);
|
|
12275
|
-
}
|
|
12276
|
-
return;
|
|
12277
|
-
}
|
|
12278
|
-
/**
|
|
12279
|
-
* Method for invoking the upload sequence
|
|
12280
|
-
*/
|
|
12281
|
-
async upload(metaData = undefined) {
|
|
12282
|
-
await this.setFocus();
|
|
12283
|
-
this.metaData = metaData;
|
|
12284
|
-
this.nativeInput.click();
|
|
12285
|
-
return;
|
|
12286
|
-
}
|
|
12287
|
-
/**
|
|
12288
|
-
* Method for forcing a render of the upload list, element.files can be changed externally
|
|
12289
|
-
* But it will only rerender on a new Map or a top Level change - this can be used to update
|
|
12290
|
-
* the tabular data if the automatic re-render is no sufficient
|
|
12291
|
-
*/
|
|
12292
|
-
async refresh() {
|
|
12293
|
-
this.kick();
|
|
12294
|
-
await this.setFocus();
|
|
12295
|
-
}
|
|
12296
|
-
/**
|
|
12297
|
-
* Get list of files, divided in errors and valid sections
|
|
12298
|
-
*/
|
|
12299
|
-
async getFiles() {
|
|
12300
|
-
if (!this.files || this.files.size === 0) {
|
|
12301
|
-
return false;
|
|
12302
|
-
}
|
|
12303
|
-
return this.getFilesAsArray();
|
|
12304
|
-
}
|
|
12305
|
-
/**
|
|
12306
|
-
* Convenience method for updating the value of a key:value inside an item in the files attribute
|
|
12307
|
-
*/
|
|
12308
|
-
async updateValue(item, key, value) {
|
|
12309
|
-
this.updateValueInMap(item, key, value);
|
|
12310
|
-
}
|
|
12311
|
-
/**
|
|
12312
|
-
* render() function
|
|
12313
|
-
* Always the last one in the class.
|
|
12314
|
-
*/
|
|
12315
|
-
render() {
|
|
12316
|
-
const identifier = this.identifier || this.uploadId;
|
|
12317
|
-
let caption = this.description.replace(/{maxfiles}/g, this.maxFiles.toString());
|
|
12318
|
-
caption = caption.replace(/{maxbytes}/g, `${Math.floor(this.maxBytes / 1024 / 1024)} MB`);
|
|
12319
|
-
caption = caption.replace(/{filetypes}/g, this.allowedExtensions.split(",").join(", "));
|
|
12320
|
-
return (h$1(Host, { class: { "duet-m-0": this.margin === "none" } }, h$1("duet-fieldset", { label: this.label, caption: caption }, h$1("slot", { name: "header" }), !this.files.size && (h$1("duet-label", { part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", theme: this.theme === "turva" ? "turva" : "default", size: "small", class: {
|
|
12321
|
-
"duet-upload-filelist-empty": !this.files.size,
|
|
12322
|
-
"duet-upload-filelist": true,
|
|
12323
|
-
"duet-upload-filelist-filled": this.files.size,
|
|
12324
|
-
}, id: this.labelId, for: identifier }, 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 && (h$1("duet-editable-table", { part: this.identifier ? `${this.identifier}-editable-table` : "duet-upload-editable-table", "aria-live": "polite", "aria-relevant": "removals", accessibleRole: "log", id: this.editableTableId, groups: this.groups, actions: this.actions, hideGroups: this.hideGroups, alignment: this.alignment, items: this.convertToDuetEditableTableItems() })), !!this.files.size && 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 => {
|
|
12325
|
-
this.nativeInput = input;
|
|
12326
|
-
}, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
|
|
12327
|
-
"duet-upload": true,
|
|
12328
|
-
}, disabled: this.disabled, "aria-hidden": "true", required: this.required, name: this.name, id: this.identifier, multiple: this.multiple, capture: "user" })))));
|
|
12329
|
-
}
|
|
12330
12473
|
get element() { return this; }
|
|
12331
12474
|
static get watchers() { return {
|
|
12332
12475
|
"valid": ["watchValidHandler"]
|
|
@@ -12445,11 +12588,12 @@ let DuetVisuallyHidden$1 = class extends H {
|
|
|
12445
12588
|
};
|
|
12446
12589
|
|
|
12447
12590
|
globalScripts();
|
|
12591
|
+
const DuetActionButton = /*@__PURE__*/proxyCustomElement(DuetActionButton$1, [1,"duet-action-button",{"theme":[1025],"iconName":[1,"icon-name"],"iconColor":[1,"icon-color"],"iconSize":[1,"icon-size"],"actionName":[1,"action-name"],"actionId":[1,"action-id"],"actionMeta":[1,"action-meta"],"disabled":[4],"color":[513],"background":[1],"ariaDescribedBy":[1,"accessible-described-by"],"ariaDescription":[1,"accessible-description"],"ariaLabelsDefaults":[16],"ariaLabels":[16],"ariaControls":[1,"accessible-controls"],"numbersStore":[32]}]);
|
|
12448
12592
|
const DuetAlert = /*@__PURE__*/proxyCustomElement(DuetAlert$1, [1,"duet-alert",{"theme":[1025],"accessibleLabelDefaults":[1,"accessible-label-default"],"accessibleLabel":[1,"accessible-label"],"announcements":[4],"icon":[1],"autoDismiss":[2,"auto-dismiss"],"margin":[1],"padding":[1],"variation":[1],"dismissible":[4],"isDismissed":[32],"timeoutID":[32]}]);
|
|
12449
12593
|
const DuetBadge = /*@__PURE__*/proxyCustomElement(DuetBadge$1, [1,"duet-badge",{"theme":[1025],"variation":[1],"margin":[1]}]);
|
|
12450
12594
|
const DuetBreadcrumb = /*@__PURE__*/proxyCustomElement(DuetBreadcrumb$1, [1,"duet-breadcrumb",{"theme":[1025],"href":[1025],"icon":[1025],"accessibleLabel":[1,"accessible-label"]}]);
|
|
12451
12595
|
const DuetBreadcrumbs = /*@__PURE__*/proxyCustomElement(DuetBreadcrumbs$1, [1,"duet-breadcrumbs",{"theme":[1025],"children":[32]}]);
|
|
12452
|
-
const DuetButton = /*@__PURE__*/proxyCustomElement(DuetButton$1, [1,"duet-button",{"accessibleLabel":[1,"accessible-label"],"accessibleControls":[1,"accessible-controls"],"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleExpanded":[4,"accessible-expanded"],"accessiblePressed":[4,"accessible-pressed"],"loading":[4],"variation":[1],"negative":[4],"theme":[1025],"margin":[1],"padding":[1],"centerText":[4,"center-text"],"wrapping":[1],"expand":[4],"fixed":[4],"disabled":[516],"name":[1],"value":[1],"identifier":[1],"submit":[516],"external":[4],"language":[1],"accessibleLabelExternalDefaults":[1,"accessible-label-external-default"],"accessibleLabelExternal":[1,"accessible-label-external"],"icon":[1],"color":[1],"iconRight":[4,"icon-right"],"iconSize":[1,"icon-size"],"size":[1],"iconOnly":[4,"icon-only"],"url":[513]}]);
|
|
12596
|
+
const DuetButton = /*@__PURE__*/proxyCustomElement(DuetButton$1, [1,"duet-button",{"accessibleLabel":[1,"accessible-label"],"accessibleControls":[1,"accessible-controls"],"accessiblePopup":[1,"accessible-popup"],"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleExpanded":[4,"accessible-expanded"],"accessiblePressed":[4,"accessible-pressed"],"loading":[4],"variation":[1],"negative":[4],"theme":[1025],"margin":[1],"padding":[1],"centerText":[4,"center-text"],"wrapping":[1],"expand":[4],"fixed":[4],"disabled":[516],"name":[1],"value":[1],"identifier":[1],"submit":[516],"external":[4],"language":[1],"accessibleLabelExternalDefaults":[1,"accessible-label-external-default"],"accessibleLabelExternal":[1,"accessible-label-external"],"icon":[1],"color":[1],"iconRight":[4,"icon-right"],"iconSize":[1,"icon-size"],"size":[1],"iconOnly":[4,"icon-only"],"url":[513]}]);
|
|
12453
12597
|
const DuetCaption = /*@__PURE__*/proxyCustomElement(DuetCaption$1, [1,"duet-caption",{"theme":[1025],"margin":[1],"selected":[4],"size":[1]}]);
|
|
12454
12598
|
const DuetCard = /*@__PURE__*/proxyCustomElement(DuetCard$1, [1,"duet-card",{"accessibleLabel":[1,"accessible-label"],"heading":[1],"secondaryHeading":[1,"secondary-heading"],"variation":[1],"collapsible":[4],"open":[1540],"headingLevel":[1,"heading-level"],"icon":[1],"image":[1],"background":[1],"padding":[1],"margin":[1],"theme":[1025],"url":[1]}]);
|
|
12455
12599
|
const DuetCheckbox = /*@__PURE__*/proxyCustomElement(DuetCheckbox$1, [2,"duet-checkbox",{"accessibleActiveDescendant":[1,"accessible-active-descendant"],"margin":[1],"accessibleControls":[1,"accessible-controls"],"accessibleIndex":[1,"accessible-index"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"required":[4],"theme":[1025],"disabled":[516],"identifier":[1],"label":[1],"labelHidden":[4,"label-hidden"],"name":[1],"role":[1],"checked":[1540],"value":[1537]}]);
|
|
@@ -12459,9 +12603,7 @@ const DuetCollapsible = /*@__PURE__*/proxyCustomElement(DuetCollapsible$1, [1,"d
|
|
|
12459
12603
|
const DuetCookieConsent = /*@__PURE__*/proxyCustomElement(DuetCookieConsent$1, [1,"duet-cookie-consent",{"accessibleLabel":[1,"accessible-label"],"theme":[1025]}]);
|
|
12460
12604
|
const DuetDatePicker = /*@__PURE__*/proxyCustomElement(DuetDatePicker$1, [2,"duet-date-picker",{"theme":[1025],"expand":[4],"name":[1],"identifier":[1],"label":[1],"caption":[1],"margin":[1],"language":[1],"placeholderDefaults":[1,"placeholder-default"],"placeholder":[1],"echoPlaceholder":[1540,"echo-placeholder"],"disabled":[516],"error":[1],"labelHidden":[4,"label-hidden"],"role":[1],"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"required":[4],"direction":[1],"tooltip":[1],"tooltipDirection":[1,"tooltip-direction"],"value":[1537],"min":[1],"max":[1],"validity":[1040],"open":[32],"focusedDay":[32],"inputValue":[32]},[[4,"click","handleDocumentClick"]]]);
|
|
12461
12605
|
const DuetDivider = /*@__PURE__*/proxyCustomElement(DuetDivider$1, [1,"duet-divider",{"theme":[1025],"margin":[1]}]);
|
|
12462
|
-
const DuetEditableTable = /*@__PURE__*/proxyCustomElement(DuetEditableTable$1, [
|
|
12463
|
-
const DuetEditableTableButton = /*@__PURE__*/proxyCustomElement(DuetEditableTableButton$1, [2,"duet-editable-table-button",{"theme":[1025],"actions":[16],"uid":[1],"group":[1],"keyName":[1,"key-name"],"isHovering":[32]}]);
|
|
12464
|
-
const DuetEditableTableItem = /*@__PURE__*/proxyCustomElement(DuetEditableTableItem$1, [1,"duet-editable-table-item",{"theme":[1025],"actions":[16],"groupId":[1,"group-id"],"alignment":[1],"keyName":[1,"key-name"],"data":[1040],"isHovering":[32]}]);
|
|
12606
|
+
const DuetEditableTable = /*@__PURE__*/proxyCustomElement(DuetEditableTable$1, [6,"duet-editable-table",{"margin":[1],"variation":[1],"sticky":[4],"stickyDistance":[1,"sticky-distance"],"breakpoint":[1],"actions":[1040],"columns":[1040],"rows":[1040],"sortable":[4],"groupId":[1,"group-id"],"theme":[1025],"accessibleRole":[1,"accessible-role"]}]);
|
|
12465
12607
|
const DuetEmptyState = /*@__PURE__*/proxyCustomElement(DuetEmptyState$1, [1,"duet-empty-state",{"theme":[1025],"icon":[1],"size":[1]}]);
|
|
12466
12608
|
const DuetFieldset = /*@__PURE__*/proxyCustomElement(DuetFieldset$1, [1,"duet-fieldset",{"theme":[1025],"margin":[1],"caption":[1],"label":[1],"error":[1],"labelHidden":[4,"label-hidden"],"hasTooltip":[32]}]);
|
|
12467
12609
|
const DuetFooter = /*@__PURE__*/proxyCustomElement(DuetFooter$1, [1,"duet-footer",{"theme":[1025],"variation":[1],"margin":[1],"logoHref":[1,"logo-href"],"language":[1025],"items":[8],"accessibleLabelExternalDefaults":[1,"accessible-label-external-default"],"accessibleLabelExternal":[1,"accessible-label-external"],"menu":[8],"processedItems":[32],"processedMenu":[32]}]);
|
|
@@ -12482,7 +12624,7 @@ const DuetModal = /*@__PURE__*/proxyCustomElement(DuetModal$1, [1,"duet-modal",{
|
|
|
12482
12624
|
const DuetNotification = /*@__PURE__*/proxyCustomElement(DuetNotification$1, [1,"duet-notification",{"language":[1],"accessibleLabelUnreadDefaults":[16],"accessibleLabelUnread":[1,"accessible-label-unread"],"url":[1],"date":[1],"highlight":[4],"external":[4],"theme":[1025]}]);
|
|
12483
12625
|
const DuetNotificationDrawer = /*@__PURE__*/proxyCustomElement(DuetNotificationDrawer$1, [1,"duet-notification-drawer",{"icon":[1],"label":[1],"language":[1],"accessibleLabelNotificationsDefaults":[1,"accessible-label-notification-default"],"accessibleLabelNotifications":[1,"accessible-label-notifications"],"badge":[4],"theme":[1025],"direction":[1],"isOpen":[32],"hasNotifications":[32]},[[6,"focus","handleClickFocusOutside"],[6,"click","handleClickFocusOutside"]]]);
|
|
12484
12626
|
const DuetNumberInput = /*@__PURE__*/proxyCustomElement(DuetNumberInput$1, [2,"duet-number-input",{"language":[1025],"locale":[1],"unit":[1],"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleLiveDefaults":[1,"accessible-live-default"],"accessibleLive":[1,"accessible-live"],"accessibleLiveEnabled":[4,"accessible-live-enabled"],"accessibleAddDefaults":[1,"accessible-add-default"],"accessibleAdd":[1,"accessible-add"],"accessibleSubtractDefaults":[1,"accessible-subtract-defaults"],"accessibleSubtract":[1,"accessible-subtract"],"theme":[1025],"margin":[1],"expand":[4],"identifier":[1],"min":[2],"labelDefaults":[1,"label-default"],"label":[1],"labelHidden":[4,"label-hidden"],"max":[2],"name":[1],"error":[1],"tooltip":[1],"step":[2],"rounding":[4],"role":[1],"disabled":[516],"required":[4],"value":[1025],"focusedValue":[32]}]);
|
|
12485
|
-
const DuetPagination = /*@__PURE__*/proxyCustomElement(DuetPagination$1, [1,"duet-pagination",{"theme":[1025],"jumpString":[1,"jump-string"],"
|
|
12627
|
+
const DuetPagination = /*@__PURE__*/proxyCustomElement(DuetPagination$1, [1,"duet-pagination",{"theme":[1025],"jumpString":[1,"jump-string"],"variation":[1],"accessibleLabelsDefaults":[16],"accessibleLabels":[16],"take":[1026],"visibleItems":[1026,"visible-items"],"total":[1026],"ariaControls":[1,"accessible-controls"],"current":[1026],"numbersStore":[32],"totalPages":[32],"internalSectionIndex":[32]}]);
|
|
12486
12628
|
const DuetParagraph = /*@__PURE__*/proxyCustomElement(DuetParagraph$1, [1,"duet-paragraph",{"theme":[1025],"margin":[1],"size":[1],"weight":[1],"variation":[1],"color":[1]}]);
|
|
12487
12629
|
const DuetProgress = /*@__PURE__*/proxyCustomElement(DuetProgress$1, [0,"duet-progress",{"accessibleDescribedBy":[1,"accessible-described-by"],"accessibleLabel":[1,"accessible-label"],"accessibleLabelUploadDefaults":[1,"accessible-label-upload-defaults"],"accessibleLabelUpload":[1,"accessible-label-upload"],"progress":[1538],"caption":[1],"height":[1],"theme":[1025]}]);
|
|
12488
12630
|
const DuetRadio = /*@__PURE__*/proxyCustomElement(DuetRadio$1, [2,"duet-radio",{"accessibleActiveDescendant":[1,"accessible-active-descendant"],"accessibleIndex":[1,"accessible-index"],"margin":[1],"accessibleControls":[1,"accessible-controls"],"accessibleOwns":[1,"accessible-owns"],"accessibleDescribedBy":[1,"accessible-described-by"],"theme":[1025],"disabled":[516],"required":[4],"blockEvents":[4,"block-events"],"identifier":[1],"label":[1],"name":[1],"role":[1],"groupDisabled":[4,"group-disabled"],"groupDirection":[1,"group-direction"],"groupResponsive":[4,"group-responsive"],"checked":[1540],"value":[1537]}]);
|
|
@@ -12502,13 +12644,14 @@ const DuetTextarea = /*@__PURE__*/proxyCustomElement(DuetTextarea$1, [2,"duet-te
|
|
|
12502
12644
|
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"],"label":[1],"required":[4],"disabled":[516],"checked":[1540],"value":[1537],"identifier":[1],"name":[1],"role":[1]}]);
|
|
12503
12645
|
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"]]]);
|
|
12504
12646
|
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"]]]);
|
|
12505
|
-
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],"hideButton":[4,"hide-upload-button"],"actions":[
|
|
12647
|
+
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],"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]}]);
|
|
12506
12648
|
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]}]);
|
|
12507
12649
|
const DuetVisuallyHidden = /*@__PURE__*/proxyCustomElement(DuetVisuallyHidden$1, [1,"duet-visually-hidden"]);
|
|
12508
12650
|
const defineCustomElements = (opts) => {
|
|
12509
12651
|
if (typeof customElements !== 'undefined') {
|
|
12510
12652
|
[
|
|
12511
|
-
|
|
12653
|
+
DuetActionButton,
|
|
12654
|
+
DuetAlert,
|
|
12512
12655
|
DuetBadge,
|
|
12513
12656
|
DuetBreadcrumb,
|
|
12514
12657
|
DuetBreadcrumbs,
|
|
@@ -12523,8 +12666,6 @@ const defineCustomElements = (opts) => {
|
|
|
12523
12666
|
DuetDatePicker,
|
|
12524
12667
|
DuetDivider,
|
|
12525
12668
|
DuetEditableTable,
|
|
12526
|
-
DuetEditableTableButton,
|
|
12527
|
-
DuetEditableTableItem,
|
|
12528
12669
|
DuetEmptyState,
|
|
12529
12670
|
DuetFieldset,
|
|
12530
12671
|
DuetFooter,
|
|
@@ -12968,4 +13109,4 @@ const shadowCss = /*#__PURE__*/Object.freeze({
|
|
|
12968
13109
|
scopeCss: scopeCss
|
|
12969
13110
|
});
|
|
12970
13111
|
|
|
12971
|
-
export { DuetAlert, DuetBadge, DuetBreadcrumb, DuetBreadcrumbs, DuetButton, DuetCaption, DuetCard, DuetCheckbox, DuetChoice, DuetChoiceGroup, DuetCollapsible, DuetCookieConsent, DuetDatePicker, DuetDivider, DuetEditableTable,
|
|
13112
|
+
export { DuetActionButton, DuetAlert, DuetBadge, DuetBreadcrumb, DuetBreadcrumbs, DuetButton, DuetCaption, DuetCard, DuetCheckbox, DuetChoice, DuetChoiceGroup, DuetCollapsible, DuetCookieConsent, DuetDatePicker, DuetDivider, DuetEditableTable, DuetEmptyState, DuetFieldset, DuetFooter, DuetGrid, DuetGridItem, DuetHeader, DuetHeading, DuetHero, DuetIcon, DuetInput, DuetLabel, DuetLayout, DuetLink, DuetList, DuetListItem, DuetLogo, DuetModal, DuetNotification, DuetNotificationDrawer, DuetNumberInput, DuetPagination, DuetParagraph, DuetProgress, DuetRadio, DuetRadioGroup, DuetRangeSlider, DuetRangeStepper, DuetScrollable, DuetSelect, DuetSpacer, DuetSpinner, DuetStep, DuetStepper, DuetTab, DuetTabGroup, DuetTable, DuetTextarea, DuetToggle, DuetTooltip, DuetTray, DuetUpload, DuetUploadAriaStatus, DuetVisuallyHidden, defineCustomElements, setAssetPath, setPlatformOptions };
|