@oruga-ui/theme-oruga 0.7.1 → 0.8.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.
Files changed (45) hide show
  1. package/README.md +4 -4
  2. package/dist/scss/components/_autocomplete.scss +3 -12
  3. package/dist/scss/components/_breadcrumb.scss +122 -103
  4. package/dist/scss/components/_button.scss +228 -173
  5. package/dist/scss/components/_carousel.scss +164 -142
  6. package/dist/scss/components/_checkbox.scss +118 -118
  7. package/dist/scss/components/_collapse.scss +1 -1
  8. package/dist/scss/components/_datepicker.scss +228 -290
  9. package/dist/scss/components/_datetimepicker.scss +8 -2
  10. package/dist/scss/components/_dropdown.scss +191 -164
  11. package/dist/scss/components/_field.scss +68 -39
  12. package/dist/scss/components/_icon.scss +24 -29
  13. package/dist/scss/components/_input.scss +112 -97
  14. package/dist/scss/components/_loading.scss +35 -15
  15. package/dist/scss/components/_menu.scss +113 -109
  16. package/dist/scss/components/_modal.scss +112 -50
  17. package/dist/scss/components/_notification.scss +113 -97
  18. package/dist/scss/components/_pagination.scss +173 -106
  19. package/dist/scss/components/_radio.scss +91 -84
  20. package/dist/scss/components/_select.scss +108 -115
  21. package/dist/scss/components/_sidebar.scss +102 -101
  22. package/dist/scss/components/_skeleton.scss +50 -39
  23. package/dist/scss/components/_slider.scss +221 -159
  24. package/dist/scss/components/_steps.scss +223 -261
  25. package/dist/scss/components/_switch.scss +126 -90
  26. package/dist/scss/components/_table.scss +307 -251
  27. package/dist/scss/components/_tabs.scss +360 -247
  28. package/dist/scss/components/_tag.scss +95 -39
  29. package/dist/scss/components/_taginput.scss +48 -36
  30. package/dist/scss/components/_timepicker.scss +61 -62
  31. package/dist/scss/components/_tooltip.scss +129 -254
  32. package/dist/scss/components/_upload.scss +83 -35
  33. package/dist/scss/theme-build.scss +9 -0
  34. package/dist/scss/theme.scss +42 -0
  35. package/dist/scss/utils/_animations.scss +30 -9
  36. package/dist/scss/utils/_base.scss +6 -4
  37. package/dist/scss/utils/_helpers.scss +84 -22
  38. package/dist/scss/utils/_root.scss +82 -29
  39. package/dist/scss/utils/_variables.scss +64 -42
  40. package/dist/theme.css +2 -0
  41. package/dist/theme.js +1 -1
  42. package/package.json +26 -19
  43. package/dist/oruga.css +0 -2
  44. package/dist/scss/oruga-build.scss +0 -9
  45. package/dist/scss/oruga.scss +0 -42
@@ -1,59 +1,118 @@
1
+ @use "sass:map";
2
+ @use "../utils/helpers" as h;
3
+ @use "../utils/variables" as vars;
4
+
1
5
  /* @docs */
