@eunomia/elements 1.0.0-beta.6 → 1.0.0-beta.8
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/README.md +1 -1
- package/dist/cdn/components/chunks/{chunk-KDN4O5W2.js → chunk-32L2QYWQ.js} +5 -5
- package/dist/cdn/components/chunks/{chunk-JYIIWN2P.js → chunk-36KLGY6U.js} +8 -8
- package/dist/cdn/components/chunks/chunk-3BMACIDO.js +1 -0
- package/dist/cdn/components/chunks/{chunk-2Y2EU2CI.js → chunk-3UUZM7X2.js} +1 -1
- package/dist/cdn/components/chunks/chunk-55PUDL7D.js +109 -0
- package/dist/cdn/components/chunks/chunk-5LA5DQMP.js +1 -0
- package/dist/cdn/components/chunks/chunk-5LXGJVJR.js +1 -0
- package/dist/cdn/components/chunks/{chunk-ZKZV2YG5.js → chunk-5XPOGBPL.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-LMVW522V.js → chunk-62RLISRD.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-PMPSJG5V.js → chunk-6FYW5TQU.js} +3 -3
- package/dist/cdn/components/chunks/chunk-6TIEBY34.js +1 -0
- package/dist/cdn/components/chunks/{chunk-MOMYII3P.js → chunk-AH2SKZ7T.js} +14 -1
- package/dist/cdn/components/chunks/chunk-AK2DIJX7.js +1 -0
- package/dist/cdn/components/chunks/chunk-B5XMGWM7.js +10 -0
- package/dist/cdn/components/chunks/chunk-GVS6IUKC.js +1 -0
- package/dist/cdn/components/chunks/chunk-GWLD2I3P.js +8 -0
- package/dist/cdn/components/chunks/{chunk-UDVB4LAE.js → chunk-I4ERDXSM.js} +5 -3
- package/dist/cdn/components/chunks/{chunk-QZ5SHR3I.js → chunk-J3SZBXM6.js} +2 -2
- package/dist/cdn/components/chunks/chunk-JAGZL7JH.js +1 -0
- package/dist/cdn/components/chunks/{chunk-VYFR364B.js → chunk-LD35BFNK.js} +18 -17
- package/dist/cdn/components/chunks/{chunk-XDPRWUKN.js → chunk-MQQJ6DID.js} +1 -1
- package/dist/cdn/components/chunks/chunk-P6LGU3FT.js +1 -0
- package/dist/cdn/components/chunks/chunk-QL5GSW2A.js +1 -0
- package/dist/cdn/components/chunks/{chunk-UYZR4JXZ.js → chunk-QSZO4GIH.js} +45 -9
- package/dist/cdn/components/chunks/{chunk-7KKWYPHY.js → chunk-QXQ25SQS.js} +21 -19
- package/dist/cdn/components/chunks/{chunk-SZYEBMG6.js → chunk-QYB6Z6FG.js} +5 -5
- package/dist/cdn/components/chunks/{chunk-RIFF2D2F.js → chunk-RGC3I6MK.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-L2ADCEN7.js → chunk-SVGWCKWT.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-N6ZW5CDN.js → chunk-TCSB2MLU.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-MQQ4BGVJ.js → chunk-TFTRCIIK.js} +7 -6
- package/dist/cdn/components/chunks/chunk-TLBXTBMM.js +46 -0
- package/dist/cdn/components/chunks/chunk-UVHVQRPT.js +1 -0
- package/dist/cdn/components/chunks/chunk-WIUERJII.js +1 -0
- package/dist/cdn/components/chunks/chunk-WW4BTWMH.js +1 -0
- package/dist/cdn/components/eun-alert.js +13 -6
- package/dist/cdn/components/eun-animate.js +6 -6
- package/dist/cdn/components/eun-badge.js +1 -1
- package/dist/cdn/components/eun-button.js +1 -1
- package/dist/cdn/components/eun-calendar.js +2 -2
- package/dist/cdn/components/eun-card.js +4 -4
- package/dist/cdn/components/eun-carousel.js +26 -22
- package/dist/cdn/components/eun-check-card.js +1 -1
- package/dist/cdn/components/eun-checkbox-list.js +11 -8
- package/dist/cdn/components/eun-checkbox.js +1 -1
- package/dist/cdn/components/eun-chip.js +17 -11
- package/dist/cdn/components/eun-collapse.js +1 -1
- package/dist/cdn/components/eun-color-picker.js +74 -69
- package/dist/cdn/components/eun-counter.js +16 -14
- package/dist/cdn/components/eun-date-picker.js +67 -63
- package/dist/cdn/components/eun-description-list.js +2 -2
- package/dist/cdn/components/eun-divider.js +3 -3
- package/dist/cdn/components/eun-drawer.js +21 -22
- package/dist/cdn/components/eun-dropdown-button.js +1 -1
- package/dist/cdn/components/eun-dropdown-item.js +3 -3
- package/dist/cdn/components/eun-fab.js +2 -2
- package/dist/cdn/components/eun-icon.js +1 -1
- package/dist/cdn/components/eun-image-card.js +1 -1
- package/dist/cdn/components/eun-image-carousel.js +10 -10
- package/dist/cdn/components/eun-infinite-list.js +1 -1
- package/dist/cdn/components/eun-input-file.js +21 -21
- package/dist/cdn/components/eun-input-phone.js +16 -12
- package/dist/cdn/components/eun-input.js +1 -1
- package/dist/cdn/components/eun-link.js +59 -13
- package/dist/cdn/components/eun-loader.js +1 -1
- package/dist/cdn/components/eun-modal.js +33 -23
- package/dist/cdn/components/eun-pagination.js +16 -16
- package/dist/cdn/components/eun-password-strength.js +14 -10
- package/dist/cdn/components/eun-radio-card.js +1 -1
- package/dist/cdn/components/eun-radio-list.js +11 -8
- package/dist/cdn/components/eun-radio.js +1 -1
- package/dist/cdn/components/eun-rating.js +276 -0
- package/dist/cdn/components/eun-scheduler-event-editor.js +11 -11
- package/dist/cdn/components/eun-scheduler-event.js +1 -1
- package/dist/cdn/components/eun-scheduler.js +28 -28
- package/dist/cdn/components/eun-search.js +36 -32
- package/dist/cdn/components/eun-select.js +27 -27
- package/dist/cdn/components/eun-sidebar.js +73 -26
- package/dist/cdn/components/eun-skeleton.js +1 -1
- package/dist/cdn/components/eun-slider.js +3 -3
- package/dist/cdn/components/eun-sliding-card.js +1 -1
- package/dist/cdn/components/eun-step.js +5 -4
- package/dist/cdn/components/eun-stepper.js +30 -30
- package/dist/cdn/components/eun-switch.js +1 -1
- package/dist/cdn/components/eun-tab-group.js +4 -4
- package/dist/cdn/components/eun-tab-panel.js +1 -1
- package/dist/cdn/components/eun-tab.js +1 -1
- package/dist/cdn/components/eun-table-action-bar.js +1 -1
- package/dist/cdn/components/eun-table.js +2 -2
- package/dist/cdn/components/eun-tag.js +3 -3
- package/dist/cdn/components/eun-textarea.js +36 -28
- package/dist/cdn/components/eun-time-picker.js +31 -28
- package/dist/cdn/components/eun-toast.js +24 -15
- package/dist/cdn/components/eun-toggle-group.js +75 -37
- package/dist/cdn/components/eun-toggle-item.js +9 -9
- package/dist/cdn/components/eun-toggle.js +2 -2
- package/dist/cdn/components/eun-toolbar.js +22 -22
- package/dist/cdn/components/eun-tooltip.js +6 -6
- package/dist/cdn/styles/eunomia-themes.css +1 -1
- package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
- package/dist/components/action/button/button.d.ts +4 -3
- package/dist/components/action/button/button.js +6 -9
- package/dist/components/action/button/button.styles.js +13 -8
- package/dist/components/action/dropdown-button/dropdown-button.d.ts +4 -6
- package/dist/components/action/dropdown-button/dropdown-button.js +16 -13
- package/dist/components/action/dropdown-button/dropdown-item.d.ts +10 -2
- package/dist/components/action/dropdown-button/dropdown-item.js +24 -9
- package/dist/components/action/link/link.d.ts +10 -1
- package/dist/components/action/link/link.js +13 -1
- package/dist/components/action/link/link.styles.js +50 -3
- package/dist/components/action/toggle/toggle-group.d.ts +12 -2
- package/dist/components/action/toggle/toggle-group.js +18 -3
- package/dist/components/action/toggle/toggle-group.styles.js +58 -20
- package/dist/components/action/toggle/toggle-item.js +1 -3
- package/dist/components/action/toggle/toggle-item.styles.js +7 -7
- package/dist/components/action/toggle/toggle.js +1 -1
- package/dist/components/alert/alert/alert.d.ts +9 -7
- package/dist/components/alert/alert/alert.js +11 -14
- package/dist/components/alert/alert/alert.styles.js +9 -2
- package/dist/components/alert/drawer/drawer.d.ts +30 -5
- package/dist/components/alert/drawer/drawer.js +48 -13
- package/dist/components/alert/drawer/drawer.styles.js +7 -7
- package/dist/components/alert/modal/modal.d.ts +35 -10
- package/dist/components/alert/modal/modal.js +55 -28
- package/dist/components/alert/modal/modal.styles.js +17 -6
- package/dist/components/alert/toast/toast.d.ts +7 -5
- package/dist/components/alert/toast/toast.js +12 -15
- package/dist/components/alert/toast/toast.styles.js +18 -9
- package/dist/components/content/badge/badge.js +2 -2
- package/dist/components/content/card/card.js +1 -1
- package/dist/components/content/card/card.styles.js +2 -2
- package/dist/components/content/chip/chip.d.ts +4 -4
- package/dist/components/content/chip/chip.js +11 -10
- package/dist/components/content/chip/chip.styles.js +9 -3
- package/dist/components/content/description-list/description-list.js +3 -3
- package/dist/components/content/icon/icon.d.ts +3 -0
- package/dist/components/content/icon/icon.js +3 -0
- package/dist/components/content/icon/icon.style.d.ts +2 -0
- package/dist/components/content/icon/icon.style.js +4 -0
- package/dist/components/content/image-carousel/image-carousel.d.ts +12 -12
- package/dist/components/content/image-carousel/image-carousel.js +29 -28
- package/dist/components/content/password-strength/password-strength.d.ts +21 -6
- package/dist/components/content/password-strength/password-strength.js +37 -16
- package/dist/components/content/password-strength/password-strength.styles.js +4 -0
- package/dist/components/content/tag/tag.js +2 -2
- package/dist/components/content/tooltip/tooltip.d.ts +16 -9
- package/dist/components/content/tooltip/tooltip.js +31 -15
- package/dist/components/content/tooltip/tooltip.styles.js +1 -1
- package/dist/components/form/checkbox/check-card.d.ts +1 -0
- package/dist/components/form/checkbox/check-card.js +1 -0
- package/dist/components/form/checkbox/checkbox-list.d.ts +17 -0
- package/dist/components/form/checkbox/checkbox-list.js +39 -10
- package/dist/components/form/checkbox/checkbox.d.ts +1 -0
- package/dist/components/form/checkbox/checkbox.js +3 -1
- package/dist/components/form/checkbox/checkbox.styles.js +3 -2
- package/dist/components/form/color-picker/color-picker.d.ts +47 -28
- package/dist/components/form/color-picker/color-picker.js +73 -51
- package/dist/components/form/color-picker/color-picker.styles.js +14 -1
- package/dist/components/form/counter/counter.d.ts +24 -18
- package/dist/components/form/counter/counter.js +61 -61
- package/dist/components/form/counter/counter.styles.js +6 -4
- package/dist/components/form/date-picker/date-picker.d.ts +33 -7
- package/dist/components/form/date-picker/date-picker.js +82 -56
- package/dist/components/form/date-picker/date-picker.styles.js +9 -6
- package/dist/components/form/input/input.d.ts +43 -39
- package/dist/components/form/input/input.js +91 -110
- package/dist/components/form/input-file/input-file.d.ts +26 -13
- package/dist/components/form/input-file/input-file.js +35 -35
- package/dist/components/form/input-file/input-file.styles.js +4 -4
- package/dist/components/form/input-phone/input-phone.d.ts +28 -5
- package/dist/components/form/input-phone/input-phone.js +47 -13
- package/dist/components/form/input-phone/input-phone.styles.js +6 -3
- package/dist/components/form/radio/radio-card.d.ts +1 -0
- package/dist/components/form/radio/radio-card.js +1 -0
- package/dist/components/form/radio/radio-list.d.ts +23 -7
- package/dist/components/form/radio/radio-list.js +47 -22
- package/dist/components/form/radio/radio.d.ts +1 -0
- package/dist/components/form/radio/radio.js +1 -0
- package/dist/components/form/rating/rating.d.ts +349 -0
- package/dist/components/form/rating/rating.js +665 -0
- package/dist/components/form/rating/rating.styles.d.ts +1 -0
- package/dist/components/form/rating/rating.styles.js +213 -0
- package/dist/components/form/search/search.d.ts +72 -18
- package/dist/components/form/search/search.js +135 -72
- package/dist/components/form/search/search.styles.js +2 -0
- package/dist/components/form/select/select.d.ts +29 -10
- package/dist/components/form/select/select.js +65 -41
- package/dist/components/form/shared-styles/field.styles.js +45 -8
- package/dist/components/form/shared-styles/listbox.styles.js +15 -1
- package/dist/components/form/slider/slider.d.ts +7 -8
- package/dist/components/form/slider/slider.js +9 -12
- package/dist/components/form/switch/switch.d.ts +1 -0
- package/dist/components/form/switch/switch.js +1 -0
- package/dist/components/form/textarea/textarea.d.ts +90 -23
- package/dist/components/form/textarea/textarea.js +194 -44
- package/dist/components/form/textarea/textarea.styles.js +3 -0
- package/dist/components/form/time-picker/time-picker-columns.d.ts +2 -2
- package/dist/components/form/time-picker/time-picker-columns.js +8 -8
- package/dist/components/form/time-picker/time-picker.d.ts +30 -9
- package/dist/components/form/time-picker/time-picker.js +66 -40
- package/dist/components/form/time-picker/time-picker.styles.js +7 -5
- package/dist/components/layout/animate/animate.js +3 -2
- package/dist/components/layout/animate/animate.styles.js +2 -2
- package/dist/components/layout/divider/divider.js +1 -1
- package/dist/components/layout/divider/divider.styles.js +1 -1
- package/dist/components/loader/loader/loader.js +2 -2
- package/dist/components/loader/loader/loader.styles.js +14 -12
- package/dist/components/loader/skeleton/skeleton.js +1 -1
- package/dist/components/navigation/carousel/carousel.d.ts +32 -9
- package/dist/components/navigation/carousel/carousel.js +88 -41
- package/dist/components/navigation/carousel/carousel.styles.js +10 -6
- package/dist/components/navigation/pagination/pagination.d.ts +23 -21
- package/dist/components/navigation/pagination/pagination.js +30 -53
- package/dist/components/navigation/sidebar/sidebar.d.ts +113 -65
- package/dist/components/navigation/sidebar/sidebar.js +161 -118
- package/dist/components/navigation/sidebar/sidebar.styles.d.ts +1 -1
- package/dist/components/navigation/sidebar/sidebar.styles.js +74 -24
- package/dist/components/navigation/stepper/step.js +9 -8
- package/dist/components/navigation/stepper/stepper.d.ts +1 -3
- package/dist/components/navigation/stepper/stepper.js +15 -26
- package/dist/components/navigation/tabs/tab-group/tab-group.js +2 -2
- package/dist/components/navigation/tabs/tab-group/tab-group.styles.js +2 -2
- package/dist/components/navigation/toolbar/toolbar.d.ts +23 -13
- package/dist/components/navigation/toolbar/toolbar.js +28 -35
- package/dist/components/navigation/toolbar/toolbar.styles.js +18 -17
- package/dist/events/select.event.d.ts +3 -2
- package/dist/events/select.event.js +2 -1
- package/dist/features/scheduler/calendar/calendar.js +1 -1
- package/dist/features/scheduler/scheduler/scheduler.d.ts +7 -7
- package/dist/features/scheduler/scheduler/scheduler.js +15 -24
- package/dist/features/scheduler/scheduler-event/scheduler-event.js +3 -3
- package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +1 -1
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.d.ts +6 -4
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js +7 -8
- package/dist/features/table/table/table.js +1 -1
- package/dist/features/table/table-action-bar/table-action-bar.js +2 -2
- package/dist/i18n/en.d.ts +68 -0
- package/dist/i18n/en.js +68 -0
- package/dist/i18n/fr.js +68 -2
- package/dist/index.d.ts +3 -0
- package/dist/index.js +1 -0
- package/dist/mixins/button.mixin.d.ts +1 -1
- package/dist/mixins/button.mixin.js +9 -6
- package/dist/mixins/check.mixin.js +11 -10
- package/dist/mixins/dialog-surface.mixin.d.ts +8 -0
- package/dist/mixins/disabled.mixin.d.ts +5 -0
- package/dist/mixins/disabled.mixin.js +21 -1
- package/dist/mixins/editable.mixin.js +28 -5
- package/dist/mixins/field-appearance.mixin.js +3 -2
- package/dist/mixins/field-size.mixin.d.ts +19 -0
- package/dist/mixins/field-size.mixin.js +33 -0
- package/dist/mixins/form.mixin.d.ts +4 -0
- package/dist/mixins/form.mixin.js +87 -13
- package/dist/mixins/localizable.mixin.d.ts +1 -1
- package/dist/mixins/localizable.mixin.js +1 -1
- package/dist/mixins/radio.mixin.js +11 -10
- package/dist/mixins/readonly.mixin.d.ts +2 -1
- package/dist/mixins/readonly.mixin.js +10 -3
- package/dist/mixins/rounded.mixin.d.ts +18 -0
- package/dist/mixins/rounded.mixin.js +32 -0
- package/dist/ssr/alert-ssr.css +187 -0
- package/dist/ssr/badge-ssr.css +67 -0
- package/dist/ssr/breadcrumb-ssr.css +41 -0
- package/dist/ssr/button-ssr.css +5 -5
- package/dist/ssr/card-ssr.css +27 -15
- package/dist/ssr/carousel-ssr.css +247 -0
- package/dist/ssr/checkbox-ssr.css +67 -0
- package/dist/ssr/chip-ssr.css +250 -0
- package/dist/ssr/collapse-ssr.css +180 -0
- package/dist/ssr/field-ssr.css +202 -0
- package/dist/ssr/icon-ssr.css +266 -0
- package/dist/ssr/image-carousel-ssr.css +34 -0
- package/dist/ssr/links-ssr.css +44 -1
- package/dist/ssr/pagination-ssr.css +4 -0
- package/dist/ssr/rating-ssr.css +254 -0
- package/dist/ssr/sidebar-ssr.css +102 -3
- package/dist/ssr/skeleton-ssr.css +63 -0
- package/dist/ssr/tabs-ssr.css +129 -0
- package/dist/ssr/toggle-group-ssr.css +233 -0
- package/dist/ssr/toolbar-ssr.css +81 -2
- package/dist/types/variant.type.d.ts +4 -1
- package/dist/utils/boolean.utils.d.ts +14 -0
- package/dist/utils/boolean.utils.js +20 -0
- package/dist/utils/dropdown-menu.utils.d.ts +1 -1
- package/dist/utils/focusable-elements.utils.d.ts +12 -0
- package/dist/utils/focusable-elements.utils.js +26 -0
- package/dist/utils/implicit-submission.utils.d.ts +18 -0
- package/dist/utils/implicit-submission.utils.js +79 -0
- package/dist/utils/input-modality.utils.d.ts +13 -0
- package/dist/utils/input-modality.utils.js +34 -0
- package/dist/utils/listbox-options.utils.d.ts +11 -0
- package/dist/utils/listbox-options.utils.js +41 -3
- package/dist/utils/theme-generator.utils.d.ts +8 -2
- package/dist/utils/theme-generator.utils.js +30 -9
- package/package.json +26 -7
- package/styles/themes/mixins/eunomia-neutrals.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +6 -2
- package/dist/cdn/components/chunks/chunk-4PI6RDUS.js +0 -1
- package/dist/cdn/components/chunks/chunk-6VK6SHCG.js +0 -1
- package/dist/cdn/components/chunks/chunk-A3X4KD2X.js +0 -1
- package/dist/cdn/components/chunks/chunk-BQFJR2UP.js +0 -110
- package/dist/cdn/components/chunks/chunk-G5SBDQQ3.js +0 -1
- package/dist/cdn/components/chunks/chunk-KSZRQRN4.js +0 -1
- package/dist/cdn/components/chunks/chunk-PE4DAXHQ.js +0 -3
- package/dist/cdn/components/chunks/chunk-RS7TWEMQ.js +0 -1
- package/dist/cdn/components/chunks/chunk-UDOZRIJZ.js +0 -1
- package/dist/cdn/components/chunks/chunk-VOTRXBDS.js +0 -38
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { css } from "lit";
|
|
1
|
+
import { css, unsafeCSS } from "lit";
|
|
2
|
+
import { EUNOMIA_BREAKPOINTS, mediaBelow, } from "../../../breakpoints.js";
|
|
2
3
|
/**
|
|
3
4
|
* Base style for the sidebar component.
|
|
4
5
|
*
|
|
@@ -6,13 +7,16 @@ import { css } from "lit";
|
|
|
6
7
|
* [--sidebar-width] - Set a custom expanded width to the sidebar ; also the floor of the drag-resize range and, once resized, holds the user's chosen width
|
|
7
8
|
* [--sidebar-mini-width] - Set a custom width for the collapse-mode="mini" state ; also the floor of the drag-resize range
|
|
8
9
|
* [--sidebar-max-width] - Set a custom ceiling for the drag-resize range
|
|
9
|
-
* [--sidebar-background] - Set a custom background color to the sidebar
|
|
10
|
-
* [--sidebar-color] - Set a custom text color to the sidebar (pair with --sidebar-background for contrast)
|
|
10
|
+
* [--sidebar-background] - Set a custom background color to the sidebar, for both themes. Use an opaque color : the sidebar always paints its own background, so a translucent one adds up with whatever is painted behind it. Use transparent to show the background behind the sidebar instead
|
|
11
|
+
* [--sidebar-color] - Set a custom text color to the sidebar, for both themes (pair with --sidebar-background for contrast)
|
|
11
12
|
* [--sidebar-border-color] - Set a custom color to the sidebar's side border
|
|
12
13
|
* [--sidebar-padding] - Set a custom padding to the header/body/footer
|
|
13
14
|
* [--sidebar-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --sidebar-padding is set
|
|
14
15
|
* [--sidebar-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --sidebar-padding is set
|
|
15
16
|
* [--sidebar-gap] - Set a custom gap inside the header/footer rows
|
|
17
|
+
* [--sidebar-toggle-color] - Set a custom color to the toggle button
|
|
18
|
+
* [--sidebar-toggle-background-hover] - Set a custom background color to the toggle button on hover
|
|
19
|
+
* [--sidebar-resize-handle-delay] - Set how long the pointer must rest on the border before the resize handle shows (default 300ms, 0 to show it right away)
|
|
16
20
|
* [--sidebar-transition-duration] - Set a custom duration for the collapse/resize transition
|
|
17
21
|
*/
|
|
18
22
|
const base = css `
|
|
@@ -25,6 +29,14 @@ const base = css `
|
|
|
25
29
|
--sidebar-border-color,
|
|
26
30
|
var(--eun-border-color, #dee0e7)
|
|
27
31
|
);
|
|
32
|
+
--_toggleColor: var(
|
|
33
|
+
--sidebar-toggle-color,
|
|
34
|
+
var(--eun-text-secondary, #484e61)
|
|
35
|
+
);
|
|
36
|
+
--_toggleBackgroundHover: var(
|
|
37
|
+
--sidebar-toggle-background-hover,
|
|
38
|
+
var(--eun-content-hover, #edeff0)
|
|
39
|
+
);
|
|
28
40
|
--_paddingBlock: var(
|
|
29
41
|
--sidebar-padding,
|
|
30
42
|
var(--sidebar-padding-block, var(--eun-space-m, 16px))
|
|
@@ -51,22 +63,37 @@ const base = css `
|
|
|
51
63
|
:host([dragging]) {
|
|
52
64
|
transition: none;
|
|
53
65
|
}
|
|
66
|
+
:host([theme="dark"]) {
|
|
67
|
+
--_background: var(
|
|
68
|
+
--sidebar-background,
|
|
69
|
+
var(--eun-surface-inverse, #0b1620)
|
|
70
|
+
);
|
|
71
|
+
--_color: var(--sidebar-color, var(--eun-text-on-inverse, #f5f7fa));
|
|
72
|
+
--_borderColor: var(
|
|
73
|
+
--sidebar-border-color,
|
|
74
|
+
color-mix(in srgb, var(--_color) 16%, transparent)
|
|
75
|
+
);
|
|
76
|
+
--_toggleColor: var(
|
|
77
|
+
--sidebar-toggle-color,
|
|
78
|
+
color-mix(in srgb, var(--_color) 75%, transparent)
|
|
79
|
+
);
|
|
80
|
+
--_toggleBackgroundHover: var(
|
|
81
|
+
--sidebar-toggle-background-hover,
|
|
82
|
+
color-mix(in srgb, var(--_color) 12%, transparent)
|
|
83
|
+
);
|
|
84
|
+
}
|
|
54
85
|
:host([position="end"]) {
|
|
55
86
|
border-inline-end: none;
|
|
56
87
|
border-inline-start: var(--eun-border-width-s, 1px) solid
|
|
57
88
|
var(--_borderColor);
|
|
58
89
|
}
|
|
59
|
-
:host([collapsed][collapse-mode="mini"]) {
|
|
90
|
+
:host([collapsed]:is([collapse-mode="mini"], :not([collapse-mode]))) {
|
|
60
91
|
--_width: var(--_miniWidth);
|
|
61
92
|
}
|
|
62
93
|
:host([collapsed][collapse-mode="hidden"]) {
|
|
63
94
|
--_width: 0px;
|
|
64
95
|
border-color: transparent;
|
|
65
96
|
}
|
|
66
|
-
:host([dragged-hidden]) {
|
|
67
|
-
--_width: 0px !important;
|
|
68
|
-
border-color: transparent !important;
|
|
69
|
-
}
|
|
70
97
|
|
|
71
98
|
#surface {
|
|
72
99
|
box-sizing: border-box;
|
|
@@ -118,20 +145,20 @@ const base = css `
|
|
|
118
145
|
inset-inline-end: -4px;
|
|
119
146
|
z-index: 0;
|
|
120
147
|
width: 8px;
|
|
121
|
-
cursor: ew-resize;
|
|
122
148
|
touch-action: none;
|
|
123
149
|
background: transparent;
|
|
124
|
-
transition: background-color var(--eun-duration-s, 150ms)
|
|
125
|
-
var(--eun-easing-default, ease);
|
|
126
150
|
}
|
|
127
151
|
:host([position="end"]) #resize-handle {
|
|
128
152
|
inset-inline-end: auto;
|
|
129
153
|
inset-inline-start: -4px;
|
|
130
154
|
}
|
|
131
|
-
#resize-handle
|
|
155
|
+
#resize-handle.armed,
|
|
132
156
|
#resize-handle:focus-visible {
|
|
157
|
+
cursor: ew-resize;
|
|
133
158
|
background: var(--eun-color-primary-500, #3d6fff);
|
|
134
159
|
opacity: 0.35;
|
|
160
|
+
transition: background-color var(--eun-duration-s, 150ms)
|
|
161
|
+
var(--eun-easing-default, ease);
|
|
135
162
|
}
|
|
136
163
|
#resize-handle:focus-visible {
|
|
137
164
|
outline: none;
|
|
@@ -155,17 +182,25 @@ const base = css `
|
|
|
155
182
|
background: var(--_background);
|
|
156
183
|
border: var(--eun-border-width-s, 1px) solid var(--_borderColor);
|
|
157
184
|
border-radius: var(--eun-border-radius-xl, 999px);
|
|
158
|
-
color: var(--
|
|
185
|
+
color: var(--_toggleColor);
|
|
159
186
|
cursor: pointer;
|
|
160
|
-
|
|
161
|
-
|
|
187
|
+
outline: 2px solid transparent;
|
|
188
|
+
transition:
|
|
189
|
+
background-color var(--eun-duration-s, 150ms)
|
|
190
|
+
var(--eun-easing-default, ease),
|
|
191
|
+
outline var(--eun-duration-m, 200ms) var(--eun-easing-out, ease-out);
|
|
162
192
|
}
|
|
163
193
|
:host([position="end"]) #collapse-toggle:not(.inline) {
|
|
164
194
|
inset-inline-end: auto;
|
|
165
195
|
inset-inline-start: -14px;
|
|
166
196
|
}
|
|
167
197
|
#collapse-toggle:not(.inline):hover {
|
|
168
|
-
background:
|
|
198
|
+
background:
|
|
199
|
+
linear-gradient(
|
|
200
|
+
var(--_toggleBackgroundHover),
|
|
201
|
+
var(--_toggleBackgroundHover)
|
|
202
|
+
),
|
|
203
|
+
var(--_background);
|
|
169
204
|
}
|
|
170
205
|
|
|
171
206
|
#collapse-toggle.inline {
|
|
@@ -179,33 +214,45 @@ const base = css `
|
|
|
179
214
|
border-top: var(--eun-border-width-s, 1px) solid var(--_borderColor);
|
|
180
215
|
border-radius: 0;
|
|
181
216
|
background: transparent;
|
|
182
|
-
color: var(--
|
|
217
|
+
color: var(--_toggleColor);
|
|
183
218
|
font: inherit;
|
|
184
219
|
font-size: var(--eun-font-size-s, 14px);
|
|
185
220
|
text-align: start;
|
|
186
221
|
cursor: pointer;
|
|
187
|
-
|
|
188
|
-
|
|
222
|
+
outline: 2px solid transparent;
|
|
223
|
+
transition:
|
|
224
|
+
background-color var(--eun-duration-s, 150ms)
|
|
225
|
+
var(--eun-easing-default, ease),
|
|
226
|
+
outline var(--eun-duration-m, 200ms) var(--eun-easing-out, ease-out);
|
|
189
227
|
}
|
|
190
228
|
#collapse-toggle.inline:hover {
|
|
191
|
-
background: var(--
|
|
229
|
+
background: var(--_toggleBackgroundHover);
|
|
192
230
|
}
|
|
193
231
|
#collapse-toggle-label {
|
|
194
232
|
overflow: hidden;
|
|
195
233
|
white-space: nowrap;
|
|
196
234
|
text-overflow: ellipsis;
|
|
197
235
|
}
|
|
198
|
-
:host([collapsed][collapse-mode="mini"]
|
|
236
|
+
:host([collapsed]:is([collapse-mode="mini"], :not([collapse-mode])))
|
|
237
|
+
#collapse-toggle.inline {
|
|
199
238
|
justify-content: center;
|
|
200
239
|
}
|
|
201
|
-
:host([collapsed][collapse-mode="mini"]
|
|
240
|
+
:host([collapsed]:is([collapse-mode="mini"], :not([collapse-mode])))
|
|
241
|
+
#collapse-toggle-label {
|
|
202
242
|
display: none;
|
|
203
243
|
}
|
|
204
244
|
|
|
205
245
|
#collapse-toggle:focus-visible {
|
|
206
|
-
outline:
|
|
246
|
+
outline-color: var(--eun-color-primary-500, #3d6fff);
|
|
207
247
|
outline-offset: 1px;
|
|
208
248
|
}
|
|
249
|
+
#collapse-toggle.inline:focus-visible {
|
|
250
|
+
outline-offset: -2px;
|
|
251
|
+
outline-color: var(--eun-color-primary-500, #3d6fff);
|
|
252
|
+
border-start-start-radius: var(--eun-border-radius-m, 8px);
|
|
253
|
+
border-start-end-radius: var(--eun-border-radius-m, 8px);
|
|
254
|
+
background: var(--_toggleBackgroundHover);
|
|
255
|
+
}
|
|
209
256
|
|
|
210
257
|
@media (prefers-reduced-motion: reduce) {
|
|
211
258
|
:host {
|
|
@@ -213,4 +260,7 @@ const base = css `
|
|
|
213
260
|
}
|
|
214
261
|
}
|
|
215
262
|
`;
|
|
216
|
-
|
|
263
|
+
const hideBelow = unsafeCSS(Object.keys(EUNOMIA_BREAKPOINTS)
|
|
264
|
+
.map((name) => `@media ${mediaBelow(name)} { :host([hide-below="${name}"]) { display: none; } }`)
|
|
265
|
+
.join("\n"));
|
|
266
|
+
export const sidebarStyles = [base, hideBelow];
|
|
@@ -140,13 +140,14 @@ let EunomiaStep = class EunomiaStep extends LitElement {
|
|
|
140
140
|
type="button"
|
|
141
141
|
class=${controlClasses}
|
|
142
142
|
@click=${this.handleClick}
|
|
143
|
-
|
|
144
|
-
|
|
143
|
+
>
|
|
144
|
+
${indicator}${content}
|
|
145
|
+
</button>`;
|
|
145
146
|
}
|
|
146
147
|
else {
|
|
147
|
-
control = html `<button type="button" class=${controlClasses} disabled
|
|
148
|
-
|
|
149
|
-
>`;
|
|
148
|
+
control = html `<button type="button" class=${controlClasses} disabled>
|
|
149
|
+
${indicator}${content}
|
|
150
|
+
</button>`;
|
|
150
151
|
}
|
|
151
152
|
return html `${control}<span class="connector" aria-hidden="true"></span>`;
|
|
152
153
|
}
|
|
@@ -163,10 +164,10 @@ __decorate([
|
|
|
163
164
|
property({ type: Boolean, reflect: true })
|
|
164
165
|
], EunomiaStep.prototype, "disabled", void 0);
|
|
165
166
|
__decorate([
|
|
166
|
-
property({ reflect: true })
|
|
167
|
+
property({ reflect: true, useDefault: true })
|
|
167
168
|
], EunomiaStep.prototype, "state", void 0);
|
|
168
169
|
__decorate([
|
|
169
|
-
property({ reflect: true })
|
|
170
|
+
property({ reflect: true, useDefault: true })
|
|
170
171
|
], EunomiaStep.prototype, "status", void 0);
|
|
171
172
|
__decorate([
|
|
172
173
|
property({ type: Boolean })
|
|
@@ -175,7 +176,7 @@ __decorate([
|
|
|
175
176
|
property({ type: Number })
|
|
176
177
|
], EunomiaStep.prototype, "index", void 0);
|
|
177
178
|
__decorate([
|
|
178
|
-
property({ reflect: true })
|
|
179
|
+
property({ reflect: true, useDefault: true })
|
|
179
180
|
], EunomiaStep.prototype, "orientation", void 0);
|
|
180
181
|
__decorate([
|
|
181
182
|
queryAssignedElements({ slot: "description" })
|
|
@@ -98,7 +98,6 @@ export type EunomiaStepperVariant = "numbered" | "progress";
|
|
|
98
98
|
* @prop {'horizontal' | 'vertical'} [orientation='horizontal'] - The numbered display's layout direction. Has no effect on the progress variant
|
|
99
99
|
* @prop {'numbered' | 'progress'} [variant='numbered'] - Which of the two displays to render
|
|
100
100
|
* @prop {boolean} [linear=true] - Restricts direct navigation to steps before activeStep. Set to false to allow jumping to any non-disabled step in any order
|
|
101
|
-
* @attr {'true' | 'false'} [linear='true'] - Unlike most boolean attributes here, the literal string false genuinely means false, needed since linear is the one that defaults to true
|
|
102
101
|
* @prop {boolean} [disabled=false] - Disables every step's control, leaving a read-only progress summary with no navigation at all, the same way an individual step's own disabled does
|
|
103
102
|
* @attr {string} [aria-label='Progress'] - The accessible label for the navigation landmark. Numbered display only
|
|
104
103
|
* @fires {StepChangeEvent} eunstepchange - Fired with the requested step whenever a reachable step is activated. ActiveStep and activeSubstep are never updated internally
|
|
@@ -176,8 +175,7 @@ export declare class EunomiaStepper extends LitElement {
|
|
|
176
175
|
/**
|
|
177
176
|
* Restricts direct navigation to steps before {@link activeStep} ; set
|
|
178
177
|
* to `false` (either as the JS property, or the literal `linear="false"`
|
|
179
|
-
* attribute — see {@link
|
|
180
|
-
* unlike most other boolean attributes) to allow jumping to any
|
|
178
|
+
* attribute — see {@link defaultTrueConverter}) to allow jumping to any
|
|
181
179
|
* non-`disabled` step in any order.
|
|
182
180
|
* @default true
|
|
183
181
|
*/
|
|
@@ -9,27 +9,11 @@ import { html, LitElement, nothing } from "lit";
|
|
|
9
9
|
import { classMap } from "lit/directives/class-map.js";
|
|
10
10
|
import { StepChangeEvent } from "../../../events/stepchange.event.js";
|
|
11
11
|
import { stepperStyles } from "./stepper.styles.js";
|
|
12
|
+
import { defaultTrueConverter } from "../../../utils/boolean.utils.js";
|
|
12
13
|
/**
|
|
13
14
|
* Tag name of the stepper component.
|
|
14
15
|
*/
|
|
15
16
|
export const EunomiaStepperTagName = "eun-stepper";
|
|
16
|
-
/**
|
|
17
|
-
* Attribute converter for `linear`, making an explicit `linear="false"`
|
|
18
|
-
* actually mean false. Lit's standard boolean converter only ever looks
|
|
19
|
-
* at whether the attribute is *present*, the same way native HTML boolean
|
|
20
|
-
* attributes work (`disabled="false"` is still disabled) — fine for every
|
|
21
|
-
* other boolean here, which default to `false` and so are only ever
|
|
22
|
-
* turned on by adding the attribute. `linear` is the one exception,
|
|
23
|
-
* defaulting to `true` : without this, there would be no way to turn it
|
|
24
|
-
* back off from plain HTML, only from script (`el.linear = false`).
|
|
25
|
-
* @internal
|
|
26
|
-
*/
|
|
27
|
-
const linearConverter = {
|
|
28
|
-
fromAttribute(value) {
|
|
29
|
-
return value !== null && value !== "false";
|
|
30
|
-
},
|
|
31
|
-
toAttribute: String,
|
|
32
|
-
};
|
|
33
17
|
/**
|
|
34
18
|
* A status and progression indicator for a multi-step process, such as a
|
|
35
19
|
* checkout flow, a multi-page form, or an onboarding wizard.
|
|
@@ -86,7 +70,6 @@ const linearConverter = {
|
|
|
86
70
|
* @prop {'horizontal' | 'vertical'} [orientation='horizontal'] - The numbered display's layout direction. Has no effect on the progress variant
|
|
87
71
|
* @prop {'numbered' | 'progress'} [variant='numbered'] - Which of the two displays to render
|
|
88
72
|
* @prop {boolean} [linear=true] - Restricts direct navigation to steps before activeStep. Set to false to allow jumping to any non-disabled step in any order
|
|
89
|
-
* @attr {'true' | 'false'} [linear='true'] - Unlike most boolean attributes here, the literal string false genuinely means false, needed since linear is the one that defaults to true
|
|
90
73
|
* @prop {boolean} [disabled=false] - Disables every step's control, leaving a read-only progress summary with no navigation at all, the same way an individual step's own disabled does
|
|
91
74
|
* @attr {string} [aria-label='Progress'] - The accessible label for the navigation landmark. Numbered display only
|
|
92
75
|
* @fires {StepChangeEvent} eunstepchange - Fired with the requested step whenever a reachable step is activated. ActiveStep and activeSubstep are never updated internally
|
|
@@ -153,8 +136,7 @@ let EunomiaStepper = class EunomiaStepper extends LitElement {
|
|
|
153
136
|
/**
|
|
154
137
|
* Restricts direct navigation to steps before {@link activeStep} ; set
|
|
155
138
|
* to `false` (either as the JS property, or the literal `linear="false"`
|
|
156
|
-
* attribute — see {@link
|
|
157
|
-
* unlike most other boolean attributes) to allow jumping to any
|
|
139
|
+
* attribute — see {@link defaultTrueConverter}) to allow jumping to any
|
|
158
140
|
* non-`disabled` step in any order.
|
|
159
141
|
* @default true
|
|
160
142
|
*/
|
|
@@ -218,8 +200,15 @@ let EunomiaStepper = class EunomiaStepper extends LitElement {
|
|
|
218
200
|
syncSlottedSteps() {
|
|
219
201
|
this.slottedSteps.forEach((step, index) => {
|
|
220
202
|
step.index = index;
|
|
221
|
-
step
|
|
222
|
-
|
|
203
|
+
// Only assigned when they differ: assigning a step's default again
|
|
204
|
+
// would reflect it.
|
|
205
|
+
if (step.orientation !== this.orientation) {
|
|
206
|
+
step.orientation = this.orientation;
|
|
207
|
+
}
|
|
208
|
+
const status = this.statusOf(index, this.activeStep, step.state);
|
|
209
|
+
if (step.status !== status) {
|
|
210
|
+
step.status = status;
|
|
211
|
+
}
|
|
223
212
|
const isCurrent = index === this.activeStep;
|
|
224
213
|
step.reachable =
|
|
225
214
|
!isCurrent &&
|
|
@@ -508,7 +497,7 @@ let EunomiaStepper = class EunomiaStepper extends LitElement {
|
|
|
508
497
|
*/
|
|
509
498
|
EunomiaStepper.styles = [stepperStyles];
|
|
510
499
|
__decorate([
|
|
511
|
-
property({ type: Array, reflect: true })
|
|
500
|
+
property({ type: Array, reflect: true, useDefault: true })
|
|
512
501
|
], EunomiaStepper.prototype, "steps", void 0);
|
|
513
502
|
__decorate([
|
|
514
503
|
property({ type: Number, attribute: "active-step" })
|
|
@@ -517,13 +506,13 @@ __decorate([
|
|
|
517
506
|
property({ type: Number, attribute: "active-substep" })
|
|
518
507
|
], EunomiaStepper.prototype, "activeSubstep", void 0);
|
|
519
508
|
__decorate([
|
|
520
|
-
property({ reflect: true })
|
|
509
|
+
property({ reflect: true, useDefault: true })
|
|
521
510
|
], EunomiaStepper.prototype, "orientation", void 0);
|
|
522
511
|
__decorate([
|
|
523
|
-
property({ reflect: true })
|
|
512
|
+
property({ reflect: true, useDefault: true })
|
|
524
513
|
], EunomiaStepper.prototype, "variant", void 0);
|
|
525
514
|
__decorate([
|
|
526
|
-
property({ reflect: true, converter:
|
|
515
|
+
property({ reflect: true, converter: defaultTrueConverter })
|
|
527
516
|
], EunomiaStepper.prototype, "linear", void 0);
|
|
528
517
|
__decorate([
|
|
529
518
|
property({ type: Boolean, reflect: true })
|
|
@@ -710,13 +710,13 @@ EunomiaTabGroup.styles = tabGroupStyle;
|
|
|
710
710
|
*/
|
|
711
711
|
EunomiaTabGroup.EDGE_RESISTANCE = 0.3;
|
|
712
712
|
__decorate([
|
|
713
|
-
property({ reflect: true })
|
|
713
|
+
property({ reflect: true, useDefault: true })
|
|
714
714
|
], EunomiaTabGroup.prototype, "align", void 0);
|
|
715
715
|
__decorate([
|
|
716
716
|
property({ type: Boolean, reflect: true })
|
|
717
717
|
], EunomiaTabGroup.prototype, "full", void 0);
|
|
718
718
|
__decorate([
|
|
719
|
-
property({ reflect: true })
|
|
719
|
+
property({ reflect: true, useDefault: true })
|
|
720
720
|
], EunomiaTabGroup.prototype, "animation", void 0);
|
|
721
721
|
__decorate([
|
|
722
722
|
property({ type: Boolean, reflect: true })
|
|
@@ -206,13 +206,13 @@ const base = css `
|
|
|
206
206
|
animation: var(--_animationTime) ease-in fade-in;
|
|
207
207
|
}
|
|
208
208
|
|
|
209
|
-
:host([animation="slide"])
|
|
209
|
+
:host(:is([animation="slide"], :not([animation])))
|
|
210
210
|
slot:not([name])::slotted(eun-tab-panel.slide-left) {
|
|
211
211
|
--_animationTime: var(--tab-panel-animation, 500ms);
|
|
212
212
|
animation: var(--_animationTime) var(--eun-easing-out, ease-out) slide-left;
|
|
213
213
|
}
|
|
214
214
|
|
|
215
|
-
:host([animation="slide"])
|
|
215
|
+
:host(:is([animation="slide"], :not([animation])))
|
|
216
216
|
slot:not([name])::slotted(eun-tab-panel.slide-right) {
|
|
217
217
|
--_animationTime: var(--tab-panel-animation, 500ms);
|
|
218
218
|
animation: var(--_animationTime) var(--eun-easing-out, ease-out) slide-right;
|
|
@@ -15,7 +15,7 @@ export type EunomiaToolbarPanelDirection = "top" | "bottom" | "left" | "right";
|
|
|
15
15
|
* The two color schemes the toolbar itself can render in.
|
|
16
16
|
*/
|
|
17
17
|
export type EunomiaToolbarTheme = "light" | "dark";
|
|
18
|
-
declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").Constructor<import("../../../mixins/dialog-surface.mixin.js").DialogSurfaceMixinInterface> & typeof LitElement;
|
|
18
|
+
declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").Constructor<import("../../../mixins/dialog-surface.mixin.js").DialogSurfaceMixinInterface> & import("../../../utils/constructor.type.js").Constructor<import("../../../mixins/localizable.mixin.js").LocalizableMixinInterface> & typeof LitElement;
|
|
19
19
|
/**
|
|
20
20
|
* A sticky top page toolbar with start, center, and end layout slots, and
|
|
21
21
|
* a burger button that opens a slide-in panel below a mobile breakpoint.
|
|
@@ -70,14 +70,16 @@ declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").
|
|
|
70
70
|
* @attr {'top' | 'bottom' | 'left' | 'right'} [panel-direction='top'] - Which edge the mobile panel slides in from
|
|
71
71
|
* @prop {string} panelSize - A custom open size for the mobile panel, height for top or bottom, width for left or right. Any CSS length, defaulting to 100%
|
|
72
72
|
* @attr {string} panel-size - A custom open size for the mobile panel
|
|
73
|
+
* @prop {string} mobileHide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end, such as "center end" when their content is repeated in the panel. Applied by toolbar-ssr.css before the upgrade too
|
|
74
|
+
* @attr {string} mobile-hide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end
|
|
73
75
|
* @prop {boolean} [closeOnBackdrop=true] - Whether clicking outside the mobile panel closes it
|
|
74
76
|
* @attr {boolean} [close-on-backdrop=true] - Whether clicking outside the mobile panel closes it
|
|
75
|
-
* @prop {string} [
|
|
76
|
-
* @attr {string} [
|
|
77
|
-
* @prop {string} [
|
|
78
|
-
* @attr {string} [
|
|
79
|
-
* @prop {string} [
|
|
80
|
-
* @attr {string} [
|
|
77
|
+
* @prop {string} [menuOpenLabel] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
78
|
+
* @attr {string} [menu-open-label] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
79
|
+
* @prop {string} [menuCloseLabel] - The accessible label of the burger button while the panel is open. Defaults to the localized string for the current locale (English: "Close menu")
|
|
80
|
+
* @attr {string} [menu-close-label] - The accessible label of the burger button while the panel is open. Defaults to the localized string for the current locale (English: "Close menu")
|
|
81
|
+
* @prop {string} [menuLabel] - The accessible name of the mobile panel itself. Defaults to the localized string for the current locale (English: "Menu")
|
|
82
|
+
* @attr {string} [menu-label] - The accessible name of the mobile panel itself. Defaults to the localized string for the current locale (English: "Menu")
|
|
81
83
|
* @attr {string} [aria-label='Main navigation'] - The accessible name of the toolbar's navigation landmark
|
|
82
84
|
* @prop {boolean} [collapseOnScroll=false] - Enables the scroll-triggered collapse mode
|
|
83
85
|
* @attr {boolean} [collapse-on-scroll=false] - Enables the scroll-triggered collapse mode
|
|
@@ -127,6 +129,7 @@ declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").
|
|
|
127
129
|
* @cssprop [--toolbar-panel-padding] - Sets the padding of the mobile panel
|
|
128
130
|
* @cssprop [--toolbar-panel-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
129
131
|
* @cssprop [--toolbar-panel-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
132
|
+
* @cssprop [--toolbar-panel-offset] - Sets the room reserved above the mobile panel content for the burger, added to its padding. Defaults to the bar's height, or 0 with panel-direction="bottom"
|
|
130
133
|
* @cssprop [--toolbar-burger-align] - Sets the vertical alignment of the burger button within the bar's height, defaulting to center ; set flex-start to pin it to the top instead
|
|
131
134
|
* @cssprop [--toolbar-burger-padding] - Sets the padding around the burger button, defaulting to 0 on the block axis and --toolbar-panel-padding on the inline axis
|
|
132
135
|
* @cssprop [--toolbar-burger-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-burger-padding is set
|
|
@@ -175,6 +178,13 @@ export declare class EunomiaToolbar extends EunomiaToolbar_base {
|
|
|
175
178
|
* left/right) ; any CSS length, defaults to `100%`.
|
|
176
179
|
*/
|
|
177
180
|
panelSize?: string;
|
|
181
|
+
/**
|
|
182
|
+
* The bar slots hidden below `mobileBreakpoint`, as a space-separated
|
|
183
|
+
* list of `start`, `center` and `end`, such as `"center end"` once their
|
|
184
|
+
* content is repeated in the panel. Reflected, since the hiding is pure
|
|
185
|
+
* CSS on the attribute, also matched by `toolbar-ssr.css` before upgrade.
|
|
186
|
+
*/
|
|
187
|
+
mobileHide?: string;
|
|
178
188
|
/**
|
|
179
189
|
* Whether clicking outside the mobile panel closes it.
|
|
180
190
|
* @default true
|
|
@@ -182,19 +192,19 @@ export declare class EunomiaToolbar extends EunomiaToolbar_base {
|
|
|
182
192
|
closeOnBackdrop: boolean;
|
|
183
193
|
/**
|
|
184
194
|
* Accessible label of the burger button while the panel is closed.
|
|
185
|
-
*
|
|
195
|
+
* Falls back to the localized string for the current locale when unset.
|
|
186
196
|
*/
|
|
187
|
-
|
|
197
|
+
menuOpenLabel?: string;
|
|
188
198
|
/**
|
|
189
199
|
* Accessible label of the burger button while the panel is open.
|
|
190
|
-
*
|
|
200
|
+
* Falls back to the localized string for the current locale when unset.
|
|
191
201
|
*/
|
|
192
|
-
|
|
202
|
+
menuCloseLabel?: string;
|
|
193
203
|
/**
|
|
194
204
|
* Accessible name of the mobile panel itself.
|
|
195
|
-
*
|
|
205
|
+
* Falls back to the localized string for the current locale when unset.
|
|
196
206
|
*/
|
|
197
|
-
|
|
207
|
+
menuLabel?: string;
|
|
198
208
|
/**
|
|
199
209
|
* Enables the scroll-triggered collapse mode.
|
|
200
210
|
* @default false
|
|
@@ -10,6 +10,8 @@ import { ChangeEvent } from "../../../events/change.event.js";
|
|
|
10
10
|
import { DialogSurfaceMixin } from "../../../mixins/dialog-surface.mixin.js";
|
|
11
11
|
import { EUNOMIA_BREAKPOINTS } from "../../../breakpoints.js";
|
|
12
12
|
import { toolbarStyles } from "./toolbar.styles.js";
|
|
13
|
+
import { LocalizableMixin } from "../../../mixins/localizable.mixin.js";
|
|
14
|
+
import { defaultTrueConverter } from "../../../utils/boolean.utils.js";
|
|
13
15
|
/**
|
|
14
16
|
* Tag name of the toolbar component.
|
|
15
17
|
*/
|
|
@@ -68,14 +70,16 @@ export const EunomiaToolbarTagName = "eun-toolbar";
|
|
|
68
70
|
* @attr {'top' | 'bottom' | 'left' | 'right'} [panel-direction='top'] - Which edge the mobile panel slides in from
|
|
69
71
|
* @prop {string} panelSize - A custom open size for the mobile panel, height for top or bottom, width for left or right. Any CSS length, defaulting to 100%
|
|
70
72
|
* @attr {string} panel-size - A custom open size for the mobile panel
|
|
73
|
+
* @prop {string} mobileHide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end, such as "center end" when their content is repeated in the panel. Applied by toolbar-ssr.css before the upgrade too
|
|
74
|
+
* @attr {string} mobile-hide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end
|
|
71
75
|
* @prop {boolean} [closeOnBackdrop=true] - Whether clicking outside the mobile panel closes it
|
|
72
76
|
* @attr {boolean} [close-on-backdrop=true] - Whether clicking outside the mobile panel closes it
|
|
73
|
-
* @prop {string} [
|
|
74
|
-
* @attr {string} [
|
|
75
|
-
* @prop {string} [
|
|
76
|
-
* @attr {string} [
|
|
77
|
-
* @prop {string} [
|
|
78
|
-
* @attr {string} [
|
|
77
|
+
* @prop {string} [menuOpenLabel] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
78
|
+
* @attr {string} [menu-open-label] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
79
|
+
* @prop {string} [menuCloseLabel] - The accessible label of the burger button while the panel is open. Defaults to the localized string for the current locale (English: "Close menu")
|
|
80
|
+
* @attr {string} [menu-close-label] - The accessible label of the burger button while the panel is open. Defaults to the localized string for the current locale (English: "Close menu")
|
|
81
|
+
* @prop {string} [menuLabel] - The accessible name of the mobile panel itself. Defaults to the localized string for the current locale (English: "Menu")
|
|
82
|
+
* @attr {string} [menu-label] - The accessible name of the mobile panel itself. Defaults to the localized string for the current locale (English: "Menu")
|
|
79
83
|
* @attr {string} [aria-label='Main navigation'] - The accessible name of the toolbar's navigation landmark
|
|
80
84
|
* @prop {boolean} [collapseOnScroll=false] - Enables the scroll-triggered collapse mode
|
|
81
85
|
* @attr {boolean} [collapse-on-scroll=false] - Enables the scroll-triggered collapse mode
|
|
@@ -125,6 +129,7 @@ export const EunomiaToolbarTagName = "eun-toolbar";
|
|
|
125
129
|
* @cssprop [--toolbar-panel-padding] - Sets the padding of the mobile panel
|
|
126
130
|
* @cssprop [--toolbar-panel-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
127
131
|
* @cssprop [--toolbar-panel-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
132
|
+
* @cssprop [--toolbar-panel-offset] - Sets the room reserved above the mobile panel content for the burger, added to its padding. Defaults to the bar's height, or 0 with panel-direction="bottom"
|
|
128
133
|
* @cssprop [--toolbar-burger-align] - Sets the vertical alignment of the burger button within the bar's height, defaulting to center ; set flex-start to pin it to the top instead
|
|
129
134
|
* @cssprop [--toolbar-burger-padding] - Sets the padding around the burger button, defaulting to 0 on the block axis and --toolbar-panel-padding on the inline axis
|
|
130
135
|
* @cssprop [--toolbar-burger-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-burger-padding is set
|
|
@@ -138,7 +143,7 @@ export const EunomiaToolbarTagName = "eun-toolbar";
|
|
|
138
143
|
* @cssprop [--toolbar-skip-links-gap] - Sets the gap between skip links, with the divider centered in it
|
|
139
144
|
* @element eun-toolbar
|
|
140
145
|
*/
|
|
141
|
-
let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LitElement) {
|
|
146
|
+
let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LocalizableMixin(LitElement)) {
|
|
142
147
|
constructor() {
|
|
143
148
|
super(...arguments);
|
|
144
149
|
/**
|
|
@@ -167,21 +172,6 @@ let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LitElement)
|
|
|
167
172
|
* @default true
|
|
168
173
|
*/
|
|
169
174
|
this.closeOnBackdrop = true;
|
|
170
|
-
/**
|
|
171
|
-
* Accessible label of the burger button while the panel is closed.
|
|
172
|
-
* @default Open menu
|
|
173
|
-
*/
|
|
174
|
-
this.ariaLabelMenuOpen = "Open menu";
|
|
175
|
-
/**
|
|
176
|
-
* Accessible label of the burger button while the panel is open.
|
|
177
|
-
* @default Close menu
|
|
178
|
-
*/
|
|
179
|
-
this.ariaLabelMenuClose = "Close menu";
|
|
180
|
-
/**
|
|
181
|
-
* Accessible name of the mobile panel itself.
|
|
182
|
-
* @default Menu
|
|
183
|
-
*/
|
|
184
|
-
this.ariaLabelMenu = "Menu";
|
|
185
175
|
/**
|
|
186
176
|
* Enables the scroll-triggered collapse mode.
|
|
187
177
|
* @default false
|
|
@@ -821,8 +811,8 @@ let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LitElement)
|
|
|
821
811
|
size="s"
|
|
822
812
|
aria-expanded=${this.open}
|
|
823
813
|
aria-label=${this.open
|
|
824
|
-
? this.
|
|
825
|
-
: this.
|
|
814
|
+
? (this.menuCloseLabel ?? this.dictionary.toolbar.menuClose)
|
|
815
|
+
: (this.menuOpenLabel ?? this.dictionary.toolbar.menuOpen)}
|
|
826
816
|
@click=${() => this.toggle()}
|
|
827
817
|
>
|
|
828
818
|
<slot name=${slotName} @slotchange=${this.handleIconSlotChange}>
|
|
@@ -859,7 +849,7 @@ let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LitElement)
|
|
|
859
849
|
popover="manual"
|
|
860
850
|
role="dialog"
|
|
861
851
|
aria-modal="true"
|
|
862
|
-
aria-label=${this.
|
|
852
|
+
aria-label=${this.menuLabel ?? this.dictionary.toolbar.menu}
|
|
863
853
|
data-direction=${this.panelDirection}
|
|
864
854
|
tabindex="-1"
|
|
865
855
|
@toggle=${this.handlePanelToggle}
|
|
@@ -896,7 +886,7 @@ let EunomiaToolbar = class EunomiaToolbar extends DialogSurfaceMixin(LitElement)
|
|
|
896
886
|
*/
|
|
897
887
|
EunomiaToolbar.styles = toolbarStyles;
|
|
898
888
|
__decorate([
|
|
899
|
-
property({ reflect: true })
|
|
889
|
+
property({ reflect: true, useDefault: true })
|
|
900
890
|
], EunomiaToolbar.prototype, "position", void 0);
|
|
901
891
|
__decorate([
|
|
902
892
|
property({ type: Number, attribute: "mobile-breakpoint" })
|
|
@@ -905,23 +895,26 @@ __decorate([
|
|
|
905
895
|
property({ type: Boolean, reflect: true })
|
|
906
896
|
], EunomiaToolbar.prototype, "open", void 0);
|
|
907
897
|
__decorate([
|
|
908
|
-
property({ reflect: true, attribute: "panel-direction" })
|
|
898
|
+
property({ reflect: true, attribute: "panel-direction", useDefault: true })
|
|
909
899
|
], EunomiaToolbar.prototype, "panelDirection", void 0);
|
|
910
900
|
__decorate([
|
|
911
901
|
property({ attribute: "panel-size" })
|
|
912
902
|
], EunomiaToolbar.prototype, "panelSize", void 0);
|
|
913
903
|
__decorate([
|
|
914
|
-
property({
|
|
904
|
+
property({ reflect: true, attribute: "mobile-hide" })
|
|
905
|
+
], EunomiaToolbar.prototype, "mobileHide", void 0);
|
|
906
|
+
__decorate([
|
|
907
|
+
property({ converter: defaultTrueConverter, attribute: "close-on-backdrop" })
|
|
915
908
|
], EunomiaToolbar.prototype, "closeOnBackdrop", void 0);
|
|
916
909
|
__decorate([
|
|
917
|
-
property({ attribute: "
|
|
918
|
-
], EunomiaToolbar.prototype, "
|
|
910
|
+
property({ attribute: "menu-open-label" })
|
|
911
|
+
], EunomiaToolbar.prototype, "menuOpenLabel", void 0);
|
|
919
912
|
__decorate([
|
|
920
|
-
property({ attribute: "
|
|
921
|
-
], EunomiaToolbar.prototype, "
|
|
913
|
+
property({ attribute: "menu-close-label" })
|
|
914
|
+
], EunomiaToolbar.prototype, "menuCloseLabel", void 0);
|
|
922
915
|
__decorate([
|
|
923
|
-
property({ attribute: "
|
|
924
|
-
], EunomiaToolbar.prototype, "
|
|
916
|
+
property({ attribute: "menu-label" })
|
|
917
|
+
], EunomiaToolbar.prototype, "menuLabel", void 0);
|
|
925
918
|
__decorate([
|
|
926
919
|
property({ type: Boolean, attribute: "collapse-on-scroll" })
|
|
927
920
|
], EunomiaToolbar.prototype, "collapseOnScroll", void 0);
|
|
@@ -947,7 +940,7 @@ __decorate([
|
|
|
947
940
|
property({ attribute: "adaptive-theme-selector" })
|
|
948
941
|
], EunomiaToolbar.prototype, "adaptiveThemeSelector", void 0);
|
|
949
942
|
__decorate([
|
|
950
|
-
property({ reflect: true })
|
|
943
|
+
property({ reflect: true, useDefault: true })
|
|
951
944
|
], EunomiaToolbar.prototype, "theme", void 0);
|
|
952
945
|
__decorate([
|
|
953
946
|
property({ attribute: "default-theme" })
|