@eunomia/elements 1.0.0-beta.7 → 1.0.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/components/chunks/{chunk-3PNGQEG4.js → chunk-32L2QYWQ.js} +2 -2
- package/dist/cdn/components/chunks/{chunk-Z3OFIE7S.js → chunk-3UUZM7X2.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-BVASCT2V.js → chunk-55PUDL7D.js} +13 -13
- package/dist/cdn/components/chunks/chunk-5LA5DQMP.js +1 -0
- package/dist/cdn/components/chunks/chunk-5LXGJVJR.js +1 -0
- package/dist/cdn/components/chunks/chunk-6TIEBY34.js +1 -0
- package/dist/cdn/components/chunks/{chunk-LVKMAHMU.js → chunk-AH2SKZ7T.js} +4 -1
- package/dist/cdn/components/chunks/chunk-JAGZL7JH.js +1 -0
- package/dist/cdn/components/chunks/{chunk-DGI7TKCU.js → chunk-LD35BFNK.js} +5 -9
- package/dist/cdn/components/chunks/chunk-P6LGU3FT.js +1 -0
- package/dist/cdn/components/chunks/{chunk-UYZR4JXZ.js → chunk-QSZO4GIH.js} +45 -9
- package/dist/cdn/components/chunks/{chunk-PXF554MD.js → chunk-QYB6Z6FG.js} +5 -5
- package/dist/cdn/components/chunks/{chunk-RIFF2D2F.js → chunk-RGC3I6MK.js} +1 -1
- package/dist/cdn/components/chunks/{chunk-N6ZW5CDN.js → chunk-TCSB2MLU.js} +1 -1
- package/dist/cdn/components/chunks/chunk-WIUERJII.js +1 -0
- package/dist/cdn/components/eun-animate.js +4 -4
- package/dist/cdn/components/eun-button.js +1 -1
- package/dist/cdn/components/eun-carousel.js +10 -9
- package/dist/cdn/components/eun-chip.js +17 -11
- package/dist/cdn/components/eun-collapse.js +1 -1
- package/dist/cdn/components/eun-color-picker.js +18 -5
- package/dist/cdn/components/eun-counter.js +10 -8
- package/dist/cdn/components/eun-date-picker.js +46 -43
- package/dist/cdn/components/eun-drawer.js +19 -20
- package/dist/cdn/components/eun-dropdown-button.js +1 -1
- package/dist/cdn/components/eun-dropdown-item.js +3 -3
- package/dist/cdn/components/eun-fab.js +1 -1
- package/dist/cdn/components/eun-image-carousel.js +4 -4
- package/dist/cdn/components/eun-input-phone.js +11 -8
- package/dist/cdn/components/eun-input.js +1 -1
- package/dist/cdn/components/eun-link.js +59 -13
- package/dist/cdn/components/eun-modal.js +23 -13
- package/dist/cdn/components/eun-scheduler-event-editor.js +1 -1
- package/dist/cdn/components/eun-search.js +34 -28
- package/dist/cdn/components/eun-select.js +3 -3
- package/dist/cdn/components/eun-sidebar.js +66 -21
- package/dist/cdn/components/eun-sliding-card.js +1 -1
- package/dist/cdn/components/eun-stepper.js +16 -16
- 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 +2 -2
- package/dist/cdn/components/eun-textarea.js +16 -13
- package/dist/cdn/components/eun-time-picker.js +25 -23
- package/dist/cdn/components/eun-toast.js +8 -8
- package/dist/cdn/components/eun-toggle-group.js +71 -35
- package/dist/cdn/components/eun-toggle-item.js +8 -8
- package/dist/cdn/components/eun-toolbar.js +20 -20
- package/dist/cdn/components/eun-tooltip.js +6 -6
- package/dist/cdn/styles/eunomia-themes.css +1 -1
- package/dist/cdn/styles/themes/mixins/eunomia-neutrals.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/eunomia/eunomia.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/fire/eunomia-fire.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/forest/eunomia-forest.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/gold/eunomia-gold.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/salmon/eunomia-salmon.theme.css +1 -1
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +6 -2
- package/dist/cdn/styles/themes/prebuilt-themes/violet/eunomia-violet.theme.css +1 -1
- package/dist/components/action/button/button.d.ts +2 -2
- package/dist/components/action/button/button.js +3 -7
- package/dist/components/action/button/button.styles.js +3 -3
- package/dist/components/action/dropdown-button/dropdown-button.d.ts +4 -6
- package/dist/components/action/dropdown-button/dropdown-button.js +6 -8
- package/dist/components/action/dropdown-button/dropdown-item.d.ts +10 -2
- package/dist/components/action/dropdown-button/dropdown-item.js +24 -9
- package/dist/components/action/link/link.d.ts +10 -1
- package/dist/components/action/link/link.js +13 -1
- package/dist/components/action/link/link.styles.js +50 -3
- package/dist/components/action/toggle/toggle-group.d.ts +12 -2
- package/dist/components/action/toggle/toggle-group.js +17 -2
- package/dist/components/action/toggle/toggle-group.styles.js +54 -18
- package/dist/components/action/toggle/toggle-item.js +1 -3
- package/dist/components/action/toggle/toggle-item.styles.js +7 -7
- package/dist/components/alert/drawer/drawer.d.ts +25 -0
- package/dist/components/alert/drawer/drawer.js +42 -3
- package/dist/components/alert/drawer/drawer.styles.js +6 -6
- package/dist/components/alert/modal/modal.d.ts +25 -0
- package/dist/components/alert/modal/modal.js +42 -3
- package/dist/components/alert/modal/modal.styles.js +17 -6
- package/dist/components/alert/toast/toast.js +3 -2
- package/dist/components/alert/toast/toast.styles.js +3 -3
- package/dist/components/content/chip/chip.js +3 -2
- package/dist/components/content/chip/chip.styles.js +9 -3
- package/dist/components/content/image-carousel/image-carousel.js +5 -4
- package/dist/components/content/tooltip/tooltip.d.ts +16 -9
- package/dist/components/content/tooltip/tooltip.js +28 -12
- package/dist/components/content/tooltip/tooltip.styles.js +1 -1
- package/dist/components/form/color-picker/color-picker.d.ts +7 -1
- package/dist/components/form/color-picker/color-picker.js +8 -2
- package/dist/components/form/color-picker/color-picker.styles.js +13 -0
- package/dist/components/form/counter/counter.d.ts +3 -1
- package/dist/components/form/counter/counter.js +3 -1
- package/dist/components/form/counter/counter.styles.js +6 -4
- package/dist/components/form/date-picker/date-picker.d.ts +6 -1
- package/dist/components/form/date-picker/date-picker.js +7 -2
- package/dist/components/form/date-picker/date-picker.styles.js +9 -6
- package/dist/components/form/input/input.d.ts +6 -1
- package/dist/components/form/input/input.js +7 -2
- package/dist/components/form/input-phone/input-phone.d.ts +7 -1
- package/dist/components/form/input-phone/input-phone.js +7 -1
- package/dist/components/form/input-phone/input-phone.styles.js +6 -3
- package/dist/components/form/search/search.d.ts +64 -10
- package/dist/components/form/search/search.js +112 -31
- package/dist/components/form/search/search.styles.js +2 -0
- package/dist/components/form/select/select.d.ts +7 -1
- package/dist/components/form/select/select.js +7 -1
- package/dist/components/form/shared-styles/field.styles.js +45 -8
- package/dist/components/form/shared-styles/listbox.styles.js +5 -1
- package/dist/components/form/textarea/textarea.d.ts +1 -0
- package/dist/components/form/textarea/textarea.js +2 -1
- package/dist/components/form/textarea/textarea.styles.js +3 -0
- package/dist/components/form/time-picker/time-picker.d.ts +6 -1
- package/dist/components/form/time-picker/time-picker.js +7 -2
- package/dist/components/form/time-picker/time-picker.styles.js +7 -5
- package/dist/components/layout/animate/animate.js +2 -1
- package/dist/components/navigation/carousel/carousel.d.ts +1 -2
- package/dist/components/navigation/carousel/carousel.js +14 -6
- package/dist/components/navigation/carousel/carousel.styles.js +5 -4
- package/dist/components/navigation/sidebar/sidebar.d.ts +98 -52
- package/dist/components/navigation/sidebar/sidebar.js +140 -85
- package/dist/components/navigation/sidebar/sidebar.styles.d.ts +1 -1
- package/dist/components/navigation/sidebar/sidebar.styles.js +69 -21
- package/dist/components/navigation/stepper/stepper.d.ts +1 -3
- package/dist/components/navigation/stepper/stepper.js +3 -21
- package/dist/components/navigation/toolbar/toolbar.d.ts +10 -0
- package/dist/components/navigation/toolbar/toolbar.js +8 -1
- package/dist/components/navigation/toolbar/toolbar.styles.js +18 -17
- package/dist/events/select.event.d.ts +3 -2
- package/dist/events/select.event.js +2 -1
- package/dist/features/scheduler/scheduler-event-editor/scheduler-event-editor.js +1 -1
- package/dist/features/table/table/table.js +1 -1
- package/dist/features/table/table-action-bar/table-action-bar.js +2 -2
- package/dist/index.d.ts +1 -0
- package/dist/mixins/button.mixin.d.ts +1 -1
- package/dist/mixins/button.mixin.js +6 -4
- package/dist/mixins/dialog-surface.mixin.d.ts +8 -0
- package/dist/mixins/field-size.mixin.d.ts +19 -0
- package/dist/mixins/field-size.mixin.js +33 -0
- package/dist/mixins/rounded.mixin.d.ts +18 -0
- package/dist/mixins/rounded.mixin.js +32 -0
- package/dist/ssr/button-ssr.css +5 -5
- package/dist/ssr/carousel-ssr.css +9 -0
- package/dist/ssr/chip-ssr.css +8 -0
- package/dist/ssr/collapse-ssr.css +29 -0
- package/dist/ssr/field-ssr.css +43 -4
- package/dist/ssr/image-carousel-ssr.css +10 -0
- package/dist/ssr/links-ssr.css +38 -1
- package/dist/ssr/sidebar-ssr.css +95 -4
- package/dist/ssr/toggle-group-ssr.css +64 -13
- package/dist/ssr/toolbar-ssr.css +50 -0
- package/dist/types/variant.type.d.ts +4 -1
- package/dist/utils/boolean.utils.d.ts +14 -0
- package/dist/utils/boolean.utils.js +20 -0
- package/dist/utils/dropdown-menu.utils.d.ts +1 -1
- package/dist/utils/focusable-elements.utils.d.ts +12 -0
- package/dist/utils/focusable-elements.utils.js +26 -0
- package/dist/utils/input-modality.utils.d.ts +13 -0
- package/dist/utils/input-modality.utils.js +34 -0
- package/dist/utils/theme-generator.utils.d.ts +8 -2
- package/dist/utils/theme-generator.utils.js +30 -9
- package/package.json +1 -1
- package/styles/themes/mixins/eunomia-neutrals.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/eunomia/eunomia-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/fire/eunomia-fire-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/forest/eunomia-forest-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/gold/eunomia-gold-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/ocean/eunomia-ocean-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/salmon/eunomia-salmon-dark.mixin.scss +6 -2
- package/styles/themes/prebuilt-themes/violet/eunomia-violet-dark.mixin.scss +6 -2
- package/dist/cdn/components/chunks/chunk-6VK6SHCG.js +0 -1
- package/dist/cdn/components/chunks/chunk-UDOZRIJZ.js +0 -1
|
@@ -9,27 +9,11 @@ import { html, LitElement, nothing } from "lit";
|
|
|
9
9
|
import { classMap } from "lit/directives/class-map.js";
|
|
10
10
|
import { StepChangeEvent } from "../../../events/stepchange.event.js";
|
|
11
11
|
import { stepperStyles } from "./stepper.styles.js";
|
|
12
|
+
import { defaultTrueConverter } from "../../../utils/boolean.utils.js";
|
|
12
13
|
/**
|
|
13
14
|
* Tag name of the stepper component.
|
|
14
15
|
*/
|
|
15
16
|
export const EunomiaStepperTagName = "eun-stepper";
|
|
16
|
-
/**
|
|
17
|
-
* Attribute converter for `linear`, making an explicit `linear="false"`
|
|
18
|
-
* actually mean false. Lit's standard boolean converter only ever looks
|
|
19
|
-
* at whether the attribute is *present*, the same way native HTML boolean
|
|
20
|
-
* attributes work (`disabled="false"` is still disabled) — fine for every
|
|
21
|
-
* other boolean here, which default to `false` and so are only ever
|
|
22
|
-
* turned on by adding the attribute. `linear` is the one exception,
|
|
23
|
-
* defaulting to `true` : without this, there would be no way to turn it
|
|
24
|
-
* back off from plain HTML, only from script (`el.linear = false`).
|
|
25
|
-
* @internal
|
|
26
|
-
*/
|
|
27
|
-
const linearConverter = {
|
|
28
|
-
fromAttribute(value) {
|
|
29
|
-
return value !== null && value !== "false";
|
|
30
|
-
},
|
|
31
|
-
toAttribute: String,
|
|
32
|
-
};
|
|
33
17
|
/**
|
|
34
18
|
* A status and progression indicator for a multi-step process, such as a
|
|
35
19
|
* checkout flow, a multi-page form, or an onboarding wizard.
|
|
@@ -86,7 +70,6 @@ const linearConverter = {
|
|
|
86
70
|
* @prop {'horizontal' | 'vertical'} [orientation='horizontal'] - The numbered display's layout direction. Has no effect on the progress variant
|
|
87
71
|
* @prop {'numbered' | 'progress'} [variant='numbered'] - Which of the two displays to render
|
|
88
72
|
* @prop {boolean} [linear=true] - Restricts direct navigation to steps before activeStep. Set to false to allow jumping to any non-disabled step in any order
|
|
89
|
-
* @attr {'true' | 'false'} [linear='true'] - Unlike most boolean attributes here, the literal string false genuinely means false, needed since linear is the one that defaults to true
|
|
90
73
|
* @prop {boolean} [disabled=false] - Disables every step's control, leaving a read-only progress summary with no navigation at all, the same way an individual step's own disabled does
|
|
91
74
|
* @attr {string} [aria-label='Progress'] - The accessible label for the navigation landmark. Numbered display only
|
|
92
75
|
* @fires {StepChangeEvent} eunstepchange - Fired with the requested step whenever a reachable step is activated. ActiveStep and activeSubstep are never updated internally
|
|
@@ -153,8 +136,7 @@ let EunomiaStepper = class EunomiaStepper extends LitElement {
|
|
|
153
136
|
/**
|
|
154
137
|
* Restricts direct navigation to steps before {@link activeStep} ; set
|
|
155
138
|
* to `false` (either as the JS property, or the literal `linear="false"`
|
|
156
|
-
* attribute — see {@link
|
|
157
|
-
* unlike most other boolean attributes) to allow jumping to any
|
|
139
|
+
* attribute — see {@link defaultTrueConverter}) to allow jumping to any
|
|
158
140
|
* non-`disabled` step in any order.
|
|
159
141
|
* @default true
|
|
160
142
|
*/
|
|
@@ -530,7 +512,7 @@ __decorate([
|
|
|
530
512
|
property({ reflect: true, useDefault: true })
|
|
531
513
|
], EunomiaStepper.prototype, "variant", void 0);
|
|
532
514
|
__decorate([
|
|
533
|
-
property({ reflect: true, converter:
|
|
515
|
+
property({ reflect: true, converter: defaultTrueConverter })
|
|
534
516
|
], EunomiaStepper.prototype, "linear", void 0);
|
|
535
517
|
__decorate([
|
|
536
518
|
property({ type: Boolean, reflect: true })
|
|
@@ -70,6 +70,8 @@ declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").
|
|
|
70
70
|
* @attr {'top' | 'bottom' | 'left' | 'right'} [panel-direction='top'] - Which edge the mobile panel slides in from
|
|
71
71
|
* @prop {string} panelSize - A custom open size for the mobile panel, height for top or bottom, width for left or right. Any CSS length, defaulting to 100%
|
|
72
72
|
* @attr {string} panel-size - A custom open size for the mobile panel
|
|
73
|
+
* @prop {string} mobileHide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end, such as "center end" when their content is repeated in the panel. Applied by toolbar-ssr.css before the upgrade too
|
|
74
|
+
* @attr {string} mobile-hide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end
|
|
73
75
|
* @prop {boolean} [closeOnBackdrop=true] - Whether clicking outside the mobile panel closes it
|
|
74
76
|
* @attr {boolean} [close-on-backdrop=true] - Whether clicking outside the mobile panel closes it
|
|
75
77
|
* @prop {string} [menuOpenLabel] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
@@ -127,6 +129,7 @@ declare const EunomiaToolbar_base: import("../../../utils/constructor.type.js").
|
|
|
127
129
|
* @cssprop [--toolbar-panel-padding] - Sets the padding of the mobile panel
|
|
128
130
|
* @cssprop [--toolbar-panel-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
129
131
|
* @cssprop [--toolbar-panel-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
132
|
+
* @cssprop [--toolbar-panel-offset] - Sets the room reserved above the mobile panel content for the burger, added to its padding. Defaults to the bar's height, or 0 with panel-direction="bottom"
|
|
130
133
|
* @cssprop [--toolbar-burger-align] - Sets the vertical alignment of the burger button within the bar's height, defaulting to center ; set flex-start to pin it to the top instead
|
|
131
134
|
* @cssprop [--toolbar-burger-padding] - Sets the padding around the burger button, defaulting to 0 on the block axis and --toolbar-panel-padding on the inline axis
|
|
132
135
|
* @cssprop [--toolbar-burger-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-burger-padding is set
|
|
@@ -175,6 +178,13 @@ export declare class EunomiaToolbar extends EunomiaToolbar_base {
|
|
|
175
178
|
* left/right) ; any CSS length, defaults to `100%`.
|
|
176
179
|
*/
|
|
177
180
|
panelSize?: string;
|
|
181
|
+
/**
|
|
182
|
+
* The bar slots hidden below `mobileBreakpoint`, as a space-separated
|
|
183
|
+
* list of `start`, `center` and `end`, such as `"center end"` once their
|
|
184
|
+
* content is repeated in the panel. Reflected, since the hiding is pure
|
|
185
|
+
* CSS on the attribute, also matched by `toolbar-ssr.css` before upgrade.
|
|
186
|
+
*/
|
|
187
|
+
mobileHide?: string;
|
|
178
188
|
/**
|
|
179
189
|
* Whether clicking outside the mobile panel closes it.
|
|
180
190
|
* @default true
|
|
@@ -11,6 +11,7 @@ import { DialogSurfaceMixin } from "../../../mixins/dialog-surface.mixin.js";
|
|
|
11
11
|
import { EUNOMIA_BREAKPOINTS } from "../../../breakpoints.js";
|
|
12
12
|
import { toolbarStyles } from "./toolbar.styles.js";
|
|
13
13
|
import { LocalizableMixin } from "../../../mixins/localizable.mixin.js";
|
|
14
|
+
import { defaultTrueConverter } from "../../../utils/boolean.utils.js";
|
|
14
15
|
/**
|
|
15
16
|
* Tag name of the toolbar component.
|
|
16
17
|
*/
|
|
@@ -69,6 +70,8 @@ export const EunomiaToolbarTagName = "eun-toolbar";
|
|
|
69
70
|
* @attr {'top' | 'bottom' | 'left' | 'right'} [panel-direction='top'] - Which edge the mobile panel slides in from
|
|
70
71
|
* @prop {string} panelSize - A custom open size for the mobile panel, height for top or bottom, width for left or right. Any CSS length, defaulting to 100%
|
|
71
72
|
* @attr {string} panel-size - A custom open size for the mobile panel
|
|
73
|
+
* @prop {string} mobileHide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end, such as "center end" when their content is repeated in the panel. Applied by toolbar-ssr.css before the upgrade too
|
|
74
|
+
* @attr {string} mobile-hide - The bar slots hidden below the mobile breakpoint, as a space-separated list of start, center and end
|
|
72
75
|
* @prop {boolean} [closeOnBackdrop=true] - Whether clicking outside the mobile panel closes it
|
|
73
76
|
* @attr {boolean} [close-on-backdrop=true] - Whether clicking outside the mobile panel closes it
|
|
74
77
|
* @prop {string} [menuOpenLabel] - The accessible label of the burger button while the panel is closed. Defaults to the localized string for the current locale (English: "Open menu")
|
|
@@ -126,6 +129,7 @@ export const EunomiaToolbarTagName = "eun-toolbar";
|
|
|
126
129
|
* @cssprop [--toolbar-panel-padding] - Sets the padding of the mobile panel
|
|
127
130
|
* @cssprop [--toolbar-panel-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
128
131
|
* @cssprop [--toolbar-panel-padding-inline] - Sets the horizontal padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
132
|
+
* @cssprop [--toolbar-panel-offset] - Sets the room reserved above the mobile panel content for the burger, added to its padding. Defaults to the bar's height, or 0 with panel-direction="bottom"
|
|
129
133
|
* @cssprop [--toolbar-burger-align] - Sets the vertical alignment of the burger button within the bar's height, defaulting to center ; set flex-start to pin it to the top instead
|
|
130
134
|
* @cssprop [--toolbar-burger-padding] - Sets the padding around the burger button, defaulting to 0 on the block axis and --toolbar-panel-padding on the inline axis
|
|
131
135
|
* @cssprop [--toolbar-burger-padding-block] - Sets the vertical padding, as one length applied to both sides. Ignored when --toolbar-burger-padding is set
|
|
@@ -897,7 +901,10 @@ __decorate([
|
|
|
897
901
|
property({ attribute: "panel-size" })
|
|
898
902
|
], EunomiaToolbar.prototype, "panelSize", void 0);
|
|
899
903
|
__decorate([
|
|
900
|
-
property({
|
|
904
|
+
property({ reflect: true, attribute: "mobile-hide" })
|
|
905
|
+
], EunomiaToolbar.prototype, "mobileHide", void 0);
|
|
906
|
+
__decorate([
|
|
907
|
+
property({ converter: defaultTrueConverter, attribute: "close-on-backdrop" })
|
|
901
908
|
], EunomiaToolbar.prototype, "closeOnBackdrop", void 0);
|
|
902
909
|
__decorate([
|
|
903
910
|
property({ attribute: "menu-open-label" })
|
|
@@ -28,6 +28,7 @@ import { css } from "lit";
|
|
|
28
28
|
* [--toolbar-panel-padding] - Set a custom padding for the mobile panel
|
|
29
29
|
* [--toolbar-panel-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
30
30
|
* [--toolbar-panel-padding-inline] - Set a custom horizontal padding, as one length applied to both sides. Ignored when --toolbar-panel-padding is set
|
|
31
|
+
* [--toolbar-panel-offset] - Set the room reserved above the mobile panel content for the burger, added to its padding. Defaults to the bar's height, or 0 for panel-direction="bottom"
|
|
31
32
|
* [--toolbar-burger-align] - Set the vertical alignment of the burger button within the bar's height, default center ; set flex-start to pin it to the top instead
|
|
32
33
|
* [--toolbar-burger-padding] - Set a custom padding around the burger button, default 0 on the block axis and --toolbar-panel-padding on the inline axis
|
|
33
34
|
* [--toolbar-burger-padding-block] - Set a custom vertical padding, as one length applied to both sides. Ignored when --toolbar-burger-padding is set
|
|
@@ -92,6 +93,10 @@ const base = css `
|
|
|
92
93
|
--toolbar-panel-padding,
|
|
93
94
|
var(--toolbar-panel-padding-inline, 14px)
|
|
94
95
|
);
|
|
96
|
+
--_panelOffset: var(
|
|
97
|
+
--toolbar-panel-offset,
|
|
98
|
+
calc(var(--_currentHeight) - var(--eun-border-width-s, 1px))
|
|
99
|
+
);
|
|
95
100
|
--_burgerAlign: var(--toolbar-burger-align, center);
|
|
96
101
|
--_burgerPadding: var(
|
|
97
102
|
--toolbar-burger-padding,
|
|
@@ -191,6 +196,12 @@ const base = css `
|
|
|
191
196
|
min-width: 0;
|
|
192
197
|
}
|
|
193
198
|
|
|
199
|
+
:host([mobile][mobile-hide~="start"]) #start,
|
|
200
|
+
:host([mobile][mobile-hide~="center"]) #center,
|
|
201
|
+
:host([mobile][mobile-hide~="end"]) #end {
|
|
202
|
+
display: none;
|
|
203
|
+
}
|
|
204
|
+
|
|
194
205
|
#start ::slotted(*),
|
|
195
206
|
#center ::slotted(*),
|
|
196
207
|
#end ::slotted(*) {
|
|
@@ -320,22 +331,6 @@ const base = css `
|
|
|
320
331
|
pointer-events: none;
|
|
321
332
|
transition-duration: var(--_transitionDuration);
|
|
322
333
|
}
|
|
323
|
-
#panel[data-direction="top"] {
|
|
324
|
-
inset-block-end: auto;
|
|
325
|
-
height: var(--_panelSize);
|
|
326
|
-
}
|
|
327
|
-
#panel[data-direction="bottom"] {
|
|
328
|
-
inset-block-start: auto;
|
|
329
|
-
height: var(--_panelSize);
|
|
330
|
-
}
|
|
331
|
-
#panel[data-direction="left"] {
|
|
332
|
-
inset-inline-end: auto;
|
|
333
|
-
width: var(--_panelSize);
|
|
334
|
-
}
|
|
335
|
-
#panel[data-direction="right"] {
|
|
336
|
-
inset-inline-start: auto;
|
|
337
|
-
width: var(--_panelSize);
|
|
338
|
-
}
|
|
339
334
|
#panel::backdrop {
|
|
340
335
|
background: transparent;
|
|
341
336
|
}
|
|
@@ -360,7 +355,8 @@ const base = css `
|
|
|
360
355
|
inset: 0;
|
|
361
356
|
display: flex;
|
|
362
357
|
flex-direction: column;
|
|
363
|
-
padding: var(--
|
|
358
|
+
padding: calc(var(--_panelOffset) + var(--_panelPaddingBlock))
|
|
359
|
+
var(--_panelPaddingInline) var(--_panelPaddingBlock);
|
|
364
360
|
background: var(--_panelBackground);
|
|
365
361
|
backdrop-filter: blur(var(--_panelBackdropBlur));
|
|
366
362
|
-webkit-backdrop-filter: blur(var(--_panelBackdropBlur));
|
|
@@ -373,15 +369,20 @@ const base = css `
|
|
|
373
369
|
transform var(--_transitionDuration) var(--eun-easing-default, ease);
|
|
374
370
|
}
|
|
375
371
|
#panel[data-direction="top"] #panel-body {
|
|
372
|
+
inset-block-end: calc(100% - var(--_panelSize));
|
|
376
373
|
transform: translateY(-100%);
|
|
377
374
|
}
|
|
378
375
|
#panel[data-direction="bottom"] #panel-body {
|
|
376
|
+
--_panelOffset: var(--toolbar-panel-offset, 0px);
|
|
377
|
+
inset-block-start: calc(100% - var(--_panelSize));
|
|
379
378
|
transform: translateY(100%);
|
|
380
379
|
}
|
|
381
380
|
#panel[data-direction="left"] #panel-body {
|
|
381
|
+
inset-inline-end: calc(100% - var(--_panelSize));
|
|
382
382
|
transform: translateX(-100%);
|
|
383
383
|
}
|
|
384
384
|
#panel[data-direction="right"] #panel-body {
|
|
385
|
+
inset-inline-start: calc(100% - var(--_panelSize));
|
|
385
386
|
transform: translateX(100%);
|
|
386
387
|
}
|
|
387
388
|
#panel:popover-open #panel-body {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Dispatched when an option is chosen from a `eun-dropdown-button` menu
|
|
2
|
+
* Dispatched when an option is chosen from a `eun-dropdown-button` menu, or
|
|
3
|
+
* a suggestion is picked in a `eun-search`.
|
|
3
4
|
*/
|
|
4
5
|
export declare class SelectEvent extends Event {
|
|
5
6
|
/**
|
|
@@ -9,7 +10,7 @@ export declare class SelectEvent extends Event {
|
|
|
9
10
|
*/
|
|
10
11
|
static readonly eventName = "eunselect";
|
|
11
12
|
/**
|
|
12
|
-
* The `key` of the chosen option.
|
|
13
|
+
* The `key` of the chosen option, or the `value` of the picked suggestion.
|
|
13
14
|
*/
|
|
14
15
|
readonly key: string;
|
|
15
16
|
constructor(key: string);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Dispatched when an option is chosen from a `eun-dropdown-button` menu
|
|
2
|
+
* Dispatched when an option is chosen from a `eun-dropdown-button` menu, or
|
|
3
|
+
* a suggestion is picked in a `eun-search`.
|
|
3
4
|
*/
|
|
4
5
|
export class SelectEvent extends Event {
|
|
5
6
|
constructor(key) {
|
|
@@ -648,7 +648,7 @@ let EunomiaSchedulerEventEditor = class EunomiaSchedulerEventEditor extends Loca
|
|
|
648
648
|
@keydown=${this.handleGuestInputKeydown}
|
|
649
649
|
></eun-input>
|
|
650
650
|
<eun-button
|
|
651
|
-
appearance="
|
|
651
|
+
appearance="soft"
|
|
652
652
|
id="guest-add-button"
|
|
653
653
|
color="secondary"
|
|
654
654
|
aria-label=${this.addGuestLabel}
|
|
@@ -1078,7 +1078,7 @@ let EunomiaTable = class EunomiaTable extends LocalizableMixin(LoadMoreSentinelM
|
|
|
1078
1078
|
}
|
|
1079
1079
|
return html `<eun-button
|
|
1080
1080
|
size="xs"
|
|
1081
|
-
appearance=${action.color ? "
|
|
1081
|
+
appearance=${action.color ? "soft" : "ghost"}
|
|
1082
1082
|
color=${ifDefined(action.color)}
|
|
1083
1083
|
aria-label=${action.label}
|
|
1084
1084
|
?disabled=${action.disabled?.(row) ?? false}
|
|
@@ -102,7 +102,7 @@ let EunomiaTableActionBar = class EunomiaTableActionBar extends LocalizableMixin
|
|
|
102
102
|
label=${action.label}
|
|
103
103
|
icon=${ifDefined(action.icon)}
|
|
104
104
|
color=${ifDefined(isCritical ? "critical" : undefined)}
|
|
105
|
-
appearance=${isCritical ? "
|
|
105
|
+
appearance=${isCritical ? "soft" : "flat"}
|
|
106
106
|
.options=${action.dropdown}
|
|
107
107
|
?disabled=${action.disabled}
|
|
108
108
|
@eunselect=${(event) => this.handleActionSelect(action, event)}
|
|
@@ -122,7 +122,7 @@ let EunomiaTableActionBar = class EunomiaTableActionBar extends LocalizableMixin
|
|
|
122
122
|
<eun-button
|
|
123
123
|
color=${ifDefined(isCritical ? "critical" : undefined)}
|
|
124
124
|
label=${action.label}
|
|
125
|
-
appearance=${isCritical ? "
|
|
125
|
+
appearance=${isCritical ? "soft" : "flat"}
|
|
126
126
|
?disabled=${action.disabled}
|
|
127
127
|
@click=${() => this.handleActionClick(action)}
|
|
128
128
|
>
|
package/dist/index.d.ts
CHANGED
|
@@ -55,6 +55,7 @@ export type { EunomiaSidebarPosition, EunomiaSidebarCollapseMode, } from "./comp
|
|
|
55
55
|
export { EunomiaModal, EunomiaModalTagName, } from "./components/alert/modal/modal.js";
|
|
56
56
|
export { EunomiaDrawer, EunomiaDrawerTagName, } from "./components/alert/drawer/drawer.js";
|
|
57
57
|
export type { EunomiaDrawerPosition } from "./components/alert/drawer/drawer.js";
|
|
58
|
+
export type { EunomiaDialogInitialFocus } from "./mixins/dialog-surface.mixin.js";
|
|
58
59
|
export { EunomiaAlert, EunomiaAlertTagName, } from "./components/alert/alert/alert.js";
|
|
59
60
|
export { EunomiaToast, EunomiaToastTagName, } from "./components/alert/toast/toast.js";
|
|
60
61
|
export type { EunomiaToastSeverity, EunomiaToastAppearance, EunomiaToastPosition, EunomiaToastSlide, } from "./components/alert/toast/toast.js";
|
|
@@ -34,7 +34,7 @@ export type ButtonSize = EunomiaSize;
|
|
|
34
34
|
* (a floating action button has no `stroke`/`raised`/`flat`/`ghost` look of
|
|
35
35
|
* its own).
|
|
36
36
|
*/
|
|
37
|
-
export type EunomiaButtonAppearance = Extract<EunomiaAppearance, "
|
|
37
|
+
export type EunomiaButtonAppearance = Extract<EunomiaAppearance, "soft" | "fill" | "outline" | "flat" | "raised" | "ghost">;
|
|
38
38
|
/**
|
|
39
39
|
* Interface for the ButtonMixin.
|
|
40
40
|
* Extend this in components if needed.
|
|
@@ -110,7 +110,11 @@ export const ButtonMixin = (superClass) => {
|
|
|
110
110
|
}
|
|
111
111
|
/**
|
|
112
112
|
* Handles keyboard interaction.
|
|
113
|
-
* Supports "Enter" and "Space" to simulate native button behavior
|
|
113
|
+
* Supports "Enter" and "Space" to simulate native button behavior : a
|
|
114
|
+
* real `click()`, bubbling, composed and cancelable like a native
|
|
115
|
+
* button's, so delegated listeners (React's `onClick`, a parent slot)
|
|
116
|
+
* see it too. {@link handleClick} then applies the form, command or
|
|
117
|
+
* popover behavior, exactly as for a mouse click.
|
|
114
118
|
*
|
|
115
119
|
* @param event the received Keyboard event.
|
|
116
120
|
* @private
|
|
@@ -122,9 +126,7 @@ export const ButtonMixin = (superClass) => {
|
|
|
122
126
|
return;
|
|
123
127
|
}
|
|
124
128
|
event.preventDefault();
|
|
125
|
-
|
|
126
|
-
this.dispatchEvent(new Event("click"));
|
|
127
|
-
}
|
|
129
|
+
this.click();
|
|
128
130
|
}
|
|
129
131
|
/**
|
|
130
132
|
* Handles native form behavior if the button is inside a <form>.
|
|
@@ -16,6 +16,14 @@ export declare class DialogSurfaceMixinInterface {
|
|
|
16
16
|
protected closeDialogSurface(fallbackFocusEl?: HTMLElement): void;
|
|
17
17
|
protected teardownDialogSurface(open: boolean): void;
|
|
18
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Where focus lands when a dialog surface opens. `auto` keeps each
|
|
21
|
+
* component's own default target. `first-field` moves it to the first
|
|
22
|
+
* focusable element of the body when the surface was opened from the
|
|
23
|
+
* keyboard, and behaves like `auto` otherwise, so a touch opening doesn't
|
|
24
|
+
* bring up the virtual keyboard. A slotted `[autofocus]` element always wins.
|
|
25
|
+
*/
|
|
26
|
+
export type EunomiaDialogInitialFocus = "auto" | "first-field";
|
|
19
27
|
/**
|
|
20
28
|
* Shared machinery behind every `manual`-mode popover "dialog surface" in
|
|
21
29
|
* this library (`eun-drawer`, `eun-modal`, `eun-toolbar`'s mobile panel):
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { LitElement } from "lit";
|
|
2
|
+
import { Constructor } from "../utils/constructor.type.js";
|
|
3
|
+
import { EunomiaSize } from "../types/variant.type.js";
|
|
4
|
+
/**
|
|
5
|
+
* Interface defining the contract for components using FieldSizeMixin.
|
|
6
|
+
*/
|
|
7
|
+
export declare class FieldSizeMixinInterface {
|
|
8
|
+
size?: EunomiaSize;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* A mixin that adds a `size` property to a text-like form field component,
|
|
12
|
+
* with the same values as `eun-button`'s own. A field and a button of the
|
|
13
|
+
* same size share their font size, vertical padding and line height, so
|
|
14
|
+
* they line up at the same height side by side (see `field.styles.ts`).
|
|
15
|
+
*
|
|
16
|
+
* @param superClass - The base class to extend.
|
|
17
|
+
* @returns A new class extending the base with `size` behavior.
|
|
18
|
+
*/
|
|
19
|
+
export declare const FieldSizeMixin: <T extends Constructor<LitElement>>(superClass: T) => Constructor<FieldSizeMixinInterface> & T;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { property } from "lit/decorators.js";
|
|
8
|
+
/**
|
|
9
|
+
* A mixin that adds a `size` property to a text-like form field component,
|
|
10
|
+
* with the same values as `eun-button`'s own. A field and a button of the
|
|
11
|
+
* same size share their font size, vertical padding and line height, so
|
|
12
|
+
* they line up at the same height side by side (see `field.styles.ts`).
|
|
13
|
+
*
|
|
14
|
+
* @param superClass - The base class to extend.
|
|
15
|
+
* @returns A new class extending the base with `size` behavior.
|
|
16
|
+
*/
|
|
17
|
+
export const FieldSizeMixin = (superClass) => {
|
|
18
|
+
class FieldSizeMixinClass extends superClass {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(...arguments);
|
|
21
|
+
/**
|
|
22
|
+
* The field size, matching the button size of the same name.
|
|
23
|
+
* By default, set to "m". The default isn't reflected, so an SSR
|
|
24
|
+
* framework doesn't see an attribute it never rendered.
|
|
25
|
+
*/
|
|
26
|
+
this.size = "m";
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
__decorate([
|
|
30
|
+
property({ reflect: true, useDefault: true })
|
|
31
|
+
], FieldSizeMixinClass.prototype, "size", void 0);
|
|
32
|
+
return FieldSizeMixinClass;
|
|
33
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { LitElement } from "lit";
|
|
2
|
+
import { Constructor } from "../utils/constructor.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Interface defining the contract for components using RoundedMixin.
|
|
5
|
+
*/
|
|
6
|
+
export declare class RoundedMixinInterface {
|
|
7
|
+
rounded?: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A mixin that adds a `rounded` property to a single-line control, the same
|
|
11
|
+
* as `eun-button`'s own : set, the control takes a pill shape through the
|
|
12
|
+
* `--eun-border-radius-xl` token, without reaching for its own radius
|
|
13
|
+
* custom property. That custom property still wins over it when set.
|
|
14
|
+
*
|
|
15
|
+
* @param superClass - The base class to extend.
|
|
16
|
+
* @returns A new class extending the base with `rounded` behavior.
|
|
17
|
+
*/
|
|
18
|
+
export declare const RoundedMixin: <T extends Constructor<LitElement>>(superClass: T) => Constructor<RoundedMixinInterface> & T;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { property } from "lit/decorators.js";
|
|
8
|
+
/**
|
|
9
|
+
* A mixin that adds a `rounded` property to a single-line control, the same
|
|
10
|
+
* as `eun-button`'s own : set, the control takes a pill shape through the
|
|
11
|
+
* `--eun-border-radius-xl` token, without reaching for its own radius
|
|
12
|
+
* custom property. That custom property still wins over it when set.
|
|
13
|
+
*
|
|
14
|
+
* @param superClass - The base class to extend.
|
|
15
|
+
* @returns A new class extending the base with `rounded` behavior.
|
|
16
|
+
*/
|
|
17
|
+
export const RoundedMixin = (superClass) => {
|
|
18
|
+
class RoundedMixinClass extends superClass {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(...arguments);
|
|
21
|
+
/**
|
|
22
|
+
* Whether the control is fully rounded, as a pill.
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
this.rounded = false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__decorate([
|
|
29
|
+
property({ type: Boolean, reflect: true })
|
|
30
|
+
], RoundedMixinClass.prototype, "rounded", void 0);
|
|
31
|
+
return RoundedMixinClass;
|
|
32
|
+
};
|
package/dist/ssr/button-ssr.css
CHANGED
|
@@ -120,8 +120,8 @@
|
|
|
120
120
|
}
|
|
121
121
|
:is(eun-button, eun-dropdown-button)[size="s"]:not(:defined) {
|
|
122
122
|
--_defaultFontSize: var(--eun-font-size-xs, 10px);
|
|
123
|
-
--_defaultPaddingBlock: calc(var(--eun-space-s) / 2);
|
|
124
|
-
--_defaultPaddingInline: var(--eun-space-s);
|
|
123
|
+
--_defaultPaddingBlock: calc(var(--eun-space-s, 8px) / 2);
|
|
124
|
+
--_defaultPaddingInline: var(--eun-space-s, 8px);
|
|
125
125
|
--_defaultLineHeight: 10px;
|
|
126
126
|
--_defaultBorderRadius: var(--eun-border-radius-s, 999px);
|
|
127
127
|
}
|
|
@@ -149,7 +149,7 @@
|
|
|
149
149
|
--_fg: var(--_onSolid);
|
|
150
150
|
--_bd: transparent;
|
|
151
151
|
}
|
|
152
|
-
:is(eun-button, eun-dropdown-button)[appearance="
|
|
152
|
+
:is(eun-button, eun-dropdown-button)[appearance="soft"]:not(:defined) {
|
|
153
153
|
--_bg: var(--_tint);
|
|
154
154
|
--_fg: var(--_fgTint);
|
|
155
155
|
--_bd: transparent;
|
|
@@ -236,8 +236,8 @@ eun-button:not(:defined) > [slot="end"] {
|
|
|
236
236
|
content: "";
|
|
237
237
|
order: -1;
|
|
238
238
|
flex-shrink: 0;
|
|
239
|
-
width:
|
|
240
|
-
height:
|
|
239
|
+
width: var(--icon-size);
|
|
240
|
+
height: var(--icon-size);
|
|
241
241
|
}
|
|
242
242
|
|
|
243
243
|
eun-dropdown-button[label]:not(:defined)::after {
|
|
@@ -36,6 +36,15 @@ eun-carousel:not(:defined) {
|
|
|
36
36
|
container-type: inline-size;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
+
eun-carousel[show-arrows="false"]:not(:defined) {
|
|
40
|
+
--_navReserve: 0px;
|
|
41
|
+
--carousel-nav-display: none;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
eun-carousel[show-dots="false"]:not(:defined) {
|
|
45
|
+
--carousel-dots-display: none;
|
|
46
|
+
}
|
|
47
|
+
|
|
39
48
|
eun-carousel[visible-slides="2"]:not(:defined) {
|
|
40
49
|
--_visibleCount: 2;
|
|
41
50
|
}
|
package/dist/ssr/chip-ssr.css
CHANGED
|
@@ -170,6 +170,10 @@ eun-chip[appearance="flat"]:not(:defined) {
|
|
|
170
170
|
--_fg: var(--_fg-flat);
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
+
eun-chip[rounded="false"]:not(:defined) {
|
|
174
|
+
border-radius: var(--chip-border-radius, var(--eun-border-radius-s, 5px));
|
|
175
|
+
}
|
|
176
|
+
|
|
173
177
|
eun-chip[disabled]:not(:defined) {
|
|
174
178
|
opacity: 0.6;
|
|
175
179
|
}
|
|
@@ -240,3 +244,7 @@ eun-chip:not(:defined)::after {
|
|
|
240
244
|
mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/%3E%3C/svg%3E")
|
|
241
245
|
center / var(--_deleteIconSize) no-repeat;
|
|
242
246
|
}
|
|
247
|
+
|
|
248
|
+
eun-chip[removable="false"]:not(:defined)::after {
|
|
249
|
+
display: none;
|
|
250
|
+
}
|
|
@@ -101,6 +101,35 @@ eun-collapse:not(:defined) > [slot="tag"] {
|
|
|
101
101
|
margin-inline-start: var(--collapse-gap, var(--eun-space-l, 32px));
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
eun-collapse:not(:defined) > [slot="tag"]:not(eun-tag) {
|
|
105
|
+
--_borderWidth: var(--tag-border-width, var(--eun-border-width-s, 1px));
|
|
106
|
+
display: flex;
|
|
107
|
+
align-items: center;
|
|
108
|
+
border: var(--_borderWidth) solid var(--tag-border-color, transparent);
|
|
109
|
+
border-radius: var(--tag-border-radius, var(--eun-border-radius-xl, 999px));
|
|
110
|
+
padding: max(
|
|
111
|
+
0px,
|
|
112
|
+
calc(
|
|
113
|
+
var(--tag-padding-block, var(--eun-space-xs, 4px)) - var(--_borderWidth)
|
|
114
|
+
)
|
|
115
|
+
)
|
|
116
|
+
max(
|
|
117
|
+
0px,
|
|
118
|
+
calc(
|
|
119
|
+
var(--tag-padding-inline, var(--eun-space-s, 8px)) - var(--_borderWidth)
|
|
120
|
+
)
|
|
121
|
+
);
|
|
122
|
+
background: var(
|
|
123
|
+
--tag-background-color,
|
|
124
|
+
var(--eun-color-primary-alpha-20, #3d6fff33)
|
|
125
|
+
);
|
|
126
|
+
color: var(--tag-color, var(--eun-color-primary-500, #3d6fff));
|
|
127
|
+
font-family: var(--eun-font-family, "Mulish", sans-serif);
|
|
128
|
+
font-size: var(--tag-font-size, var(--eun-font-size-xs, 12px));
|
|
129
|
+
font-weight: var(--tag-font-weight, var(--eun-font-weight-m, 500));
|
|
130
|
+
user-select: none;
|
|
131
|
+
}
|
|
132
|
+
|
|
104
133
|
eun-collapse:not(:defined)::after {
|
|
105
134
|
content: "";
|
|
106
135
|
grid-column: 4;
|
package/dist/ssr/field-ssr.css
CHANGED
|
@@ -1,15 +1,53 @@
|
|
|
1
1
|
:is(eun-input, eun-textarea, eun-select):not(:defined) {
|
|
2
2
|
--_borderColor: var(--field-border-color, var(--eun-border-color, #dee0e7));
|
|
3
|
+
--_defaultPaddingBlock: var(--eun-space-s, 8px);
|
|
4
|
+
--_defaultFontSize: var(--eun-font-size-s, 14px);
|
|
5
|
+
--_defaultLineHeight: 1rem;
|
|
6
|
+
--_defaultBorderRadius: var(--eun-border-radius-m, 8px);
|
|
7
|
+
--_defaultPaddingInline: var(--eun-space-s, 8px);
|
|
3
8
|
--_padding: var(
|
|
4
9
|
--field-padding,
|
|
5
|
-
var(--field-padding-block, var(--
|
|
6
|
-
var(--field-padding-inline, var(--
|
|
10
|
+
var(--field-padding-block, var(--_defaultPaddingBlock))
|
|
11
|
+
var(--field-padding-inline, var(--_defaultPaddingInline))
|
|
7
12
|
);
|
|
8
13
|
display: block;
|
|
9
14
|
width: 100%;
|
|
10
15
|
color: var(--field-text-color, var(--eun-text-color, #071621));
|
|
11
16
|
font-family: var(--eun-font-family, "Mulish", sans-serif);
|
|
12
|
-
font-size: var(--field-font-size, var(--
|
|
17
|
+
font-size: var(--field-font-size, var(--_defaultFontSize));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
eun-textarea:not(:defined) {
|
|
21
|
+
--_defaultLineHeight: normal;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
:is(eun-input, eun-select)[rounded]:not(:defined) {
|
|
25
|
+
--_defaultBorderRadius: var(--eun-border-radius-xl, 999px);
|
|
26
|
+
--_defaultPaddingInline: var(--eun-space-m, 16px);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
:is(eun-input, eun-select)[size="xs"]:not(:defined) {
|
|
30
|
+
--_defaultFontSize: var(--eun-font-size-xs, 10px);
|
|
31
|
+
--_defaultPaddingBlock: var(--eun-space-xxs, 1.6px);
|
|
32
|
+
--_defaultLineHeight: 10px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:is(eun-input, eun-select)[size="s"]:not(:defined) {
|
|
36
|
+
--_defaultFontSize: var(--eun-font-size-xs, 10px);
|
|
37
|
+
--_defaultPaddingBlock: calc(var(--eun-space-s, 8px) / 2);
|
|
38
|
+
--_defaultLineHeight: 10px;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
:is(eun-input, eun-select)[size="l"]:not(:defined) {
|
|
42
|
+
--_defaultFontSize: var(--eun-font-size-m, 16px);
|
|
43
|
+
--_defaultPaddingBlock: calc(var(--eun-space-s, 8px) * 1.25);
|
|
44
|
+
--_defaultLineHeight: 1.1rem;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
:is(eun-input, eun-select)[size="xl"]:not(:defined) {
|
|
48
|
+
--_defaultFontSize: var(--eun-font-size-l, 1.3rem);
|
|
49
|
+
--_defaultPaddingBlock: calc(var(--eun-space-s, 8px) * 1.5);
|
|
50
|
+
--_defaultLineHeight: 1.3rem;
|
|
13
51
|
}
|
|
14
52
|
|
|
15
53
|
:is(eun-input, eun-textarea, eun-select):is(
|
|
@@ -58,8 +96,9 @@
|
|
|
58
96
|
box-sizing: border-box;
|
|
59
97
|
overflow: hidden;
|
|
60
98
|
padding: var(--_padding);
|
|
99
|
+
line-height: var(--field-line-height, var(--_defaultLineHeight));
|
|
61
100
|
border: var(--eun-border-width-m, 1.5px) solid var(--_borderColor);
|
|
62
|
-
border-radius: var(--field-border-radius, var(--
|
|
101
|
+
border-radius: var(--field-border-radius, var(--_defaultBorderRadius));
|
|
63
102
|
background-color: var(--field-background, transparent);
|
|
64
103
|
box-shadow: var(--field-shadow, none);
|
|
65
104
|
color: var(
|
|
@@ -22,3 +22,13 @@ eun-image-carousel:is(:not([images]), [images*="},"]):not(:defined)::after {
|
|
|
22
22
|
height: var(--image-carousel-thumbnail-size, 64px);
|
|
23
23
|
margin-top: var(--image-carousel-thumbnail-gap, var(--eun-space-s, 8px));
|
|
24
24
|
}
|
|
25
|
+
|
|
26
|
+
eun-image-carousel[show-thumbnails="false"]:not(:defined)::after {
|
|
27
|
+
height: var(--image-carousel-dot-size, 8px);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
eun-image-carousel[show-thumbnails="false"][show-dots="false"]:not(
|
|
31
|
+
:defined
|
|
32
|
+
)::after {
|
|
33
|
+
display: none;
|
|
34
|
+
}
|