2
- $dropdown-disabled-opacity: var(--#{$prefix}base-disabled-opacity) !default;
3
- $dropdown-item-active-background-color: var(--#{$prefix}primary) !default;
4
- $dropdown-item-active-color: var(--#{$prefix}primary-invert) !default;
5
- $dropdown-item-color: #000000 !default;
6
- $dropdown-item-disabled-opacity: var(
7
- --#{$prefix}base-disabled-opacity
8
- ) !default;
9
- $dropdown-item-font-size: var(--#{$prefix}base-font-size) !default;
10
- $dropdown-item-hover-background-color: $control-brackground-color !default;
11
- $dropdown-item-hover-color: #000000 !default;
12
- $dropdown-item-line-height: var(--#{$prefix}base-line-height) !default;
13
- $dropdown-item-padding: 0.375rem 1rem !default;
14
- $dropdown-item-font-weight: 400 !default;
15
- $dropdown-menu-background: #ffffff !default;
16
- $dropdown-menu-border-radius: var(--#{$prefix}base-border-radius) !default;
6
+ $dropdown-disabled-opacity: h.useVar("control-disabled-opacity") !default;
7
+
8
+ $dropdown-menu-zindex: map.get(vars.$zindex, "dropdown") !default;
9
+ $dropdown-menu-spacer: 0px !default;
10
+ $dropdown-menu-padding: h.useVar("control-spacer") 0 !default;
17
11
  $dropdown-menu-box-shadow:
18
12
  0 0.5em 1em -0.125em rgba(10, 10, 10, 0.1),
19
13
  0 0 0 1px rgba(10, 10, 10, 0.02) !default;
20
- $dropdown-menu-spacer: 0px !default;
21
- $dropdown-menu-margin: 0 !default;
22
- $dropdown-menu-padding: 0.5rem 0 0.5rem 0 !default;
23
- $dropdown-menu-width: 12rem !default;
24
- $dropdown-menu-zindex: 50 !default;
25
- $dropdown-mobile-max-height: calc(100vh - 120px) !default;
26
- $dropdown-mobile-max-width: 460px !default;
27
- $dropdown-mobile-overlay-color: rgba(#000000, 0.86) !default;
28
- $dropdown-mobile-overlay-zindex: 55 !default;
29
- $dropdown-mobile-width: calc(100vw - 40px) !default;
30
- $dropdown-mobile-zindex: 60 !default;
14
+ $dropdown-menu-background-color: h.useVar("control-brackground-color") !default;
15
+ $dropdown-menu-border-color: h.useVar("control-border-color") !default;
16
+ $dropdown-menu-border-style: solid !default;
17
+ $dropdown-menu-border-width: h.useVar("control-border-width") !default;
18
+ $dropdown-menu-border-radius: h.useVar("border-radius") !default;
19
+
20
+ $dropdown-item-padding: 0.25rem 1rem !default;
21
+ $dropdown-item-color: h.useVar("font-color") !default;
22
+ $dropdown-item-font-size: h.useVar("font-size") !default;
23
+ $dropdown-item-font-weight: h.useVar("font-weight") !default;
24
+ $dropdown-item-line-height: h.useVar("line-height") !default;
25
+
26
+ $dropdown-item-background-color: transparent !default;
27
+ $dropdown-item-active-color: h.useVar("primary-invert") !default;
28
+ $dropdown-item-active-background-color: h.useVar("primary") !default;
29
+ $dropdown-item-hover-background-color: h.useVar("grey-lighter") !default;
30
+ $dropdown-item-hover-color: h.useVar("font-color") !default;
31
+
32
+ $dropdown-modal-zindex: map.get(vars.$zindex, "modal") !default;
33
+ $dropdown-modal-max-height: min(50vh, calc(100vh - 160px)) !default;
34
+ $dropdown-modal-max-width: min(50vw, calc(100vw - 160px)) !default;
35
+ $dropdown-modal-min-width: min(80vw, 400px) !default;
36
+
37
+ $dropdown-overlay-background-color: h.useVar(
38
+ "overlay-background-color"
39
+ ) !default;
40
+ $dropdown-overlay-zindex: map.get(vars.$zindex, "overlay") !default;
41
+
31
42
  /* @docs */
32
43
 
33
44
  .o-dropdown {
45
+ @include h.defineVar(
46
+ "dropdown-disabled-opacity",
47
+ $dropdown-disabled-opacity
48
+ );
49
+ @include h.defineVar(
50
+ "dropdown-overlay-background-color",
51
+ $dropdown-overlay-background-color
52
+ );
53
+ @include h.defineVar("dropdown-overlay-zindex", $dropdown-overlay-zindex);
54
+
55
+ @include h.defineVar("dropdown-item-color", $dropdown-item-color);
56
+ @include h.defineVar("dropdown-item-font-size", $dropdown-item-font-size);
57
+ @include h.defineVar(
58
+ "dropdown-item-font-weight",
59
+ $dropdown-item-font-weight
60
+ );
61
+ @include h.defineVar(
62
+ "dropdown-item-line-height",
63
+ $dropdown-item-line-height
64
+ );
65
+ @include h.defineVar("dropdown-item-padding", $dropdown-item-padding);
66
+ @include h.defineVar(
67
+ "dropdown-item-background-color",
68
+ $dropdown-item-background-color
69
+ );
70
+ @include h.defineVar(
71
+ "dropdown-item-active-color",
72
+ $dropdown-item-active-color
73
+ );
74
+ @include h.defineVar(
75
+ "dropdown-item-active-background-color",
76
+ $dropdown-item-active-background-color
77
+ );
78
+ @include h.defineVar(
79
+ "dropdown-item-hover-color",
80
+ $dropdown-item-hover-color
81
+ );
82
+ @include h.defineVar(
83
+ "dropdown-item-hover-background-color",
84
+ $dropdown-item-hover-background-color
85
+ );
86
+
87
+ @include h.defineVar("dropdown-menu-zindex", $dropdown-menu-zindex);
88
+ @include h.defineVar("dropdown-menu-spacer", $dropdown-menu-spacer);
89
+ @include h.defineVar("dropdown-menu-box-shadow", $dropdown-menu-box-shadow);
90
+ @include h.defineVar("dropdown-menu-padding", $dropdown-menu-padding);
91
+ @include h.defineVar(
92
+ "dropdown-menu-background-color",
93
+ $dropdown-menu-background-color
94
+ );
95
+ @include h.defineVar(
96
+ "dropdown-menu-border-style",
97
+ $dropdown-menu-border-style
98
+ );
99
+ @include h.defineVar(
100
+ "dropdown-menu-border-color",
101
+ $dropdown-menu-border-color
102
+ );
103
+ @include h.defineVar(
104
+ "dropdown-menu-border-width",
105
+ $dropdown-menu-border-width
106
+ );
107
+ @include h.defineVar(
108
+ "dropdown-menu-border-radius",
109
+ $dropdown-menu-border-radius
110
+ );
111
+
34
112
  display: inline-flex;
35
113
  position: relative;
36
114
  vertical-align: top;
37
115
 
38
- &__overlay {
39
- position: fixed;
40
- bottom: 0;
41
- left: 0;
42
- right: 0;
43
- top: 0;
44
- cursor: pointer;
45
- display: none;
46
-
47
- background-color: var(
48
- --#{$prefix}dropdown-mobile-overlay-color,
49
- $dropdown-mobile-overlay-color
50
- );
51
- z-index: var(
52
- --#{$prefix}dropdown-mobile-overlay-zindex,
53
- $dropdown-mobile-overlay-zindex
54
- );
55
- }
56
-
57
116
  &__trigger {
58
117
  display: inline-flex;
59
118
  width: 100%;
@@ -62,31 +121,24 @@ $dropdown-mobile-zindex: 60 !default;
62
121
  &__menu {
63
122
  position: absolute;
64
123
  display: block;
124
+ width: max-content;
125
+ min-width: 100%;
65
126
 
66
- min-width: var(--#{$prefix}dropdown-menu-width, $dropdown-menu-width);
67
- z-index: var(--#{$prefix}dropdown-menu-zindex, $dropdown-menu-zindex);
68
- background-color: var(
69
- --#{$prefix}dropdown-menu-background,
70
- $dropdown-menu-background
71
- );
72
- border-radius: var(
73
- --#{$prefix}dropdown-menu-border-radius,
74
- $dropdown-menu-border-radius
75
- );
76
- box-shadow: var(
77
- --#{$prefix}dropdown-menu-box-shadow,
78
- $dropdown-menu-box-shadow
79
- );
80
- padding: var(--#{$prefix}dropdown-menu-padding, $dropdown-menu-padding);
81
- margin: var(--#{$prefix}dropdown-menu-margin, $dropdown-menu-margin);
127
+ z-index: h.useVar("dropdown-menu-zindex");
128
+ padding: h.useVar("dropdown-menu-padding");
82
129
 
130
+ box-shadow: h.useVar("dropdown-menu-box-shadow");
131
+ background-color: h.useVar("dropdown-menu-background-color");
132
+ border-color: h.useVar("dropdown-menu-border-color");
133
+ border-style: h.useVar("dropdown-menu-border-style");
134
+ border-width: h.useVar("dropdown-menu-border-width");
135
+ border-radius: h.useVar("dropdown-menu-border-radius");
136
+
137
+ // position variants
83
138
  &--bottom {
84
139
  left: 50%;
85
140
  right: auto;
86
- top: calc(
87
- 100% +
88
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
89
- );
141
+ top: calc(100% + h.useVar("dropdown-menu-spacer"));
90
142
  bottom: auto;
91
143
  transform: translateX(-50%);
92
144
  }
@@ -95,18 +147,12 @@ $dropdown-mobile-zindex: 60 !default;
95
147
  left: 50%;
96
148
  right: auto;
97
149
  top: auto;
98
- bottom: calc(
99
- 100% +
100
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
101
- );
150
+ bottom: calc(100% + h.useVar("dropdown-menu-spacer"));
102
151
  transform: translateX(-50%);
103
152
  }
104
153
 
105
154
  &--left {
106
- right: calc(
107
- 100% +
108
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
109
- );
155
+ right: calc(100% + h.useVar("dropdown-menu-spacer"));
110
156
  left: auto;
111
157
  top: 50%;
112
158
  bottom: auto;
@@ -115,10 +161,7 @@ $dropdown-mobile-zindex: 60 !default;
115
161
 
116
162
  &--right {
117
163
  right: auto;
118
- left: calc(
119
- 100% +
120
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
121
- );
164
+ left: calc(100% + h.useVar("dropdown-menu-spacer"));
122
165
  top: 50%;
123
166
  bottom: auto;
124
167
  transform: translateY(-50%);
@@ -128,39 +171,27 @@ $dropdown-mobile-zindex: 60 !default;
128
171
  right: 0;
129
172
  left: auto;
130
173
  top: auto;
131
- bottom: calc(
132
- 100% +
133
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
134
- );
174
+ bottom: calc(100% + h.useVar("dropdown-menu-spacer"));
135
175
  }
136
176
 
137
177
  &--top-left {
138
178
  right: auto;
139
179
  left: 0;
140
180
  top: auto;
141
- bottom: calc(
142
- 100% +
143
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
144
- );
181
+ bottom: calc(100% + h.useVar("dropdown-menu-spacer"));
145
182
  }
146
183
 
147
184
  &--bottom-right {
148
185
  right: 0;
149
186
  left: auto;
150
- top: calc(
151
- 100% +
152
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
153
- );
187
+ top: calc(100% + h.useVar("dropdown-menu-spacer"));
154
188
  bottom: auto;
155
189
  }
156
190
 
157
191
  &--bottom-left {
158
192
  right: auto;
159
193
  left: 0;
160
- top: calc(
161
- 100% +
162
- var(--#{$prefix}dropdown-menu-spacer, $dropdown-menu-spacer)
163
- );
194
+ top: calc(100% + h.useVar("dropdown-menu-spacer"));
164
195
  bottom: auto;
165
196
  }
166
197
  }
@@ -169,55 +200,45 @@ $dropdown-mobile-zindex: 60 !default;
169
200
  display: block;
170
201
  position: relative;
171
202
 
172
- color: var(--#{$prefix}dropdown-item-color, $dropdown-item-color);
173
- font-size: var(
174
- --#{$prefix}dropdown-item-font-size,
175
- $dropdown-item-font-size
176
- );
177
- font-weight: var(
178
- --#{$prefix}dropdown-item-font-weight,
179
- $dropdown-item-font-weight
180
- );
181
- line-height: var(
182
- --#{$prefix}dropdown-item-line-height,
183
- $dropdown-item-line-height
184
- );
185
- padding: var(--#{$prefix}dropdown-item-padding, $dropdown-item-padding);
203
+ padding: h.useVar("dropdown-item-padding");
204
+
205
+ color: h.useVar("dropdown-item-color");
206
+ font-size: h.useVar("dropdown-item-font-size");
207
+ font-weight: h.useVar("dropdown-item-font-weight");
208
+ line-height: h.useVar("dropdown-item-line-height");
209
+
210
+ background-color: h.useVar("dropdown-item-background-color");
186
211
 
187
212
  &--disabled {
188
- opacity: var(
189
- --#{$prefix}dropdown-item-disabled-opacity,
190
- $dropdown-item-disabled-opacity
191
- );
192
- pointer-events: none;
213
+ @include h.disabled(h.useVar("dropdown-disabled-opacity"));
193
214
  }
194
215
 
195
216
  &--active {
196
- background-color: var(
197
- --#{$prefix}dropdown-item-active-background-color,
198
- $dropdown-item-active-background-color
217
+ @include h.defineVar(
218
+ "dropdown-item-color",
219
+ h.useVar("dropdown-item-active-color")
199
220
  );
200
- color: var(
201
- --#{$prefix}dropdown-item-active-color,
202
- $dropdown-item-active-color
221
+ @include h.defineVar(
222
+ "dropdown-item-background-color",
223
+ h.useVar("dropdown-item-active-background-color")
203
224
  );
204
225
  }
205
226
 
206
227
  &--clickable {
207
- cursor: pointer;
208
-
209
- &:not(.o-dropdown__item--active) {
210
- &:hover,
211
- &.o-dropdown__item--focused {
212
- background-color: var(
213
- --#{$prefix}dropdown-item-hover-background-color,
214
- $dropdown-item-hover-background-color
215
- );
216
- color: var(
217
- --#{$prefix}dropdown-item-hover-color,
218
- $dropdown-item-hover-color
219
- );
220
- }
228
+ @include h.clickable;
229
+ }
230
+
231
+ &--clickable:not(&--active) {
232
+ &:hover,
233
+ &.o-dropdown__item--focused {
234
+ @include h.defineVar(
235
+ "dropdown-item-color",
236
+ h.useVar("dropdown-item-hover-color")
237
+ );
238
+ @include h.defineVar(
239
+ "dropdown-item-background-color",
240
+ h.useVar("dropdown-item-hover-background-color")
241
+ );
221
242
  }
222
243
  }
223
244
  }
@@ -241,46 +262,52 @@ $dropdown-mobile-zindex: 60 !default;
241
262
  }
242
263
 
243
264
  &--disabled {
244
- opacity: var(
245
- --#{$prefix}dropdown-disabled-opacity,
246
- $dropdown-disabled-opacity
247
- );
248
- pointer-events: none;
265
+ @include h.disabled(h.useVar("dropdown-disabled-opacity"));
266
+ }
267
+
268
+ &--teleport {
269
+ width: unset;
249
270
  }
250
271
 
251
- &--modal:not(.o-dropdown--inline):not(.o-dropdown--hoverable) {
272
+ &--modal {
273
+ @include h.defineVar("dropdown-modal-zindex", $dropdown-modal-zindex);
274
+ @include h.defineVar(
275
+ "dropdown-modal-max-height",
276
+ $dropdown-modal-max-height
277
+ );
278
+ @include h.defineVar(
279
+ "dropdown-modal-min-width",
280
+ $dropdown-modal-min-width
281
+ );
282
+ @include h.defineVar(
283
+ "dropdown-modal-max-width",
284
+ $dropdown-modal-max-width
285
+ );
286
+
287
+ > .o-dropdown__overlay {
288
+ pointer-events: auto;
289
+ position: fixed;
290
+ bottom: 0;
291
+ left: 0;
292
+ right: 0;
293
+ top: 0;
294
+ background-color: h.useVar("dropdown-overlay-background-color");
295
+ z-index: h.useVar("dropdown-overlay-zindex");
296
+ }
297
+
252
298
  > .o-dropdown__menu {
299
+ pointer-events: auto;
253
300
  position: fixed;
254
301
  top: 25%;
255
302
  left: 50%;
256
- bottom: auto;
257
- right: auto;
303
+ bottom: unset;
304
+ right: unset;
258
305
  transform: translate3d(-50%, -25%, 0);
259
- overflow-y: auto;
260
- width: var(
261
- --#{$prefix}dropdown-mobile-width,
262
- $dropdown-mobile-width
263
- );
264
- max-width: var(
265
- --#{$prefix}dropdown-mobile-max-width,
266
- $dropdown-mobile-max-width
267
- );
268
- max-height: var(
269
- --#{$prefix}dropdown-mobile-max-height,
270
- $dropdown-mobile-max-height
271
- );
272
- z-index: var(
273
- --#{$prefix}dropdown-mobile-zindex,
274
- $dropdown-mobile-zindex
275
- );
276
- }
277
306
 
278
- > .o-dropdown__overlay {
279
- display: block;
307
+ min-width: h.useVar("dropdown-modal-min-width");
308
+ max-width: h.useVar("dropdown-modal-max-width");
309
+ max-height: h.useVar("dropdown-modal-max-height");
310
+ z-index: h.useVar("dropdown-modal-zindex");
280
311
  }
281
312
  }
282
-
283
- &--teleport {
284
- width: unset;
285
- }
286
313
  }
@@ -1,60 +1,88 @@
1
1
  @use "sass:list";
2
+ @use "../utils/helpers" as h;
3
+ @use "../utils/variables" as vars;
2
4
 
3
5
  /* @docs */
4
- $field-label-color: #363636 !default;
6
+ $field-spacer: h.useVar("control-spacer") !default;
7
+ $field-margin-bottom: calc(1.5 * $field-spacer) !default;
8
+
9
+ $field-label-color: h.useVar("font-color") !default;
10
+ $field-label-font-size: h.useVar("font-size") !default;
5
11
  $field-label-font-weight: 600 !default;
6
- $field-margin-bottom: 0.75rem !default;
7
- $field-message-font-size: 0.75rem !default;
8
- $field-message-margin-top: 0.25rem !default;
9
- $field-spacer: 0.5rem !default;
10
- $field-horizontal-spacer: 0 1.5rem 0 0 !default;
12
+ $field-label-line-height: h.useVar("line-height") !default;
13
+
14
+ $field-message-spacer: calc(0.5 * $field-spacer) !default;
15
+ $field-message-color: h.useVar("secondary") !default;
16
+ $field-message-font-size: 0.75em !default;
17
+ $field-message-font-weight: h.useVar("font-weight") !default;
18
+ $field-message-line-height: h.useVar("line-height") !default;
11
19
  /* @docs */
12
20
 
13
21
  .o-field {
14
- flex-grow: 1;
22
+ @include h.defineVar("field-spacer", $field-spacer);
23
+ @include h.defineVar("field-margin-bottom", $field-margin-bottom);
24
+ @include h.defineVar("field-label-color", $field-label-color);
25
+ @include h.defineVar("field-label-font-size", $field-label-font-size);
26
+ @include h.defineVar("field-label-font-weight", $field-label-font-weight);
27
+ @include h.defineVar("field-label-line-height", $field-label-line-height);
28
+ @include h.defineVar("field-message-color", $field-message-color);
29
+ @include h.defineVar("field-message-font-size", $field-message-font-size);
30
+ @include h.defineVar(
31
+ "field-message-font-weight",
32
+ $field-message-font-weight
33
+ );
34
+ @include h.defineVar(
35
+ "field-message-line-height",
36
+ $field-message-line-height
37
+ );
38
+ @include h.defineVar("field-message-spacer", $field-message-spacer);
15
39
 
16
40
  &:not(:last-child) {
17
- margin-bottom: var(
18
- --#{$prefix}field-margin-bottom,
19
- $field-margin-bottom
20
- );
41
+ margin-bottom: h.useVar("field-margin-bottom");
21
42
  }
22
43
 
23
44
  &__label {
24
45
  display: block;
25
- color: var(--#{$prefix}field-label-color, $field-label-color);
26
- font-size: var(--#{$prefix}base-font-size, $base-font-size);
27
- font-weight: var(
28
- --#{$prefix}field-label-font-weight,
29
- $field-label-font-weight
30
- );
31
-
32
- @each $name, $value in $sizes {
46
+ color: h.useVar("field-label-color");
47
+ font-size: h.useVar("field-label-font-size");
48
+ font-weight: h.useVar("field-label-font-weight");
49
+ line-height: h.useVar("field-label-line-weight");
50
+
51
+ // size variants
52
+ @each $name, $value in vars.$sizes {
33
53
  &--#{$name} {
34
- font-size: var(--#{$prefix}field-font-size-#{$name}, $value);
54
+ @include h.defineVar(
55
+ "field-label-font-size",
56
+ h.useVar("size-#{$name}")
57
+ );
35
58
  }
36
59
  }
37
60
  }
38
61
 
39
62
  &__message {
40
63
  display: block;
41
- font-size: var(
42
- --#{$prefix}field-message-font-size,
43
- $field-message-font-size
44
- );
45
- margin-top: var(
46
- --#{$prefix}field-message-margin-top,
47
- $field-message-margin-top
48
- );
49
-
50
- @each $name, $pair in $colors {
51
- $color: list.nth($pair, 1);
64
+ color: h.useVar("field-message-color");
65
+ font-size: h.useVar("field-message-font-size");
66
+ font-weight: h.useVar("field-message-font-weight");
67
+ line-height: h.useVar("field-message-line-height");
68
+
69
+ margin-top: h.useVar("field-message-spacer");
70
+
71
+ // color variants
72
+ @each $name, $pair in vars.$colors {
52
73
  &--#{$name} {
53
- color: var(--#{$prefix}variant-#{$name}, $color);
74
+ @include h.defineVar("field-message-color", h.useVar($name));
54
75
  }
55
76
  }
56
77
  }
57
78
 
79
+ // color variants
80
+ @each $name, $pair in vars.$colors {
81
+ &--#{$name} {
82
+ @include h.defineVar("field-message-color", h.useVar($name));
83
+ }
84
+ }
85
+
58
86
  &--addons {
59
87
  display: flex;
60
88
  justify-content: flex-start;
@@ -89,15 +117,14 @@ $field-horizontal-spacer: 0 1.5rem 0 0 !default;
89
117
  }
90
118
  }
91
119
 
120
+ &--multiline,
92
121
  &--grouped {
93
122
  display: flex;
94
- gap: var(--#{$prefix}field-spacer, $field-spacer);
123
+ gap: h.useVar("field-spacer");
95
124
  }
96
125
 
97
126
  &--multiline {
98
- display: flex;
99
127
  flex-wrap: wrap;
100
- gap: var(--#{$prefix}field-spacer, $field-spacer);
101
128
  }
102
129
 
103
130
  &__horizontal-body {
@@ -105,6 +132,10 @@ $field-horizontal-spacer: 0 1.5rem 0 0 !default;
105
132
  flex-basis: 0;
106
133
  flex-grow: 5;
107
134
  flex-shrink: 1;
135
+
136
+ & > .o-field:not(:last-child) {
137
+ margin-inline-end: h.useVar("field-spacer");
138
+ }
108
139
  }
109
140
 
110
141
  &--horizontal {
@@ -115,11 +146,9 @@ $field-horizontal-spacer: 0 1.5rem 0 0 !default;
115
146
  flex-basis: 0;
116
147
  flex-grow: 1;
117
148
  flex-shrink: 0;
118
- margin: var(
119
- --#{$prefix}field-horizontal-spacer,
120
- $field-horizontal-spacer
121
- );
122
149
  text-align: right;
150
+
151
+ padding-right: h.useVar("field-spacer");
123
152
  }
124
153
 
125
154
  &--mobile {