@eunomia/elements 1.0.0-beta.5 → 1.0.0-beta.7
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 +2 -2
- package/dist/breakpoints.d.ts +37 -10
- package/dist/breakpoints.js +38 -10
- package/dist/cdn/components/chunks/{chunk-MMLIPCOY.js → chunk-22D3SRFR.js} +1 -1
- package/dist/cdn/components/chunks/chunk-36KLGY6U.js +209 -0
- package/dist/cdn/components/chunks/chunk-3BMACIDO.js +1 -0
- package/dist/cdn/components/chunks/{chunk-IDKZKLJR.js → chunk-3PNGQEG4.js} +24 -11
- package/dist/cdn/components/chunks/{chunk-NBIENHLV.js → chunk-5XPOGBPL.js} +18 -18
- package/dist/cdn/components/chunks/chunk-624VJYNA.js +1 -0
- package/dist/cdn/components/chunks/chunk-62RLISRD.js +1 -0
- package/dist/cdn/components/chunks/{chunk-6ETDXUH2.js → chunk-6FYW5TQU.js} +7 -7
- 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-BKZGTCMF.js +1 -0
- package/dist/cdn/components/chunks/{chunk-GW3VP2L7.js → chunk-BO3JOEWM.js} +1 -1
- package/dist/cdn/components/chunks/chunk-BVASCT2V.js +109 -0
- package/dist/cdn/components/chunks/{chunk-DKOPI7QA.js → chunk-DGI7TKCU.js} +83 -68
- package/dist/cdn/components/chunks/chunk-EUWUDCBZ.js +1 -0
- package/dist/cdn/components/chunks/{chunk-P32B7BFD.js → chunk-FF3I7C3C.js} +15 -15
- package/dist/cdn/components/chunks/{chunk-74AOAB4X.js → chunk-FOILAXLL.js} +6 -5
- package/dist/cdn/components/chunks/{chunk-LGLQ36QB.js → chunk-GDBPWZN6.js} +1 -1
- 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-JRGM3W7I.js → chunk-I4ERDXSM.js} +9 -4
- package/dist/cdn/components/chunks/{chunk-AIS3UICU.js → chunk-J3SZBXM6.js} +11 -7
- package/dist/cdn/components/chunks/{chunk-5XJGYXW7.js → chunk-LVKMAHMU.js} +11 -1
- package/dist/cdn/components/chunks/{chunk-SD2WHGPF.js → chunk-MQQJ6DID.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-A4EQSU36.js → chunk-O7PHBLH2.js} +1 -1
- package/dist/cdn/components/chunks/chunk-PD62MBOJ.js +1 -0
- package/dist/cdn/components/chunks/{chunk-5EVP7YNE.js → chunk-PPCHQG7P.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-MPQP4R54.js → chunk-PXF554MD.js} +10 -9
- package/dist/cdn/components/chunks/chunk-QL5GSW2A.js +1 -0
- package/dist/cdn/components/chunks/{chunk-5XJLIHAU.js → chunk-QXQ25SQS.js} +24 -20
- package/dist/cdn/components/chunks/chunk-SMTIDNGW.js +1 -0
- package/dist/cdn/components/chunks/{chunk-PED5ATYN.js → chunk-SVGWCKWT.js} +2 -2
- package/dist/cdn/components/chunks/{chunk-2XASWWKR.js → chunk-TFTRCIIK.js} +9 -8
- 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-L65WUTXM.js → chunk-UYZR4JXZ.js} +12 -7
- package/dist/cdn/components/chunks/chunk-VG6NAAIV.js +1 -0
- package/dist/cdn/components/chunks/chunk-VJCNHMQZ.js +10 -0
- package/dist/cdn/components/chunks/chunk-WW4BTWMH.js +1 -0
- package/dist/cdn/components/chunks/{chunk-XH6NREVZ.js → chunk-YITWLCD3.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-OW7XKDCH.js → chunk-Z3OFIE7S.js} +16 -16
- package/dist/cdn/components/chunks/{chunk-BQHYZB2W.js → chunk-ZBN4HTWP.js} +1 -1
- package/dist/cdn/components/eun-alert.js +33 -18
- package/dist/cdn/components/eun-animate.js +14 -10
- package/dist/cdn/components/eun-badge.js +2 -2
- package/dist/cdn/components/eun-breadcrumb.js +25 -41
- package/dist/cdn/components/eun-button.js +1 -1
- package/dist/cdn/components/eun-calendar.js +67 -65
- package/dist/cdn/components/eun-card.js +34 -19
- package/dist/cdn/components/eun-carousel.js +76 -42
- package/dist/cdn/components/eun-check-card.js +13 -6
- 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 +3 -3
- package/dist/cdn/components/eun-collapse.js +56 -27
- package/dist/cdn/components/eun-color-picker.js +79 -86
- package/dist/cdn/components/eun-counter.js +16 -15
- package/dist/cdn/components/eun-date-picker.js +71 -67
- package/dist/cdn/components/eun-description-list.js +152 -0
- package/dist/cdn/components/eun-divider.js +3 -3
- package/dist/cdn/components/eun-drawer.js +34 -20
- package/dist/cdn/components/eun-dropdown-button.js +1 -1
- package/dist/cdn/components/eun-dropdown-item.js +6 -5
- package/dist/cdn/components/eun-fab.js +17 -16
- package/dist/cdn/components/eun-icon.js +1 -1
- package/dist/cdn/components/eun-image-card.js +79 -22
- package/dist/cdn/components/eun-image-carousel.js +92 -47
- package/dist/cdn/components/eun-infinite-list.js +23 -11
- package/dist/cdn/components/eun-input-file.js +20 -19
- package/dist/cdn/components/eun-input-phone.js +17 -16
- package/dist/cdn/components/eun-input.js +1 -1
- package/dist/cdn/components/eun-label.js +4 -4
- package/dist/cdn/components/eun-link.js +78 -29
- package/dist/cdn/components/eun-loader.js +1 -1
- package/dist/cdn/components/eun-modal.js +27 -20
- package/dist/cdn/components/eun-pagination.js +24 -19
- package/dist/cdn/components/eun-password-strength.js +19 -11
- package/dist/cdn/components/eun-progress-bar.js +13 -5
- package/dist/cdn/components/eun-radio-card.js +16 -9
- package/dist/cdn/components/eun-radio-list.js +12 -9
- 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 +10 -10
- package/dist/cdn/components/eun-scheduler-event.js +1 -1
- package/dist/cdn/components/eun-scheduler.js +27 -27
- package/dist/cdn/components/eun-search.js +24 -25
- package/dist/cdn/components/eun-select.js +32 -31
- package/dist/cdn/components/eun-sidebar.js +40 -24
- package/dist/cdn/components/eun-skeleton.js +1 -1
- package/dist/cdn/components/eun-slider.js +15 -14
- package/dist/cdn/components/eun-sliding-card.js +8 -4
- package/dist/cdn/components/eun-step.js +22 -10
- package/dist/cdn/components/eun-stepper.js +41 -30
- package/dist/cdn/components/eun-switch.js +10 -8
- package/dist/cdn/components/eun-tab-group.js +24 -19
- package/dist/cdn/components/eun-tab-panel.js +11 -3
- 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 +572 -31
- package/dist/cdn/components/eun-tag.js +13 -7
- package/dist/cdn/components/eun-textarea.js +34 -29
- package/dist/cdn/components/eun-time-picker.js +24 -21
- package/dist/cdn/components/eun-toast.js +51 -22
- package/dist/cdn/components/eun-toggle-group.js +57 -36
- package/dist/cdn/components/eun-toggle-item.js +16 -15
- package/dist/cdn/components/eun-toggle.js +12 -10
- package/dist/cdn/components/eun-toolbar.js +64 -54
- package/dist/cdn/components/eun-tooltip.js +30 -14
- package/dist/cdn/styles/breakpoints.scss +8 -0
- package/dist/cdn/styles/eunomia-grid.scss +6 -0
- package/dist/cdn/styles/eunomia-themes.css +1 -1
- package/dist/cdn/styles/themes/eunomia-theme.css +1 -1
- package/dist/cdn/styles/themes/eunomia-theme.scss +4 -3
- package/dist/cdn/styles/themes/mixins/eunomia-a11y-color.mixin.scss +34 -1
- package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +4 -0
- package/dist/cdn/styles/themes/mixins/eunomia-states.mixin.scss +36 -12
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +3 -2
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +10 -10
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +3 -2
- package/dist/cdn/styles/tools/indexes/eunomia-media-queries.index.scss +1 -3
- package/dist/cdn/styles/tools/indexes/eunomia-tools.index.scss +1 -0
- package/dist/cdn/styles/tools/mixins/layout/eunomia-grid.mixin.scss +117 -53
- package/dist/cdn/styles/tools/mixins/media-queries/eunomia-media-queries.mixin.scss +69 -0
- package/dist/cdn/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +28 -4
- package/dist/cdn/styles/tools/mixins/settings/eunomia-motion.mixin.scss +9 -0
- package/dist/cdn/styles/tools/variables/eunomia.breakpoints.scss +4 -0
- package/dist/components/action/button/button.d.ts +9 -3
- package/dist/components/action/button/button.js +10 -4
- package/dist/components/action/button/button.styles.js +61 -41
- package/dist/components/action/dropdown-button/dropdown-button.d.ts +2 -2
- package/dist/components/action/dropdown-button/dropdown-button.js +21 -15
- package/dist/components/action/dropdown-button/dropdown-button.styles.js +3 -2
- package/dist/components/action/dropdown-button/dropdown-item.js +5 -6
- package/dist/components/action/dropdown-button/dropdown-item.styles.js +3 -2
- package/dist/components/action/fab/fab.styles.js +14 -13
- package/dist/components/action/link/link.d.ts +7 -3
- package/dist/components/action/link/link.js +11 -7
- package/dist/components/action/link/link.styles.js +66 -15
- package/dist/components/action/shared-styles/button-palette.styles.js +15 -15
- package/dist/components/action/toggle/toggle-group.d.ts +2 -0
- package/dist/components/action/toggle/toggle-group.js +6 -4
- package/dist/components/action/toggle/toggle-group.styles.d.ts +2 -0
- package/dist/components/action/toggle/toggle-group.styles.js +46 -23
- package/dist/components/action/toggle/toggle-item.styles.js +13 -12
- package/dist/components/action/toggle/toggle.d.ts +2 -0
- package/dist/components/action/toggle/toggle.js +3 -1
- package/dist/components/action/toggle/toggle.styles.d.ts +2 -0
- package/dist/components/action/toggle/toggle.styles.js +12 -8
- package/dist/components/alert/alert/alert.d.ts +11 -7
- package/dist/components/alert/alert/alert.js +13 -14
- package/dist/components/alert/alert/alert.styles.js +32 -15
- package/dist/components/alert/drawer/drawer.d.ts +8 -6
- package/dist/components/alert/drawer/drawer.js +12 -14
- package/dist/components/alert/drawer/drawer.styles.js +26 -10
- package/dist/components/alert/modal/modal.d.ts +13 -11
- package/dist/components/alert/modal/modal.js +17 -27
- package/dist/components/alert/modal/modal.styles.js +16 -7
- package/dist/components/alert/toast/toast.d.ts +9 -5
- package/dist/components/alert/toast/toast.js +11 -13
- package/dist/components/alert/toast/toast.styles.js +49 -18
- package/dist/components/content/badge/badge.js +2 -2
- package/dist/components/content/card/card.d.ts +7 -3
- package/dist/components/content/card/card.js +8 -4
- package/dist/components/content/card/card.styles.js +28 -13
- package/dist/components/content/card/image-card.d.ts +60 -6
- package/dist/components/content/card/image-card.js +120 -11
- package/dist/components/content/card/image-card.styles.js +66 -15
- package/dist/components/content/card/sliding-card.d.ts +2 -0
- package/dist/components/content/card/sliding-card.js +2 -0
- package/dist/components/content/card/sliding-card.styles.js +5 -1
- package/dist/components/content/chip/chip.d.ts +4 -4
- package/dist/components/content/chip/chip.js +8 -8
- package/dist/components/content/collapse/collapse.d.ts +10 -1
- package/dist/components/content/collapse/collapse.js +12 -2
- package/dist/components/content/collapse/collapse.styles.d.ts +10 -1
- package/dist/components/content/collapse/collapse.styles.js +56 -18
- package/dist/components/content/description-list/description-list.d.ts +87 -0
- package/dist/components/content/description-list/description-list.js +107 -0
- package/dist/components/content/description-list/description-list.styles.d.ts +1 -0
- package/dist/components/content/description-list/description-list.styles.js +185 -0
- package/dist/components/content/icon/icon.d.ts +5 -0
- package/dist/components/content/icon/icon.js +5 -0
- package/dist/components/content/icon/icon.style.d.ts +2 -0
- package/dist/components/content/icon/icon.style.js +8 -1
- package/dist/components/content/image-carousel/image-carousel.d.ts +30 -19
- package/dist/components/content/image-carousel/image-carousel.js +58 -55
- package/dist/components/content/image-carousel/image-carousel.styles.js +69 -30
- 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 +9 -1
- package/dist/components/content/progress-bar/progress-bar.styles.js +12 -4
- package/dist/components/content/shared-styles/card-link.styles.js +4 -3
- package/dist/components/content/shared-styles/tone-surface.styles.d.ts +5 -0
- package/dist/components/content/shared-styles/tone-surface.styles.js +19 -14
- package/dist/components/content/tag/tag.d.ts +4 -0
- package/dist/components/content/tag/tag.js +6 -2
- package/dist/components/content/tag/tag.styles.js +14 -4
- package/dist/components/content/tooltip/tooltip.d.ts +3 -2
- package/dist/components/content/tooltip/tooltip.js +12 -19
- package/dist/components/content/tooltip/tooltip.styles.js +25 -7
- package/dist/components/form/checkbox/check-card.d.ts +5 -1
- package/dist/components/form/checkbox/check-card.js +5 -1
- package/dist/components/form/checkbox/check-card.styles.js +13 -4
- package/dist/components/form/checkbox/checkbox-list.d.ts +21 -1
- package/dist/components/form/checkbox/checkbox-list.js +50 -17
- package/dist/components/form/checkbox/checkbox.d.ts +5 -1
- package/dist/components/form/checkbox/checkbox.js +7 -2
- package/dist/components/form/checkbox/checkbox.styles.js +5 -4
- package/dist/components/form/color-picker/color-picker.d.ts +48 -29
- package/dist/components/form/color-picker/color-picker.js +85 -71
- package/dist/components/form/color-picker/color-picker.styles.js +7 -6
- package/dist/components/form/counter/counter.d.ts +26 -19
- package/dist/components/form/counter/counter.js +64 -63
- package/dist/components/form/counter/counter.styles.js +5 -4
- package/dist/components/form/date-picker/date-picker.d.ts +64 -39
- package/dist/components/form/date-picker/date-picker.js +107 -96
- package/dist/components/form/date-picker/date-picker.styles.js +8 -5
- package/dist/components/form/input/input.d.ts +45 -40
- package/dist/components/form/input/input.js +93 -111
- package/dist/components/form/input-file/input-file.d.ts +30 -14
- package/dist/components/form/input-file/input-file.js +43 -40
- package/dist/components/form/input-file/input-file.styles.js +7 -6
- package/dist/components/form/input-phone/input-phone.d.ts +30 -7
- package/dist/components/form/input-phone/input-phone.js +54 -30
- package/dist/components/form/input-phone/input-phone.styles.js +4 -4
- package/dist/components/form/label/label.styles.js +3 -3
- package/dist/components/form/radio/radio-card.d.ts +6 -2
- package/dist/components/form/radio/radio-card.js +6 -2
- package/dist/components/form/radio/radio-card.styles.js +14 -5
- package/dist/components/form/radio/radio-list.d.ts +28 -9
- package/dist/components/form/radio/radio-list.js +61 -32
- package/dist/components/form/radio/radio.d.ts +6 -2
- package/dist/components/form/radio/radio.js +6 -2
- package/dist/components/form/radio/radio.styles.js +4 -4
- 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 +10 -9
- package/dist/components/form/search/search.js +29 -56
- package/dist/components/form/search/search.styles.js +5 -4
- package/dist/components/form/select/select.d.ts +32 -12
- package/dist/components/form/select/select.js +74 -59
- package/dist/components/form/select/select.styles.js +3 -2
- package/dist/components/form/shared-styles/card.styles.js +5 -4
- package/dist/components/form/shared-styles/field.styles.js +16 -6
- package/dist/components/form/shared-styles/form-labels.styles.js +1 -1
- package/dist/components/form/shared-styles/listbox.styles.js +10 -0
- package/dist/components/form/slider/slider.d.ts +11 -9
- package/dist/components/form/slider/slider.js +14 -14
- package/dist/components/form/slider/slider.styles.js +8 -7
- package/dist/components/form/switch/switch.d.ts +5 -1
- package/dist/components/form/switch/switch.js +5 -1
- package/dist/components/form/switch/switch.styles.js +7 -5
- package/dist/components/form/textarea/textarea.d.ts +96 -24
- package/dist/components/form/textarea/textarea.js +206 -51
- 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-columns.styles.js +4 -2
- package/dist/components/form/time-picker/time-picker-list.styles.js +2 -1
- package/dist/components/form/time-picker/time-picker.d.ts +30 -10
- package/dist/components/form/time-picker/time-picker.js +81 -64
- package/dist/components/form/time-picker/time-picker.styles.js +4 -3
- package/dist/components/layout/animate/animate.d.ts +37 -15
- package/dist/components/layout/animate/animate.js +36 -16
- package/dist/components/layout/animate/animate.styles.js +11 -18
- package/dist/components/layout/divider/divider.js +1 -1
- package/dist/components/layout/divider/divider.styles.js +1 -1
- package/dist/components/layout/infinite-list/infinite-list.d.ts +33 -10
- package/dist/components/layout/infinite-list/infinite-list.js +115 -18
- package/dist/components/layout/infinite-list/infinite-list.styles.d.ts +3 -0
- package/dist/components/layout/infinite-list/infinite-list.styles.js +17 -5
- package/dist/components/loader/loader/loader.js +2 -2
- package/dist/components/loader/loader/loader.styles.js +17 -13
- package/dist/components/loader/skeleton/skeleton.js +1 -1
- package/dist/components/navigation/breadcrumb/breadcrumb.d.ts +31 -45
- package/dist/components/navigation/breadcrumb/breadcrumb.js +111 -77
- package/dist/components/navigation/breadcrumb/breadcrumb.styles.d.ts +3 -0
- package/dist/components/navigation/breadcrumb/breadcrumb.styles.js +22 -26
- package/dist/components/navigation/carousel/carousel.d.ts +55 -11
- package/dist/components/navigation/carousel/carousel.js +101 -43
- package/dist/components/navigation/carousel/carousel.styles.js +65 -22
- package/dist/components/navigation/pagination/pagination.d.ts +23 -21
- package/dist/components/navigation/pagination/pagination.js +30 -53
- package/dist/components/navigation/pagination/pagination.styles.js +8 -3
- package/dist/components/navigation/sidebar/sidebar.d.ts +17 -13
- package/dist/components/navigation/sidebar/sidebar.js +23 -33
- package/dist/components/navigation/sidebar/sidebar.styles.js +32 -14
- package/dist/components/navigation/stepper/step.js +9 -8
- package/dist/components/navigation/stepper/step.styles.js +16 -5
- package/dist/components/navigation/stepper/stepper.js +12 -5
- package/dist/components/navigation/stepper/stepper.styles.js +16 -5
- package/dist/components/navigation/tabs/tab/tab.d.ts +11 -0
- package/dist/components/navigation/tabs/tab/tab.js +11 -0
- package/dist/components/navigation/tabs/tab/tab.styles.js +22 -16
- package/dist/components/navigation/tabs/tab-group/tab-group.js +9 -10
- package/dist/components/navigation/tabs/tab-group/tab-group.styles.js +21 -16
- package/dist/components/navigation/tabs/tab-panel/tab-panel.d.ts +4 -0
- package/dist/components/navigation/tabs/tab-panel/tab-panel.js +4 -0
- package/dist/components/navigation/tabs/tab-panel/tab-panel.styles.js +18 -1
- package/dist/components/navigation/toolbar/toolbar.d.ts +30 -62
- package/dist/components/navigation/toolbar/toolbar.js +43 -105
- package/dist/components/navigation/toolbar/toolbar.styles.js +59 -36
- package/dist/events/table-row-click.event.d.ts +5 -4
- package/dist/events/table-row-click.event.js +10 -5
- package/dist/features/scheduler/calendar/calendar.d.ts +6 -6
- package/dist/features/scheduler/calendar/calendar.js +7 -6
- package/dist/features/scheduler/calendar/calendar.styles.js +8 -6
- package/dist/features/scheduler/scheduler/scheduler.d.ts +8 -8
- package/dist/features/scheduler/scheduler/scheduler.js +24 -47
- package/dist/features/scheduler/scheduler/scheduler.styles.js +6 -4
- package/dist/features/scheduler/scheduler-event/scheduler-event.d.ts +2 -0
- package/dist/features/scheduler/scheduler-event/scheduler-event.js +5 -3
- package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +11 -5
- 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 +6 -7
- package/dist/features/scheduler/shared/scheduler-hour-grid.styles.js +3 -3
- package/dist/features/scheduler/shared/scheduler-month-view.styles.js +2 -2
- package/dist/features/scheduler/shared/scheduler-year-view.styles.js +2 -2
- package/dist/features/table/table/table-native.styles.d.ts +28 -0
- package/dist/features/table/table/table-native.styles.js +502 -0
- package/dist/features/table/table/table.d.ts +342 -294
- package/dist/features/table/table/table.js +820 -546
- package/dist/features/table/table/table.styles.js +31 -17
- package/dist/features/table/table/table.types.d.ts +11 -20
- package/dist/features/table/table/table.utils.d.ts +6 -36
- package/dist/features/table/table/table.utils.js +16 -65
- package/dist/features/table/table-action-bar/table-action-bar.d.ts +33 -16
- package/dist/features/table/table-action-bar/table-action-bar.js +15 -22
- package/dist/features/table/table-action-bar/table-action-bar.styles.js +15 -3
- package/dist/i18n/en.d.ts +99 -0
- package/dist/i18n/en.js +99 -0
- package/dist/i18n/fr.js +103 -2
- package/dist/index.d.ts +6 -10
- package/dist/index.js +7 -10
- package/dist/mixins/button.mixin.js +3 -2
- package/dist/mixins/check.mixin.js +15 -15
- 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/form.mixin.d.ts +21 -1
- package/dist/mixins/form.mixin.js +156 -27
- package/dist/mixins/localizable.mixin.d.ts +1 -1
- package/dist/mixins/localizable.mixin.js +1 -1
- package/dist/mixins/radio.mixin.js +15 -15
- package/dist/mixins/readonly.mixin.d.ts +2 -1
- package/dist/mixins/readonly.mixin.js +10 -3
- package/dist/mixins/validators.mixin.d.ts +7 -1
- package/dist/mixins/validators.mixin.js +36 -17
- package/dist/ssr/alert-ssr.css +187 -0
- package/dist/ssr/animate-ssr.css +3 -2
- package/dist/ssr/badge-ssr.css +67 -0
- package/dist/ssr/breadcrumb-ssr.css +41 -0
- package/dist/ssr/button-ssr.css +319 -0
- package/dist/ssr/card-ssr.css +196 -0
- package/dist/ssr/carousel-ssr.css +238 -0
- package/dist/ssr/checkbox-ssr.css +67 -0
- package/dist/ssr/chip-ssr.css +242 -0
- package/dist/ssr/collapse-ssr.css +151 -0
- package/dist/ssr/description-list-ssr.css +150 -0
- package/dist/ssr/field-ssr.css +163 -0
- package/dist/ssr/icon-ssr.css +266 -0
- package/dist/ssr/image-carousel-ssr.css +24 -0
- package/dist/ssr/links-ssr.css +8 -2
- package/dist/ssr/pagination-ssr.css +4 -0
- package/dist/ssr/rating-ssr.css +254 -0
- package/dist/ssr/sidebar-ssr.css +9 -1
- package/dist/ssr/skeleton-ssr.css +63 -0
- package/dist/ssr/table-ssr.css +472 -0
- package/dist/ssr/tabs-ssr.css +129 -0
- package/dist/ssr/tag-ssr.css +197 -0
- package/dist/ssr/toggle-group-ssr.css +182 -0
- package/dist/ssr/toolbar-ssr.css +34 -1
- package/dist/utils/drag-drop.utils.js +18 -2
- package/dist/utils/dropdown-menu.utils.d.ts +2 -2
- package/dist/utils/dropdown-menu.utils.js +4 -14
- package/dist/utils/implicit-submission.utils.d.ts +18 -0
- package/dist/utils/implicit-submission.utils.js +79 -0
- package/dist/utils/light-dom-styles.utils.d.ts +14 -0
- package/dist/utils/light-dom-styles.utils.js +37 -0
- package/dist/utils/listbox-options.utils.d.ts +11 -0
- package/dist/utils/listbox-options.utils.js +41 -3
- package/dist/utils/media.styles.d.ts +19 -0
- package/dist/utils/media.styles.js +23 -0
- package/dist/utils/motion.utils.d.ts +40 -0
- package/dist/utils/motion.utils.js +51 -0
- package/dist/utils/theme-generator.utils.d.ts +6 -1
- package/dist/utils/theme-generator.utils.js +59 -20
- package/package.json +39 -31
- package/styles/breakpoints.scss +8 -0
- package/styles/eunomia-grid.scss +6 -0
- package/styles/themes/eunomia-theme.scss +4 -3
- package/styles/themes/mixins/eunomia-a11y-color.mixin.scss +34 -1
- package/styles/themes/mixins/eunomia-neutrals.mixin.scss +4 -0
- package/styles/themes/mixins/eunomia-states.mixin.scss +36 -12
- package/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/eunomia/eunomia.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/eunomia/eunomia.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/fire/eunomia-fire.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/forest/eunomia-forest.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/gold/eunomia-gold.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.scss +3 -2
- package/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/violet/eunomia-violet.mixin.scss +10 -10
- package/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.scss +3 -2
- package/styles/tools/indexes/eunomia-media-queries.index.scss +1 -3
- package/styles/tools/indexes/eunomia-tools.index.scss +1 -0
- package/styles/tools/mixins/layout/eunomia-grid.mixin.scss +117 -53
- package/styles/tools/mixins/media-queries/eunomia-media-queries.mixin.scss +69 -0
- package/styles/tools/mixins/settings/eunomia-alpha.mixin.scss +28 -4
- package/styles/tools/mixins/settings/eunomia-motion.mixin.scss +9 -0
- package/styles/tools/variables/eunomia.breakpoints.scss +4 -0
- package/dist/cdn/components/chunks/chunk-32DTNR52.js +0 -1
- package/dist/cdn/components/chunks/chunk-A6KGFALA.js +0 -132
- package/dist/cdn/components/chunks/chunk-CEDHJUUH.js +0 -1
- package/dist/cdn/components/chunks/chunk-D2M4BV5Y.js +0 -328
- package/dist/cdn/components/chunks/chunk-E4IS25H7.js +0 -1
- package/dist/cdn/components/chunks/chunk-E74CM7UG.js +0 -66
- package/dist/cdn/components/chunks/chunk-EAKYD33D.js +0 -110
- package/dist/cdn/components/chunks/chunk-EST3M4AO.js +0 -1
- package/dist/cdn/components/chunks/chunk-GU6BVMFJ.js +0 -1
- package/dist/cdn/components/chunks/chunk-KBH5PCUO.js +0 -3
- package/dist/cdn/components/chunks/chunk-KVYUNKUO.js +0 -27
- package/dist/cdn/components/chunks/chunk-LFCXUVDO.js +0 -1
- package/dist/cdn/components/chunks/chunk-OAULRKHQ.js +0 -38
- package/dist/cdn/components/chunks/chunk-PCM7D3YF.js +0 -84
- package/dist/cdn/components/chunks/chunk-S2UCEWNG.js +0 -207
- package/dist/cdn/components/chunks/chunk-SJWRE6PW.js +0 -1
- package/dist/cdn/components/chunks/chunk-T4PTHUYF.js +0 -10
- package/dist/cdn/components/chunks/chunk-VRGRCYIO.js +0 -1
- package/dist/cdn/components/chunks/chunk-X2AUBZD2.js +0 -30
- package/dist/cdn/components/eun-breadcrumb-item.js +0 -93
- package/dist/cdn/components/eun-table-cell.js +0 -1
- package/dist/cdn/components/eun-table-column.js +0 -1
- package/dist/cdn/components/eun-table-header.js +0 -1
- package/dist/cdn/components/eun-table-item.js +0 -1
- package/dist/cdn/components/eun-table-skeleton-row.js +0 -1
- package/dist/cdn/styles/tools/mixins/media-queries/eunomia-device.mixin.scss +0 -14
- package/dist/cdn/styles/tools/mixins/media-queries/eunomia-gte.mixin.scss +0 -26
- package/dist/cdn/styles/tools/mixins/media-queries/eunomia-lte.mixin.scss +0 -26
- package/dist/components/navigation/breadcrumb/breadcrumb-item.d.ts +0 -77
- package/dist/components/navigation/breadcrumb/breadcrumb-item.js +0 -130
- package/dist/components/navigation/breadcrumb/breadcrumb-item.styles.d.ts +0 -6
- package/dist/components/navigation/breadcrumb/breadcrumb-item.styles.js +0 -78
- package/dist/features/table/native-table.css +0 -276
- package/dist/features/table/shared-styles/table-row.styles.d.ts +0 -7
- package/dist/features/table/shared-styles/table-row.styles.js +0 -47
- package/dist/features/table/shared-styles/table-shared.styles.d.ts +0 -23
- package/dist/features/table/shared-styles/table-shared.styles.js +0 -33
- package/dist/features/table/table-cell/table-cell.d.ts +0 -59
- package/dist/features/table/table-cell/table-cell.js +0 -73
- package/dist/features/table/table-cell/table-cell.styles.d.ts +0 -1
- package/dist/features/table/table-cell/table-cell.styles.js +0 -46
- package/dist/features/table/table-column/table-column.d.ts +0 -73
- package/dist/features/table/table-column/table-column.js +0 -89
- package/dist/features/table/table-column/table-column.styles.d.ts +0 -1
- package/dist/features/table/table-column/table-column.styles.js +0 -51
- package/dist/features/table/table-header/table-header.d.ts +0 -102
- package/dist/features/table/table-header/table-header.js +0 -165
- package/dist/features/table/table-header/table-header.styles.d.ts +0 -1
- package/dist/features/table/table-header/table-header.styles.js +0 -147
- package/dist/features/table/table-item/table-item.d.ts +0 -179
- package/dist/features/table/table-item/table-item.js +0 -291
- package/dist/features/table/table-item/table-item.styles.d.ts +0 -1
- package/dist/features/table/table-item/table-item.styles.js +0 -404
- package/dist/features/table/table-managed/table-managed.d.ts +0 -19
- package/dist/features/table/table-managed/table-managed.js +0 -128
- package/dist/features/table/table-skeleton-row/table-skeleton-row.d.ts +0 -46
- package/dist/features/table/table-skeleton-row/table-skeleton-row.js +0 -110
- package/dist/features/table/table-skeleton-row/table-skeleton-row.styles.d.ts +0 -12
- package/dist/features/table/table-skeleton-row/table-skeleton-row.styles.js +0 -65
- package/dist/mixins/table-row.mixin.d.ts +0 -37
- package/dist/mixins/table-row.mixin.js +0 -103
- package/styles/tools/mixins/media-queries/eunomia-device.mixin.scss +0 -14
- package/styles/tools/mixins/media-queries/eunomia-gte.mixin.scss +0 -26
- package/styles/tools/mixins/media-queries/eunomia-lte.mixin.scss +0 -26
|
@@ -35,8 +35,8 @@ export interface TimePickerColumnsProps {
|
|
|
35
35
|
ariaLabelHour?: string;
|
|
36
36
|
ariaLabelMinute?: string;
|
|
37
37
|
ariaLabelPeriod?: string;
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
incrementLabel?: string;
|
|
39
|
+
decrementLabel?: string;
|
|
40
40
|
onHourChange: (hour24: number) => void;
|
|
41
41
|
onMinuteChange: (minute: number) => void;
|
|
42
42
|
onPeriodChange: (period: Period) => void;
|
|
@@ -73,8 +73,8 @@ export function renderTimePickerColumns(props) {
|
|
|
73
73
|
disabled,
|
|
74
74
|
noAnimation,
|
|
75
75
|
label: props.ariaLabelHour ?? "Hour",
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
incrementLabel: props.incrementLabel ?? "Increase hour",
|
|
77
|
+
decrementLabel: props.decrementLabel ?? "Decrease hour",
|
|
78
78
|
min: hourMin,
|
|
79
79
|
max: hourMax,
|
|
80
80
|
current: display.hour,
|
|
@@ -89,8 +89,8 @@ export function renderTimePickerColumns(props) {
|
|
|
89
89
|
disabled,
|
|
90
90
|
noAnimation,
|
|
91
91
|
label: props.ariaLabelMinute ?? "Minute",
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
incrementLabel: props.incrementLabel ?? "Increase minute",
|
|
93
|
+
decrementLabel: props.decrementLabel ?? "Decrease minute",
|
|
94
94
|
min: 0,
|
|
95
95
|
max: 59,
|
|
96
96
|
current: minute,
|
|
@@ -106,8 +106,8 @@ export function renderTimePickerColumns(props) {
|
|
|
106
106
|
disabled,
|
|
107
107
|
noAnimation,
|
|
108
108
|
label: props.ariaLabelPeriod ?? "AM/PM",
|
|
109
|
-
|
|
110
|
-
|
|
109
|
+
incrementLabel: props.incrementLabel ?? "Toggle AM/PM",
|
|
110
|
+
decrementLabel: props.decrementLabel ?? "Toggle AM/PM",
|
|
111
111
|
min: 0,
|
|
112
112
|
max: 1,
|
|
113
113
|
current: period === "AM" ? 0 : 1,
|
|
@@ -164,7 +164,7 @@ function renderColumn(config) {
|
|
|
164
164
|
type="button"
|
|
165
165
|
class="tp-arrow tp-arrow-up"
|
|
166
166
|
tabindex="-1"
|
|
167
|
-
aria-label=${config.
|
|
167
|
+
aria-label=${config.incrementLabel}
|
|
168
168
|
?disabled=${disabled}
|
|
169
169
|
@click=${() => onStep(1)}
|
|
170
170
|
>
|
|
@@ -194,7 +194,7 @@ function renderColumn(config) {
|
|
|
194
194
|
type="button"
|
|
195
195
|
class="tp-arrow tp-arrow-down"
|
|
196
196
|
tabindex="-1"
|
|
197
|
-
aria-label=${config.
|
|
197
|
+
aria-label=${config.decrementLabel}
|
|
198
198
|
?disabled=${disabled}
|
|
199
199
|
@click=${() => onStep(-1)}
|
|
200
200
|
>
|
|
@@ -36,7 +36,8 @@ const timePickerColumns = css `
|
|
|
36
36
|
padding: var(--eun-space-xxs, 1.6px);
|
|
37
37
|
color: var(--_iconColor, var(--eun-text-secondary, #484e61));
|
|
38
38
|
cursor: pointer;
|
|
39
|
-
transition: background-color
|
|
39
|
+
transition: background-color var(--eun-duration-s, 150ms)
|
|
40
|
+
var(--eun-easing-default, ease);
|
|
40
41
|
}
|
|
41
42
|
.tp-arrow:hover:not(:disabled) {
|
|
42
43
|
background-color: var(
|
|
@@ -109,7 +110,8 @@ const timePickerColumns = css `
|
|
|
109
110
|
color: var(--_placeholderColor, var(--eun-color-grey-400, #c1c9d6));
|
|
110
111
|
font: inherit;
|
|
111
112
|
cursor: pointer;
|
|
112
|
-
transition: color
|
|
113
|
+
transition: color var(--eun-duration-s, 150ms)
|
|
114
|
+
var(--eun-easing-default, ease);
|
|
113
115
|
}
|
|
114
116
|
.tp-wheel-item.selected {
|
|
115
117
|
color: var(--_textColor, var(--eun-text-color, #071621));
|
|
@@ -27,7 +27,8 @@ const timePickerList = css `
|
|
|
27
27
|
font-variant-numeric: tabular-nums;
|
|
28
28
|
text-align: start;
|
|
29
29
|
cursor: pointer;
|
|
30
|
-
transition: background-color
|
|
30
|
+
transition: background-color var(--eun-duration-s, 150ms)
|
|
31
|
+
var(--eun-easing-default, ease);
|
|
31
32
|
}
|
|
32
33
|
.tp-list-item:hover:not(:disabled) {
|
|
33
34
|
background-color: var(
|
|
@@ -64,14 +64,16 @@ declare const EunomiaTimePickerMixinBase: Constructor<EunomiaTimePickerBase>;
|
|
|
64
64
|
* @prop {boolean} [disabled=false] - Whether the field is disabled
|
|
65
65
|
* @prop {boolean} [readonly=false] - Whether the field is read only
|
|
66
66
|
* @prop {boolean} [required=false] - Whether the field is required
|
|
67
|
-
* @prop {boolean} [hideError=false] - Whether the errors are hidden
|
|
67
|
+
* @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
|
|
68
|
+
* @prop {boolean} [invalid=false] - Shows the field as invalid without any message, for an error displayed elsewhere
|
|
69
|
+
* @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
|
|
68
70
|
* @prop {Array<Validators<Date | null>>} validators - The list of custom validation rules applied to the value
|
|
69
71
|
* @prop {string} [applyLabel='Apply'] - The label of the mobile modal's confirm button
|
|
70
72
|
* @attr {string} [apply-label='Apply'] - The label of the mobile modal's confirm button
|
|
71
|
-
* @prop {string} [cancelLabel
|
|
72
|
-
* @attr {string} [cancel-label
|
|
73
|
-
* @prop {string} [
|
|
74
|
-
* @attr {string} [
|
|
73
|
+
* @prop {string} [cancelLabel] - The label of the mobile modal's cancel button. Defaults to the localized string for the current locale (English: "Cancel")
|
|
74
|
+
* @attr {string} [cancel-label] - The label of the mobile modal's cancel button. Defaults to the localized string for the current locale (English: "Cancel")
|
|
75
|
+
* @prop {string} [clockLabel] - The accessible label of the trailing clock button. Defaults to the localized string for the current locale (English: "Open clock")
|
|
76
|
+
* @attr {string} [clock-label] - The accessible label of the trailing clock button. Defaults to the localized string for the current locale (English: "Open clock")
|
|
75
77
|
* @prop {string} [hourPlaceholder='hh'] - The placeholder shown in the empty hour segment
|
|
76
78
|
* @attr {string} [hour-placeholder='hh'] - The placeholder shown in the empty hour segment
|
|
77
79
|
* @prop {string} [minutePlaceholder='mm'] - The placeholder shown in the empty minute segment
|
|
@@ -96,6 +98,9 @@ declare const EunomiaTimePickerMixinBase: Constructor<EunomiaTimePickerBase>;
|
|
|
96
98
|
* @cssprop [--time-picker-selected-color] - Sets the text color of the selected item in the list panel mode
|
|
97
99
|
* @cssprop [--time-picker-panel-background] - Sets the background color of the popover panel
|
|
98
100
|
* @cssprop [--time-picker-panel-transition-duration=200ms] - Sets the duration of the popover panel's open and close transition
|
|
101
|
+
* @cssprop [--field-font-size] - Sets the font size of the field's value and placeholder
|
|
102
|
+
* @cssprop [--field-label-font-size] - Sets the font size of the label
|
|
103
|
+
* @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
|
|
99
104
|
* @element eun-time-picker
|
|
100
105
|
*/
|
|
101
106
|
export declare class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
@@ -182,14 +187,14 @@ export declare class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
|
182
187
|
applyLabel: string;
|
|
183
188
|
/**
|
|
184
189
|
* Label of the mobile modal's cancel button.
|
|
185
|
-
*
|
|
190
|
+
* Falls back to the localized string for the current locale when unset.
|
|
186
191
|
*/
|
|
187
|
-
cancelLabel
|
|
192
|
+
cancelLabel?: string;
|
|
188
193
|
/**
|
|
189
194
|
* Accessible label of the trailing clock button.
|
|
190
|
-
*
|
|
195
|
+
* Falls back to the localized string for the current locale when unset.
|
|
191
196
|
*/
|
|
192
|
-
|
|
197
|
+
clockLabel?: string;
|
|
193
198
|
/**
|
|
194
199
|
* Placeholder shown in the empty hour segment.
|
|
195
200
|
* @default hh
|
|
@@ -223,6 +228,15 @@ export declare class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
|
223
228
|
* @internal
|
|
224
229
|
*/
|
|
225
230
|
private isOpen;
|
|
231
|
+
constructor();
|
|
232
|
+
/**
|
|
233
|
+
* Submits the owning form on Enter in one of the field's segments, as a
|
|
234
|
+
* native time input does, since the browser never does it from a
|
|
235
|
+
* shadow root. Left alone while the panel is open, and on keys a
|
|
236
|
+
* segment already handles, such as Enter toggling the AM/PM segment.
|
|
237
|
+
* @private
|
|
238
|
+
*/
|
|
239
|
+
private readonly handleImplicitSubmission;
|
|
226
240
|
/**
|
|
227
241
|
* Whether the mobile modal is open.
|
|
228
242
|
* @internal
|
|
@@ -323,6 +337,12 @@ export declare class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
|
323
337
|
* @returns validity state and optional message.
|
|
324
338
|
*/
|
|
325
339
|
checkLocalValidators: () => Validity;
|
|
340
|
+
/**
|
|
341
|
+
* The host is never a tab stop of its own : sequential navigation goes
|
|
342
|
+
* straight to the controls inside, in both directions, and
|
|
343
|
+
* {@link focus} covers a direct call on the host.
|
|
344
|
+
*/
|
|
345
|
+
protected get hostTabStop(): boolean;
|
|
326
346
|
/**
|
|
327
347
|
* Returns the first segment element to focus/anchor on validation errors.
|
|
328
348
|
*
|
|
@@ -429,7 +449,7 @@ export declare class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
|
429
449
|
* The popover's open/close animation duration, in ms : `0` if
|
|
430
450
|
* `noAnimation` is set or the browser reports `prefers-reduced-motion:
|
|
431
451
|
* reduce`, otherwise `--time-picker-panel-transition-duration` (default
|
|
432
|
-
* `
|
|
452
|
+
* `--eun-duration-m`).
|
|
433
453
|
*
|
|
434
454
|
* @param el the popover to read `--time-picker-panel-transition-duration` off.
|
|
435
455
|
* @private
|
|
@@ -9,7 +9,7 @@ import { html, LitElement, nothing } from "lit";
|
|
|
9
9
|
import { DisabledMixin, } from "../../../mixins/disabled.mixin.js";
|
|
10
10
|
import { ReadonlyMixin, } from "../../../mixins/readonly.mixin.js";
|
|
11
11
|
import { ValidatorsMixin, } from "../../../mixins/validators.mixin.js";
|
|
12
|
-
import { FormMixin } from "../../../mixins/form.mixin.js";
|
|
12
|
+
import { FormMixin, hasErrorDisplayChange, } from "../../../mixins/form.mixin.js";
|
|
13
13
|
import { FormLabelMixin, } from "../../../mixins/form-label.mixin.js";
|
|
14
14
|
import { FieldAppearanceMixin, } from "../../../mixins/field-appearance.mixin.js";
|
|
15
15
|
import { AnchorPositionMixin, } from "../../../mixins/anchor-position.mixin.js";
|
|
@@ -24,6 +24,9 @@ import { timePickerColumnsStyles } from "./time-picker-columns.styles.js";
|
|
|
24
24
|
import { renderTimePickerColumns } from "./time-picker-columns.js";
|
|
25
25
|
import { timePickerListStyles } from "./time-picker-list.styles.js";
|
|
26
26
|
import { renderTimePickerList } from "./time-picker-list.js";
|
|
27
|
+
import { resolveDurationMs, resolveEasing, } from "../../../utils/motion.utils.js";
|
|
28
|
+
import { mediaBelow } from "../../../breakpoints.js";
|
|
29
|
+
import { isImplicitSubmissionKey, submitImplicitly, } from "../../../utils/implicit-submission.utils.js";
|
|
27
30
|
/**
|
|
28
31
|
* Tag name of the time-picker component.
|
|
29
32
|
*/
|
|
@@ -78,14 +81,16 @@ const EunomiaTimePickerMixinBase = LocalizableMixin(AnchorPositionMixin(FieldApp
|
|
|
78
81
|
* @prop {boolean} [disabled=false] - Whether the field is disabled
|
|
79
82
|
* @prop {boolean} [readonly=false] - Whether the field is read only
|
|
80
83
|
* @prop {boolean} [required=false] - Whether the field is required
|
|
81
|
-
* @prop {boolean} [hideError=false] - Whether the errors are hidden
|
|
84
|
+
* @prop {boolean} [hideError=false] - Whether the errors are hidden. The hint stays visible
|
|
85
|
+
* @prop {boolean} [invalid=false] - Shows the field as invalid without any message, for an error displayed elsewhere
|
|
86
|
+
* @prop {string} [error] - An error computed outside the field, by the form or by the server. While set, the field is invalid and shows this message right away
|
|
82
87
|
* @prop {Array<Validators<Date | null>>} validators - The list of custom validation rules applied to the value
|
|
83
88
|
* @prop {string} [applyLabel='Apply'] - The label of the mobile modal's confirm button
|
|
84
89
|
* @attr {string} [apply-label='Apply'] - The label of the mobile modal's confirm button
|
|
85
|
-
* @prop {string} [cancelLabel
|
|
86
|
-
* @attr {string} [cancel-label
|
|
87
|
-
* @prop {string} [
|
|
88
|
-
* @attr {string} [
|
|
90
|
+
* @prop {string} [cancelLabel] - The label of the mobile modal's cancel button. Defaults to the localized string for the current locale (English: "Cancel")
|
|
91
|
+
* @attr {string} [cancel-label] - The label of the mobile modal's cancel button. Defaults to the localized string for the current locale (English: "Cancel")
|
|
92
|
+
* @prop {string} [clockLabel] - The accessible label of the trailing clock button. Defaults to the localized string for the current locale (English: "Open clock")
|
|
93
|
+
* @attr {string} [clock-label] - The accessible label of the trailing clock button. Defaults to the localized string for the current locale (English: "Open clock")
|
|
89
94
|
* @prop {string} [hourPlaceholder='hh'] - The placeholder shown in the empty hour segment
|
|
90
95
|
* @attr {string} [hour-placeholder='hh'] - The placeholder shown in the empty hour segment
|
|
91
96
|
* @prop {string} [minutePlaceholder='mm'] - The placeholder shown in the empty minute segment
|
|
@@ -110,11 +115,31 @@ const EunomiaTimePickerMixinBase = LocalizableMixin(AnchorPositionMixin(FieldApp
|
|
|
110
115
|
* @cssprop [--time-picker-selected-color] - Sets the text color of the selected item in the list panel mode
|
|
111
116
|
* @cssprop [--time-picker-panel-background] - Sets the background color of the popover panel
|
|
112
117
|
* @cssprop [--time-picker-panel-transition-duration=200ms] - Sets the duration of the popover panel's open and close transition
|
|
118
|
+
* @cssprop [--field-font-size] - Sets the font size of the field's value and placeholder
|
|
119
|
+
* @cssprop [--field-label-font-size] - Sets the font size of the label
|
|
120
|
+
* @cssprop [--field-message-font-size] - Sets the font size of the hint, error messages and instructions
|
|
113
121
|
* @element eun-time-picker
|
|
114
122
|
*/
|
|
115
123
|
let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBase {
|
|
124
|
+
/**
|
|
125
|
+
* The default value applied on connection and form reset. Overrides the
|
|
126
|
+
* `defaultValue` accessor inherited from `FormMixin` only to swap its
|
|
127
|
+
* attribute converter — the mixin's generic one always splits
|
|
128
|
+
* `default-value` on commas, which would silently produce the wrong thing
|
|
129
|
+
* for a `Date` ; matches `eun-date-picker`'s identical override. The
|
|
130
|
+
* actual get/set logic (applying the default when the field resets)
|
|
131
|
+
* still comes from `FormMixin` itself, via `super`.
|
|
132
|
+
* @default-value-format an ISO 8601 date-time string
|
|
133
|
+
*/
|
|
134
|
+
get defaultValue() {
|
|
135
|
+
return super.defaultValue;
|
|
136
|
+
}
|
|
137
|
+
set defaultValue(value) {
|
|
138
|
+
// @ts-expect-error — see comment above ; FormMixin's real setter exists.
|
|
139
|
+
super.defaultValue = value;
|
|
140
|
+
}
|
|
116
141
|
constructor() {
|
|
117
|
-
super(
|
|
142
|
+
super();
|
|
118
143
|
/**
|
|
119
144
|
* The minute column's increment step, and which minute values the mobile
|
|
120
145
|
* wheel enumerates (e.g. `15` only ever shows/lands on `:00`/`:15`/`:30`/
|
|
@@ -162,16 +187,6 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
162
187
|
* @default Apply
|
|
163
188
|
*/
|
|
164
189
|
this.applyLabel = "Apply";
|
|
165
|
-
/**
|
|
166
|
-
* Label of the mobile modal's cancel button.
|
|
167
|
-
* @default Cancel
|
|
168
|
-
*/
|
|
169
|
-
this.cancelLabel = "Cancel";
|
|
170
|
-
/**
|
|
171
|
-
* Accessible label of the trailing clock button.
|
|
172
|
-
* @default Open clock
|
|
173
|
-
*/
|
|
174
|
-
this.ariaLabelClock = "Open clock";
|
|
175
190
|
/**
|
|
176
191
|
* Placeholder shown in the empty hour segment.
|
|
177
192
|
* @default hh
|
|
@@ -193,6 +208,25 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
193
208
|
* @internal
|
|
194
209
|
*/
|
|
195
210
|
this.isOpen = false;
|
|
211
|
+
/**
|
|
212
|
+
* Submits the owning form on Enter in one of the field's segments, as a
|
|
213
|
+
* native time input does, since the browser never does it from a
|
|
214
|
+
* shadow root. Left alone while the panel is open, and on keys a
|
|
215
|
+
* segment already handles, such as Enter toggling the AM/PM segment.
|
|
216
|
+
* @private
|
|
217
|
+
*/
|
|
218
|
+
this.handleImplicitSubmission = (event) => {
|
|
219
|
+
const form = this.internals.form;
|
|
220
|
+
const origin = event.composedPath()[0];
|
|
221
|
+
if (!form ||
|
|
222
|
+
this.isOpen ||
|
|
223
|
+
!(origin instanceof Element && origin.matches(".segment")) ||
|
|
224
|
+
!isImplicitSubmissionKey(event)) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
event.preventDefault();
|
|
228
|
+
submitImplicitly(form);
|
|
229
|
+
};
|
|
196
230
|
/**
|
|
197
231
|
* Whether the mobile modal is open.
|
|
198
232
|
* @internal
|
|
@@ -227,7 +261,10 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
227
261
|
const format = this.resolvedHourFormat();
|
|
228
262
|
if (isPartiallyFilled(this.segments) &&
|
|
229
263
|
!clockSegmentsToTime(this.segments, format)) {
|
|
230
|
-
return {
|
|
264
|
+
return {
|
|
265
|
+
validity: { badInput: true },
|
|
266
|
+
message: this.dictionary.validation.invalidTime,
|
|
267
|
+
};
|
|
231
268
|
}
|
|
232
269
|
if (this.value) {
|
|
233
270
|
const { hour, minute } = getZonedParts(this.value, this.timezone);
|
|
@@ -285,7 +322,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
285
322
|
this.isModalOpen = true;
|
|
286
323
|
return;
|
|
287
324
|
}
|
|
288
|
-
this.updateComplete.then(() => {
|
|
325
|
+
void this.updateComplete.then(() => {
|
|
289
326
|
const popover = this.popoverEl;
|
|
290
327
|
if (!popover) {
|
|
291
328
|
return;
|
|
@@ -318,7 +355,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
318
355
|
});
|
|
319
356
|
}
|
|
320
357
|
this.observeAnchorVisibility(this.fieldWrapperEl, () => this.closePopover());
|
|
321
|
-
this.updateComplete.then(() => this.panelMode === "list"
|
|
358
|
+
void this.updateComplete.then(() => this.panelMode === "list"
|
|
322
359
|
? this.focusListSelection()
|
|
323
360
|
: this.focusFirstSpinbutton());
|
|
324
361
|
return;
|
|
@@ -402,23 +439,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
402
439
|
break;
|
|
403
440
|
}
|
|
404
441
|
};
|
|
405
|
-
|
|
406
|
-
/**
|
|
407
|
-
* The default value applied on connection and form reset. Overrides the
|
|
408
|
-
* `defaultValue` accessor inherited from `FormMixin` only to swap its
|
|
409
|
-
* attribute converter — the mixin's generic one always splits
|
|
410
|
-
* `default-value` on commas, which would silently produce the wrong thing
|
|
411
|
-
* for a `Date` ; matches `eun-date-picker`'s identical override. The
|
|
412
|
-
* actual get/set logic (applying the default when the field resets)
|
|
413
|
-
* still comes from `FormMixin` itself, via `super`.
|
|
414
|
-
* @default-value-format an ISO 8601 date-time string
|
|
415
|
-
*/
|
|
416
|
-
get defaultValue() {
|
|
417
|
-
return super.defaultValue;
|
|
418
|
-
}
|
|
419
|
-
set defaultValue(value) {
|
|
420
|
-
// @ts-expect-error — see comment above ; FormMixin's real setter exists.
|
|
421
|
-
super.defaultValue = value;
|
|
442
|
+
this.addEventListener("keydown", this.handleImplicitSubmission);
|
|
422
443
|
}
|
|
423
444
|
/**
|
|
424
445
|
* Lifecycle hook called before an update, ahead of render. Keeps the
|
|
@@ -469,12 +490,18 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
469
490
|
*/
|
|
470
491
|
updated(changed) {
|
|
471
492
|
super.updated(changed);
|
|
472
|
-
if (changed
|
|
473
|
-
|
|
474
|
-
changed.has("disabled")) {
|
|
475
|
-
this.setAttribute("aria-invalid", String(!this.hideError && !this.disabled && !this.valid));
|
|
493
|
+
if (hasErrorDisplayChange(changed)) {
|
|
494
|
+
this.setAttribute("aria-invalid", String(this.showError));
|
|
476
495
|
}
|
|
477
496
|
}
|
|
497
|
+
/**
|
|
498
|
+
* The host is never a tab stop of its own : sequential navigation goes
|
|
499
|
+
* straight to the controls inside, in both directions, and
|
|
500
|
+
* {@link focus} covers a direct call on the host.
|
|
501
|
+
*/
|
|
502
|
+
get hostTabStop() {
|
|
503
|
+
return false;
|
|
504
|
+
}
|
|
478
505
|
/**
|
|
479
506
|
* Returns the first segment element to focus/anchor on validation errors.
|
|
480
507
|
*
|
|
@@ -498,7 +525,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
498
525
|
* @private
|
|
499
526
|
*/
|
|
500
527
|
isMobileViewport() {
|
|
501
|
-
return window.matchMedia(
|
|
528
|
+
return window.matchMedia(mediaBelow("tablet")).matches;
|
|
502
529
|
}
|
|
503
530
|
/**
|
|
504
531
|
* The hour format actually in effect, resolving `hourFormat`/`locale`
|
|
@@ -599,7 +626,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
599
626
|
* The popover's open/close animation duration, in ms : `0` if
|
|
600
627
|
* `noAnimation` is set or the browser reports `prefers-reduced-motion:
|
|
601
628
|
* reduce`, otherwise `--time-picker-panel-transition-duration` (default
|
|
602
|
-
* `
|
|
629
|
+
* `--eun-duration-m`).
|
|
603
630
|
*
|
|
604
631
|
* @param el the popover to read `--time-picker-panel-transition-duration` off.
|
|
605
632
|
* @private
|
|
@@ -609,18 +636,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
609
636
|
window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
|
|
610
637
|
return 0;
|
|
611
638
|
}
|
|
612
|
-
|
|
613
|
-
.getPropertyValue("--time-picker-panel-transition-duration")
|
|
614
|
-
.trim();
|
|
615
|
-
if (raw) {
|
|
616
|
-
const parsed = raw.endsWith("ms")
|
|
617
|
-
? Number.parseFloat(raw)
|
|
618
|
-
: Number.parseFloat(raw) * 1000;
|
|
619
|
-
if (Number.isFinite(parsed) && parsed >= 0) {
|
|
620
|
-
return parsed;
|
|
621
|
-
}
|
|
622
|
-
}
|
|
623
|
-
return 200;
|
|
639
|
+
return resolveDurationMs(el, "--time-picker-panel-transition-duration", "m", 200);
|
|
624
640
|
}
|
|
625
641
|
/**
|
|
626
642
|
* Plays the fade/scaleY-in, replacing any {@link popoverAnimation}
|
|
@@ -638,7 +654,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
638
654
|
this.popoverAnimation = popover.animate([
|
|
639
655
|
{ opacity: 0, transform: "scaleY(0.01)" },
|
|
640
656
|
{ opacity: 1, transform: "scaleY(1)" },
|
|
641
|
-
], { duration, easing:
|
|
657
|
+
], { duration, easing: resolveEasing(popover), fill: "forwards" });
|
|
642
658
|
}
|
|
643
659
|
/**
|
|
644
660
|
* Closes the popover, if open — accepting an instant, unanimated close
|
|
@@ -676,7 +692,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
676
692
|
const animation = popover.animate([
|
|
677
693
|
{ opacity: 1, transform: "scaleY(1)" },
|
|
678
694
|
{ opacity: 0, transform: "scaleY(0.01)" },
|
|
679
|
-
], { duration, easing:
|
|
695
|
+
], { duration, easing: resolveEasing(popover), fill: "forwards" });
|
|
680
696
|
this.popoverAnimation = animation;
|
|
681
697
|
animation.finished
|
|
682
698
|
.then(() => {
|
|
@@ -909,7 +925,8 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
909
925
|
<div
|
|
910
926
|
class="segment-group"
|
|
911
927
|
role="group"
|
|
912
|
-
aria-label=${this.label ??
|
|
928
|
+
aria-label=${this.label ?? this.dictionary.timePicker.time}
|
|
929
|
+
aria-describedby=${this.description?.length ? "description" : nothing}
|
|
913
930
|
>
|
|
914
931
|
${order.map((kind, index) => {
|
|
915
932
|
const previous = order[index - 1];
|
|
@@ -928,7 +945,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
928
945
|
<button
|
|
929
946
|
type="button"
|
|
930
947
|
id="clock-trigger"
|
|
931
|
-
aria-label=${this.
|
|
948
|
+
aria-label=${this.clockLabel ?? this.dictionary.timePicker.openClock}
|
|
932
949
|
aria-haspopup=${this.panelMode === "list" ? "listbox" : "dialog"}
|
|
933
950
|
aria-expanded=${this.isOpen || this.isModalOpen ? "true" : "false"}
|
|
934
951
|
?disabled=${this.disabled}
|
|
@@ -949,7 +966,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
949
966
|
renderTimezoneLabel() {
|
|
950
967
|
if (this.hideTimezoneLabel ||
|
|
951
968
|
!this.timezone ||
|
|
952
|
-
isSameTimeZone(this.timezone
|
|
969
|
+
isSameTimeZone(this.timezone)) {
|
|
953
970
|
return nothing;
|
|
954
971
|
}
|
|
955
972
|
const label = getTimeZoneOffsetLabel(this.value ?? new Date(), this.timezone, {
|
|
@@ -1039,7 +1056,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
1039
1056
|
?open=${this.isModalOpen}
|
|
1040
1057
|
.closeable=${false}
|
|
1041
1058
|
confirm-label=${this.applyLabel}
|
|
1042
|
-
cancel-label=${this.cancelLabel}
|
|
1059
|
+
cancel-label=${this.cancelLabel ?? this.dictionary.common.cancel}
|
|
1043
1060
|
aria-label=${this.label ?? this.dictionary.timePicker.selectATime}
|
|
1044
1061
|
@eunconfirm=${this.handleModalConfirm}
|
|
1045
1062
|
@euncancel=${this.handleModalCancel}
|
|
@@ -1057,7 +1074,7 @@ let EunomiaTimePicker = class EunomiaTimePicker extends EunomiaTimePickerMixinBa
|
|
|
1057
1074
|
id="cancel"
|
|
1058
1075
|
@click=${() => this.modalEl?.cancel()}
|
|
1059
1076
|
>
|
|
1060
|
-
${this.cancelLabel}
|
|
1077
|
+
${this.cancelLabel ?? this.dictionary.common.cancel}
|
|
1061
1078
|
</eun-button>
|
|
1062
1079
|
<eun-button id="confirm" @click=${() => this.modalEl?.confirm()}>
|
|
1063
1080
|
${this.applyLabel}
|
|
@@ -1117,8 +1134,8 @@ __decorate([
|
|
|
1117
1134
|
property({ attribute: "cancel-label" })
|
|
1118
1135
|
], EunomiaTimePicker.prototype, "cancelLabel", void 0);
|
|
1119
1136
|
__decorate([
|
|
1120
|
-
property({ attribute: "
|
|
1121
|
-
], EunomiaTimePicker.prototype, "
|
|
1137
|
+
property({ attribute: "clock-label" })
|
|
1138
|
+
], EunomiaTimePicker.prototype, "clockLabel", void 0);
|
|
1122
1139
|
__decorate([
|
|
1123
1140
|
property({ attribute: "hour-placeholder" })
|
|
1124
1141
|
], EunomiaTimePicker.prototype, "hourPlaceholder", void 0);
|
|
@@ -28,8 +28,8 @@ const timePicker = css `
|
|
|
28
28
|
outline: 1px solid transparent;
|
|
29
29
|
box-sizing: border-box;
|
|
30
30
|
transition:
|
|
31
|
-
border-color
|
|
32
|
-
outline-color
|
|
31
|
+
border-color var(--eun-duration-s, 150ms) var(--eun-easing-default, ease),
|
|
32
|
+
outline-color var(--eun-duration-s, 150ms) var(--eun-easing-default, ease);
|
|
33
33
|
}
|
|
34
34
|
:host(:not([aria-readonly="true"]))
|
|
35
35
|
#field-wrapper:hover:not(:has(:disabled)) {
|
|
@@ -120,7 +120,8 @@ const timePicker = css `
|
|
|
120
120
|
color: var(--_iconColor);
|
|
121
121
|
outline: 2px solid transparent;
|
|
122
122
|
cursor: pointer;
|
|
123
|
-
transition: outline
|
|
123
|
+
transition: outline var(--eun-duration-m, 200ms)
|
|
124
|
+
var(--eun-easing-out, ease-out);
|
|
124
125
|
}
|
|
125
126
|
#clock-trigger:hover:not(:disabled) {
|
|
126
127
|
color: var(--_textColor);
|
|
@@ -20,14 +20,19 @@ export type EunomiaAnimateAnimation = "none" | "fade" | "scroll-right" | "scroll
|
|
|
20
20
|
*
|
|
21
21
|
* @slot [default] - The content to animate on scroll. Always present in the DOM and readable by assistive technology, regardless of viewport intersection
|
|
22
22
|
* @prop {EunomiaAnimateAnimation} [animation='fade'] - Which transition to apply. None renders the content immediately, with no transition
|
|
23
|
-
* @prop {number} [duration=
|
|
23
|
+
* @prop {number} [duration=1000] - The transition duration, in milliseconds. Left unset, it follows --animate-duration
|
|
24
24
|
* @prop {number} [delay=0] - The transition delay, in milliseconds
|
|
25
|
+
* @prop {number} [tabletDelay] - Overrides `delay` below the tablet breakpoint (width < 768px)
|
|
26
|
+
* @attr {number} [tablet-delay] - Overrides `delay` below the tablet breakpoint (width < 768px)
|
|
27
|
+
* @prop {number} [mobileDelay] - Overrides `delay` (and `tabletDelay`, if also set) below the mobile breakpoint (width < 600px)
|
|
28
|
+
* @attr {number} [mobile-delay] - Overrides `delay` (and `tabletDelay`, if also set) below the mobile breakpoint (width < 600px)
|
|
25
29
|
* @prop {boolean} [once=true] - Whether the animation plays only the first time it enters the viewport, or replays every time it re-enters
|
|
26
30
|
* @prop {number} [threshold=0.1] - The ratio of the element, from 0 to 1, that must be visible before the animation triggers
|
|
27
31
|
* @prop {string} [rootMargin='0px'] - The margin applied around the viewport before threshold is evaluated, accepting CSS-like values such as -50px 0px
|
|
28
|
-
* @prop {EunomiaAnimateAnimation} [tabletAnimation] - Overrides `animation`
|
|
29
|
-
* @prop {EunomiaAnimateAnimation} [mobileAnimation] - Overrides `animation` (and `tabletAnimation`, if also set)
|
|
32
|
+
* @prop {EunomiaAnimateAnimation} [tabletAnimation] - Overrides `animation` below the tablet breakpoint (width < 768px). Left unset, the viewport keeps using `animation`
|
|
33
|
+
* @prop {EunomiaAnimateAnimation} [mobileAnimation] - Overrides `animation` (and `tabletAnimation`, if also set) below the mobile breakpoint (width < 600px)
|
|
30
34
|
* @cssprop [--animate-distance] - Sets the travel distance for the scroll and faded-scroll animations
|
|
35
|
+
* @cssprop [--animate-duration=1000ms] - Sets the transition duration of every animate that has no duration of its own, for example once for the whole site
|
|
31
36
|
* @element eun-animate
|
|
32
37
|
*/
|
|
33
38
|
export declare class EunomiaAnimate extends LitElement {
|
|
@@ -47,15 +52,30 @@ export declare class EunomiaAnimate extends LitElement {
|
|
|
47
52
|
*/
|
|
48
53
|
animation: EunomiaAnimateAnimation;
|
|
49
54
|
/**
|
|
50
|
-
* Transition duration, in milliseconds.
|
|
51
|
-
*
|
|
55
|
+
* Transition duration, in milliseconds. Left `undefined`, the stylesheet
|
|
56
|
+
* applies `--animate-duration`, `1000ms` by default.
|
|
57
|
+
* @default undefined
|
|
52
58
|
*/
|
|
53
|
-
duration
|
|
59
|
+
duration?: number;
|
|
54
60
|
/**
|
|
55
61
|
* Transition delay, in milliseconds.
|
|
56
62
|
* @default 0
|
|
57
63
|
*/
|
|
58
64
|
delay: number;
|
|
65
|
+
/**
|
|
66
|
+
* Overrides `delay` at tablet-width viewports and narrower, with the same
|
|
67
|
+
* `@media` switch as {@link tabletAnimation}. A stagger between cards in
|
|
68
|
+
* a desktop grid, for example, makes no sense once they're stacked.
|
|
69
|
+
* @default undefined
|
|
70
|
+
*/
|
|
71
|
+
tabletDelay?: number;
|
|
72
|
+
/**
|
|
73
|
+
* Overrides `delay` (and `tabletDelay`, if also set) at mobile-width
|
|
74
|
+
* viewports and narrower, with the same `@media` switch as
|
|
75
|
+
* {@link mobileAnimation}.
|
|
76
|
+
* @default undefined
|
|
77
|
+
*/
|
|
78
|
+
mobileDelay?: number;
|
|
59
79
|
/**
|
|
60
80
|
* Whether the animation plays only the first time it enters the
|
|
61
81
|
* viewport (unobserved right after), or replays every time it re-enters.
|
|
@@ -75,8 +95,8 @@ export declare class EunomiaAnimate extends LitElement {
|
|
|
75
95
|
*/
|
|
76
96
|
rootMargin: string;
|
|
77
97
|
/**
|
|
78
|
-
* Overrides `animation`
|
|
79
|
-
* (`
|
|
98
|
+
* Overrides `animation` below the tablet breakpoint
|
|
99
|
+
* (`mediaBelow("tablet")`, `width < 768px`). Purely a
|
|
80
100
|
* CSS `@media` switch (`animate.styles.ts`, mirrored in
|
|
81
101
|
* `animate-ssr.css` for the pre-hydration state) — never read from JS,
|
|
82
102
|
* so there's no `matchMedia` listener to keep in sync with the actual
|
|
@@ -87,9 +107,9 @@ export declare class EunomiaAnimate extends LitElement {
|
|
|
87
107
|
*/
|
|
88
108
|
tabletAnimation?: EunomiaAnimateAnimation;
|
|
89
109
|
/**
|
|
90
|
-
* Overrides `animation` (and `tabletAnimation`, if also set)
|
|
91
|
-
*
|
|
92
|
-
* `
|
|
110
|
+
* Overrides `animation` (and `tabletAnimation`, if also set)
|
|
111
|
+
* below the mobile breakpoint (`mediaBelow("mobile")`,
|
|
112
|
+
* `width < 600px`). Same pure-CSS mechanism as
|
|
93
113
|
* {@link tabletAnimation}.
|
|
94
114
|
* @default undefined
|
|
95
115
|
*/
|
|
@@ -130,10 +150,12 @@ export declare class EunomiaAnimate extends LitElement {
|
|
|
130
150
|
*/
|
|
131
151
|
private teardownObserver;
|
|
132
152
|
/**
|
|
133
|
-
* Forwards `duration
|
|
134
|
-
* shadow-internal `<style>`, only when they
|
|
135
|
-
* own defaults : an inline style on the host
|
|
136
|
-
* mismatch for an SSR framework, since the server
|
|
153
|
+
* Forwards `duration`, `delay` and the per-breakpoint delays to the
|
|
154
|
+
* host's transition through a shadow-internal `<style>`, only when they
|
|
155
|
+
* differ from the stylesheet's own defaults : an inline style on the host
|
|
156
|
+
* would be a hydration mismatch for an SSR framework, since the server
|
|
157
|
+
* never renders it. The breakpoints match {@link tabletAnimation} and
|
|
158
|
+
* {@link mobileAnimation}.
|
|
137
159
|
* @private
|
|
138
160
|
*/
|
|
139
161
|
private renderTiming;
|