@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
|
@@ -48,7 +48,45 @@ export function renderHighlightedLabel(label, query) {
|
|
|
48
48
|
if (index === -1) {
|
|
49
49
|
return label;
|
|
50
50
|
}
|
|
51
|
-
return html `${label.slice(0, index)}<mark
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
return html `${label.slice(0, index)}<mark>${label.slice(index, index + query.length)}</mark>${label.slice(index + query.length)}`;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Renders a listbox's option rows, wrapping each run of options sharing an
|
|
55
|
+
* `optgroup` in a `role="group"` row named by that group's label, so
|
|
56
|
+
* assistive technology announces which group an option belongs to.
|
|
57
|
+
* Options outside any group are rendered as they are.
|
|
58
|
+
*
|
|
59
|
+
* @param options the options to render, in display order.
|
|
60
|
+
* @param renderOption renders one option row, given its index in `options`.
|
|
61
|
+
* @returns the rendered rows.
|
|
62
|
+
*/
|
|
63
|
+
export function renderListboxRows(options, renderOption) {
|
|
64
|
+
const rows = [];
|
|
65
|
+
let groupCount = 0;
|
|
66
|
+
let index = 0;
|
|
67
|
+
while (index < options.length) {
|
|
68
|
+
const { group } = options[index];
|
|
69
|
+
const start = index;
|
|
70
|
+
while (index < options.length && options[index].group === group) {
|
|
71
|
+
index += 1;
|
|
72
|
+
}
|
|
73
|
+
const run = options
|
|
74
|
+
.slice(start, index)
|
|
75
|
+
.map((option, offset) => renderOption(option, start + offset));
|
|
76
|
+
if (!group) {
|
|
77
|
+
rows.push(...run);
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
const labelId = `listbox-group-${groupCount}`;
|
|
81
|
+
groupCount += 1;
|
|
82
|
+
rows.push(html `
|
|
83
|
+
<li class="option-group" role="group" aria-labelledby=${labelId}>
|
|
84
|
+
<div id=${labelId} class="group-label">${group}</div>
|
|
85
|
+
<ul class="group-options" role="presentation">
|
|
86
|
+
${run}
|
|
87
|
+
</ul>
|
|
88
|
+
</li>
|
|
89
|
+
`);
|
|
90
|
+
}
|
|
91
|
+
return rows;
|
|
54
92
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CSSResult } from "lit";
|
|
2
|
+
import { EunomiaBreakpoint } from "../breakpoints.js";
|
|
3
|
+
/**
|
|
4
|
+
* {@link mediaBelow} as a value a Lit `css` template accepts, for a
|
|
5
|
+
* component's own `@media` or `@container` rule :
|
|
6
|
+
* `@media ${cssBelow("tablet")} { … }`.
|
|
7
|
+
*
|
|
8
|
+
* @param breakpoint the breakpoint the range stops under.
|
|
9
|
+
* @returns the media condition.
|
|
10
|
+
*/
|
|
11
|
+
export declare function cssBelow(breakpoint: EunomiaBreakpoint): CSSResult;
|
|
12
|
+
/**
|
|
13
|
+
* {@link mediaFrom} as a value a Lit `css` template accepts :
|
|
14
|
+
* `@media ${cssFrom("tablet")} { … }`.
|
|
15
|
+
*
|
|
16
|
+
* @param breakpoint the breakpoint the range starts at.
|
|
17
|
+
* @returns the media condition.
|
|
18
|
+
*/
|
|
19
|
+
export declare function cssFrom(breakpoint: EunomiaBreakpoint): CSSResult;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { unsafeCSS } from "lit";
|
|
2
|
+
import { mediaBelow, mediaFrom } from "../breakpoints.js";
|
|
3
|
+
/**
|
|
4
|
+
* {@link mediaBelow} as a value a Lit `css` template accepts, for a
|
|
5
|
+
* component's own `@media` or `@container` rule :
|
|
6
|
+
* `@media ${cssBelow("tablet")} { … }`.
|
|
7
|
+
*
|
|
8
|
+
* @param breakpoint the breakpoint the range stops under.
|
|
9
|
+
* @returns the media condition.
|
|
10
|
+
*/
|
|
11
|
+
export function cssBelow(breakpoint) {
|
|
12
|
+
return unsafeCSS(mediaBelow(breakpoint));
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* {@link mediaFrom} as a value a Lit `css` template accepts :
|
|
16
|
+
* `@media ${cssFrom("tablet")} { … }`.
|
|
17
|
+
*
|
|
18
|
+
* @param breakpoint the breakpoint the range starts at.
|
|
19
|
+
* @returns the media condition.
|
|
20
|
+
*/
|
|
21
|
+
export function cssFrom(breakpoint) {
|
|
22
|
+
return unsafeCSS(mediaFrom(breakpoint));
|
|
23
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A step of the shared `--eun-duration-*` scale declared by every theme
|
|
3
|
+
* stylesheet (`xs` 100ms, `s` 150ms, `m` 200ms, `l` 250ms, `xl` 300ms).
|
|
4
|
+
*/
|
|
5
|
+
export type MotionDuration = "xs" | "s" | "m" | "l" | "xl";
|
|
6
|
+
/**
|
|
7
|
+
* A step of the shared `--eun-easing-*` tokens declared by every theme
|
|
8
|
+
* stylesheet (`default` is `ease`, `out` is `ease-out`).
|
|
9
|
+
*/
|
|
10
|
+
export type MotionEasing = "default" | "out";
|
|
11
|
+
/**
|
|
12
|
+
* Converts a CSS time (`200ms`, `0.2s`) into milliseconds.
|
|
13
|
+
*
|
|
14
|
+
* @param raw the CSS time, as read off `getPropertyValue`.
|
|
15
|
+
* @returns the duration in ms, or `undefined` when `raw` is empty, not a
|
|
16
|
+
* number, or negative.
|
|
17
|
+
*/
|
|
18
|
+
export declare function cssTimeToMs(raw: string): number | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* The duration, in ms, of an animation driven from JS (Web Animations API,
|
|
21
|
+
* timers) : the component's own custom property when set, otherwise the
|
|
22
|
+
* shared `--eun-duration-<step>` token, otherwise `fallbackMs` when no
|
|
23
|
+
* theme stylesheet is loaded.
|
|
24
|
+
*
|
|
25
|
+
* @param el the element to read both custom properties off.
|
|
26
|
+
* @param property the component's own custom property, e.g.
|
|
27
|
+
* `--field-listbox-transition-duration`.
|
|
28
|
+
* @param step the `--eun-duration-*` step the component defaults to.
|
|
29
|
+
* @param fallbackMs the value used when neither property resolves.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveDurationMs(el: Element, property: string, step: MotionDuration, fallbackMs: number): number;
|
|
32
|
+
/**
|
|
33
|
+
* The timing function of an animation driven from JS : the shared
|
|
34
|
+
* `--eun-easing-<step>` token, or its plain CSS keyword when no theme
|
|
35
|
+
* stylesheet is loaded.
|
|
36
|
+
*
|
|
37
|
+
* @param el the element to read the token off.
|
|
38
|
+
* @param step the `--eun-easing-*` step to read, `default` if omitted.
|
|
39
|
+
*/
|
|
40
|
+
export declare function resolveEasing(el: Element, step?: MotionEasing): string;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
const EASING_FALLBACKS = {
|
|
2
|
+
default: "ease",
|
|
3
|
+
out: "ease-out",
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Converts a CSS time (`200ms`, `0.2s`) into milliseconds.
|
|
7
|
+
*
|
|
8
|
+
* @param raw the CSS time, as read off `getPropertyValue`.
|
|
9
|
+
* @returns the duration in ms, or `undefined` when `raw` is empty, not a
|
|
10
|
+
* number, or negative.
|
|
11
|
+
*/
|
|
12
|
+
export function cssTimeToMs(raw) {
|
|
13
|
+
const value = raw.trim();
|
|
14
|
+
if (!value) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
const parsed = value.endsWith("ms")
|
|
18
|
+
? Number.parseFloat(value)
|
|
19
|
+
: Number.parseFloat(value) * 1000;
|
|
20
|
+
return Number.isFinite(parsed) && parsed >= 0 ? parsed : undefined;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The duration, in ms, of an animation driven from JS (Web Animations API,
|
|
24
|
+
* timers) : the component's own custom property when set, otherwise the
|
|
25
|
+
* shared `--eun-duration-<step>` token, otherwise `fallbackMs` when no
|
|
26
|
+
* theme stylesheet is loaded.
|
|
27
|
+
*
|
|
28
|
+
* @param el the element to read both custom properties off.
|
|
29
|
+
* @param property the component's own custom property, e.g.
|
|
30
|
+
* `--field-listbox-transition-duration`.
|
|
31
|
+
* @param step the `--eun-duration-*` step the component defaults to.
|
|
32
|
+
* @param fallbackMs the value used when neither property resolves.
|
|
33
|
+
*/
|
|
34
|
+
export function resolveDurationMs(el, property, step, fallbackMs) {
|
|
35
|
+
const style = getComputedStyle(el);
|
|
36
|
+
return (cssTimeToMs(style.getPropertyValue(property)) ??
|
|
37
|
+
cssTimeToMs(style.getPropertyValue(`--eun-duration-${step}`)) ??
|
|
38
|
+
fallbackMs);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The timing function of an animation driven from JS : the shared
|
|
42
|
+
* `--eun-easing-<step>` token, or its plain CSS keyword when no theme
|
|
43
|
+
* stylesheet is loaded.
|
|
44
|
+
*
|
|
45
|
+
* @param el the element to read the token off.
|
|
46
|
+
* @param step the `--eun-easing-*` step to read, `default` if omitted.
|
|
47
|
+
*/
|
|
48
|
+
export function resolveEasing(el, step = "default") {
|
|
49
|
+
return (getComputedStyle(el).getPropertyValue(`--eun-easing-${step}`).trim() ||
|
|
50
|
+
EASING_FALLBACKS[step]);
|
|
51
|
+
}
|
|
@@ -48,7 +48,7 @@ export declare function buildTints(primaryHex: EunomiaHexColor, isDark: boolean)
|
|
|
48
48
|
* custom brand from two hex seed colors by composing `buildPalette` and
|
|
49
49
|
* `buildTints` above, then writing every result straight onto
|
|
50
50
|
* `document.documentElement`, both 11-step shade scales, their `on-*`
|
|
51
|
-
* text colors, the
|
|
51
|
+
* text colors, the `alpha-*` tokens, and the `-tint`
|
|
52
52
|
* neutrals. Everything else (grey scale, spacing, radius, shadows,
|
|
53
53
|
* semantic state colors) still comes from whichever base theme class or
|
|
54
54
|
* `data-theme` is already applied; this deliberately doesn't touch those.
|
|
@@ -70,6 +70,11 @@ export declare function initializeTheme(primary: EunomiaHexColor, secondary: Eun
|
|
|
70
70
|
export interface EunomiaThemeCssOptions {
|
|
71
71
|
surfaceColor?: EunomiaHexColor;
|
|
72
72
|
darkSurfaceColor?: EunomiaHexColor;
|
|
73
|
+
darkSecondaryColor?: EunomiaHexColor;
|
|
74
|
+
inverseSurfaceColor?: EunomiaHexColor;
|
|
75
|
+
darkInverseSurfaceColor?: EunomiaHexColor;
|
|
76
|
+
textColor?: EunomiaHexColor;
|
|
77
|
+
darkTextColor?: EunomiaHexColor;
|
|
73
78
|
fontFamily?: string;
|
|
74
79
|
brand?: string;
|
|
75
80
|
}
|
|
@@ -159,12 +159,12 @@ export function buildPalette(baseHex, isDark) {
|
|
|
159
159
|
};
|
|
160
160
|
});
|
|
161
161
|
}
|
|
162
|
-
const
|
|
163
|
-
{ name: "
|
|
164
|
-
{ name: "
|
|
165
|
-
{ name: "
|
|
166
|
-
{ name: "
|
|
167
|
-
{ name: "
|
|
162
|
+
const ALPHA_TOKENS = [
|
|
163
|
+
{ name: "alpha-5", alpha: 0.05 },
|
|
164
|
+
{ name: "alpha-10", alpha: 0.1 },
|
|
165
|
+
{ name: "alpha-20", alpha: 0.2 },
|
|
166
|
+
{ name: "alpha-30", alpha: 0.3 },
|
|
167
|
+
{ name: "alpha-40", alpha: 0.4 },
|
|
168
168
|
];
|
|
169
169
|
/**
|
|
170
170
|
* 5% of the effective `primary-500` (already dark-accessible-adjusted in
|
|
@@ -204,25 +204,44 @@ export function buildTints(primaryHex, isDark) {
|
|
|
204
204
|
contentPressedTint: mix(LIGHT_TINT_BASE.contentPressed, primary500, TINT_RATIO),
|
|
205
205
|
};
|
|
206
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* The muted `--eun-text-secondary` for a custom text color: `text` mixed
|
|
209
|
+
* 30% toward `surface`, backed off in 5% steps until it still clears WCAG
|
|
210
|
+
* AA against that surface.
|
|
211
|
+
*/
|
|
212
|
+
function secondaryText(text, surface) {
|
|
213
|
+
let percent = 30;
|
|
214
|
+
let result = mix(text, surface, percent / 100);
|
|
215
|
+
while (contrastRatio(result, surface) < MIN_CONTRAST && percent > 0) {
|
|
216
|
+
percent -= 5;
|
|
217
|
+
result = mix(text, surface, percent / 100);
|
|
218
|
+
}
|
|
219
|
+
return result;
|
|
220
|
+
}
|
|
207
221
|
/**
|
|
208
222
|
* Every custom property a custom brand sets for one mode, as ordered
|
|
209
223
|
* `[property, value]` pairs: both 11-step shade scales, their `on-*`
|
|
210
|
-
* text colors, the
|
|
211
|
-
* the `-tint` neutrals, and `--eun-font-family
|
|
212
|
-
* Shared by `initializeTheme` and `buildThemeCss`
|
|
213
|
-
* stylesheet output can never drift apart.
|
|
224
|
+
* text colors, the `alpha-*` tokens, the surface color,
|
|
225
|
+
* the `-tint` neutrals, and `--eun-font-family`, the inverse surface and
|
|
226
|
+
* the text colors when they are passed. Shared by `initializeTheme` and `buildThemeCss`
|
|
227
|
+
* so the inline and the stylesheet output can never drift apart.
|
|
214
228
|
*/
|
|
215
|
-
function buildThemeTokens(primary, secondary, isDark,
|
|
229
|
+
function buildThemeTokens(primary, secondary, isDark, options) {
|
|
230
|
+
const { surfaceColor, fontFamily, darkSecondaryColor, inverseSurfaceColor, textColor, } = options;
|
|
216
231
|
const tokens = [];
|
|
217
|
-
for (const [type, seed] of [
|
|
218
|
-
["primary", primary],
|
|
219
|
-
[
|
|
232
|
+
for (const [type, seed, checkDark] of [
|
|
233
|
+
["primary", primary, isDark],
|
|
234
|
+
[
|
|
235
|
+
"secondary",
|
|
236
|
+
darkSecondaryColor ?? secondary,
|
|
237
|
+
isDark && !darkSecondaryColor,
|
|
238
|
+
],
|
|
220
239
|
]) {
|
|
221
|
-
for (const shade of buildPalette(seed,
|
|
240
|
+
for (const shade of buildPalette(seed, checkDark)) {
|
|
222
241
|
tokens.push([`--eun-color-${type}-${shade.name}`, shade.value]);
|
|
223
242
|
tokens.push([`--eun-color-on-${type}-${shade.name}`, shade.on]);
|
|
224
243
|
}
|
|
225
|
-
for (const token of
|
|
244
|
+
for (const token of ALPHA_TOKENS) {
|
|
226
245
|
tokens.push([
|
|
227
246
|
`--eun-color-${type}-${token.name}`,
|
|
228
247
|
toRgba(seed, token.alpha),
|
|
@@ -230,6 +249,12 @@ function buildThemeTokens(primary, secondary, isDark, surfaceColor, fontFamily)
|
|
|
230
249
|
}
|
|
231
250
|
}
|
|
232
251
|
tokens.push(["--eun-surface-color", surfaceColor]);
|
|
252
|
+
if (inverseSurfaceColor) {
|
|
253
|
+
tokens.push(["--eun-surface-inverse", inverseSurfaceColor], ["--eun-text-on-inverse", pickOnColor(inverseSurfaceColor)]);
|
|
254
|
+
}
|
|
255
|
+
if (textColor) {
|
|
256
|
+
tokens.push(["--eun-text-color", textColor], ["--eun-text-secondary", secondaryText(textColor, surfaceColor)]);
|
|
257
|
+
}
|
|
233
258
|
if (fontFamily) {
|
|
234
259
|
tokens.push(["--eun-font-family", fontFamily]);
|
|
235
260
|
}
|
|
@@ -246,7 +271,7 @@ function buildThemeTokens(primary, secondary, isDark, surfaceColor, fontFamily)
|
|
|
246
271
|
* custom brand from two hex seed colors by composing `buildPalette` and
|
|
247
272
|
* `buildTints` above, then writing every result straight onto
|
|
248
273
|
* `document.documentElement`, both 11-step shade scales, their `on-*`
|
|
249
|
-
* text colors, the
|
|
274
|
+
* text colors, the `alpha-*` tokens, and the `-tint`
|
|
250
275
|
* neutrals. Everything else (grey scale, spacing, radius, shadows,
|
|
251
276
|
* semantic state colors) still comes from whichever base theme class or
|
|
252
277
|
* `data-theme` is already applied; this deliberately doesn't touch those.
|
|
@@ -266,7 +291,10 @@ function buildThemeTokens(primary, secondary, isDark, surfaceColor, fontFamily)
|
|
|
266
291
|
*/
|
|
267
292
|
export function initializeTheme(primary, secondary, isDark = false, surfaceColor = "#ffffff", darkSurfaceColor = DARK_SURFACE, fontFamily) {
|
|
268
293
|
const root = document.documentElement.style;
|
|
269
|
-
const tokens = buildThemeTokens(primary, secondary, isDark,
|
|
294
|
+
const tokens = buildThemeTokens(primary, secondary, isDark, {
|
|
295
|
+
surfaceColor: isDark ? darkSurfaceColor : surfaceColor,
|
|
296
|
+
fontFamily,
|
|
297
|
+
});
|
|
270
298
|
for (const [property, value] of tokens) {
|
|
271
299
|
root.setProperty(property, value);
|
|
272
300
|
}
|
|
@@ -283,9 +311,20 @@ export function initializeTheme(primary, secondary, isDark = false, surfaceColor
|
|
|
283
311
|
* switching mode is just a `data-theme` change, no regeneration needed.
|
|
284
312
|
*/
|
|
285
313
|
export function buildThemeCss(primary, secondary, options = {}) {
|
|
286
|
-
const { surfaceColor = "#ffffff", darkSurfaceColor = DARK_SURFACE, fontFamily, brand = "custom", } = options;
|
|
314
|
+
const { surfaceColor = "#ffffff", darkSurfaceColor = DARK_SURFACE, darkSecondaryColor, inverseSurfaceColor, darkInverseSurfaceColor = inverseSurfaceColor, textColor, darkTextColor, fontFamily, brand = "custom", } = options;
|
|
287
315
|
const rule = (selector, isDark) => {
|
|
288
|
-
const tokens = buildThemeTokens(primary, secondary, isDark,
|
|
316
|
+
const tokens = buildThemeTokens(primary, secondary, isDark, {
|
|
317
|
+
surfaceColor: isDark ? darkSurfaceColor : surfaceColor,
|
|
318
|
+
fontFamily,
|
|
319
|
+
darkSecondaryColor: isDark ? darkSecondaryColor : undefined,
|
|
320
|
+
inverseSurfaceColor: isDark
|
|
321
|
+
? darkInverseSurfaceColor
|
|
322
|
+
: inverseSurfaceColor,
|
|
323
|
+
textColor: isDark ? darkTextColor : textColor,
|
|
324
|
+
});
|
|
325
|
+
if (isDark && textColor && !darkTextColor) {
|
|
326
|
+
tokens.push(["--eun-text-color", "var(--eun-color-grey-800)"], ["--eun-text-secondary", "var(--eun-color-grey-700)"]);
|
|
327
|
+
}
|
|
289
328
|
const body = tokens
|
|
290
329
|
.map(([property, value]) => ` ${property}: ${value};`)
|
|
291
330
|
.join("\n");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eunomia/elements",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.7",
|
|
4
4
|
"description": "Eunomia the framework-agnostic web component design system",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://eunomia-ds.vercel.app",
|
|
@@ -25,10 +25,6 @@
|
|
|
25
25
|
"types": "./dist/components/content/badge/badge.d.ts",
|
|
26
26
|
"default": "./dist/components/content/badge/badge.js"
|
|
27
27
|
},
|
|
28
|
-
"./breadcrumb-item.js": {
|
|
29
|
-
"types": "./dist/components/navigation/breadcrumb/breadcrumb-item.d.ts",
|
|
30
|
-
"default": "./dist/components/navigation/breadcrumb/breadcrumb-item.js"
|
|
31
|
-
},
|
|
32
28
|
"./breadcrumb.js": {
|
|
33
29
|
"types": "./dist/components/navigation/breadcrumb/breadcrumb.d.ts",
|
|
34
30
|
"default": "./dist/components/navigation/breadcrumb/breadcrumb.js"
|
|
@@ -81,6 +77,10 @@
|
|
|
81
77
|
"types": "./dist/components/form/date-picker/date-picker.d.ts",
|
|
82
78
|
"default": "./dist/components/form/date-picker/date-picker.js"
|
|
83
79
|
},
|
|
80
|
+
"./description-list.js": {
|
|
81
|
+
"types": "./dist/components/content/description-list/description-list.d.ts",
|
|
82
|
+
"default": "./dist/components/content/description-list/description-list.js"
|
|
83
|
+
},
|
|
84
84
|
"./divider.js": {
|
|
85
85
|
"types": "./dist/components/layout/divider/divider.d.ts",
|
|
86
86
|
"default": "./dist/components/layout/divider/divider.js"
|
|
@@ -169,6 +169,10 @@
|
|
|
169
169
|
"types": "./dist/components/form/radio/radio.d.ts",
|
|
170
170
|
"default": "./dist/components/form/radio/radio.js"
|
|
171
171
|
},
|
|
172
|
+
"./rating.js": {
|
|
173
|
+
"types": "./dist/components/form/rating/rating.d.ts",
|
|
174
|
+
"default": "./dist/components/form/rating/rating.js"
|
|
175
|
+
},
|
|
172
176
|
"./scheduler-event-editor.js": {
|
|
173
177
|
"types": "./dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.d.ts",
|
|
174
178
|
"default": "./dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js"
|
|
@@ -233,26 +237,6 @@
|
|
|
233
237
|
"types": "./dist/features/table/table-action-bar/table-action-bar.d.ts",
|
|
234
238
|
"default": "./dist/features/table/table-action-bar/table-action-bar.js"
|
|
235
239
|
},
|
|
236
|
-
"./table-cell.js": {
|
|
237
|
-
"types": "./dist/features/table/table-cell/table-cell.d.ts",
|
|
238
|
-
"default": "./dist/features/table/table-cell/table-cell.js"
|
|
239
|
-
},
|
|
240
|
-
"./table-column.js": {
|
|
241
|
-
"types": "./dist/features/table/table-column/table-column.d.ts",
|
|
242
|
-
"default": "./dist/features/table/table-column/table-column.js"
|
|
243
|
-
},
|
|
244
|
-
"./table-header.js": {
|
|
245
|
-
"types": "./dist/features/table/table-header/table-header.d.ts",
|
|
246
|
-
"default": "./dist/features/table/table-header/table-header.js"
|
|
247
|
-
},
|
|
248
|
-
"./table-item.js": {
|
|
249
|
-
"types": "./dist/features/table/table-item/table-item.d.ts",
|
|
250
|
-
"default": "./dist/features/table/table-item/table-item.js"
|
|
251
|
-
},
|
|
252
|
-
"./table-skeleton-row.js": {
|
|
253
|
-
"types": "./dist/features/table/table-skeleton-row/table-skeleton-row.d.ts",
|
|
254
|
-
"default": "./dist/features/table/table-skeleton-row/table-skeleton-row.js"
|
|
255
|
-
},
|
|
256
240
|
"./table.js": {
|
|
257
241
|
"types": "./dist/features/table/table/table.d.ts",
|
|
258
242
|
"default": "./dist/features/table/table/table.js"
|
|
@@ -301,19 +285,42 @@
|
|
|
301
285
|
"types": "./dist/utils/theme-generator.utils.d.ts",
|
|
302
286
|
"default": "./dist/utils/theme-generator.utils.js"
|
|
303
287
|
},
|
|
288
|
+
"./breakpoints.js": {
|
|
289
|
+
"types": "./dist/breakpoints.d.ts",
|
|
290
|
+
"default": "./dist/breakpoints.js"
|
|
291
|
+
},
|
|
304
292
|
"./jsx": {
|
|
305
293
|
"types": "./dist/jsx.d.ts",
|
|
306
294
|
"default": "./dist/jsx.js"
|
|
307
295
|
},
|
|
308
296
|
"./styles/*": "./styles/*",
|
|
309
297
|
"./cdn/*": "./dist/cdn/*",
|
|
298
|
+
"./alert-ssr.css": "./dist/ssr/alert-ssr.css",
|
|
310
299
|
"./animate-ssr.css": "./dist/ssr/animate-ssr.css",
|
|
311
|
-
"./
|
|
312
|
-
"./
|
|
313
|
-
"./
|
|
300
|
+
"./badge-ssr.css": "./dist/ssr/badge-ssr.css",
|
|
301
|
+
"./breadcrumb-ssr.css": "./dist/ssr/breadcrumb-ssr.css",
|
|
302
|
+
"./button-ssr.css": "./dist/ssr/button-ssr.css",
|
|
303
|
+
"./card-ssr.css": "./dist/ssr/card-ssr.css",
|
|
304
|
+
"./carousel-ssr.css": "./dist/ssr/carousel-ssr.css",
|
|
305
|
+
"./checkbox-ssr.css": "./dist/ssr/checkbox-ssr.css",
|
|
306
|
+
"./chip-ssr.css": "./dist/ssr/chip-ssr.css",
|
|
307
|
+
"./collapse-ssr.css": "./dist/ssr/collapse-ssr.css",
|
|
308
|
+
"./description-list-ssr.css": "./dist/ssr/description-list-ssr.css",
|
|
309
|
+
"./field-ssr.css": "./dist/ssr/field-ssr.css",
|
|
310
|
+
"./icon-ssr.css": "./dist/ssr/icon-ssr.css",
|
|
311
|
+
"./image-carousel-ssr.css": "./dist/ssr/image-carousel-ssr.css",
|
|
314
312
|
"./links-ssr.css": "./dist/ssr/links-ssr.css",
|
|
313
|
+
"./overlay-ssr.css": "./dist/ssr/overlay-ssr.css",
|
|
314
|
+
"./pagination-ssr.css": "./dist/ssr/pagination-ssr.css",
|
|
315
|
+
"./rating-ssr.css": "./dist/ssr/rating-ssr.css",
|
|
315
316
|
"./rich-text.css": "./dist/ssr/rich-text.css",
|
|
316
|
-
"./
|
|
317
|
+
"./sidebar-ssr.css": "./dist/ssr/sidebar-ssr.css",
|
|
318
|
+
"./skeleton-ssr.css": "./dist/ssr/skeleton-ssr.css",
|
|
319
|
+
"./table-ssr.css": "./dist/ssr/table-ssr.css",
|
|
320
|
+
"./tabs-ssr.css": "./dist/ssr/tabs-ssr.css",
|
|
321
|
+
"./tag-ssr.css": "./dist/ssr/tag-ssr.css",
|
|
322
|
+
"./toggle-group-ssr.css": "./dist/ssr/toggle-group-ssr.css",
|
|
323
|
+
"./toolbar-ssr.css": "./dist/ssr/toolbar-ssr.css"
|
|
317
324
|
},
|
|
318
325
|
"files": [
|
|
319
326
|
"dist",
|
|
@@ -326,12 +333,13 @@
|
|
|
326
333
|
"./dist/features/**/*.js"
|
|
327
334
|
],
|
|
328
335
|
"scripts": {
|
|
329
|
-
"build": "tsc --noEmit",
|
|
336
|
+
"build": "tsc --noEmit -p tsconfig.build.json",
|
|
330
337
|
"build:dist": "node scripts/build-dist.mjs",
|
|
331
338
|
"build:dist:watch": "tsc -p tsconfig.build.json && node scripts/copy-assets.mjs && node scripts/generate-exports.mjs && tsc -p tsconfig.build.json --watch",
|
|
332
339
|
"build:cdn": "node scripts/build-cdn.mjs",
|
|
333
340
|
"prepublishOnly": "npm run build:dist && npm run build:cdn",
|
|
334
|
-
"lint": "eslint . --config ../eslint.config.js",
|
|
341
|
+
"lint": "eslint . --config ../eslint.config.js && node scripts/breakpoints.mjs --check",
|
|
342
|
+
"breakpoints": "node scripts/breakpoints.mjs",
|
|
335
343
|
"test": "web-test-runner --config ../web-test-runner.config.mjs",
|
|
336
344
|
"test:coverage": "web-test-runner --config ../web-test-runner.config.mjs --coverage"
|
|
337
345
|
},
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Short entry point for the breakpoints : the `eunomia-below-*` and
|
|
2
|
+
// `eunomia-from-*` mixins, and the `$map-device-width` scale they read.
|
|
3
|
+
//
|
|
4
|
+
// @use "@eunomia/elements/styles/breakpoints" as *;
|
|
5
|
+
//
|
|
6
|
+
// Emits no CSS, so it can be used in every stylesheet that needs it.
|
|
7
|
+
@forward "./tools/mixins/media-queries/eunomia-media-queries.mixin.scss";
|
|
8
|
+
@forward "./tools/variables/eunomia.breakpoints.scss";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Grid utility classes, emitted once at the top level. Every theme entry
|
|
2
|
+
// file uses this module, and Sass outputs a module's CSS only once per
|
|
3
|
+
// compilation, so loading several themes never duplicates the classes.
|
|
4
|
+
@use "./tools/mixins/layout/eunomia-grid.mixin.scss" as *;
|
|
5
|
+
|
|
6
|
+
@include eunomia-grid-layouts();
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
@use
|
|
2
|
-
@use
|
|
1
|
+
@use "./../tools/indexes/eunomia-tools.index.scss" as *;
|
|
2
|
+
@use "./mixins/eunomia-scales.mixin.scss" as *;
|
|
3
|
+
@use "./../eunomia-grid.scss";
|
|
3
4
|
|
|
4
5
|
@mixin default-settings {
|
|
5
6
|
@include eunomia-font-family();
|
|
@@ -9,10 +10,10 @@
|
|
|
9
10
|
@include eunomia-border-radius();
|
|
10
11
|
@include eunomia-border-width();
|
|
11
12
|
@include eunomia-shadows();
|
|
13
|
+
@include eunomia-motion();
|
|
12
14
|
@include eunomia-alpha();
|
|
13
15
|
@include eunomia-height();
|
|
14
16
|
@include eunomia-breakpoints();
|
|
15
|
-
@include eunomia-grid-layouts();
|
|
16
17
|
}
|
|
17
18
|
|
|
18
19
|
.eunomia-theme {
|
|
@@ -48,7 +48,10 @@
|
|
|
48
48
|
$result: $color;
|
|
49
49
|
$guard: 0;
|
|
50
50
|
|
|
51
|
-
@while eunomia-contrast-ratio($result, $surface) <
|
|
51
|
+
@while eunomia-contrast-ratio($result, $surface) <
|
|
52
|
+
$min-contrast and
|
|
53
|
+
$guard <
|
|
54
|
+
60
|
|
52
55
|
{
|
|
53
56
|
$result: color.adjust($result, $lightness: $step, $space: hsl);
|
|
54
57
|
$guard: $guard + 1;
|
|
@@ -64,3 +67,33 @@
|
|
|
64
67
|
|
|
65
68
|
@return rgb($r, $g, $b);
|
|
66
69
|
}
|
|
70
|
+
|
|
71
|
+
@function eunomia-light-accessible(
|
|
72
|
+
$color,
|
|
73
|
+
$surface: #ffffff,
|
|
74
|
+
$min-contrast: 4.5,
|
|
75
|
+
$min-lightness: 10%,
|
|
76
|
+
$step: 1.5%
|
|
77
|
+
) {
|
|
78
|
+
$result: $color;
|
|
79
|
+
$guard: 0;
|
|
80
|
+
|
|
81
|
+
@while eunomia-contrast-ratio($result, $surface) <
|
|
82
|
+
$min-contrast and
|
|
83
|
+
$guard <
|
|
84
|
+
60
|
|
85
|
+
{
|
|
86
|
+
$result: color.adjust($result, $lightness: -$step, $space: hsl);
|
|
87
|
+
$guard: $guard + 1;
|
|
88
|
+
|
|
89
|
+
@if color.channel($result, "lightness", $space: hsl) <= $min-lightness {
|
|
90
|
+
$guard: 60;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
$r: math.round(color.channel($result, "red"));
|
|
95
|
+
$g: math.round(color.channel($result, "green"));
|
|
96
|
+
$b: math.round(color.channel($result, "blue"));
|
|
97
|
+
|
|
98
|
+
@return rgb($r, $g, $b);
|
|
99
|
+
}
|
|
@@ -32,6 +32,8 @@
|
|
|
32
32
|
--eun-text-disabled-color: #8d93aa;
|
|
33
33
|
--eun-text-readonly-color: #c1c9d6;
|
|
34
34
|
--eun-disabled-content: #c1c9d6;
|
|
35
|
+
--eun-surface-inverse: #0b1620;
|
|
36
|
+
--eun-text-on-inverse: #f5f7fa;
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
@mixin eunomia-dark-neutrals {
|
|
@@ -68,4 +70,6 @@
|
|
|
68
70
|
--eun-text-disabled-color: var(--eun-color-grey-500);
|
|
69
71
|
--eun-text-readonly-color: var(--eun-color-grey-400);
|
|
70
72
|
--eun-disabled-content: var(--eun-color-grey-400);
|
|
73
|
+
--eun-surface-inverse: #0b1620;
|
|
74
|
+
--eun-text-on-inverse: #f5f7fa;
|
|
71
75
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
@use "sass:color";
|
|
1
2
|
@use "./eunomia-a11y-color.mixin.scss" as *;
|
|
2
3
|
|
|
3
4
|
@mixin eunomia-all-states {
|
|
@@ -12,40 +13,63 @@
|
|
|
12
13
|
--eun-color-warning-100: #{eunomia-dark-accessible(#c85207)};
|
|
13
14
|
--eun-color-critical-100: #{eunomia-dark-accessible(#aa0014)};
|
|
14
15
|
--eun-color-info-100: #{eunomia-dark-accessible(#097faf)};
|
|
16
|
+
--eun-color-success-text: var(--eun-color-success-100);
|
|
17
|
+
--eun-color-warning-text: var(--eun-color-warning-100);
|
|
18
|
+
--eun-color-critical-text: var(--eun-color-critical-100);
|
|
19
|
+
--eun-color-info-text: var(--eun-color-info-100);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@function -eunomia-state-text($base) {
|
|
23
|
+
@return eunomia-light-accessible(
|
|
24
|
+
$base,
|
|
25
|
+
$surface: color.mix($base, #ffffff, 5%)
|
|
26
|
+
);
|
|
15
27
|
}
|
|
16
28
|
|
|
17
29
|
@mixin eunomia-success {
|
|
18
30
|
$base: #1a9948;
|
|
19
31
|
|
|
20
32
|
--eun-color-success-100: #{$base};
|
|
21
|
-
--eun-color-success-
|
|
22
|
-
--eun-color-success-
|
|
23
|
-
--eun-color-success-
|
|
33
|
+
--eun-color-success-text: #{-eunomia-state-text($base)};
|
|
34
|
+
--eun-color-success-alpha-5: #{rgba($base, 0.05)};
|
|
35
|
+
--eun-color-success-alpha-10: #{rgba($base, 0.1)};
|
|
36
|
+
--eun-color-success-alpha-20: #{rgba($base, 0.2)};
|
|
37
|
+
--eun-color-success-alpha-30: #{rgba($base, 0.3)};
|
|
38
|
+
--eun-color-success-alpha-40: #{rgba($base, 0.4)};
|
|
24
39
|
}
|
|
25
40
|
|
|
26
41
|
@mixin eunomia-warning {
|
|
27
42
|
$base: #c85207;
|
|
28
43
|
|
|
29
44
|
--eun-color-warning-100: #{$base};
|
|
30
|
-
--eun-color-warning-
|
|
31
|
-
--eun-color-warning-
|
|
32
|
-
--eun-color-warning-
|
|
45
|
+
--eun-color-warning-text: #{-eunomia-state-text($base)};
|
|
46
|
+
--eun-color-warning-alpha-5: #{rgba($base, 0.05)};
|
|
47
|
+
--eun-color-warning-alpha-10: #{rgba($base, 0.1)};
|
|
48
|
+
--eun-color-warning-alpha-20: #{rgba($base, 0.2)};
|
|
49
|
+
--eun-color-warning-alpha-30: #{rgba($base, 0.3)};
|
|
50
|
+
--eun-color-warning-alpha-40: #{rgba($base, 0.4)};
|
|
33
51
|
}
|
|
34
52
|
|
|
35
53
|
@mixin eunomia-critical {
|
|
36
54
|
$base: #aa0014;
|
|
37
55
|
|
|
38
56
|
--eun-color-critical-100: #{$base};
|
|
39
|
-
--eun-color-critical-
|
|
40
|
-
--eun-color-critical-
|
|
41
|
-
--eun-color-critical-
|
|
57
|
+
--eun-color-critical-text: #{-eunomia-state-text($base)};
|
|
58
|
+
--eun-color-critical-alpha-5: #{rgba($base, 0.05)};
|
|
59
|
+
--eun-color-critical-alpha-10: #{rgba($base, 0.1)};
|
|
60
|
+
--eun-color-critical-alpha-20: #{rgba($base, 0.2)};
|
|
61
|
+
--eun-color-critical-alpha-30: #{rgba($base, 0.3)};
|
|
62
|
+
--eun-color-critical-alpha-40: #{rgba($base, 0.4)};
|
|
42
63
|
}
|
|
43
64
|
|
|
44
65
|
@mixin eunomia-info {
|
|
45
66
|
$base: #097faf;
|
|
46
67
|
|
|
47
68
|
--eun-color-info-100: #{$base};
|
|
48
|
-
--eun-color-info-
|
|
49
|
-
--eun-color-info-
|
|
50
|
-
--eun-color-info-
|
|
69
|
+
--eun-color-info-text: #{-eunomia-state-text($base)};
|
|
70
|
+
--eun-color-info-alpha-5: #{rgba($base, 0.05)};
|
|
71
|
+
--eun-color-info-alpha-10: #{rgba($base, 0.1)};
|
|
72
|
+
--eun-color-info-alpha-20: #{rgba($base, 0.2)};
|
|
73
|
+
--eun-color-info-alpha-30: #{rgba($base, 0.3)};
|
|
74
|
+
--eun-color-info-alpha-40: #{rgba($base, 0.4)};
|
|
51
75
|
}
|