@eunomia/elements 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -6
- package/dist/angular/forms.d.ts +80 -0
- package/dist/angular/forms.js +267 -0
- package/dist/cdn/components/chunks/chunk-2XPIGFBD.js +1 -0
- package/dist/cdn/components/chunks/chunk-5IUNSTM3.js +1 -0
- package/dist/cdn/components/chunks/chunk-7HXPLZ7C.js +1 -0
- package/dist/cdn/components/chunks/{chunk-J3SZBXM6.js → chunk-A2NO4RSF.js} +7 -7
- package/dist/cdn/components/chunks/{chunk-Q34EQ5HZ.js → chunk-A623JJXJ.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-Y3HOIL64.js → chunk-AW7PU43S.js} +2 -2
- package/dist/cdn/components/chunks/{chunk-FF3I7C3C.js → chunk-DWTNRFWW.js} +1 -3
- package/dist/cdn/components/chunks/chunk-FPNWPMHA.js +1 -0
- package/dist/cdn/components/chunks/chunk-GMWUHGNI.js +319 -0
- package/dist/cdn/components/chunks/{chunk-FQUWHNQT.js → chunk-GXOEPXDW.js} +1 -1
- package/dist/cdn/components/chunks/chunk-HXESKTK2.js +1 -0
- package/dist/cdn/components/chunks/chunk-JDUWKPHW.js +46 -0
- package/dist/cdn/components/chunks/{chunk-D3JJBHXN.js → chunk-JLKCBPD2.js} +2 -2
- package/dist/cdn/components/chunks/chunk-M6ZJHL4Q.js +1 -0
- package/dist/cdn/components/chunks/{chunk-TN3HGHQO.js → chunk-MDSUMP3O.js} +4 -4
- package/dist/cdn/components/chunks/chunk-MSQWOKBB.js +1 -0
- package/dist/cdn/components/chunks/{chunk-3UUZM7X2.js → chunk-NPXRQHUN.js} +3 -3
- package/dist/cdn/components/chunks/chunk-OB7DEGNX.js +1 -0
- package/dist/cdn/components/chunks/{chunk-JANNHW4Q.js → chunk-PADHCLBG.js} +4 -4
- package/dist/cdn/components/chunks/chunk-QMXE3KLT.js +1 -0
- package/dist/cdn/components/chunks/chunk-QNWKRPOW.js +1 -0
- package/dist/cdn/components/chunks/{chunk-KQUUMZ7U.js → chunk-RZF7QQDX.js} +7 -7
- package/dist/cdn/components/chunks/chunk-SCAP7J35.js +1 -0
- package/dist/cdn/components/chunks/chunk-TISMX7UL.js +1 -0
- package/dist/cdn/components/chunks/chunk-TWLI2ZOT.js +1 -0
- package/dist/cdn/components/chunks/chunk-W4VCWRY7.js +210 -0
- package/dist/cdn/components/chunks/{chunk-SZZRMJ65.js → chunk-WEG3KO6T.js} +3 -3
- package/dist/cdn/components/chunks/chunk-WP6ZYBAC.js +1 -0
- package/dist/cdn/components/chunks/{chunk-HGX6GPHM.js → chunk-XCBQ4CKH.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-3UW2LJ7T.js → chunk-XZ3LFOQP.js} +2 -2
- package/dist/cdn/components/eun-alert.js +1 -1
- package/dist/cdn/components/eun-animate.js +92 -180
- package/dist/cdn/components/eun-breadcrumb.js +4 -4
- package/dist/cdn/components/eun-button.js +1 -1
- package/dist/cdn/components/eun-calendar.js +188 -115
- package/dist/cdn/components/eun-card.js +1 -1
- package/dist/cdn/components/eun-carousel.js +36 -28
- package/dist/cdn/components/eun-check-card.js +3 -3
- package/dist/cdn/components/eun-checkbox-list.js +2 -2
- package/dist/cdn/components/eun-checkbox.js +1 -1
- package/dist/cdn/components/eun-chip.js +11 -15
- package/dist/cdn/components/eun-collapse.js +21 -10
- package/dist/cdn/components/eun-color-picker.js +32 -32
- package/dist/cdn/components/eun-counter.js +8 -8
- package/dist/cdn/components/eun-date-picker.js +83 -79
- package/dist/cdn/components/eun-description-list.js +1 -1
- package/dist/cdn/components/eun-divider.js +9 -8
- package/dist/cdn/components/eun-drawer.js +8 -6
- package/dist/cdn/components/eun-dropdown-button.js +1 -1
- package/dist/cdn/components/eun-dropdown-item.js +4 -4
- package/dist/cdn/components/eun-fab.js +1 -1
- package/dist/cdn/components/eun-image-card.js +2 -2
- package/dist/cdn/components/eun-image-carousel.js +55 -29
- package/dist/cdn/components/eun-infinite-list.js +2 -2
- package/dist/cdn/components/eun-input-file.js +3 -3
- package/dist/cdn/components/eun-input-phone.js +6 -6
- package/dist/cdn/components/eun-input.js +1 -1
- package/dist/cdn/components/eun-label.js +1 -1
- package/dist/cdn/components/eun-link.js +18 -329
- package/dist/cdn/components/eun-loader.js +1 -1
- package/dist/cdn/components/eun-modal.js +9 -7
- package/dist/cdn/components/eun-nav-menu.js +363 -0
- package/dist/cdn/components/eun-pagination.js +4 -4
- package/dist/cdn/components/eun-password-strength.js +2 -2
- package/dist/cdn/components/eun-progress-bar.js +1 -1
- package/dist/cdn/components/eun-radio-card.js +4 -4
- package/dist/cdn/components/eun-radio-list.js +1 -1
- package/dist/cdn/components/eun-radio.js +1 -1
- package/dist/cdn/components/eun-rating.js +9 -9
- package/dist/cdn/components/eun-scheduler-event-editor.js +113 -77
- package/dist/cdn/components/eun-scheduler-event.js +1 -1
- package/dist/cdn/components/eun-scheduler.js +137 -79
- package/dist/cdn/components/eun-search.js +6 -6
- package/dist/cdn/components/eun-select.js +1 -1
- package/dist/cdn/components/eun-sidebar.js +23 -14
- package/dist/cdn/components/eun-slider.js +2 -2
- package/dist/cdn/components/eun-sliding-card.js +1 -1
- package/dist/cdn/components/eun-step.js +2 -2
- package/dist/cdn/components/eun-stepper.js +11 -12
- package/dist/cdn/components/eun-switch.js +2 -2
- package/dist/cdn/components/eun-tab-group.js +1 -1
- package/dist/cdn/components/eun-tab-panel.js +1 -1
- package/dist/cdn/components/eun-table-action-bar.js +1 -1
- package/dist/cdn/components/eun-table.js +13 -10
- package/dist/cdn/components/eun-tag.js +1 -1
- package/dist/cdn/components/eun-textarea.js +4 -4
- package/dist/cdn/components/eun-time-picker.js +28 -25
- package/dist/cdn/components/eun-toast.js +8 -8
- package/dist/cdn/components/eun-toggle-group.js +8 -2
- package/dist/cdn/components/eun-toggle-item.js +8 -2
- package/dist/cdn/components/eun-toggle.js +4 -1
- package/dist/cdn/components/eun-toolbar.js +114 -36
- package/dist/cdn/components/eun-tooltip.js +1 -1
- package/dist/cdn/styles/eunomia-themes.css +1 -1
- package/dist/cdn/styles/themes/eunomia-theme.css +1 -1
- package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +2 -2
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
- package/dist/cdn/styles/tools/mixins/layout/eunomia-grid.mixin.scss +116 -8
- package/dist/components/action/button/button.styles.js +2 -2
- package/dist/components/action/dropdown-button/dropdown-button.d.ts +4 -0
- package/dist/components/action/dropdown-button/dropdown-button.js +1 -0
- package/dist/components/action/dropdown-button/dropdown-button.styles.js +5 -4
- package/dist/components/action/dropdown-button/dropdown-item.d.ts +1 -0
- package/dist/components/action/dropdown-button/dropdown-item.js +1 -0
- package/dist/components/action/dropdown-button/dropdown-item.styles.js +4 -4
- package/dist/components/action/link/link.d.ts +2 -1
- package/dist/components/action/link/link.js +2 -1
- package/dist/components/action/link/link.styles.d.ts +40 -1
- package/dist/components/action/link/link.styles.js +83 -60
- package/dist/components/action/shared-styles/button-palette.styles.js +1 -1
- package/dist/components/action/toggle/toggle-group.d.ts +1 -0
- package/dist/components/action/toggle/toggle-group.js +1 -0
- package/dist/components/action/toggle/toggle-group.styles.d.ts +1 -0
- package/dist/components/action/toggle/toggle-group.styles.js +9 -2
- package/dist/components/action/toggle/toggle-item.styles.js +8 -2
- package/dist/components/action/toggle/toggle.d.ts +1 -0
- package/dist/components/action/toggle/toggle.js +1 -0
- package/dist/components/action/toggle/toggle.styles.d.ts +1 -0
- package/dist/components/action/toggle/toggle.styles.js +5 -1
- package/dist/components/alert/drawer/drawer.d.ts +14 -13
- package/dist/components/alert/drawer/drawer.js +20 -28
- package/dist/components/alert/modal/modal.d.ts +14 -13
- package/dist/components/alert/modal/modal.js +20 -28
- package/dist/components/alert/modal/modal.styles.js +1 -1
- package/dist/components/alert/toast/toast.d.ts +5 -5
- package/dist/components/alert/toast/toast.js +9 -10
- package/dist/components/alert/toast/toast.styles.js +3 -3
- package/dist/components/content/card/image-card.styles.js +1 -1
- package/dist/components/content/chip/chip.d.ts +7 -9
- package/dist/components/content/chip/chip.js +11 -14
- package/dist/components/content/chip/chip.styles.js +1 -5
- package/dist/components/content/collapse/collapse.d.ts +5 -0
- package/dist/components/content/collapse/collapse.js +7 -0
- package/dist/components/content/collapse/collapse.styles.d.ts +3 -0
- package/dist/components/content/collapse/collapse.styles.js +13 -1
- package/dist/components/content/description-list/description-list.styles.js +1 -1
- package/dist/components/content/image-carousel/image-carousel.d.ts +60 -13
- package/dist/components/content/image-carousel/image-carousel.js +100 -22
- package/dist/components/content/image-carousel/image-carousel.styles.js +32 -6
- package/dist/components/content/password-strength/password-strength.styles.js +1 -1
- package/dist/components/content/progress-bar/progress-bar.styles.js +1 -1
- package/dist/components/content/shared-styles/card-link.styles.js +1 -1
- package/dist/components/content/shared-styles/tone-surface.styles.js +1 -3
- package/dist/components/form/checkbox/check-card.styles.js +2 -2
- package/dist/components/form/checkbox/checkbox-list.d.ts +3 -1
- package/dist/components/form/checkbox/checkbox-list.js +3 -1
- package/dist/components/form/checkbox/checkbox.styles.js +1 -1
- package/dist/components/form/color-picker/color-picker.d.ts +28 -3
- package/dist/components/form/color-picker/color-picker.js +53 -7
- package/dist/components/form/counter/counter.js +1 -1
- package/dist/components/form/counter/counter.styles.js +2 -2
- package/dist/components/form/date-picker/date-picker-day-grid.styles.js +1 -1
- package/dist/components/form/date-picker/date-picker-month-grid.js +1 -1
- package/dist/components/form/date-picker/date-picker.d.ts +50 -13
- package/dist/components/form/date-picker/date-picker.js +178 -43
- package/dist/components/form/input/input.js +1 -4
- package/dist/components/form/input-file/input-file.styles.js +2 -2
- package/dist/components/form/input-phone/input-phone.js +4 -3
- package/dist/components/form/label/label.styles.js +1 -1
- package/dist/components/form/radio/radio-card.styles.js +2 -2
- package/dist/components/form/radio/radio.styles.js +1 -1
- package/dist/components/form/rating/rating.js +3 -5
- package/dist/components/form/rating/rating.styles.js +2 -2
- package/dist/components/form/search/search.d.ts +1 -7
- package/dist/components/form/search/search.js +2 -12
- package/dist/components/form/shared-styles/field.styles.js +2 -2
- package/dist/components/form/slider/slider.styles.js +1 -1
- package/dist/components/form/switch/switch.styles.js +1 -1
- package/dist/components/form/textarea/textarea.js +1 -5
- package/dist/components/form/textarea/textarea.styles.js +2 -2
- package/dist/components/form/time-picker/time-picker-columns.d.ts +4 -1
- package/dist/components/form/time-picker/time-picker-columns.js +64 -15
- package/dist/components/form/time-picker/time-picker-columns.styles.js +5 -1
- package/dist/components/form/time-picker/time-picker-list.d.ts +4 -1
- package/dist/components/form/time-picker/time-picker-list.js +15 -8
- package/dist/components/form/time-picker/time-picker.d.ts +11 -2
- package/dist/components/form/time-picker/time-picker.js +22 -8
- package/dist/components/layout/animate/animate.d.ts +35 -17
- package/dist/components/layout/animate/animate.js +27 -14
- package/dist/components/layout/animate/animate.styles.d.ts +2 -1
- package/dist/components/layout/animate/animate.styles.js +107 -179
- package/dist/components/layout/divider/divider.d.ts +1 -0
- package/dist/components/layout/divider/divider.js +2 -1
- package/dist/components/layout/divider/divider.styles.js +7 -6
- package/dist/components/layout/infinite-list/infinite-list.styles.js +1 -1
- package/dist/components/navigation/breadcrumb/breadcrumb.styles.js +3 -3
- package/dist/components/navigation/carousel/carousel.d.ts +23 -14
- package/dist/components/navigation/carousel/carousel.js +39 -27
- package/dist/components/navigation/carousel/carousel.styles.js +16 -8
- package/dist/components/navigation/nav-menu/nav-menu.d.ts +201 -0
- package/dist/components/navigation/nav-menu/nav-menu.js +673 -0
- package/dist/components/navigation/nav-menu/nav-menu.styles.d.ts +1 -0
- package/dist/components/navigation/nav-menu/nav-menu.styles.js +352 -0
- package/dist/components/navigation/pagination/pagination.d.ts +3 -0
- package/dist/components/navigation/pagination/pagination.styles.js +2 -2
- package/dist/components/navigation/sidebar/sidebar.d.ts +8 -10
- package/dist/components/navigation/sidebar/sidebar.js +12 -15
- package/dist/components/navigation/sidebar/sidebar.styles.js +13 -4
- package/dist/components/navigation/stepper/step.styles.js +2 -2
- package/dist/components/navigation/stepper/stepper.d.ts +24 -13
- package/dist/components/navigation/stepper/stepper.js +36 -23
- package/dist/components/navigation/stepper/stepper.styles.js +2 -2
- package/dist/components/navigation/tabs/tab-group/tab-group.js +1 -1
- package/dist/components/navigation/tabs/tab-panel/tab-panel.styles.js +1 -1
- package/dist/components/navigation/toolbar/toolbar.d.ts +121 -20
- package/dist/components/navigation/toolbar/toolbar.js +176 -45
- package/dist/components/navigation/toolbar/toolbar.styles.js +113 -28
- package/dist/events/editor-state-change.event.d.ts +28 -0
- package/dist/events/editor-state-change.event.js +22 -0
- package/dist/events/event-cancel.event.d.ts +20 -0
- package/dist/events/event-cancel.event.js +17 -0
- package/dist/events/period-change.event.d.ts +14 -6
- package/dist/events/period-change.event.js +9 -6
- package/dist/features/scheduler/calendar/calendar.d.ts +52 -20
- package/dist/features/scheduler/calendar/calendar.js +84 -36
- package/dist/features/scheduler/calendar/calendar.styles.js +5 -2
- package/dist/features/scheduler/scheduler/scheduler.d.ts +69 -4
- package/dist/features/scheduler/scheduler/scheduler.js +172 -47
- package/dist/features/scheduler/scheduler/scheduler.styles.js +6 -0
- package/dist/features/scheduler/scheduler-event/scheduler-event.d.ts +18 -20
- package/dist/features/scheduler/scheduler-event/scheduler-event.js +29 -38
- package/dist/features/scheduler/scheduler-event/scheduler-event.styles.js +2 -2
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.d.ts +102 -18
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js +249 -112
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.styles.js +11 -1
- package/dist/features/scheduler/shared/scheduler-event-popover.d.ts +9 -1
- package/dist/features/scheduler/shared/scheduler-event-popover.js +77 -42
- package/dist/features/scheduler/shared/scheduler-event-popover.styles.js +14 -3
- package/dist/features/scheduler/shared/scheduler-hour-grid.d.ts +3 -2
- package/dist/features/scheduler/shared/scheduler-hour-grid.js +53 -46
- package/dist/features/scheduler/shared/scheduler-hour-grid.styles.js +13 -7
- package/dist/features/scheduler/shared/scheduler-month-view.js +1 -1
- package/dist/features/scheduler/shared/scheduler-month-view.styles.js +13 -7
- package/dist/features/scheduler/shared/scheduler-year-view.d.ts +6 -5
- package/dist/features/scheduler/shared/scheduler-year-view.js +11 -7
- package/dist/features/scheduler/shared/scheduler-year-view.styles.js +57 -3
- package/dist/features/scheduler/shared/scheduler.types.d.ts +5 -9
- package/dist/features/scheduler/shared/scheduler.utils.d.ts +61 -0
- package/dist/features/scheduler/shared/scheduler.utils.js +78 -4
- package/dist/features/table/table/table-native.styles.js +8 -4
- package/dist/features/table/table/table.d.ts +2 -1
- package/dist/features/table/table/table.js +2 -1
- package/dist/features/table/table/table.styles.js +6 -4
- package/dist/i18n/en.d.ts +17 -0
- package/dist/i18n/en.js +17 -0
- package/dist/i18n/fr.js +17 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +4 -0
- package/dist/jsx.d.ts +48 -6
- package/dist/mixins/anchor-position.mixin.d.ts +17 -0
- package/dist/mixins/anchor-position.mixin.js +45 -7
- package/dist/mixins/button.mixin.js +2 -1
- package/dist/mixins/check.mixin.js +14 -5
- package/dist/mixins/dialog-surface.mixin.d.ts +1 -1
- package/dist/mixins/dialog-surface.mixin.js +5 -5
- package/dist/mixins/form.mixin.js +33 -13
- package/dist/mixins/localizable.mixin.d.ts +1 -0
- package/dist/mixins/localizable.mixin.js +9 -2
- package/dist/mixins/radio.mixin.js +14 -5
- package/dist/mixins/validators.mixin.js +4 -3
- package/dist/react.d.ts +59 -0
- package/dist/react.js +42 -0
- package/dist/ssr/animate-ssr.css +35 -0
- package/dist/ssr/breadcrumb-ssr.css +3 -3
- package/dist/ssr/button-ssr.css +8 -2
- package/dist/ssr/card-ssr.css +1 -1
- package/dist/ssr/carousel-ssr.css +15 -4
- package/dist/ssr/chip-ssr.css +3 -3
- package/dist/ssr/collapse-ssr.css +2 -2
- package/dist/ssr/description-list-ssr.css +1 -1
- package/dist/ssr/divider-ssr.css +23 -0
- package/dist/ssr/field-ssr.css +245 -42
- package/dist/ssr/image-carousel-ssr.css +2 -4
- package/dist/ssr/links-ssr.css +17 -3
- package/dist/ssr/nav-menu-ssr.css +82 -0
- package/dist/ssr/overlay-ssr.css +4 -0
- package/dist/ssr/scheduler-ssr.css +182 -0
- package/dist/ssr/stepper-ssr.css +136 -0
- package/dist/ssr/table-ssr.css +7 -4
- package/dist/ssr/tag-ssr.css +1 -1
- package/dist/ssr/toolbar-ssr.css +7 -5
- package/dist/utils/css-length.utils.d.ts +14 -0
- package/dist/utils/css-length.utils.js +32 -0
- package/dist/utils/form-validation.utils.d.ts +36 -0
- package/dist/utils/form-validation.utils.js +113 -0
- package/dist/utils/implicit-submission.utils.js +2 -14
- package/dist/utils/interactive-content.utils.d.ts +10 -0
- package/dist/utils/interactive-content.utils.js +43 -0
- package/dist/utils/popover.utils.js +3 -2
- package/dist/utils/scroll-lock.utils.d.ts +9 -1
- package/dist/utils/scroll-lock.utils.js +21 -2
- package/dist/utils/theme-generator.utils.d.ts +1 -0
- package/dist/utils/theme-generator.utils.js +23 -10
- package/dist/utils/validity.utils.d.ts +18 -4
- package/dist/utils/validity.utils.js +74 -4
- package/package.json +34 -3
- package/styles/themes/mixins/eunomia-neutrals.mixin.scss +2 -2
- package/styles/tools/mixins/layout/eunomia-grid.mixin.scss +116 -8
- package/dist/cdn/components/chunks/chunk-4DRU3IYJ.js +0 -1
- package/dist/cdn/components/chunks/chunk-647ISUF4.js +0 -1
- package/dist/cdn/components/chunks/chunk-6TIEBY34.js +0 -1
- package/dist/cdn/components/chunks/chunk-E6UOI36Q.js +0 -1
- package/dist/cdn/components/chunks/chunk-GNAUNTS5.js +0 -1
- package/dist/cdn/components/chunks/chunk-IJJ67C66.js +0 -1
- package/dist/cdn/components/chunks/chunk-J7ETIRSK.js +0 -1
- package/dist/cdn/components/chunks/chunk-JGV7LHEI.js +0 -1
- package/dist/cdn/components/chunks/chunk-L74LXUGL.js +0 -1
- package/dist/cdn/components/chunks/chunk-MY6ORZJR.js +0 -46
- package/dist/cdn/components/chunks/chunk-QWTFP56P.js +0 -1
- package/dist/cdn/components/chunks/chunk-SFX2LQ4K.js +0 -205
- package/dist/cdn/components/chunks/chunk-WW4BTWMH.js +0 -1
- package/dist/utils/boolean.utils.d.ts +0 -14
- package/dist/utils/boolean.utils.js +0 -20
|
@@ -1,6 +1,37 @@
|
|
|
1
|
+
@use "sass:list";
|
|
1
2
|
@use "./../media-queries/eunomia-media-queries.mixin.scss" as *;
|
|
2
3
|
|
|
4
|
+
$_eunomia-grid-own-properties: (
|
|
5
|
+
"--eun-grid-track-min",
|
|
6
|
+
"--_variantCols0",
|
|
7
|
+
"--_variantCols1",
|
|
8
|
+
"--_variantCols2",
|
|
9
|
+
"--_variantCols3",
|
|
10
|
+
"--_variantCols4",
|
|
11
|
+
"--_variantTpl0",
|
|
12
|
+
"--_variantTpl1",
|
|
13
|
+
"--_variantTpl2",
|
|
14
|
+
"--_variantTpl3",
|
|
15
|
+
"--_variantTpl4"
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
@each $name in ("columns", "template") {
|
|
19
|
+
@each $suffix in ("", "-mobile", "-tablet", "-laptop", "-desktop") {
|
|
20
|
+
$_eunomia-grid-own-properties: list.append(
|
|
21
|
+
$_eunomia-grid-own-properties,
|
|
22
|
+
"--eun-grid-#{$name}#{$suffix}"
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
3
27
|
@mixin eunomia-grid-layouts {
|
|
28
|
+
@each $property in $_eunomia-grid-own-properties {
|
|
29
|
+
@property #{$property} {
|
|
30
|
+
syntax: "*";
|
|
31
|
+
inherits: false;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
4
35
|
:where(.eun-grid) {
|
|
5
36
|
--_cols0: var(--eun-grid-columns, var(--_variantCols0, 1));
|
|
6
37
|
--_cols1: var(
|
|
@@ -62,8 +93,65 @@
|
|
|
62
93
|
)
|
|
63
94
|
);
|
|
64
95
|
--_cols: var(--_cols0);
|
|
96
|
+
--_tpl0: var(--eun-grid-template, var(--_variantTpl0));
|
|
97
|
+
--_tpl1: var(
|
|
98
|
+
--eun-grid-template-mobile,
|
|
99
|
+
var(--eun-grid-template, var(--_variantTpl1, var(--_variantTpl0)))
|
|
100
|
+
);
|
|
101
|
+
--_tpl2: var(
|
|
102
|
+
--eun-grid-template-tablet,
|
|
103
|
+
var(
|
|
104
|
+
--eun-grid-template-mobile,
|
|
105
|
+
var(
|
|
106
|
+
--eun-grid-template,
|
|
107
|
+
var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
|
|
108
|
+
)
|
|
109
|
+
)
|
|
110
|
+
);
|
|
111
|
+
--_tpl3: var(
|
|
112
|
+
--eun-grid-template-laptop,
|
|
113
|
+
var(
|
|
114
|
+
--eun-grid-template-tablet,
|
|
115
|
+
var(
|
|
116
|
+
--eun-grid-template-mobile,
|
|
117
|
+
var(
|
|
118
|
+
--eun-grid-template,
|
|
119
|
+
var(
|
|
120
|
+
--_variantTpl3,
|
|
121
|
+
var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
|
|
122
|
+
)
|
|
123
|
+
)
|
|
124
|
+
)
|
|
125
|
+
)
|
|
126
|
+
);
|
|
127
|
+
--_tpl4: var(
|
|
128
|
+
--eun-grid-template-desktop,
|
|
129
|
+
var(
|
|
130
|
+
--eun-grid-template-laptop,
|
|
131
|
+
var(
|
|
132
|
+
--eun-grid-template-tablet,
|
|
133
|
+
var(
|
|
134
|
+
--eun-grid-template-mobile,
|
|
135
|
+
var(
|
|
136
|
+
--eun-grid-template,
|
|
137
|
+
var(
|
|
138
|
+
--_variantTpl4,
|
|
139
|
+
var(
|
|
140
|
+
--_variantTpl3,
|
|
141
|
+
var(--_variantTpl2, var(--_variantTpl1, var(--_variantTpl0)))
|
|
142
|
+
)
|
|
143
|
+
)
|
|
144
|
+
)
|
|
145
|
+
)
|
|
146
|
+
)
|
|
147
|
+
)
|
|
148
|
+
);
|
|
149
|
+
--_tpl: var(--_tpl0);
|
|
65
150
|
display: grid;
|
|
66
|
-
grid-template-columns:
|
|
151
|
+
grid-template-columns: var(
|
|
152
|
+
--_tpl,
|
|
153
|
+
repeat(var(--_cols), minmax(var(--eun-grid-track-min, 0), 1fr))
|
|
154
|
+
);
|
|
67
155
|
row-gap: var(--eun-grid-row-gap, var(--eun-space-s));
|
|
68
156
|
column-gap: var(--eun-grid-column-gap, var(--eun-space-m));
|
|
69
157
|
}
|
|
@@ -71,21 +159,25 @@
|
|
|
71
159
|
@include eunomia-from(mobile) {
|
|
72
160
|
:where(.eun-grid) {
|
|
73
161
|
--_cols: var(--_cols1);
|
|
162
|
+
--_tpl: var(--_tpl1);
|
|
74
163
|
}
|
|
75
164
|
}
|
|
76
165
|
@include eunomia-from(tablet) {
|
|
77
166
|
:where(.eun-grid) {
|
|
78
167
|
--_cols: var(--_cols2);
|
|
168
|
+
--_tpl: var(--_tpl2);
|
|
79
169
|
}
|
|
80
170
|
}
|
|
81
171
|
@include eunomia-from(laptop) {
|
|
82
172
|
:where(.eun-grid) {
|
|
83
173
|
--_cols: var(--_cols3);
|
|
174
|
+
--_tpl: var(--_tpl3);
|
|
84
175
|
}
|
|
85
176
|
}
|
|
86
177
|
@include eunomia-from(desktop) {
|
|
87
178
|
:where(.eun-grid) {
|
|
88
179
|
--_cols: var(--_cols4);
|
|
180
|
+
--_tpl: var(--_tpl4);
|
|
89
181
|
}
|
|
90
182
|
}
|
|
91
183
|
|
|
@@ -102,15 +194,31 @@
|
|
|
102
194
|
grid-auto-flow: row;
|
|
103
195
|
}
|
|
104
196
|
|
|
105
|
-
|
|
106
|
-
:
|
|
107
|
-
|
|
108
|
-
}
|
|
197
|
+
:where(.eun-grid--thirds-1-2) {
|
|
198
|
+
--_variantTpl2: 1fr 2fr;
|
|
199
|
+
}
|
|
109
200
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
201
|
+
:where(.eun-grid--thirds-2-1) {
|
|
202
|
+
--_variantTpl2: 2fr 1fr;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
:where(.eun-grid--quarters-1-3) {
|
|
206
|
+
--_variantTpl2: 1fr 3fr;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
:where(.eun-grid--quarters-3-1) {
|
|
210
|
+
--_variantTpl2: 3fr 1fr;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
:where(.eun-grid--fifths-2-3) {
|
|
214
|
+
--_variantTpl2: 2fr 3fr;
|
|
215
|
+
}
|
|
113
216
|
|
|
217
|
+
:where(.eun-grid--fifths-3-2) {
|
|
218
|
+
--_variantTpl2: 3fr 2fr;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
@include eunomia-from(tablet) {
|
|
114
222
|
:where(.eun-grid--sidebar-left),
|
|
115
223
|
:where(.eun-grid--sidebar-right) {
|
|
116
224
|
grid-template-columns: repeat(2, 1fr);
|
|
@@ -154,7 +154,7 @@ const base = css `
|
|
|
154
154
|
#external-link-icon {
|
|
155
155
|
display: inline-flex;
|
|
156
156
|
align-items: center;
|
|
157
|
-
margin-inline: var(--eun-space-s) calc(-1 * var(--eun-space-xs));
|
|
157
|
+
margin-inline: var(--eun-space-s, 8px) calc(-1 * var(--eun-space-xs, 4px));
|
|
158
158
|
transform: rotate(-45deg);
|
|
159
159
|
--icon-color: var(--_textColor);
|
|
160
160
|
}
|
|
@@ -266,7 +266,7 @@ const appearances = css `
|
|
|
266
266
|
--_bd: transparent;
|
|
267
267
|
}
|
|
268
268
|
:host([appearance="ghost"]:not([color])) {
|
|
269
|
-
--_accent: var(--eun-text-secondary, #
|
|
269
|
+
--_accent: var(--eun-text-secondary, #666e8a);
|
|
270
270
|
--_wash-hover: var(--eun-content-hover, #edeff0);
|
|
271
271
|
--_wash-active: var(--eun-disabled-color, #ecedf0);
|
|
272
272
|
}
|
|
@@ -84,6 +84,7 @@ export type EunomiaDropdownPlacement = "top-start" | "top" | "top-end" | "right"
|
|
|
84
84
|
* @cssprop [--dropdown-menu-disabled-color] - Sets the text color of a disabled option
|
|
85
85
|
* @cssprop [--dropdown-menu-hover-background] - Sets the background color of a highlighted option
|
|
86
86
|
* @cssprop [--dropdown-menu-accent-color] - Sets the color of the hover accent bar and the keyboard focus outline. Also inherited by slotted dropdown items
|
|
87
|
+
* @cssprop [--dropdown-menu-focus-outline-color] - Sets the keyboard focus outline color of an option, falling back to --dropdown-menu-accent-color. Also inherited by slotted dropdown items
|
|
87
88
|
* @cssprop [--button-border-color] - Sets the border color of the trigger button
|
|
88
89
|
* @cssprop [--button-width] - Sets the trigger's width, such as 100% to stretch it like the full attribute does
|
|
89
90
|
* @cssprop [--button-border-color-hover] - Sets the border color of the trigger button on hover or focus, falling back to button-border-color when unset
|
|
@@ -732,4 +733,7 @@ declare global {
|
|
|
732
733
|
interface HTMLElementTagNameMap {
|
|
733
734
|
[EunomiaDropdownButtonTagName]: EunomiaDropdownButton;
|
|
734
735
|
}
|
|
736
|
+
interface EunomiaStringAttributeMap {
|
|
737
|
+
[EunomiaDropdownButtonTagName]: "options";
|
|
738
|
+
}
|
|
735
739
|
}
|
|
@@ -79,6 +79,7 @@ export const EunomiaDropdownButtonTagName = "eun-dropdown-button";
|
|
|
79
79
|
* @cssprop [--dropdown-menu-disabled-color] - Sets the text color of a disabled option
|
|
80
80
|
* @cssprop [--dropdown-menu-hover-background] - Sets the background color of a highlighted option
|
|
81
81
|
* @cssprop [--dropdown-menu-accent-color] - Sets the color of the hover accent bar and the keyboard focus outline. Also inherited by slotted dropdown items
|
|
82
|
+
* @cssprop [--dropdown-menu-focus-outline-color] - Sets the keyboard focus outline color of an option, falling back to --dropdown-menu-accent-color. Also inherited by slotted dropdown items
|
|
82
83
|
* @cssprop [--button-border-color] - Sets the border color of the trigger button
|
|
83
84
|
* @cssprop [--button-width] - Sets the trigger's width, such as 100% to stretch it like the full attribute does
|
|
84
85
|
* @cssprop [--button-border-color-hover] - Sets the border color of the trigger button on hover or focus, falling back to button-border-color when unset
|
|
@@ -12,6 +12,7 @@ import { css } from "lit";
|
|
|
12
12
|
* [--dropdown-menu-disabled-color] - Set a custom text color for a disabled option
|
|
13
13
|
* [--dropdown-menu-hover-background] - Set a custom background color for a hovered/focused/highlighted option
|
|
14
14
|
* [--dropdown-menu-accent-color] - Set a custom color for the hover accent bar and the keyboard focus outline
|
|
15
|
+
* [--dropdown-menu-focus-outline-color] - Set a custom keyboard focus outline color, falling back to --dropdown-menu-accent-color
|
|
15
16
|
* [--dropdown-menu-transition-duration=160ms] - Set a custom duration for the menu/submenu's open/close animation (played in JS — see playMenuOpenAnimation/playMenuCloseAnimation), disabled entirely under `prefers-reduced-motion: reduce`
|
|
16
17
|
*
|
|
17
18
|
* These variables are inherited through the DOM tree (including across the
|
|
@@ -114,8 +115,8 @@ const base = css `
|
|
|
114
115
|
#menu li:focus-visible,
|
|
115
116
|
.submenu li:focus-visible {
|
|
116
117
|
outline-color: var(
|
|
117
|
-
--dropdown-menu-
|
|
118
|
-
var(--eun-color-primary-500, #3d6fff)
|
|
118
|
+
--dropdown-menu-focus-outline-color,
|
|
119
|
+
var(--dropdown-menu-accent-color, var(--eun-color-primary-500, #3d6fff))
|
|
119
120
|
);
|
|
120
121
|
}
|
|
121
122
|
#menu li[aria-disabled="true"],
|
|
@@ -144,7 +145,7 @@ const base = css `
|
|
|
144
145
|
.submenu li .submenu-chevron {
|
|
145
146
|
--icon-color: var(
|
|
146
147
|
--dropdown-menu-description-color,
|
|
147
|
-
var(--eun-text-secondary, #
|
|
148
|
+
var(--eun-text-secondary, #666e8a)
|
|
148
149
|
);
|
|
149
150
|
margin-right: calc(-1 * var(--eun-space-s));
|
|
150
151
|
}
|
|
@@ -165,7 +166,7 @@ const base = css `
|
|
|
165
166
|
font-size: var(--eun-font-size-xs, 12px);
|
|
166
167
|
color: var(
|
|
167
168
|
--dropdown-menu-description-color,
|
|
168
|
-
var(--eun-text-secondary, #
|
|
169
|
+
var(--eun-text-secondary, #666e8a)
|
|
169
170
|
);
|
|
170
171
|
overflow: hidden;
|
|
171
172
|
text-overflow: ellipsis;
|
|
@@ -32,6 +32,7 @@ export declare const EunomiaDropdownItemTagName = "eun-dropdown-item";
|
|
|
32
32
|
* @cssprop [--dropdown-menu-disabled-color] - Sets the text color of this item when disabled
|
|
33
33
|
* @cssprop [--dropdown-menu-hover-background] - Sets the background color of this item when highlighted or when its submenu is open
|
|
34
34
|
* @cssprop [--dropdown-menu-accent-color] - Sets the color of the hover accent bar and the keyboard focus outline
|
|
35
|
+
* @cssprop [--dropdown-menu-focus-outline-color] - Sets the keyboard focus outline color, falling back to --dropdown-menu-accent-color
|
|
35
36
|
* @cssprop [--dropdown-menu-background] - Sets the background color of this item's own submenu panel, if it has one
|
|
36
37
|
* @cssprop [--dropdown-menu-border-color] - Sets the border color of this item's own submenu panel, if it has one
|
|
37
38
|
* @cssprop [--dropdown-menu-border-radius] - Sets the corner radius of this item's own submenu panel, if it has one
|
|
@@ -40,6 +40,7 @@ export const EunomiaDropdownItemTagName = "eun-dropdown-item";
|
|
|
40
40
|
* @cssprop [--dropdown-menu-disabled-color] - Sets the text color of this item when disabled
|
|
41
41
|
* @cssprop [--dropdown-menu-hover-background] - Sets the background color of this item when highlighted or when its submenu is open
|
|
42
42
|
* @cssprop [--dropdown-menu-accent-color] - Sets the color of the hover accent bar and the keyboard focus outline
|
|
43
|
+
* @cssprop [--dropdown-menu-focus-outline-color] - Sets the keyboard focus outline color, falling back to --dropdown-menu-accent-color
|
|
43
44
|
* @cssprop [--dropdown-menu-background] - Sets the background color of this item's own submenu panel, if it has one
|
|
44
45
|
* @cssprop [--dropdown-menu-border-color] - Sets the border color of this item's own submenu panel, if it has one
|
|
45
46
|
* @cssprop [--dropdown-menu-border-radius] - Sets the corner radius of this item's own submenu panel, if it has one
|
|
@@ -52,8 +52,8 @@ const base = css `
|
|
|
52
52
|
}
|
|
53
53
|
:host(:focus-visible) .content {
|
|
54
54
|
outline-color: var(
|
|
55
|
-
--dropdown-menu-
|
|
56
|
-
var(--eun-color-primary-500, #3d6fff)
|
|
55
|
+
--dropdown-menu-focus-outline-color,
|
|
56
|
+
var(--dropdown-menu-accent-color, var(--eun-color-primary-500, #3d6fff))
|
|
57
57
|
);
|
|
58
58
|
}
|
|
59
59
|
:host([aria-disabled="true"]) .content {
|
|
@@ -77,7 +77,7 @@ const base = css `
|
|
|
77
77
|
.submenu-chevron {
|
|
78
78
|
--icon-color: var(
|
|
79
79
|
--dropdown-menu-description-color,
|
|
80
|
-
var(--eun-text-secondary, #
|
|
80
|
+
var(--eun-text-secondary, #666e8a)
|
|
81
81
|
);
|
|
82
82
|
margin-right: calc(-1 * var(--eun-space-s));
|
|
83
83
|
}
|
|
@@ -95,7 +95,7 @@ const base = css `
|
|
|
95
95
|
font-size: var(--eun-font-size-xs, 12px);
|
|
96
96
|
color: var(
|
|
97
97
|
--dropdown-menu-description-color,
|
|
98
|
-
var(--eun-text-secondary, #
|
|
98
|
+
var(--eun-text-secondary, #666e8a)
|
|
99
99
|
);
|
|
100
100
|
overflow: hidden;
|
|
101
101
|
text-overflow: ellipsis;
|
|
@@ -33,7 +33,8 @@ declare const EunomiaLink_base: import("../../../utils/constructor.type.js").Con
|
|
|
33
33
|
* @fires {NavigationEvent} eunnavigate - Fired before following the link, so a client-side router can intercept the navigation. Cancelable
|
|
34
34
|
* @cssprop [--link-color] - Sets the color of the link
|
|
35
35
|
* @cssprop [--link-color-hover] - Sets the color of the link on hover
|
|
36
|
-
* @cssprop [--link-color-focus] - Sets the color of the link on focus
|
|
36
|
+
* @cssprop [--link-color-focus] - Sets the color of the link on focus, the hover color by default
|
|
37
|
+
* @cssprop [--link-focus-outline-color] - Sets the color of the focus ring
|
|
37
38
|
* @cssprop [--link-color-visited] - Sets the color of a visited link
|
|
38
39
|
* @cssprop [--link-color-visited-hover] - Sets the color of a visited link on hover
|
|
39
40
|
* @cssprop [--link-color-current] - Sets the color of the current page link, kept on hover, focus and visited states
|
|
@@ -56,7 +56,8 @@ export const EunomiaLinkTagName = "eun-link";
|
|
|
56
56
|
* @fires {NavigationEvent} eunnavigate - Fired before following the link, so a client-side router can intercept the navigation. Cancelable
|
|
57
57
|
* @cssprop [--link-color] - Sets the color of the link
|
|
58
58
|
* @cssprop [--link-color-hover] - Sets the color of the link on hover
|
|
59
|
-
* @cssprop [--link-color-focus] - Sets the color of the link on focus
|
|
59
|
+
* @cssprop [--link-color-focus] - Sets the color of the link on focus, the hover color by default
|
|
60
|
+
* @cssprop [--link-focus-outline-color] - Sets the color of the focus ring
|
|
60
61
|
* @cssprop [--link-color-visited] - Sets the color of a visited link
|
|
61
62
|
* @cssprop [--link-color-visited-hover] - Sets the color of a visited link on hover
|
|
62
63
|
* @cssprop [--link-color-current] - Sets the color of the current page link, kept on hover, focus and visited states
|
|
@@ -1 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
import { CSSResult } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* Base style for the link component.
|
|
4
|
+
*
|
|
5
|
+
* Custom css variables:
|
|
6
|
+
* [--link-color] - Set a custom link color, also used as the hover blend base. A visited link still uses the visited color, override it with --link-color-visited or set visited-style="off"
|
|
7
|
+
* [--link-font-size] - Set a custom font-size to the link
|
|
8
|
+
* [--link-line-height] - Set a custom line-height to the link. Inherits the surrounding text's line-height when unset
|
|
9
|
+
* [--link-color-hover] - Set a custom link color on hover state
|
|
10
|
+
* [--link-color-focus] - Set a custom link color on focus-visible state, the hover color by default
|
|
11
|
+
* [--link-focus-outline-color] - Set a custom focus ring color
|
|
12
|
+
* [--link-color-visited] - Set a custom link color on visited state
|
|
13
|
+
* [--link-color-visited-hover] - Set a custom link color on visited+hover state
|
|
14
|
+
* [--link-color-current] - Set a custom link color for the current page link (the `current` attribute). It stays this color on hover, focus and visited states
|
|
15
|
+
* [--link-text-decoration] - Set a custom text-decoration for the link
|
|
16
|
+
* [--link-icon-color] - Set a custom color for the leading icon, independent from the link text color
|
|
17
|
+
* [--link-icon-size] - Set a custom size for the leading icon, 18px by default. Also the font size of the icon slot, for an icon sized in em
|
|
18
|
+
* [--link-transition-duration] - Set a custom duration for the link transitions, --eun-duration-xl by default
|
|
19
|
+
* [--link-padding] - Set custom padding around the link, for example to give its focus outline room to breathe. Defaults to 0, flush with the text
|
|
20
|
+
* [--link-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --link-padding is set
|
|
21
|
+
* [--link-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --link-padding is set
|
|
22
|
+
* [--link-background] - Set a persistent background color behind the link. Defaults to transparent
|
|
23
|
+
* [--link-background-hover] - Set a background color shown while the link is hovered, falling back to --link-background when unset
|
|
24
|
+
* [--link-background-focus] - Set a background color shown while the link is keyboard-focused, falling back to --link-background when unset
|
|
25
|
+
* [--link-border-radius] - Set a custom corner radius for the link's own background/focus outline box
|
|
26
|
+
*/
|
|
27
|
+
/**
|
|
28
|
+
* The rule that gives an eun-link matched by `selector` the block layout :
|
|
29
|
+
* the host fills its container on one line, the inner link fills the host,
|
|
30
|
+
* the label cuts with an ellipsis, and the focus ring of a link with an
|
|
31
|
+
* icon surrounds the whole row instead of the text. Everything past the
|
|
32
|
+
* host's own layout goes through private custom properties, whose inline
|
|
33
|
+
* defaults are declared on :host below. Used for :host([block]), and by
|
|
34
|
+
* eun-nav-menu on its own eun-link children, which can't carry the
|
|
35
|
+
* attribute without a framework resetting it.
|
|
36
|
+
*
|
|
37
|
+
* @param selector the selector matching the eun-link hosts to lay out.
|
|
38
|
+
*/
|
|
39
|
+
export declare function linkBlockRule(selector: CSSResult): CSSResult;
|
|
40
|
+
export declare const linkStyles: CSSResult;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { css } from "lit";
|
|
1
|
+
import { css, unsafeCSS } from "lit";
|
|
2
2
|
/**
|
|
3
3
|
* Base style for the link component.
|
|
4
4
|
*
|
|
@@ -7,7 +7,8 @@ import { css } from "lit";
|
|
|
7
7
|
* [--link-font-size] - Set a custom font-size to the link
|
|
8
8
|
* [--link-line-height] - Set a custom line-height to the link. Inherits the surrounding text's line-height when unset
|
|
9
9
|
* [--link-color-hover] - Set a custom link color on hover state
|
|
10
|
-
* [--link-color-focus] - Set a custom link color on focus-visible state
|
|
10
|
+
* [--link-color-focus] - Set a custom link color on focus-visible state, the hover color by default
|
|
11
|
+
* [--link-focus-outline-color] - Set a custom focus ring color
|
|
11
12
|
* [--link-color-visited] - Set a custom link color on visited state
|
|
12
13
|
* [--link-color-visited-hover] - Set a custom link color on visited+hover state
|
|
13
14
|
* [--link-color-current] - Set a custom link color for the current page link (the `current` attribute). It stays this color on hover, focus and visited states
|
|
@@ -23,15 +24,64 @@ import { css } from "lit";
|
|
|
23
24
|
* [--link-background-focus] - Set a background color shown while the link is keyboard-focused, falling back to --link-background when unset
|
|
24
25
|
* [--link-border-radius] - Set a custom corner radius for the link's own background/focus outline box
|
|
25
26
|
*/
|
|
27
|
+
/**
|
|
28
|
+
* The rule that gives an eun-link matched by `selector` the block layout :
|
|
29
|
+
* the host fills its container on one line, the inner link fills the host,
|
|
30
|
+
* the label cuts with an ellipsis, and the focus ring of a link with an
|
|
31
|
+
* icon surrounds the whole row instead of the text. Everything past the
|
|
32
|
+
* host's own layout goes through private custom properties, whose inline
|
|
33
|
+
* defaults are declared on :host below. Used for :host([block]), and by
|
|
34
|
+
* eun-nav-menu on its own eun-link children, which can't carry the
|
|
35
|
+
* attribute without a framework resetting it.
|
|
36
|
+
*
|
|
37
|
+
* @param selector the selector matching the eun-link hosts to lay out.
|
|
38
|
+
*/
|
|
39
|
+
export function linkBlockRule(selector) {
|
|
40
|
+
return css `
|
|
41
|
+
${selector} {
|
|
42
|
+
display: flex;
|
|
43
|
+
width: 100%;
|
|
44
|
+
min-width: 0;
|
|
45
|
+
white-space: nowrap;
|
|
46
|
+
--_blockLinkFlex: 1;
|
|
47
|
+
--_blockBoxSizing: border-box;
|
|
48
|
+
--_blockMinWidth: 0;
|
|
49
|
+
--_blockLabelOverflow: hidden;
|
|
50
|
+
--_blockLabelTextOverflow: ellipsis;
|
|
51
|
+
--_blockRowFocusBackground: var(
|
|
52
|
+
--link-background-focus,
|
|
53
|
+
var(--link-background, transparent)
|
|
54
|
+
);
|
|
55
|
+
--_blockRowFocusOutline: var(--_focusOutline);
|
|
56
|
+
--_blockRowFocusOffset: 2px;
|
|
57
|
+
--_blockLabelFocusBackground: none;
|
|
58
|
+
--_blockLabelFocusOutline: transparent;
|
|
59
|
+
}
|
|
60
|
+
`;
|
|
61
|
+
}
|
|
26
62
|
const base = css `
|
|
27
63
|
:host {
|
|
64
|
+
--_blockLinkFlex: 0 1 auto;
|
|
65
|
+
--_blockBoxSizing: content-box;
|
|
66
|
+
--_blockMinWidth: auto;
|
|
67
|
+
--_blockLabelOverflow: visible;
|
|
68
|
+
--_blockLabelTextOverflow: clip;
|
|
69
|
+
--_blockRowFocusBackground: var(--link-background, transparent);
|
|
70
|
+
--_blockRowFocusOutline: transparent;
|
|
71
|
+
--_blockRowFocusOffset: 0px;
|
|
72
|
+
--_blockLabelFocusBackground: var(
|
|
73
|
+
--link-background-focus,
|
|
74
|
+
var(--link-background, transparent)
|
|
75
|
+
);
|
|
76
|
+
--_blockLabelFocusOutline: var(--_focusOutline);
|
|
28
77
|
--_color: var(--link-color, var(--eun-text-color, #071621));
|
|
29
78
|
--_colorHover: var(
|
|
30
79
|
--link-color-hover,
|
|
31
80
|
var(--eun-color-primary-500, #3d6fff)
|
|
32
81
|
);
|
|
33
|
-
--_colorFocus: var(
|
|
34
|
-
|
|
82
|
+
--_colorFocus: var(--link-color-focus, var(--_colorHover));
|
|
83
|
+
--_focusOutline: var(
|
|
84
|
+
--link-focus-outline-color,
|
|
35
85
|
var(--eun-color-primary-700, #3662e0)
|
|
36
86
|
);
|
|
37
87
|
--_colorVisited: var(
|
|
@@ -61,7 +111,10 @@ const base = css `
|
|
|
61
111
|
var(--eun-text-on-inverse-secondary, rgba(255, 255, 255, 0.7))
|
|
62
112
|
);
|
|
63
113
|
--_colorHover: var(--link-color-hover, var(--eun-text-on-inverse, #fff));
|
|
64
|
-
--
|
|
114
|
+
--_focusOutline: var(
|
|
115
|
+
--link-focus-outline-color,
|
|
116
|
+
var(--eun-text-on-inverse, #fff)
|
|
117
|
+
);
|
|
65
118
|
--_colorVisited: var(
|
|
66
119
|
--link-color-visited,
|
|
67
120
|
var(--eun-color-purple-300, #bea0ed)
|
|
@@ -90,6 +143,9 @@ const base = css `
|
|
|
90
143
|
transform: rotate(-45deg);
|
|
91
144
|
}
|
|
92
145
|
#link {
|
|
146
|
+
box-sizing: var(--_blockBoxSizing);
|
|
147
|
+
flex: var(--_blockLinkFlex);
|
|
148
|
+
min-width: var(--_blockMinWidth);
|
|
93
149
|
display: inline-flex;
|
|
94
150
|
align-items: center;
|
|
95
151
|
gap: var(--eun-space-s, 8px);
|
|
@@ -146,26 +202,23 @@ const base = css `
|
|
|
146
202
|
--icon-color: var(--link-icon-color, var(--_colorHover));
|
|
147
203
|
}
|
|
148
204
|
#link:focus-visible {
|
|
149
|
-
color: var(--
|
|
205
|
+
color: var(--_colorFocus) !important;
|
|
150
206
|
text-decoration: none;
|
|
151
207
|
background: var(
|
|
152
208
|
--link-background-focus,
|
|
153
209
|
var(--link-background, transparent)
|
|
154
210
|
);
|
|
155
|
-
outline-color: var(--
|
|
211
|
+
outline-color: var(--_focusOutline);
|
|
156
212
|
outline-offset: 2px;
|
|
157
|
-
--icon-color: var(--link-icon-color, var(--
|
|
213
|
+
--icon-color: var(--link-icon-color, var(--_colorFocus));
|
|
158
214
|
}
|
|
159
215
|
#link.has-icon:focus-visible {
|
|
160
|
-
background: var(--
|
|
161
|
-
outline-color:
|
|
216
|
+
background: var(--_blockRowFocusBackground);
|
|
217
|
+
outline-color: var(--_blockRowFocusOutline);
|
|
162
218
|
}
|
|
163
219
|
#link.has-icon:focus-visible #label {
|
|
164
|
-
background: var(
|
|
165
|
-
|
|
166
|
-
var(--link-background, transparent)
|
|
167
|
-
);
|
|
168
|
-
outline-color: var(--_colorFocus);
|
|
220
|
+
background: var(--_blockLabelFocusBackground);
|
|
221
|
+
outline-color: var(--_blockLabelFocusOutline);
|
|
169
222
|
outline-offset: 2px;
|
|
170
223
|
}
|
|
171
224
|
|
|
@@ -196,8 +249,6 @@ const base = css `
|
|
|
196
249
|
text-decoration: var(--_textDecoration);
|
|
197
250
|
text-wrap-style: pretty;
|
|
198
251
|
border-radius: var(--link-border-radius, var(--eun-border-radius-m, 8px));
|
|
199
|
-
/* Transparent before the icon outline below is drawn, so it never fades
|
|
200
|
-
in from currentColor once has-icon lands after the first render. */
|
|
201
252
|
outline-color: transparent;
|
|
202
253
|
transition:
|
|
203
254
|
color var(--_duration) var(--eun-easing-out, ease-out),
|
|
@@ -235,7 +286,7 @@ const base = css `
|
|
|
235
286
|
--icon-color: var(--link-icon-color, var(--_colorHover));
|
|
236
287
|
}
|
|
237
288
|
::slotted(a:focus-visible) {
|
|
238
|
-
color: var(--
|
|
289
|
+
color: var(--_colorFocus) !important;
|
|
239
290
|
text-decoration: none;
|
|
240
291
|
outline: none;
|
|
241
292
|
}
|
|
@@ -248,24 +299,24 @@ const base = css `
|
|
|
248
299
|
text-decoration-color var(--_duration) var(--eun-easing-out, ease-out);
|
|
249
300
|
}
|
|
250
301
|
#link.has-icon ::slotted(a:focus-visible) {
|
|
251
|
-
background: var(
|
|
252
|
-
|
|
253
|
-
var(--link-background, transparent)
|
|
254
|
-
);
|
|
255
|
-
outline-color: var(--_colorFocus);
|
|
302
|
+
background: var(--_blockLabelFocusBackground);
|
|
303
|
+
outline-color: var(--_blockLabelFocusOutline);
|
|
256
304
|
outline-offset: 2px;
|
|
257
305
|
}
|
|
258
306
|
:host(:state(focus-visible)) #link.slotted-link.has-icon {
|
|
259
|
-
|
|
307
|
+
background: var(--_blockRowFocusBackground);
|
|
308
|
+
outline-color: var(--_blockRowFocusOutline);
|
|
309
|
+
outline-offset: var(--_blockRowFocusOffset);
|
|
310
|
+
--icon-color: var(--link-icon-color, var(--_colorFocus));
|
|
260
311
|
}
|
|
261
312
|
:host(:state(focus-visible)) #link.slotted-link:not(.has-icon) {
|
|
262
313
|
background: var(
|
|
263
314
|
--link-background-focus,
|
|
264
315
|
var(--link-background, transparent)
|
|
265
316
|
);
|
|
266
|
-
outline-color: var(--
|
|
317
|
+
outline-color: var(--_focusOutline);
|
|
267
318
|
outline-offset: 2px;
|
|
268
|
-
--icon-color: var(--link-icon-color, var(--
|
|
319
|
+
--icon-color: var(--link-icon-color, var(--_colorFocus));
|
|
269
320
|
}
|
|
270
321
|
:host([current]) ::slotted(a),
|
|
271
322
|
:host([current]) ::slotted(a:visited),
|
|
@@ -279,41 +330,13 @@ const base = css `
|
|
|
279
330
|
--icon-color: var(--link-icon-color, var(--_colorCurrent));
|
|
280
331
|
}
|
|
281
332
|
|
|
282
|
-
:host([block])
|
|
283
|
-
display: flex;
|
|
284
|
-
width: 100%;
|
|
285
|
-
min-width: 0;
|
|
286
|
-
white-space: nowrap;
|
|
287
|
-
}
|
|
288
|
-
:host([block]) #link {
|
|
289
|
-
box-sizing: border-box;
|
|
290
|
-
flex: 1;
|
|
291
|
-
min-width: 0;
|
|
292
|
-
}
|
|
293
|
-
:host([block]) #link.has-icon:focus-visible,
|
|
294
|
-
:host([block]:state(focus-visible)) #link.slotted-link {
|
|
295
|
-
background: var(
|
|
296
|
-
--link-background-focus,
|
|
297
|
-
var(--link-background, transparent)
|
|
298
|
-
);
|
|
299
|
-
outline-color: var(--_colorFocus);
|
|
300
|
-
outline-offset: 2px;
|
|
301
|
-
}
|
|
302
|
-
:host([block]) #link.has-icon:focus-visible #label {
|
|
303
|
-
background: none;
|
|
304
|
-
outline-color: transparent;
|
|
305
|
-
}
|
|
306
|
-
:host([block]) #link.has-icon ::slotted(a:focus-visible) {
|
|
307
|
-
background: none;
|
|
308
|
-
outline-color: transparent;
|
|
309
|
-
}
|
|
333
|
+
${linkBlockRule(unsafeCSS(":host([block])"))}
|
|
310
334
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
min-width:
|
|
314
|
-
overflow:
|
|
315
|
-
text-overflow:
|
|
316
|
-
white-space: nowrap;
|
|
335
|
+
#label,
|
|
336
|
+
::slotted(a) {
|
|
337
|
+
min-width: var(--_blockMinWidth);
|
|
338
|
+
overflow: var(--_blockLabelOverflow);
|
|
339
|
+
text-overflow: var(--_blockLabelTextOverflow);
|
|
317
340
|
}
|
|
318
341
|
|
|
319
342
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -40,7 +40,7 @@ export const buttonPaletteStyles = css `
|
|
|
40
40
|
--_wash-active: var(--_tint-active);
|
|
41
41
|
--_flat: var(--eun-surface-sunken, #f7f8fa);
|
|
42
42
|
--_flat-hover: var(--eun-surface-sunken-hover, #edeff0);
|
|
43
|
-
--_flatFg: var(--eun-text-secondary, #
|
|
43
|
+
--_flatFg: var(--eun-text-secondary, #666e8a);
|
|
44
44
|
--_ring: var(--eun-color-primary-700, #3662e0);
|
|
45
45
|
}
|
|
46
46
|
:host([color="secondary"]) {
|
|
@@ -93,6 +93,7 @@ declare const EunomiaToggleGroup_base: import("../../../utils/constructor.type.j
|
|
|
93
93
|
* @cssprop [--toggle-group-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
94
94
|
* @cssprop [--toggle-group-hover-color] - Sets the text color of an unselected option on hover and keyboard focus, for every appearance
|
|
95
95
|
* @cssprop [--toggle-group-hover-background] - Sets the background color of an unselected option on hover. Transparent by default, and applies regardless of appearance
|
|
96
|
+
* @cssprop [--toggle-group-focus-outline-color] - Sets the keyboard focus outline color of an option, for every appearance
|
|
96
97
|
* @cssprop [--toggle-group-box-shadow] - Sets a box shadow on the track itself, for every appearance. None by default
|
|
97
98
|
* @cssprop [--toggle-group-shadow] - Sets a box shadow on every option, and the sliding indicator in exclusive mode. None by default
|
|
98
99
|
* @cssprop [--toggle-group-shadow-hover] - Sets the box shadow of an unselected option on hover, falling back to toggle-group-shadow when unset
|
|
@@ -85,6 +85,7 @@ export const EunomiaToggleGroupTagName = "eun-toggle-group";
|
|
|
85
85
|
* @cssprop [--toggle-group-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
86
86
|
* @cssprop [--toggle-group-hover-color] - Sets the text color of an unselected option on hover and keyboard focus, for every appearance
|
|
87
87
|
* @cssprop [--toggle-group-hover-background] - Sets the background color of an unselected option on hover. Transparent by default, and applies regardless of appearance
|
|
88
|
+
* @cssprop [--toggle-group-focus-outline-color] - Sets the keyboard focus outline color of an option, for every appearance
|
|
88
89
|
* @cssprop [--toggle-group-box-shadow] - Sets a box shadow on the track itself, for every appearance. None by default
|
|
89
90
|
* @cssprop [--toggle-group-shadow] - Sets a box shadow on every option, and the sliding indicator in exclusive mode. None by default
|
|
90
91
|
* @cssprop [--toggle-group-shadow-hover] - Sets the box shadow of an unselected option on hover, falling back to toggle-group-shadow when unset
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
* [--toggle-group-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
14
14
|
* [--toggle-group-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
15
15
|
* [--toggle-group-hover-color] - Set a custom text color on hover state, for an unselected option, for every appearance
|
|
16
|
+
* [--toggle-group-focus-outline-color] - Set a custom keyboard focus outline color for an option, for every appearance
|
|
16
17
|
* [--toggle-group-hover-background] - Set a custom background color on hover state, for an unselected option ; transparent by default. Applies regardless of `appearance`
|
|
17
18
|
* [--toggle-group-box-shadow] - Set a custom box shadow on the track itself, for every appearance, none by default
|
|
18
19
|
* [--toggle-group-shadow] - Set a custom box shadow on every option (and the sliding indicator, in exclusive mode), none by default
|
|
@@ -14,6 +14,7 @@ import { css } from "lit";
|
|
|
14
14
|
* [--toggle-group-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
15
15
|
* [--toggle-group-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --toggle-group-padding is set
|
|
16
16
|
* [--toggle-group-hover-color] - Set a custom text color on hover state, for an unselected option, for every appearance
|
|
17
|
+
* [--toggle-group-focus-outline-color] - Set a custom keyboard focus outline color for an option, for every appearance
|
|
17
18
|
* [--toggle-group-hover-background] - Set a custom background color on hover state, for an unselected option ; transparent by default. Applies regardless of `appearance`
|
|
18
19
|
* [--toggle-group-box-shadow] - Set a custom box shadow on the track itself, for every appearance, none by default
|
|
19
20
|
* [--toggle-group-shadow] - Set a custom box shadow on every option (and the sliding indicator, in exclusive mode), none by default
|
|
@@ -301,7 +302,10 @@ export const toggleGroupStyles = css `
|
|
|
301
302
|
background: var(--_hoverBackground);
|
|
302
303
|
}
|
|
303
304
|
button:focus-visible {
|
|
304
|
-
outline-color: var(
|
|
305
|
+
outline-color: var(
|
|
306
|
+
--toggle-group-focus-outline-color,
|
|
307
|
+
var(--eun-color-primary-500, #3d6fff)
|
|
308
|
+
);
|
|
305
309
|
outline-offset: 2px;
|
|
306
310
|
transition:
|
|
307
311
|
outline-color var(--eun-duration-m, 200ms) var(--eun-easing-out, ease-out),
|
|
@@ -379,7 +383,10 @@ export const toggleGroupStyles = css `
|
|
|
379
383
|
}
|
|
380
384
|
:host([appearance="outline"]) button:focus-visible,
|
|
381
385
|
:host([appearance="flat"]) button:focus-visible {
|
|
382
|
-
outline-color: var(
|
|
386
|
+
outline-color: var(
|
|
387
|
+
--toggle-group-focus-outline-color,
|
|
388
|
+
var(--_variantColor)
|
|
389
|
+
);
|
|
383
390
|
color: var(--toggle-group-hover-color, var(--_variantColor));
|
|
384
391
|
}
|
|
385
392
|
`;
|