@eunomia/elements 1.0.0-beta.5 → 1.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/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-OW7XKDCH.js → chunk-2Y2EU2CI.js} +16 -16
- package/dist/cdn/components/chunks/{chunk-LFCXUVDO.js → chunk-4PI6RDUS.js} +1 -1
- package/dist/cdn/components/chunks/chunk-624VJYNA.js +1 -0
- package/dist/cdn/components/chunks/{chunk-5XJLIHAU.js → chunk-7KKWYPHY.js} +4 -2
- package/dist/cdn/components/chunks/chunk-A3X4KD2X.js +1 -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-EAKYD33D.js → chunk-BQFJR2UP.js} +4 -4
- 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-E4IS25H7.js → chunk-G5SBDQQ3.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-LGLQ36QB.js → chunk-GDBPWZN6.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-S2UCEWNG.js → chunk-JYIIWN2P.js} +13 -11
- package/dist/cdn/components/chunks/{chunk-IDKZKLJR.js → chunk-KDN4O5W2.js} +24 -11
- package/dist/cdn/components/chunks/chunk-KSZRQRN4.js +1 -0
- package/dist/cdn/components/chunks/{chunk-PED5ATYN.js → chunk-L2ADCEN7.js} +1 -1
- package/dist/cdn/components/chunks/chunk-LMVW522V.js +1 -0
- package/dist/cdn/components/chunks/{chunk-5XJGYXW7.js → chunk-MOMYII3P.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-2XASWWKR.js → chunk-MQQ4BGVJ.js} +5 -5
- 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-KBH5PCUO.js → chunk-PE4DAXHQ.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-6ETDXUH2.js → chunk-PMPSJG5V.js} +7 -7
- package/dist/cdn/components/chunks/{chunk-5EVP7YNE.js → chunk-PPCHQG7P.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-AIS3UICU.js → chunk-QZ5SHR3I.js} +9 -5
- package/dist/cdn/components/chunks/{chunk-32DTNR52.js → chunk-RS7TWEMQ.js} +1 -1
- package/dist/cdn/components/chunks/chunk-SMTIDNGW.js +1 -0
- package/dist/cdn/components/chunks/{chunk-MPQP4R54.js → chunk-SZYEBMG6.js} +10 -9
- package/dist/cdn/components/chunks/{chunk-JRGM3W7I.js → chunk-UDVB4LAE.js} +5 -2
- 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-VOTRXBDS.js +38 -0
- package/dist/cdn/components/chunks/{chunk-DKOPI7QA.js → chunk-VYFR364B.js} +73 -63
- package/dist/cdn/components/chunks/{chunk-SD2WHGPF.js → chunk-XDPRWUKN.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-XH6NREVZ.js → chunk-YITWLCD3.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-BQHYZB2W.js → chunk-ZBN4HTWP.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-NBIENHLV.js → chunk-ZKZV2YG5.js} +18 -18
- package/dist/cdn/components/eun-alert.js +24 -16
- package/dist/cdn/components/eun-animate.js +12 -8
- package/dist/cdn/components/eun-badge.js +1 -1
- 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 +32 -17
- package/dist/cdn/components/eun-carousel.js +66 -35
- package/dist/cdn/components/eun-check-card.js +13 -6
- package/dist/cdn/components/eun-checkbox-list.js +4 -4
- package/dist/cdn/components/eun-checkbox.js +1 -1
- package/dist/cdn/components/eun-chip.js +1 -1
- package/dist/cdn/components/eun-collapse.js +56 -27
- package/dist/cdn/components/eun-color-picker.js +53 -52
- package/dist/cdn/components/eun-counter.js +9 -8
- package/dist/cdn/components/eun-date-picker.js +59 -56
- package/dist/cdn/components/eun-description-list.js +152 -0
- package/dist/cdn/components/eun-divider.js +1 -1
- package/dist/cdn/components/eun-drawer.js +32 -18
- 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 +14 -13
- package/dist/cdn/components/eun-input-phone.js +15 -15
- 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 +17 -10
- package/dist/cdn/components/eun-pagination.js +17 -12
- package/dist/cdn/components/eun-password-strength.js +6 -2
- 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 +4 -4
- package/dist/cdn/components/eun-radio.js +1 -1
- package/dist/cdn/components/eun-scheduler-event-editor.js +1 -1
- package/dist/cdn/components/eun-scheduler-event.js +1 -1
- package/dist/cdn/components/eun-scheduler.js +36 -36
- package/dist/cdn/components/eun-search.js +11 -10
- package/dist/cdn/components/eun-select.js +12 -11
- package/dist/cdn/components/eun-sidebar.js +34 -20
- 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 +17 -6
- package/dist/cdn/components/eun-stepper.js +17 -6
- package/dist/cdn/components/eun-switch.js +10 -8
- package/dist/cdn/components/eun-tab-group.js +22 -17
- 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 +23 -23
- package/dist/cdn/components/eun-time-picker.js +17 -15
- package/dist/cdn/components/eun-toast.js +36 -16
- package/dist/cdn/components/eun-toggle-group.js +53 -34
- 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 +62 -52
- 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 +7 -2
- package/dist/components/action/button/button.js +7 -2
- package/dist/components/action/button/button.styles.js +51 -36
- package/dist/components/action/dropdown-button/dropdown-button.d.ts +2 -2
- package/dist/components/action/dropdown-button/dropdown-button.js +11 -10
- 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 +5 -3
- package/dist/components/action/toggle/toggle-group.styles.d.ts +2 -0
- package/dist/components/action/toggle/toggle-group.styles.js +42 -21
- 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 +2 -0
- 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 +2 -0
- package/dist/components/alert/alert/alert.js +2 -0
- package/dist/components/alert/alert/alert.styles.js +23 -13
- package/dist/components/alert/drawer/drawer.d.ts +3 -1
- package/dist/components/alert/drawer/drawer.js +4 -2
- package/dist/components/alert/drawer/drawer.styles.js +25 -9
- package/dist/components/alert/modal/modal.d.ts +3 -1
- package/dist/components/alert/modal/modal.js +4 -2
- package/dist/components/alert/modal/modal.styles.js +16 -7
- package/dist/components/alert/toast/toast.d.ts +2 -0
- package/dist/components/alert/toast/toast.js +2 -0
- package/dist/components/alert/toast/toast.styles.js +37 -15
- package/dist/components/content/card/card.d.ts +7 -3
- package/dist/components/content/card/card.js +7 -3
- package/dist/components/content/card/card.styles.js +26 -11
- 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/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 +2 -0
- package/dist/components/content/icon/icon.js +2 -0
- package/dist/components/content/icon/icon.style.js +4 -1
- package/dist/components/content/image-carousel/image-carousel.d.ts +30 -19
- package/dist/components/content/image-carousel/image-carousel.js +48 -45
- package/dist/components/content/image-carousel/image-carousel.styles.js +69 -30
- package/dist/components/content/password-strength/password-strength.styles.js +5 -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 +4 -0
- 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 +9 -16
- package/dist/components/content/tooltip/tooltip.styles.js +25 -7
- package/dist/components/form/checkbox/check-card.d.ts +4 -1
- package/dist/components/form/checkbox/check-card.js +4 -1
- package/dist/components/form/checkbox/check-card.styles.js +13 -4
- package/dist/components/form/checkbox/checkbox-list.d.ts +4 -1
- package/dist/components/form/checkbox/checkbox-list.js +11 -7
- package/dist/components/form/checkbox/checkbox.d.ts +4 -1
- package/dist/components/form/checkbox/checkbox.js +4 -1
- package/dist/components/form/checkbox/checkbox.styles.js +2 -2
- package/dist/components/form/color-picker/color-picker.d.ts +7 -1
- package/dist/components/form/color-picker/color-picker.js +19 -21
- package/dist/components/form/color-picker/color-picker.styles.js +6 -5
- package/dist/components/form/counter/counter.d.ts +4 -1
- package/dist/components/form/counter/counter.js +5 -2
- package/dist/components/form/counter/counter.styles.js +5 -4
- package/dist/components/form/date-picker/date-picker.d.ts +37 -33
- package/dist/components/form/date-picker/date-picker.js +32 -42
- package/dist/components/form/date-picker/date-picker.styles.js +8 -5
- package/dist/components/form/input/input.d.ts +7 -1
- package/dist/components/form/input/input.js +8 -2
- package/dist/components/form/input-file/input-file.d.ts +4 -1
- package/dist/components/form/input-file/input-file.js +8 -5
- package/dist/components/form/input-file/input-file.styles.js +3 -2
- package/dist/components/form/input-phone/input-phone.d.ts +8 -2
- package/dist/components/form/input-phone/input-phone.js +13 -17
- 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 +5 -2
- package/dist/components/form/radio/radio-card.js +5 -2
- package/dist/components/form/radio/radio-card.styles.js +14 -5
- package/dist/components/form/radio/radio-list.d.ts +5 -2
- package/dist/components/form/radio/radio-list.js +14 -10
- package/dist/components/form/radio/radio.d.ts +5 -2
- package/dist/components/form/radio/radio.js +5 -2
- package/dist/components/form/radio/radio.styles.js +4 -4
- package/dist/components/form/search/search.d.ts +2 -1
- package/dist/components/form/search/search.js +6 -15
- package/dist/components/form/search/search.styles.js +5 -4
- package/dist/components/form/select/select.d.ts +9 -2
- package/dist/components/form/select/select.js +15 -18
- 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/slider/slider.d.ts +4 -1
- package/dist/components/form/slider/slider.js +5 -2
- package/dist/components/form/slider/slider.styles.js +8 -7
- package/dist/components/form/switch/switch.d.ts +4 -1
- package/dist/components/form/switch/switch.js +4 -1
- package/dist/components/form/switch/switch.styles.js +7 -5
- package/dist/components/form/textarea/textarea.d.ts +7 -1
- package/dist/components/form/textarea/textarea.js +14 -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 +6 -2
- package/dist/components/form/time-picker/time-picker.js +22 -26
- 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 +35 -15
- package/dist/components/layout/animate/animate.styles.js +9 -16
- 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.styles.js +3 -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 +30 -10
- package/dist/components/navigation/carousel/carousel.js +37 -18
- package/dist/components/navigation/carousel/carousel.styles.js +60 -20
- package/dist/components/navigation/pagination/pagination.styles.js +8 -3
- package/dist/components/navigation/sidebar/sidebar.d.ts +2 -0
- package/dist/components/navigation/sidebar/sidebar.js +2 -0
- package/dist/components/navigation/sidebar/sidebar.styles.js +27 -11
- package/dist/components/navigation/stepper/step.styles.js +16 -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 +7 -8
- package/dist/components/navigation/tabs/tab-group/tab-group.styles.js +19 -14
- 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 +17 -49
- package/dist/components/navigation/toolbar/toolbar.js +23 -71
- 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 +6 -5
- package/dist/features/scheduler/calendar/calendar.styles.js +8 -6
- package/dist/features/scheduler/scheduler/scheduler.d.ts +1 -1
- package/dist/features/scheduler/scheduler/scheduler.js +9 -23
- 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 +2 -0
- package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +10 -4
- 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 +31 -0
- package/dist/i18n/en.js +31 -0
- package/dist/i18n/fr.js +35 -0
- package/dist/index.d.ts +4 -10
- package/dist/index.js +6 -10
- package/dist/mixins/check.mixin.js +4 -5
- package/dist/mixins/form.mixin.d.ts +17 -1
- package/dist/mixins/form.mixin.js +80 -25
- package/dist/mixins/radio.mixin.js +4 -5
- package/dist/mixins/validators.mixin.d.ts +7 -1
- package/dist/mixins/validators.mixin.js +36 -17
- package/dist/ssr/animate-ssr.css +3 -2
- package/dist/ssr/button-ssr.css +319 -0
- package/dist/ssr/card-ssr.css +184 -0
- package/dist/ssr/description-list-ssr.css +150 -0
- package/dist/ssr/links-ssr.css +1 -1
- package/dist/ssr/table-ssr.css +472 -0
- package/dist/ssr/tag-ssr.css +197 -0
- package/dist/ssr/toolbar-ssr.css +5 -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/light-dom-styles.utils.d.ts +14 -0
- package/dist/utils/light-dom-styles.utils.js +37 -0
- 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 +17 -28
- 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-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-E74CM7UG.js +0 -66
- 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-KVYUNKUO.js +0 -27
- 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-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
|
@@ -3,7 +3,7 @@ const DEFAULT_ACTIVATION_DISTANCE = 4;
|
|
|
3
3
|
const DEFAULT_DRAGGING_ATTRIBUTE = "data-dragging";
|
|
4
4
|
const DEFAULT_AUTO_SCROLL_EDGE = 48;
|
|
5
5
|
const DEFAULT_AUTO_SCROLL_SPEED = 12;
|
|
6
|
-
const SETTLE_TRANSITION = "transform 150ms ease";
|
|
6
|
+
const SETTLE_TRANSITION = "transform var(--eun-duration-s, 150ms) var(--eun-easing-default, ease)";
|
|
7
7
|
const SR_ONLY_STYLE = {
|
|
8
8
|
position: "absolute",
|
|
9
9
|
width: "1px",
|
|
@@ -52,16 +52,32 @@ function isScrollable(el) {
|
|
|
52
52
|
const style = getComputedStyle(el);
|
|
53
53
|
return /(auto|scroll)/.test(style.overflowY + style.overflowX);
|
|
54
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Walks up the flat tree (through slots and shadow hosts) rather than the
|
|
57
|
+
* plain DOM tree, so a container slotted into a component that scrolls
|
|
58
|
+
* inside its own shadow root, such as the rows of an `eun-table`, finds
|
|
59
|
+
* that inner scroll container.
|
|
60
|
+
*/
|
|
55
61
|
function findScrollableAncestor(from) {
|
|
56
62
|
let el = from;
|
|
57
63
|
while (el) {
|
|
58
64
|
if (isScrollable(el)) {
|
|
59
65
|
return el;
|
|
60
66
|
}
|
|
61
|
-
el = el
|
|
67
|
+
el = flatTreeParent(el);
|
|
62
68
|
}
|
|
63
69
|
return document.scrollingElement;
|
|
64
70
|
}
|
|
71
|
+
function flatTreeParent(el) {
|
|
72
|
+
if (el.assignedSlot) {
|
|
73
|
+
return el.assignedSlot;
|
|
74
|
+
}
|
|
75
|
+
if (el.parentElement) {
|
|
76
|
+
return el.parentElement;
|
|
77
|
+
}
|
|
78
|
+
const root = el.getRootNode();
|
|
79
|
+
return root instanceof ShadowRoot ? root.host : null;
|
|
80
|
+
}
|
|
65
81
|
/**
|
|
66
82
|
* Attaches drag-to-reorder behavior to `container`'s items. See the module
|
|
67
83
|
* doc comment for what this does and doesn't cover.
|
|
@@ -125,8 +125,8 @@ export declare function handleMenuKeydown(event: KeyboardEvent, entries: HTMLEle
|
|
|
125
125
|
* `eun-dropdown-button` (its root menu and `options`-sourced submenus) and
|
|
126
126
|
* `eun-dropdown-item` (its own submenu) : `0` under `prefers-reduced-motion:
|
|
127
127
|
* reduce`, otherwise `--dropdown-menu-transition-duration` (default
|
|
128
|
-
* `
|
|
129
|
-
* close visual is a JS `Animation` rather than a CSS transition.
|
|
128
|
+
* `--eun-duration-s`) — see `dropdown-button.styles.ts`'s own doc for why
|
|
129
|
+
* the open/close visual is a JS `Animation` rather than a CSS transition.
|
|
130
130
|
*
|
|
131
131
|
* @param el the menu/submenu to read `--dropdown-menu-transition-duration` off.
|
|
132
132
|
*/
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolveDurationMs } from "./motion.utils.js";
|
|
1
2
|
/**
|
|
2
3
|
* DOM-only menu mechanics shared by `eun-dropdown-button` (its root menu and
|
|
3
4
|
* `options`-sourced submenus) and `eun-dropdown-item` (its own
|
|
@@ -186,8 +187,8 @@ export function handleMenuKeydown(event, entries, handlers) {
|
|
|
186
187
|
* `eun-dropdown-button` (its root menu and `options`-sourced submenus) and
|
|
187
188
|
* `eun-dropdown-item` (its own submenu) : `0` under `prefers-reduced-motion:
|
|
188
189
|
* reduce`, otherwise `--dropdown-menu-transition-duration` (default
|
|
189
|
-
* `
|
|
190
|
-
* close visual is a JS `Animation` rather than a CSS transition.
|
|
190
|
+
* `--eun-duration-s`) — see `dropdown-button.styles.ts`'s own doc for why
|
|
191
|
+
* the open/close visual is a JS `Animation` rather than a CSS transition.
|
|
191
192
|
*
|
|
192
193
|
* @param el the menu/submenu to read `--dropdown-menu-transition-duration` off.
|
|
193
194
|
*/
|
|
@@ -195,16 +196,5 @@ export function dropdownMenuAnimationDuration(el) {
|
|
|
195
196
|
if (window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
|
|
196
197
|
return 0;
|
|
197
198
|
}
|
|
198
|
-
|
|
199
|
-
.getPropertyValue("--dropdown-menu-transition-duration")
|
|
200
|
-
.trim();
|
|
201
|
-
if (raw) {
|
|
202
|
-
const parsed = raw.endsWith("ms")
|
|
203
|
-
? Number.parseFloat(raw)
|
|
204
|
-
: Number.parseFloat(raw) * 1000;
|
|
205
|
-
if (Number.isFinite(parsed) && parsed >= 0) {
|
|
206
|
-
return parsed;
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return 160;
|
|
199
|
+
return resolveDurationMs(el, "--dropdown-menu-transition-duration", "s", 160);
|
|
210
200
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CSSResult } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* Adopts a light DOM sheet into `host`'s root node (the document, or the
|
|
4
|
+
* shadow root it lives in), once per root. A component whose native
|
|
5
|
+
* content (a `<table>`, a `<dl>`) stays in the light DOM styles it this
|
|
6
|
+
* way, since its own shadow root can't reach slotted descendants.
|
|
7
|
+
*
|
|
8
|
+
* Falls back to a `<style>` element where constructable stylesheets
|
|
9
|
+
* aren't supported.
|
|
10
|
+
*
|
|
11
|
+
* @param host the connected element whose root node receives the sheet.
|
|
12
|
+
* @param styles the sheet to adopt.
|
|
13
|
+
*/
|
|
14
|
+
export declare function adoptLightDomStyles(host: Node, styles: CSSResult): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Root nodes each light DOM sheet was already adopted into.
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
const styledRoots = new WeakMap();
|
|
6
|
+
/**
|
|
7
|
+
* Adopts a light DOM sheet into `host`'s root node (the document, or the
|
|
8
|
+
* shadow root it lives in), once per root. A component whose native
|
|
9
|
+
* content (a `<table>`, a `<dl>`) stays in the light DOM styles it this
|
|
10
|
+
* way, since its own shadow root can't reach slotted descendants.
|
|
11
|
+
*
|
|
12
|
+
* Falls back to a `<style>` element where constructable stylesheets
|
|
13
|
+
* aren't supported.
|
|
14
|
+
*
|
|
15
|
+
* @param host the connected element whose root node receives the sheet.
|
|
16
|
+
* @param styles the sheet to adopt.
|
|
17
|
+
*/
|
|
18
|
+
export function adoptLightDomStyles(host, styles) {
|
|
19
|
+
const root = host.getRootNode();
|
|
20
|
+
let roots = styledRoots.get(styles);
|
|
21
|
+
if (!roots) {
|
|
22
|
+
roots = new WeakSet();
|
|
23
|
+
styledRoots.set(styles, roots);
|
|
24
|
+
}
|
|
25
|
+
if (roots.has(root)) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
roots.add(root);
|
|
29
|
+
const sheet = styles.styleSheet;
|
|
30
|
+
if (sheet && "adoptedStyleSheets" in root) {
|
|
31
|
+
root.adoptedStyleSheets = [...root.adoptedStyleSheets, sheet];
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const style = document.createElement("style");
|
|
35
|
+
style.textContent = styles.cssText;
|
|
36
|
+
(root instanceof Document ? root.head : root).appendChild(style);
|
|
37
|
+
}
|
|
@@ -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.6",
|
|
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"
|
|
@@ -233,26 +233,6 @@
|
|
|
233
233
|
"types": "./dist/features/table/table-action-bar/table-action-bar.d.ts",
|
|
234
234
|
"default": "./dist/features/table/table-action-bar/table-action-bar.js"
|
|
235
235
|
},
|
|
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
236
|
"./table.js": {
|
|
257
237
|
"types": "./dist/features/table/table/table.d.ts",
|
|
258
238
|
"default": "./dist/features/table/table/table.js"
|
|
@@ -301,6 +281,10 @@
|
|
|
301
281
|
"types": "./dist/utils/theme-generator.utils.d.ts",
|
|
302
282
|
"default": "./dist/utils/theme-generator.utils.js"
|
|
303
283
|
},
|
|
284
|
+
"./breakpoints.js": {
|
|
285
|
+
"types": "./dist/breakpoints.d.ts",
|
|
286
|
+
"default": "./dist/breakpoints.js"
|
|
287
|
+
},
|
|
304
288
|
"./jsx": {
|
|
305
289
|
"types": "./dist/jsx.d.ts",
|
|
306
290
|
"default": "./dist/jsx.js"
|
|
@@ -312,8 +296,12 @@
|
|
|
312
296
|
"./sidebar-ssr.css": "./dist/ssr/sidebar-ssr.css",
|
|
313
297
|
"./overlay-ssr.css": "./dist/ssr/overlay-ssr.css",
|
|
314
298
|
"./links-ssr.css": "./dist/ssr/links-ssr.css",
|
|
299
|
+
"./button-ssr.css": "./dist/ssr/button-ssr.css",
|
|
300
|
+
"./tag-ssr.css": "./dist/ssr/tag-ssr.css",
|
|
301
|
+
"./card-ssr.css": "./dist/ssr/card-ssr.css",
|
|
315
302
|
"./rich-text.css": "./dist/ssr/rich-text.css",
|
|
316
|
-
"./
|
|
303
|
+
"./table-ssr.css": "./dist/ssr/table-ssr.css",
|
|
304
|
+
"./description-list-ssr.css": "./dist/ssr/description-list-ssr.css"
|
|
317
305
|
},
|
|
318
306
|
"files": [
|
|
319
307
|
"dist",
|
|
@@ -326,12 +314,13 @@
|
|
|
326
314
|
"./dist/features/**/*.js"
|
|
327
315
|
],
|
|
328
316
|
"scripts": {
|
|
329
|
-
"build": "tsc --noEmit",
|
|
317
|
+
"build": "tsc --noEmit -p tsconfig.build.json",
|
|
330
318
|
"build:dist": "node scripts/build-dist.mjs",
|
|
331
319
|
"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
320
|
"build:cdn": "node scripts/build-cdn.mjs",
|
|
333
321
|
"prepublishOnly": "npm run build:dist && npm run build:cdn",
|
|
334
|
-
"lint": "eslint . --config ../eslint.config.js",
|
|
322
|
+
"lint": "eslint . --config ../eslint.config.js && node scripts/breakpoints.mjs --check",
|
|
323
|
+
"breakpoints": "node scripts/breakpoints.mjs",
|
|
335
324
|
"test": "web-test-runner --config ../web-test-runner.config.mjs",
|
|
336
325
|
"test:coverage": "web-test-runner --config ../web-test-runner.config.mjs --coverage"
|
|
337
326
|
},
|
|
@@ -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
|
}
|